view dstep/appkit/NSTextInputClient.d @ 16:19885b43130e

Huge update, the bridge actually works now
author Jacob Carlborg <doob@me.com>
date Sun, 03 Jan 2010 22:06:11 +0100
parents
children
line wrap: on
line source

/**
 * Copyright: Copyright (c) 2009 Jacob Carlborg.
 * Authors: Jacob Carlborg
 * Version: Initial created: Sep 24, 2009 
 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
 */
module dstep.appkit.NSTextInputClient;

import dstep.applicationservices.coregraphics.CGBase;
import dstep.foundation.NSArray;
import dstep.foundation.NSAttributedString;
import dstep.foundation.NSGeometry;
import dstep.foundation.NSObjCRuntime;
import dstep.foundation.NSObject;
import dstep.foundation.NSRange;
import dstep.objc.bridge.Bridge;
import dstep.objc.objc;

interface INSTextInputClient
{
	void insertText (Object aString, NSRange replacementRange);
	void doCommandBySelector (SEL aSelector);
	void setMarkedText (Object aString, NSRange selectedRange, NSRange replacementRange);
	void unmarkText ();
	NSRange selectedRange ();
	NSRange markedRange ();
	bool hasMarkedText ();
	NSAttributedString attributedSubstringForProposedRange (NSRange aRange, NSRangePointer actualRange);
	NSArray validAttributesForMarkedText ();
	NSRect firstRectForCharacterRange (NSRange aRange, NSRangePointer actualRange);
	NSUInteger characterIndexForPoint (NSPoint aPoint);
	NSAttributedString attributedString ();
	CGFloat fractionOfDistanceThroughGlyphForPoint (NSPoint aPoint);
	CGFloat baselineDeltaForCharacterAtIndex (NSUInteger anIndex);
	NSInteger windowLevel ();
}