Mercurial > projects > dstep
view dstep/appkit/NSScrollView.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 | b9de51448c6b |
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.NSScrollView; import dstep.appkit.NSClipView; import dstep.appkit.NSColor; import dstep.appkit.NSCursor; import dstep.appkit.NSEvent; import dstep.appkit.NSRulerView; import dstep.appkit.NSScroller; import dstep.appkit.NSView; import dstep.applicationservices.coregraphics.CGBase; import dstep.foundation.NSDate; import dstep.foundation.NSGeometry; import dstep.objc.bridge.Bridge; import dstep.objc.objc; struct _SFlags { uint RESERVED; uint autoforwardsScrollWheelEvents; uint autohidesScrollers; uint hasCustomLineBorderColor; uint focusRingNeedsRedisplay; uint skipRemoveSuperviewCheck; uint doesNotDrawBackground; uint needsTile; uint hasVerticalRuler; uint hasHorizontalRuler; uint showRulers; uint oldRulerInstalled; uint borderType; uint noDynamicScrolling; uint hScrollerStatus; uint vScrollerStatus; uint hScrollerRequired; uint vScrollerRequired; } const TNSRulerSupport = ` static void setRulerViewClass (Class rulerViewClass) { return invokeObjcSelfClass!(void, "setRulerViewClass:", Class)(rulerViewClass); } static Class rulerViewClass () { return invokeObjcSelfClass!(Class, "rulerViewClass"); } void setRulersVisible (bool flag) { return invokeObjcSelf!(void, "setRulersVisible:", bool)(flag); } bool rulersVisible () { return invokeObjcSelf!(bool, "rulersVisible"); } void setHasHorizontalRuler (bool flag) { return invokeObjcSelf!(void, "setHasHorizontalRuler:", bool)(flag); } bool hasHorizontalRuler () { return invokeObjcSelf!(bool, "hasHorizontalRuler"); } void setHasVerticalRuler (bool flag) { return invokeObjcSelf!(void, "setHasVerticalRuler:", bool)(flag); } bool hasVerticalRuler () { return invokeObjcSelf!(bool, "hasVerticalRuler"); } void setHorizontalRulerView (NSRulerView ruler) { return invokeObjcSelf!(void, "setHorizontalRulerView:", NSRulerView)(ruler); } NSRulerView horizontalRulerView () { return invokeObjcSelf!(NSRulerView, "horizontalRulerView"); } void setVerticalRulerView (NSRulerView ruler) { return invokeObjcSelf!(void, "setVerticalRulerView:", NSRulerView)(ruler); } NSRulerView verticalRulerView () { return invokeObjcSelf!(NSRulerView, "verticalRulerView"); } //mixin ObjcBindClassMethod!(setRulerViewClass, "setRulerViewClass:"); //mixin ObjcBindClassMethod!(rulerViewClass, "rulerViewClass"); //mixin ObjcBindMethod!(setRulersVisible, "setRulersVisible:"); //mixin ObjcBindMethod!(rulersVisible, "rulersVisible"); //mixin ObjcBindMethod!(setHasHorizontalRuler, "setHasHorizontalRuler:"); //mixin ObjcBindMethod!(hasHorizontalRuler, "hasHorizontalRuler"); //mixin ObjcBindMethod!(setHasVerticalRuler, "setHasVerticalRuler:"); //mixin ObjcBindMethod!(hasVerticalRuler, "hasVerticalRuler"); //mixin ObjcBindMethod!(setHorizontalRulerView, "setHorizontalRulerView:"); //mixin ObjcBindMethod!(horizontalRulerView, "horizontalRulerView"); //mixin ObjcBindMethod!(setVerticalRulerView, "setVerticalRulerView:"); //mixin ObjcBindMethod!(verticalRulerView, "verticalRulerView"); `; class NSScrollView : NSView { mixin (ObjcWrap); static NSSize frameSizeForContentSize (NSSize cSize, bool hFlag, bool vFlag, uint aType) { return invokeObjcSelfClass!(NSSize, "frameSizeForContentSize:hasHorizontalScroller:hasVerticalScroller:borderType:", NSSize, bool, bool, uint)(cSize, hFlag, vFlag, aType); } static NSSize contentSizeForFrameSize (NSSize fSize, bool hFlag, bool vFlag, uint aType) { return invokeObjcSelfClass!(NSSize, "contentSizeForFrameSize:hasHorizontalScroller:hasVerticalScroller:borderType:", NSSize, bool, bool, uint)(fSize, hFlag, vFlag, aType); } NSRect documentVisibleRect () { return invokeObjcSelf!(NSRect, "documentVisibleRect"); } NSSize contentSize () { return invokeObjcSelf!(NSSize, "contentSize"); } void setDocumentView (NSView aView) { return invokeObjcSelf!(void, "setDocumentView:", NSView)(aView); } Object documentView () { return invokeObjcSelf!(Object, "documentView"); } void setContentView (NSClipView contentView) { return invokeObjcSelf!(void, "setContentView:", NSClipView)(contentView); } NSClipView contentView () { return invokeObjcSelf!(NSClipView, "contentView"); } void setDocumentCursor (NSCursor anObj) { return invokeObjcSelf!(void, "setDocumentCursor:", NSCursor)(anObj); } NSCursor documentCursor () { return invokeObjcSelf!(NSCursor, "documentCursor"); } void setBorderType (uint aType) { return invokeObjcSelf!(void, "setBorderType:", uint)(aType); } uint borderType () { return invokeObjcSelf!(uint, "borderType"); } void setBackgroundColor (NSColor color) { return invokeObjcSelf!(void, "setBackgroundColor:", NSColor)(color); } NSColor backgroundColor () { return invokeObjcSelf!(NSColor, "backgroundColor"); } void setDrawsBackground (bool flag) { return invokeObjcSelf!(void, "setDrawsBackground:", bool)(flag); } bool drawsBackground () { return invokeObjcSelf!(bool, "drawsBackground"); } void setHasVerticalScroller (bool flag) { return invokeObjcSelf!(void, "setHasVerticalScroller:", bool)(flag); } bool hasVerticalScroller () { return invokeObjcSelf!(bool, "hasVerticalScroller"); } void setHasHorizontalScroller (bool flag) { return invokeObjcSelf!(void, "setHasHorizontalScroller:", bool)(flag); } bool hasHorizontalScroller () { return invokeObjcSelf!(bool, "hasHorizontalScroller"); } void setVerticalScroller (NSScroller anObject) { return invokeObjcSelf!(void, "setVerticalScroller:", NSScroller)(anObject); } NSScroller verticalScroller () { return invokeObjcSelf!(NSScroller, "verticalScroller"); } void setHorizontalScroller (NSScroller anObject) { return invokeObjcSelf!(void, "setHorizontalScroller:", NSScroller)(anObject); } NSScroller horizontalScroller () { return invokeObjcSelf!(NSScroller, "horizontalScroller"); } bool autohidesScrollers () { return invokeObjcSelf!(bool, "autohidesScrollers"); } void setAutohidesScrollers (bool flag) { return invokeObjcSelf!(void, "setAutohidesScrollers:", bool)(flag); } void setHorizontalLineScroll (CGFloat value) { return invokeObjcSelf!(void, "setHorizontalLineScroll:", CGFloat)(value); } void setVerticalLineScroll (CGFloat value) { return invokeObjcSelf!(void, "setVerticalLineScroll:", CGFloat)(value); } void setLineScroll (CGFloat value) { return invokeObjcSelf!(void, "setLineScroll:", CGFloat)(value); } CGFloat horizontalLineScroll () { return invokeObjcSelf!(CGFloat, "horizontalLineScroll"); } CGFloat verticalLineScroll () { return invokeObjcSelf!(CGFloat, "verticalLineScroll"); } CGFloat lineScroll () { return invokeObjcSelf!(CGFloat, "lineScroll"); } void setHorizontalPageScroll (CGFloat value) { return invokeObjcSelf!(void, "setHorizontalPageScroll:", CGFloat)(value); } void setVerticalPageScroll (CGFloat value) { return invokeObjcSelf!(void, "setVerticalPageScroll:", CGFloat)(value); } void setPageScroll (CGFloat value) { return invokeObjcSelf!(void, "setPageScroll:", CGFloat)(value); } CGFloat horizontalPageScroll () { return invokeObjcSelf!(CGFloat, "horizontalPageScroll"); } CGFloat verticalPageScroll () { return invokeObjcSelf!(CGFloat, "verticalPageScroll"); } CGFloat pageScroll () { return invokeObjcSelf!(CGFloat, "pageScroll"); } void setScrollsDynamically (bool flag) { return invokeObjcSelf!(void, "setScrollsDynamically:", bool)(flag); } bool scrollsDynamically () { return invokeObjcSelf!(bool, "scrollsDynamically"); } void tile () { return invokeObjcSelf!(void, "tile"); } void reflectScrolledClipView (NSClipView cView) { return invokeObjcSelf!(void, "reflectScrolledClipView:", NSClipView)(cView); } void scrollWheel (NSEvent theEvent) { return invokeObjcSelf!(void, "scrollWheel:", NSEvent)(theEvent); } // NSRulerSupport static void setRulerViewClass (Class rulerViewClass) { return invokeObjcSelfClass!(void, "setRulerViewClass:", Class)(rulerViewClass); } static Class rulerViewClass () { return invokeObjcSelfClass!(Class, "rulerViewClass"); } void setRulersVisible (bool flag) { return invokeObjcSelf!(void, "setRulersVisible:", bool)(flag); } bool rulersVisible () { return invokeObjcSelf!(bool, "rulersVisible"); } void setHasHorizontalRuler (bool flag) { return invokeObjcSelf!(void, "setHasHorizontalRuler:", bool)(flag); } bool hasHorizontalRuler () { return invokeObjcSelf!(bool, "hasHorizontalRuler"); } void setHasVerticalRuler (bool flag) { return invokeObjcSelf!(void, "setHasVerticalRuler:", bool)(flag); } bool hasVerticalRuler () { return invokeObjcSelf!(bool, "hasVerticalRuler"); } void setHorizontalRulerView (NSRulerView ruler) { return invokeObjcSelf!(void, "setHorizontalRulerView:", NSRulerView)(ruler); } NSRulerView horizontalRulerView () { return invokeObjcSelf!(NSRulerView, "horizontalRulerView"); } void setVerticalRulerView (NSRulerView ruler) { return invokeObjcSelf!(void, "setVerticalRulerView:", NSRulerView)(ruler); } NSRulerView verticalRulerView () { return invokeObjcSelf!(NSRulerView, "verticalRulerView"); } }