Changeset 58
- Timestamp:
- 03/30/08 20:23:06 (5 months ago)
- Files:
-
- trunk/win32/dfl/internal/winapi.d (modified) (3 diffs)
- trunk/win32/dfl/toolbar.d (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/win32/dfl/internal/winapi.d
r57 r58 2060 2060 enum: BYTE 2061 2061 { 2062 TBSTATE_CHECKED = 0x01, 2063 TBSTATE_PRESSED = 0x02, 2062 2064 TBSTATE_ENABLED = 0x04, 2065 TBSTATE_HIDDEN = 0x08, 2066 TBSTATE_INDETERMINATE = 0x10, 2067 TBSTATE_WRAP = 0x20, 2068 TBSTATE_ELLIPSES = 0x40, 2069 TBSTATE_MARKED = 0x80, 2063 2070 } 2064 2071 … … 2074 2081 enum: UINT 2075 2082 { 2083 TB_SETSTATE = WM_USER + 17, 2076 2084 TB_ADDBUTTONSA = WM_USER + 20, 2077 2085 TB_INSERTBUTTONA = WM_USER + 21, … … 2079 2087 TB_GETITEMRECT = WM_USER + 29, 2080 2088 TB_BUTTONSTRUCTSIZE = WM_USER + 30, 2089 TB_SETBUTTONSIZE = WM_USER + 31, 2081 2090 TB_SETIMAGELIST = WM_USER + 48, 2082 2091 TB_INSERTBUTTONW = WM_USER + 67, trunk/win32/dfl/toolbar.d
r57 r58 93 93 final void style(ToolBarButtonStyle st) // setter 94 94 { 95 this._st = st;95 this._style = st; 96 96 97 97 //if(tbar && tbar.created) … … 102 102 final ToolBarButtonStyle style() // getter 103 103 { 104 return _st ;104 return _style; 105 105 } 106 106 … … 190 190 191 191 /// 192 final void visible(bool byes) // setter 193 { 194 if(byes) 195 _state &= ~TBSTATE_HIDDEN; 196 else 197 _state |= TBSTATE_HIDDEN; 198 199 if(tbar && tbar.created) 200 tbar.prevwproc(TB_SETSTATE, _id, MAKELPARAM(_state, 0)); 201 } 202 203 /// ditto 192 204 final bool visible() // getter 193 205 { … … 195 207 return false; 196 208 return true; // To-do: get actual hidden state. 209 } 210 211 212 /// 213 final void enabled(bool byes) // setter 214 { 215 if(byes) 216 _state |= TBSTATE_ENABLED; 217 else 218 _state &= ~TBSTATE_ENABLED; 219 220 if(tbar && tbar.created) 221 tbar.prevwproc(TB_SETSTATE, _id, MAKELPARAM(_state, 0)); 222 } 223 224 /// ditto 225 final bool enabled() // getter 226 { 227 if(_state & TBSTATE_ENABLED) 228 return true; 229 return false; 230 } 231 232 233 /// 234 final void pushed(bool byes) // setter 235 { 236 if(byes) 237 _state = (_state & ~TBSTATE_INDETERMINATE) | TBSTATE_CHECKED; 238 else 239 _state &= ~TBSTATE_CHECKED; 240 241 if(tbar && tbar.created) 242 tbar.prevwproc(TB_SETSTATE, _id, MAKELPARAM(_state, 0)); 243 } 244 245 /// ditto 246 final bool pushed() // getter 247 { 248 if(TBSTATE_CHECKED == (_state & TBSTATE_CHECKED)) 249 return true; 250 return false; 251 } 252 253 254 /// 255 final void partialPush(bool byes) // setter 256 { 257 if(byes) 258 _state = (_state & ~TBSTATE_CHECKED) | TBSTATE_INDETERMINATE; 259 else 260 _state &= ~TBSTATE_INDETERMINATE; 261 262 if(tbar && tbar.created) 263 tbar.prevwproc(TB_SETSTATE, _id, MAKELPARAM(_state, 0)); 264 } 265 266 /// ditto 267 final bool partialPush() // getter 268 { 269 if(TBSTATE_INDETERMINATE == (_state & TBSTATE_INDETERMINATE)) 270 return true; 271 return false; 197 272 } 198 273 … … 203 278 Dstring _text; 204 279 Object _tag; 205 ToolBarButtonStyle _st = ToolBarButtonStyle.PUSH_BUTTON; 280 ToolBarButtonStyle _style = ToolBarButtonStyle.PUSH_BUTTON; 281 BYTE _state = TBSTATE_ENABLED; 206 282 version(DFL_TOOLBAR_NO_MENU) 207 283 { … … 537 613 xtb.idCommand = tbb._id; 538 614 xtb.dwData = cast(DWORD)cast(void*)tbb; 539 xtb.fsState = TBSTATE_ENABLED;540 xtb.fsStyle = TBSTYLE_AUTOSIZE | tbb._st ; // TBSTYLE_AUTOSIZE factors in the text's width instead of default button size.615 xtb.fsState = tbb._state; 616 xtb.fsStyle = TBSTYLE_AUTOSIZE | tbb._style; // TBSTYLE_AUTOSIZE factors in the text's width instead of default button size. 541 617 LRESULT lresult; 542 618 // MSDN says iString can be either an int offset or pointer to a string buffer.
