Mercurial > projects > dstep
view dstep/appkit/NSRulerView.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.NSRulerView; import dstep.appkit.NSEvent; import dstep.appkit.NSRulerMarker; import dstep.appkit.NSScrollView; import dstep.appkit.NSView; import dstep.applicationservices.coregraphics.CGBase; import dstep.foundation.NSArray; import dstep.foundation.NSGeometry; import dstep.foundation.NSObjCRuntime; import dstep.foundation.NSString; import dstep.objc.bridge.Bridge; import dstep.objc.objc; alias NSUInteger NSRulerOrientation; enum { NSHorizontalRuler, NSVerticalRuler } class NSRulerView : NSView { mixin (ObjcWrap); static void registerUnitWithName (NSString unitName, NSString abbreviation, CGFloat conversionFactor, NSArray stepUpCycle, NSArray stepDownCycle) { return invokeObjcSelfClass!(void, "registerUnitWithName:abbreviation:unitToPointsConversionFactor:stepUpCycle:stepDownCycle:", NSString, NSString, CGFloat, NSArray, NSArray)(unitName, abbreviation, conversionFactor, stepUpCycle, stepDownCycle); } NSRulerView initWithScrollView (NSScrollView scrollView, uint orientation) { id result = invokeObjcSelf!(id, "initWithScrollView:orientation:", NSScrollView, uint)(scrollView, orientation); return result is this.objcObject ? this : (result !is null ? new NSRulerView(result) : null); } this (NSScrollView scrollView, uint orientation) { super(NSRulerView.alloc.initWithScrollView(scrollView, orientation).objcObject); } void setScrollView (NSScrollView scrollView) { return invokeObjcSelf!(void, "setScrollView:", NSScrollView)(scrollView); } NSScrollView scrollView () { return invokeObjcSelf!(NSScrollView, "scrollView"); } void setOrientation (uint orientation) { return invokeObjcSelf!(void, "setOrientation:", uint)(orientation); } uint orientation () { return invokeObjcSelf!(uint, "orientation"); } CGFloat baselineLocation () { return invokeObjcSelf!(CGFloat, "baselineLocation"); } CGFloat requiredThickness () { return invokeObjcSelf!(CGFloat, "requiredThickness"); } void setRuleThickness (CGFloat thickness) { return invokeObjcSelf!(void, "setRuleThickness:", CGFloat)(thickness); } CGFloat ruleThickness () { return invokeObjcSelf!(CGFloat, "ruleThickness"); } void setReservedThicknessForMarkers (CGFloat thickness) { return invokeObjcSelf!(void, "setReservedThicknessForMarkers:", CGFloat)(thickness); } CGFloat reservedThicknessForMarkers () { return invokeObjcSelf!(CGFloat, "reservedThicknessForMarkers"); } void setReservedThicknessForAccessoryView (CGFloat thickness) { return invokeObjcSelf!(void, "setReservedThicknessForAccessoryView:", CGFloat)(thickness); } CGFloat reservedThicknessForAccessoryView () { return invokeObjcSelf!(CGFloat, "reservedThicknessForAccessoryView"); } void setMeasurementUnits (NSString unitName) { return invokeObjcSelf!(void, "setMeasurementUnits:", NSString)(unitName); } NSString measurementUnits () { return invokeObjcSelf!(NSString, "measurementUnits"); } void setOriginOffset (CGFloat offset) { return invokeObjcSelf!(void, "setOriginOffset:", CGFloat)(offset); } CGFloat originOffset () { return invokeObjcSelf!(CGFloat, "originOffset"); } void setClientView (NSView client) { return invokeObjcSelf!(void, "setClientView:", NSView)(client); } NSView clientView () { return invokeObjcSelf!(NSView, "clientView"); } void setMarkers (NSArray markers) { return invokeObjcSelf!(void, "setMarkers:", NSArray)(markers); } void addMarker (NSRulerMarker marker) { return invokeObjcSelf!(void, "addMarker:", NSRulerMarker)(marker); } void removeMarker (NSRulerMarker marker) { return invokeObjcSelf!(void, "removeMarker:", NSRulerMarker)(marker); } NSArray markers () { return invokeObjcSelf!(NSArray, "markers"); } bool trackMarker (NSRulerMarker marker, NSEvent event) { return invokeObjcSelf!(bool, "trackMarker:withMouseEvent:", NSRulerMarker, NSEvent)(marker, event); } void setAccessoryView (NSView accessory) { return invokeObjcSelf!(void, "setAccessoryView:", NSView)(accessory); } NSView accessoryView () { return invokeObjcSelf!(NSView, "accessoryView"); } void moveRulerlineFromLocation (CGFloat oldLocation, CGFloat newLocation) { return invokeObjcSelf!(void, "moveRulerlineFromLocation:toLocation:", CGFloat, CGFloat)(oldLocation, newLocation); } void invalidateHashMarks () { return invokeObjcSelf!(void, "invalidateHashMarks"); } void drawHashMarksAndLabelsInRect (NSRect rect) { return invokeObjcSelf!(void, "drawHashMarksAndLabelsInRect:", NSRect)(rect); } void drawMarkersInRect (NSRect rect) { return invokeObjcSelf!(void, "drawMarkersInRect:", NSRect)(rect); } bool isFlipped () { return invokeObjcSelf!(bool, "isFlipped"); } } const TNSRulerMarkerClientViewDelegation = ` bool rulerView_shouldMoveMarker (NSRulerView ruler, NSRulerMarker marker) { return invokeObjcSelf!(bool, "rulerView:shouldMoveMarker:", NSRulerView, NSRulerMarker)(ruler, marker); } CGFloat rulerView (NSRulerView ruler, NSRulerMarker marker, CGFloat location) { return invokeObjcSelf!(CGFloat, "rulerView:willMoveMarker:toLocation:", NSRulerView, NSRulerMarker, CGFloat)(ruler, marker, location); } void rulerView (NSRulerView ruler, NSRulerMarker marker) { return invokeObjcSelf!(void, "rulerView:didMoveMarker:", NSRulerView, NSRulerMarker)(ruler, marker); } void rulerView_shouldRemoveMarker (NSRulerView ruler, NSRulerMarker marker) { return invokeObjcSelf!(void, "rulerView:shouldRemoveMarker:", NSRulerView, NSRulerMarker)(ruler, marker); } void rulerView_didRemoveMarker (NSRulerView ruler, NSRulerMarker marker) { return invokeObjcSelf!(void, "rulerView:didRemoveMarker:", NSRulerView, NSRulerMarker)(ruler, marker); } bool rulerView_shouldAddMarker (NSRulerView ruler, NSRulerMarker marker) { return invokeObjcSelf!(bool, "rulerView:shouldAddMarker:", NSRulerView, NSRulerMarker)(ruler, marker); } CGFloat rulerView_willAddMarker_atLocation (NSRulerView ruler, NSRulerMarker marker, CGFloat location) { return invokeObjcSelf!(CGFloat, "rulerView:willAddMarker:atLocation:", NSRulerView, NSRulerMarker, CGFloat)(ruler, marker, location); } void rulerView_didAddMarker (NSRulerView ruler, NSRulerMarker marker) { return invokeObjcSelf!(void, "rulerView:didAddMarker:", NSRulerView, NSRulerMarker)(ruler, marker); } void rulerView (NSRulerView ruler, NSEvent event) { return invokeObjcSelf!(void, "rulerView:handleMouseDown:", NSRulerView, NSEvent)(ruler, event); } CGFloat rulerView (NSRulerView ruler, NSView newClient) { return invokeObjcSelf!(CGFloat, "rulerView:willSetClientView:", NSRulerView, NSView)(ruler, newClient); } //mixin ObjcBindMethod!(rulerView_shouldMoveMarker, "rulerView:shouldMoveMarker:"); //mixin ObjcBindMethod!(rulerView, CGFloat, "rulerView:willMoveMarker:toLocation:", NSRulerView, NSRulerMarker, CGFloat); //mixin ObjcBindMethod!(rulerView, void, "rulerView:didMoveMarker:", NSRulerView, NSRulerMarker); //mixin ObjcBindMethod!(rulerView_shouldRemoveMarker, "rulerView:shouldRemoveMarker:"); //mixin ObjcBindMethod!(rulerView_didRemoveMarker, "rulerView:didRemoveMarker:"); //mixin ObjcBindMethod!(rulerView_shouldAddMarker, "rulerView:shouldAddMarker:"); //mixin ObjcBindMethod!(rulerView_willAddMarker_atLocation, "rulerView:willAddMarker:atLocation:"); //mixin ObjcBindMethod!(rulerView_didAddMarker, "rulerView:didAddMarker:"); //mixin ObjcBindMethod!(rulerView, void, "rulerView:handleMouseDown:", NSRulerView, NSEvent); //mixin ObjcBindMethod!(rulerView, CGFloat, "rulerView:willSetClientView:", NSRulerView, NSView); `;