Mercurial > projects > dwt-addons
comparison dwtx/draw2d/ButtonBorder.d @ 103:2d6540440fe6
Replace static ctors with lazy init.
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Sun, 03 Aug 2008 17:01:51 +0200 |
parents | 0de61c6f08ca |
children |
comparison
equal
deleted
inserted
replaced
102:0de61c6f08ca | 103:2d6540440fe6 |
---|---|
42 alias SchemeBorder.paint paint; | 42 alias SchemeBorder.paint paint; |
43 /** | 43 /** |
44 * Default button border. | 44 * Default button border. |
45 * @see SCHEMES#BUTTON | 45 * @see SCHEMES#BUTTON |
46 */ | 46 */ |
47 private static const Border BUTTON_; | 47 private static Border BUTTON_; |
48 public static ButtonScheme BUTTON(){ | 48 public static Border BUTTON(){ |
49 if( BUTTON_ is null ){ | 49 if( BUTTON_ is null ){ |
50 synchronized( ButtonScheme.classinfo ){ | 50 synchronized( ButtonScheme.classinfo ){ |
51 if( BUTTON_ is null ){ | 51 if( BUTTON_ is null ){ |
52 BUTTON_ = new ButtonBorder(SCHEMES.BUTTON); | 52 BUTTON_ = new ButtonBorder(SCHEMES.BUTTON); |
53 } | 53 } |
57 } | 57 } |
58 /** | 58 /** |
59 * Inverted hightlight colors from BUTTON. | 59 * Inverted hightlight colors from BUTTON. |
60 * @see SCHEMES#BUTTON_CONTRAST | 60 * @see SCHEMES#BUTTON_CONTRAST |
61 */ | 61 */ |
62 private static const Border BUTTON_CONTRAST_; | 62 private static Border BUTTON_CONTRAST_; |
63 public static ButtonScheme BUTTON_CONTRAST(){ | 63 public static Border BUTTON_CONTRAST(){ |
64 if( BUTTON_CONTRAST_ is null ){ | 64 if( BUTTON_CONTRAST_ is null ){ |
65 synchronized( ButtonScheme.classinfo ){ | 65 synchronized( ButtonScheme.classinfo ){ |
66 if( BUTTON_CONTRAST_ is null ){ | 66 if( BUTTON_CONTRAST_ is null ){ |
67 BUTTON_CONTRAST_ = new ButtonBorder(SCHEMES.BUTTON_CONTRAST); | 67 BUTTON_CONTRAST_ = new ButtonBorder(SCHEMES.BUTTON_CONTRAST); |
68 } | 68 } |
72 } | 72 } |
73 /** | 73 /** |
74 * Used for scrollbar buttons. | 74 * Used for scrollbar buttons. |
75 * @see SCHEMES#BUTTON_SCROLLBAR | 75 * @see SCHEMES#BUTTON_SCROLLBAR |
76 */ | 76 */ |
77 private static const Border BUTTON_SCROLLBAR_; | 77 private static Border BUTTON_SCROLLBAR_; |
78 public static ButtonScheme BUTTON_SCROLLBAR(){ | 78 public static Border BUTTON_SCROLLBAR(){ |
79 if( BUTTON_SCROLLBAR_ is null ){ | 79 if( BUTTON_SCROLLBAR_ is null ){ |
80 synchronized( ButtonScheme.classinfo ){ | 80 synchronized( ButtonScheme.classinfo ){ |
81 if( BUTTON_SCROLLBAR_ is null ){ | 81 if( BUTTON_SCROLLBAR_ is null ){ |
82 BUTTON_SCROLLBAR_ = new ButtonBorder(SCHEMES.BUTTON_SCROLLBAR); | 82 BUTTON_SCROLLBAR_ = new ButtonBorder(SCHEMES.BUTTON_SCROLLBAR); |
83 } | 83 } |
87 } | 87 } |
88 /** | 88 /** |
89 * Used for toolbar buttons. | 89 * Used for toolbar buttons. |
90 * @see SCHEMES#TOOLBAR | 90 * @see SCHEMES#TOOLBAR |
91 */ | 91 */ |
92 private static const Border TOOLBAR_; | 92 private static Border TOOLBAR_; |
93 public static ButtonScheme TOOLBAR(){ | 93 public static Border TOOLBAR(){ |
94 if( TOOLBAR_ is null ){ | 94 if( TOOLBAR_ is null ){ |
95 synchronized( ButtonScheme.classinfo ){ | 95 synchronized( ButtonScheme.classinfo ){ |
96 if( TOOLBAR_ is null ){ | 96 if( TOOLBAR_ is null ){ |
97 TOOLBAR_ = new ButtonBorder(SCHEMES.TOOLBAR); | 97 TOOLBAR_ = new ButtonBorder(SCHEMES.TOOLBAR); |
98 } | 98 } |
224 public struct SCHEMES { | 224 public struct SCHEMES { |
225 | 225 |
226 /** | 226 /** |
227 * Contrast button scheme | 227 * Contrast button scheme |
228 */ | 228 */ |
229 private static const ButtonScheme BUTTON_CONTRAST_; | 229 private static ButtonScheme BUTTON_CONTRAST_; |
230 static ButtonScheme BUTTON_CONTRAST(){ | 230 static ButtonScheme BUTTON_CONTRAST(){ |
231 if( BUTTON_CONTRAST_ is null ){ | 231 if( BUTTON_CONTRAST_ is null ){ |
232 synchronized( ButtonScheme.classinfo ){ | 232 synchronized( ButtonScheme.classinfo ){ |
233 if( BUTTON_CONTRAST_ is null ){ | 233 if( BUTTON_CONTRAST_ is null ){ |
234 BUTTON_CONTRAST_ = new ButtonScheme( | 234 BUTTON_CONTRAST_ = new ButtonScheme( |
241 return BUTTON_CONTRAST_; | 241 return BUTTON_CONTRAST_; |
242 } | 242 } |
243 /** | 243 /** |
244 * Regular button scheme | 244 * Regular button scheme |
245 */ | 245 */ |
246 private static const ButtonScheme BUTTON_; | 246 private static ButtonScheme BUTTON_; |
247 static ButtonScheme BUTTON(){ | 247 static ButtonScheme BUTTON(){ |
248 if( BUTTON_ is null ){ | 248 if( BUTTON_ is null ){ |
249 synchronized( ButtonScheme.classinfo ){ | 249 synchronized( ButtonScheme.classinfo ){ |
250 if( BUTTON_ is null ){ | 250 if( BUTTON_ is null ){ |
251 BUTTON_ = new ButtonScheme( | 251 BUTTON_ = new ButtonScheme( |
258 return BUTTON_; | 258 return BUTTON_; |
259 } | 259 } |
260 /** | 260 /** |
261 * Toolbar button scheme | 261 * Toolbar button scheme |
262 */ | 262 */ |
263 private static const ButtonScheme TOOLBAR_; | 263 private static ButtonScheme TOOLBAR_; |
264 static ButtonScheme TOOLBAR(){ | 264 static ButtonScheme TOOLBAR(){ |
265 if( TOOLBAR_ is null ){ | 265 if( TOOLBAR_ is null ){ |
266 synchronized( ButtonScheme.classinfo ){ | 266 synchronized( ButtonScheme.classinfo ){ |
267 if( TOOLBAR_ is null ){ | 267 if( TOOLBAR_ is null ){ |
268 TOOLBAR_ = new ButtonScheme( | 268 TOOLBAR_ = new ButtonScheme( |
275 return TOOLBAR_; | 275 return TOOLBAR_; |
276 } | 276 } |
277 /** | 277 /** |
278 * Scrollbar button scheme | 278 * Scrollbar button scheme |
279 */ | 279 */ |
280 private static const ButtonScheme BUTTON_SCROLLBAR_; | 280 private static ButtonScheme BUTTON_SCROLLBAR_; |
281 static ButtonScheme BUTTON_SCROLLBAR(){ | 281 static ButtonScheme BUTTON_SCROLLBAR(){ |
282 if( BUTTON_SCROLLBAR_ is null ){ | 282 if( BUTTON_SCROLLBAR_ is null ){ |
283 synchronized( ButtonScheme.classinfo ){ | 283 synchronized( ButtonScheme.classinfo ){ |
284 if( BUTTON_SCROLLBAR_ is null ){ | 284 if( BUTTON_SCROLLBAR_ is null ){ |
285 BUTTON_SCROLLBAR_ = new ButtonScheme( | 285 BUTTON_SCROLLBAR_ = new ButtonScheme( |