comparison dstep/appkit/NSScroller.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
comparison
equal deleted inserted replaced
15:7ff919f595d5 16:19885b43130e
1 /**
2 * Copyright: Copyright (c) 2009 Jacob Carlborg.
3 * Authors: Jacob Carlborg
4 * Version: Initial created: Sep 24, 2009
5 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
6 */
7 module dstep.appkit.NSScroller;
8
9 import dstep.appkit.NSCell;
10 import dstep.appkit.NSControl;
11 import dstep.appkit.NSEvent;
12 import dstep.applicationservices.coregraphics.CGBase;
13 import dstep.foundation.NSGeometry;
14 import dstep.foundation.NSObjCRuntime;
15 import dstep.objc.bridge.Bridge;
16 import dstep.objc.objc;
17
18 alias NSUInteger NSScrollArrowPosition;
19 alias NSUInteger NSUsableScrollerParts;
20 alias NSUInteger NSScrollerPart;
21 alias NSUInteger NSScrollerArrow;
22
23 enum
24 {
25 NSScrollerArrowsMaxEnd = 0,
26 NSScrollerArrowsMinEnd = 1,
27 NSScrollerArrowsDefaultSetting = 0,
28 NSScrollerArrowsNone = 2
29 }
30
31 enum
32 {
33 NSNoScrollerParts = 0,
34 NSOnlyScrollerArrows = 1,
35 NSAllScrollerParts = 2
36 }
37
38 enum
39 {
40 NSScrollerNoPart = 0,
41 NSScrollerDecrementPage = 1,
42 NSScrollerKnob = 2,
43 NSScrollerIncrementPage = 3,
44 NSScrollerDecrementLine = 4,
45 NSScrollerIncrementLine = 5,
46 NSScrollerKnobSlot = 6
47 }
48
49 enum
50 {
51 NSScrollerIncrementArrow = 0,
52 NSScrollerDecrementArrow = 1
53 }
54
55 class NSScroller : NSControl
56 {
57 mixin (ObjcWrap);
58
59 static CGFloat scrollerWidth ()
60 {
61 return invokeObjcSelfClass!(CGFloat, "scrollerWidth");
62 }
63
64 static CGFloat scrollerWidthForControlSize (uint controlSize)
65 {
66 return invokeObjcSelfClass!(CGFloat, "scrollerWidthForControlSize:", uint)(controlSize);
67 }
68
69 void drawParts ()
70 {
71 return invokeObjcSelf!(void, "drawParts");
72 }
73
74 NSRect rectForPart (uint partCode)
75 {
76 return invokeObjcSelf!(NSRect, "rectForPart:", uint)(partCode);
77 }
78
79 void checkSpaceForParts ()
80 {
81 return invokeObjcSelf!(void, "checkSpaceForParts");
82 }
83
84 uint usableParts ()
85 {
86 return invokeObjcSelf!(uint, "usableParts");
87 }
88
89 void setArrowsPosition (uint where)
90 {
91 return invokeObjcSelf!(void, "setArrowsPosition:", uint)(where);
92 }
93
94 uint arrowsPosition ()
95 {
96 return invokeObjcSelf!(uint, "arrowsPosition");
97 }
98
99 void setControlTint (uint controlTint)
100 {
101 return invokeObjcSelf!(void, "setControlTint:", uint)(controlTint);
102 }
103
104 uint controlTint ()
105 {
106 return invokeObjcSelf!(uint, "controlTint");
107 }
108
109 void setControlSize (uint controlSize)
110 {
111 return invokeObjcSelf!(void, "setControlSize:", uint)(controlSize);
112 }
113
114 uint controlSize ()
115 {
116 return invokeObjcSelf!(uint, "controlSize");
117 }
118
119 void drawArrow (uint whichArrow, bool flag)
120 {
121 return invokeObjcSelf!(void, "drawArrow:highlight:", uint, bool)(whichArrow, flag);
122 }
123
124 void drawKnob ()
125 {
126 return invokeObjcSelf!(void, "drawKnob");
127 }
128
129 void drawKnobSlotInRect (NSRect slotRect, bool flag)
130 {
131 return invokeObjcSelf!(void, "drawKnobSlotInRect:highlight:", NSRect, bool)(slotRect, flag);
132 }
133
134 void highlight (bool flag)
135 {
136 return invokeObjcSelf!(void, "highlight:", bool)(flag);
137 }
138
139 uint testPart (NSPoint thePoint)
140 {
141 return invokeObjcSelf!(uint, "testPart:", NSPoint)(thePoint);
142 }
143
144 void trackKnob (NSEvent theEvent)
145 {
146 return invokeObjcSelf!(void, "trackKnob:", NSEvent)(theEvent);
147 }
148
149 void trackScrollButtons (NSEvent theEvent)
150 {
151 return invokeObjcSelf!(void, "trackScrollButtons:", NSEvent)(theEvent);
152 }
153
154 uint hitPart ()
155 {
156 return invokeObjcSelf!(uint, "hitPart");
157 }
158
159 CGFloat knobProportion ()
160 {
161 return invokeObjcSelf!(CGFloat, "knobProportion");
162 }
163
164 void setKnobProportion (CGFloat proportion)
165 {
166 return invokeObjcSelf!(void, "setKnobProportion:", CGFloat)(proportion);
167 }
168 }
169