Mercurial > projects > dstep
diff dstep/appkit/NSToolbarItem.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 diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dstep/appkit/NSToolbarItem.d Sun Jan 03 22:06:11 2010 +0100 @@ -0,0 +1,291 @@ +/** + * 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.NSToolbarItem; + +import dstep.appkit.NSImage; +import dstep.appkit.NSMenuItem; +import dstep.appkit.NSText; +import dstep.appkit.NSToolbar; +import dstep.appkit.NSUserInterfaceValidation; +import dstep.appkit.NSView; +import dstep.foundation.NSGeometry; +import dstep.foundation.NSObjCRuntime; +import dstep.foundation.NSObject; +import dstep.foundation.NSString; +import dstep.foundation.NSZone; +import dstep.objc.bridge.Bridge; +import dstep.objc.objc; + +import bindings = dstep.appkit.NSToolbarItem_bindings; + +private +{ + NSString NSToolbarSeparatorItemIdentifier_; + NSString NSToolbarSpaceItemIdentifier_; + NSString NSToolbarFlexibleSpaceItemIdentifier_; + NSString NSToolbarShowColorsItemIdentifier_; + NSString NSToolbarShowFontsItemIdentifier_; + NSString NSToolbarCustomizeToolbarItemIdentifier_; + NSString NSToolbarPrintItemIdentifier_; +} + +NSString NSToolbarSeparatorItemIdentifier () +{ + if (NSToolbarSeparatorItemIdentifier_) + return NSToolbarSeparatorItemIdentifier_; + + return NSToolbarSeparatorItemIdentifier_ = new NSString(bindings.NSToolbarSeparatorItemIdentifier); +} + +NSString NSToolbarSpaceItemIdentifier () +{ + if (NSToolbarSpaceItemIdentifier_) + return NSToolbarSpaceItemIdentifier_; + + return NSToolbarSpaceItemIdentifier_ = new NSString(bindings.NSToolbarSpaceItemIdentifier); +} + +NSString NSToolbarFlexibleSpaceItemIdentifier () +{ + if (NSToolbarFlexibleSpaceItemIdentifier_) + return NSToolbarFlexibleSpaceItemIdentifier_; + + return NSToolbarFlexibleSpaceItemIdentifier_ = new NSString(bindings.NSToolbarFlexibleSpaceItemIdentifier); +} + +NSString NSToolbarShowColorsItemIdentifier () +{ + if (NSToolbarShowColorsItemIdentifier_) + return NSToolbarShowColorsItemIdentifier_; + + return NSToolbarShowColorsItemIdentifier_ = new NSString(bindings.NSToolbarShowColorsItemIdentifier); +} + +NSString NSToolbarShowFontsItemIdentifier () +{ + if (NSToolbarShowFontsItemIdentifier_) + return NSToolbarShowFontsItemIdentifier_; + + return NSToolbarShowFontsItemIdentifier_ = new NSString(bindings.NSToolbarShowFontsItemIdentifier); +} + +NSString NSToolbarCustomizeToolbarItemIdentifier () +{ + if (NSToolbarCustomizeToolbarItemIdentifier_) + return NSToolbarCustomizeToolbarItemIdentifier_; + + return NSToolbarCustomizeToolbarItemIdentifier_ = new NSString(bindings.NSToolbarCustomizeToolbarItemIdentifier); +} + +NSString NSToolbarPrintItemIdentifier () +{ + if (NSToolbarPrintItemIdentifier_) + return NSToolbarPrintItemIdentifier_; + + return NSToolbarPrintItemIdentifier_ = new NSString(bindings.NSToolbarPrintItemIdentifier); +} + +enum +{ + NSToolbarItemVisibilityPriorityStandard = 0, + NSToolbarItemVisibilityPriorityLow = -1000, + NSToolbarItemVisibilityPriorityHigh = 1000, + NSToolbarItemVisibilityPriorityUser = 2000 +} + +class NSToolbarItem : NSObject, INSCopying, INSValidatedUserInterfaceItem +{ + mixin (ObjcWrap); + + typeof(this) copyWithZone (NSZone* zone) + { + return invokeObjcSelf!(typeof(this), "copyWithZone:", NSZone*)(zone); + } + + NSToolbarItem initWithItemIdentifier (NSString itemIdentifier) + { + id result = invokeObjcSelf!(id, "initWithItemIdentifier:", NSString)(itemIdentifier); + return result is this.objcObject ? this : (result !is null ? new NSToolbarItem(result) : null); + } + + this (NSString itemIdentifier) + { + super(NSToolbarItem.alloc.initWithItemIdentifier(itemIdentifier).objcObject); + } + + NSString itemIdentifier () + { + return invokeObjcSelf!(NSString, "itemIdentifier"); + } + + NSToolbar toolbar () + { + return invokeObjcSelf!(NSToolbar, "toolbar"); + } + + void setLabel (NSString label) + { + return invokeObjcSelf!(void, "setLabel:", NSString)(label); + } + + NSString label () + { + return invokeObjcSelf!(NSString, "label"); + } + + void setPaletteLabel (NSString paletteLabel) + { + return invokeObjcSelf!(void, "setPaletteLabel:", NSString)(paletteLabel); + } + + NSString paletteLabel () + { + return invokeObjcSelf!(NSString, "paletteLabel"); + } + + void setToolTip (NSString toolTip) + { + return invokeObjcSelf!(void, "setToolTip:", NSString)(toolTip); + } + + NSString toolTip () + { + return invokeObjcSelf!(NSString, "toolTip"); + } + + void setMenuFormRepresentation (NSMenuItem menuItem) + { + return invokeObjcSelf!(void, "setMenuFormRepresentation:", NSMenuItem)(menuItem); + } + + NSMenuItem menuFormRepresentation () + { + return invokeObjcSelf!(NSMenuItem, "menuFormRepresentation"); + } + + void setTag (NSInteger tag) + { + return invokeObjcSelf!(void, "setTag:", NSInteger)(tag); + } + + NSInteger tag () + { + return invokeObjcSelf!(NSInteger, "tag"); + } + + void setTarget (Object target) + { + return invokeObjcSelf!(void, "setTarget:", Object)(target); + } + + Object target () + { + return invokeObjcSelf!(Object, "target"); + } + + void setAction (SEL action) + { + return invokeObjcSelf!(void, "setAction:", SEL)(action); + } + + SEL action () + { + return invokeObjcSelf!(SEL, "action"); + } + + void setEnabled (bool enabled) + { + return invokeObjcSelf!(void, "setEnabled:", bool)(enabled); + } + + bool isEnabled () + { + return invokeObjcSelf!(bool, "isEnabled"); + } + + void setImage (NSImage image) + { + return invokeObjcSelf!(void, "setImage:", NSImage)(image); + } + + NSImage image () + { + return invokeObjcSelf!(NSImage, "image"); + } + + void setView (NSView view) + { + return invokeObjcSelf!(void, "setView:", NSView)(view); + } + + NSView view () + { + return invokeObjcSelf!(NSView, "view"); + } + + void setMinSize (NSSize size) + { + return invokeObjcSelf!(void, "setMinSize:", NSSize)(size); + } + + NSSize minSize () + { + return invokeObjcSelf!(NSSize, "minSize"); + } + + void setMaxSize (NSSize size) + { + return invokeObjcSelf!(void, "setMaxSize:", NSSize)(size); + } + + NSSize maxSize () + { + return invokeObjcSelf!(NSSize, "maxSize"); + } + + void setVisibilityPriority (NSInteger visibilityPriority) + { + return invokeObjcSelf!(void, "setVisibilityPriority:", NSInteger)(visibilityPriority); + } + + NSInteger visibilityPriority () + { + return invokeObjcSelf!(NSInteger, "visibilityPriority"); + } + + void validate () + { + return invokeObjcSelf!(void, "validate"); + } + + void setAutovalidates (bool resistance) + { + return invokeObjcSelf!(void, "setAutovalidates:", bool)(resistance); + } + + bool autovalidates () + { + return invokeObjcSelf!(bool, "autovalidates"); + } + + bool allowsDuplicatesInToolbar () + { + return invokeObjcSelf!(bool, "allowsDuplicatesInToolbar"); + } +} + +const TNSToolbarItemValidation = ` + + bool validateToolbarItem (NSToolbarItem theItem) + { + return invokeObjcSelf!(bool, "validateToolbarItem:", NSToolbarItem)(theItem); + } + + //mixin ObjcBindMethod!(validateToolbarItem, "validateToolbarItem:"); + +`; +