Mercurial > projects > dwt-mac
diff dwt/internal/cocoa/NSSegmentedCell.d @ 0:380af2bdd8e5
Upload of whole dwt tree
author | Jacob Carlborg <doob@me.com> <jacob.carlborg@gmail.com> |
---|---|
date | Sat, 09 Aug 2008 17:00:02 +0200 |
parents | |
children | 8b48be5454ce |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dwt/internal/cocoa/NSSegmentedCell.d Sat Aug 09 17:00:02 2008 +0200 @@ -0,0 +1,224 @@ +/******************************************************************************* + * Copyright (c) 2007 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * IBM Corporation - initial API and implementation + * + * Port to the D Programming language: + * Jacob Carlborg <jacob.carlborg@gmail.com> + *******************************************************************************/ +module dwt.internal.cocoa.NSSegmentedCell; + +import dwt.internal.cocoa.CGFloat; +import dwt.internal.cocoa.NSActionCell; +import dwt.internal.cocoa.NSImage; +import dwt.internal.cocoa.NSImageCell : NSImageScaling; +import dwt.internal.cocoa.NSInteger; +import dwt.internal.cocoa.NSMenu; +import dwt.internal.cocoa.NSRect; +import dwt.internal.cocoa.NSString; +import dwt.internal.cocoa.NSView; +import dwt.internal.cocoa.OS; +import objc = dwt.internal.objc.runtime; + +enum NSBackgroundStyle : NSUInteger +{ + NSBackgroundStyleLight = 0, + NSBackgroundStyleDark, + NSBackgroundStyleRaised, + NSBackgroundStyleLowered +} + +alias NSBackgroundStyle.NSBackgroundStyleLight NSBackgroundStyleLight; +alias NSBackgroundStyle.NSBackgroundStyleDark NSBackgroundStyleDark; +alias NSBackgroundStyle.NSBackgroundStyleRaised NSBackgroundStyleRaised; +alias NSBackgroundStyle.NSBackgroundStyleLowered NSBackgroundStyleLowered; + +enum NSSegmentSwitchTracking +{ + NSSegmentSwitchTrackingSelectOne = 0, + NSSegmentSwitchTrackingSelectAny = 1, + NSSegmentSwitchTrackingMomentary = 2 +} + +alias NSSegmentSwitchTracking.NSSegmentSwitchTrackingSelectOne NSSegmentSwitchTrackingSelectOne; +alias NSSegmentSwitchTracking.NSSegmentSwitchTrackingSelectAny NSSegmentSwitchTrackingSelectAny; +alias NSSegmentSwitchTracking.NSSegmentSwitchTrackingMomentary NSSegmentSwitchTrackingMomentary; + +public class NSSegmentedCell : NSActionCell +{ + + public this () + { + super(); + } + + public this (objc.id id) + { + super(id); + } + + public void drawSegment (NSInteger segment, NSRect frame, NSView controlView) + { + OS.objc_msgSend(this.id, OS.sel_drawSegment_1inFrame_1withView_1, segment, frame, controlView !is null ? controlView.id : null); + } + + public NSImage imageForSegment (NSInteger segment) + { + objc.id result = OS.objc_msgSend(this.id, OS.sel_imageForSegment_1, segment); + return result !is null ? new NSImage(result) : null; + } + + public NSImageScaling imageScalingForSegment (NSInteger segment) + { + return OS.objc_msgSend(this.id, OS.sel_imageScalingForSegment_1, segment); + } + + public NSBackgroundStyle interiorBackgroundStyleForSegment (NSInteger segment) + { + return OS.objc_msgSend(this.id, OS.sel_interiorBackgroundStyleForSegment_1, segment); + } + + public bool isEnabledForSegment (NSInteger segment) + { + return OS.objc_msgSend(this.id, OS.sel_isEnabledForSegment_1, segment) !is null; + } + + public bool isSelectedForSegment (NSInteger segment) + { + return OS.objc_msgSend(this.id, OS.sel_isSelectedForSegment_1, segment) !is null; + } + + public NSString labelForSegment (NSInteger segment) + { + objc.id result = OS.objc_msgSend(this.id, OS.sel_labelForSegment_1, segment); + return result !is null ? new NSString(result) : null; + } + + public void makeNextSegmentKey () + { + OS.objc_msgSend(this.id, OS.sel_makeNextSegmentKey); + } + + public void makePreviousSegmentKey () + { + OS.objc_msgSend(this.id, OS.sel_makePreviousSegmentKey); + } + + public NSMenu menuForSegment (NSInteger segment) + { + objc.id result = OS.objc_msgSend(this.id, OS.sel_menuForSegment_1, segment); + return result !is null ? new NSMenu(result) : null; + } + + public NSInteger segmentCount () + { + return OS.objc_msgSend(this.id, OS.sel_segmentCount); + } + + public NSInteger segmentStyle () + { + return OS.objc_msgSend(this.id, OS.sel_segmentStyle); + } + + public bool selectSegmentWithTag (NSInteger tag) + { + return OS.objc_msgSend(this.id, OS.sel_selectSegmentWithTag_1, tag) !is null; + } + + public NSInteger selectedSegment () + { + return OS.objc_msgSend(this.id, OS.sel_selectedSegment); + } + + public void setEnabled (bool enabled, NSInteger segment) + { + OS.objc_msgSend(this.id, OS.sel_setEnabled_1forSegment_1, enabled, segment); + } + + public void setImage (NSImage image, NSInteger segment) + { + OS.objc_msgSend(this.id, OS.sel_setImage_1forSegment_1, image !is null ? image.id : null, segment); + } + + public void setImageScaling (NSImageScaling scaling, NSInteger segment) + { + OS.objc_msgSend(this.id, OS.sel_setImageScaling_1forSegment_1, scaling, segment); + } + + public void setLabel (NSString label, NSInteger segment) + { + OS.objc_msgSend(this.id, OS.sel_setLabel_1forSegment_1, label !is null ? label.id : null, segment); + } + + public void setMenu (NSMenu menu, NSInteger segment) + { + OS.objc_msgSend(this.id, OS.sel_setMenu_1forSegment_1, menu !is null ? menu.id : null, segment); + } + + public void setSegmentCount (NSInteger count) + { + OS.objc_msgSend(this.id, OS.sel_setSegmentCount_1, count); + } + + public void setSegmentStyle (NSInteger segmentStyle) + { + OS.objc_msgSend(this.id, OS.sel_setSegmentStyle_1, segmentStyle); + } + + public void setSelected (bool selected, NSInteger segment) + { + OS.objc_msgSend(this.id, OS.sel_setSelected_1forSegment_1, selected, segment); + } + + public void setSelectedSegment (NSInteger selectedSegment) + { + OS.objc_msgSend(this.id, OS.sel_setSelectedSegment_1, selectedSegment); + } + + public void setTag (NSInteger tag, NSInteger segment) + { + OS.objc_msgSend(this.id, OS.sel_setTag_1forSegment_1, tag, segment); + } + + public void setToolTip (NSString toolTip, NSInteger segment) + { + OS.objc_msgSend(this.id, OS.sel_setToolTip_1forSegment_1, toolTip !is null ? toolTip.id : null, segment); + } + + public void setTrackingMode (NSSegmentSwitchTracking trackingMode) + { + OS.objc_msgSend(this.id, OS.sel_setTrackingMode_1, trackingMode); + } + + public void setWidth (CGFloat width, NSInteger segment) + { + OS.objc_msgSend(this.id, OS.sel_setWidth_1forSegment_1, width, segment); + } + + public NSInteger tagForSegment (NSInteger segment) + { + return cast(NSInteger) OS.objc_msgSend(this.id, OS.sel_tagForSegment_1, segment); + } + + public NSString toolTipForSegment (NSInteger segment) + { + objc.id result = OS.objc_msgSend(this.id, OS.sel_toolTipForSegment_1, segment); + return result !is null ? new NSString(result) : null; + } + + public NSSegmentSwitchTracking trackingMode () + { + return cast(NSSegmentSwitchTracking) OS.objc_msgSend(this.id, OS.sel_trackingMode); + } + + public CGFloat widthForSegment (NSInteger segment) + { + return cast(CGFloat) OS.objc_msgSend_fpret(this.id, OS.sel_widthForSegment_1, segment); + } + +}