Mercurial > projects > dwt-addons
comparison dwtx/ui/internal/forms/widgets/FormHeading.d @ 76:e193036d82c9
Fix continue porting
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Sat, 24 May 2008 06:18:55 +0200 |
parents | 5d489b9f966c |
children | 04b47443bb01 |
comparison
equal
deleted
inserted
replaced
75:5d489b9f966c | 76:e193036d82c9 |
---|---|
11 * Frank Benoit <benoit@tionex.de> | 11 * Frank Benoit <benoit@tionex.de> |
12 *******************************************************************************/ | 12 *******************************************************************************/ |
13 module dwtx.ui.internal.forms.widgets.FormHeading; | 13 module dwtx.ui.internal.forms.widgets.FormHeading; |
14 | 14 |
15 import dwtx.ui.internal.forms.widgets.TitleRegion; | 15 import dwtx.ui.internal.forms.widgets.TitleRegion; |
16 import dwtx.ui.internal.forms.widgets.FormImages; | |
17 import dwtx.ui.internal.forms.widgets.FormsResources; | |
16 | 18 |
17 import dwt.DWT; | 19 import dwt.DWT; |
18 import dwt.custom.CLabel; | 20 import dwt.custom.CLabel; |
19 import dwt.dnd.DragSourceListener; | 21 import dwt.dnd.DragSourceListener; |
20 import dwt.dnd.DropTargetListener; | 22 import dwt.dnd.DropTargetListener; |
88 | 90 |
89 private GradientInfo gradientInfo; | 91 private GradientInfo gradientInfo; |
90 | 92 |
91 private ToolBarManager toolBarManager; | 93 private ToolBarManager toolBarManager; |
92 | 94 |
93 private SizeCache toolbarCache = new SizeCache(); | 95 private SizeCache toolbarCache; |
94 | 96 |
95 private SizeCache clientCache = new SizeCache(); | 97 private SizeCache clientCache; |
96 | 98 |
97 private SizeCache messageCache = new SizeCache(); | 99 private SizeCache messageCache; |
98 | 100 |
99 private TitleRegion titleRegion; | 101 private TitleRegion titleRegion; |
100 | 102 |
101 private MessageRegion messageRegion; | 103 private MessageRegion messageRegion; |
102 | 104 |
113 String details = getMessageType() is 0 ? null : MessageManager | 115 String details = getMessageType() is 0 ? null : MessageManager |
114 .createDetails(getChildrenMessages()); | 116 .createDetails(getChildrenMessages()); |
115 if (messageRegion !is null) | 117 if (messageRegion !is null) |
116 messageRegion.updateToolTip(details); | 118 messageRegion.updateToolTip(details); |
117 if (getMessageType() > 0 | 119 if (getMessageType() > 0 |
118 && (details is null || details.length() is 0)) | 120 && (details is null || details.length is 0)) |
119 details = getMessage(); | 121 details = getMessage(); |
120 titleRegion.updateToolTip(details); | 122 titleRegion.updateToolTip(details); |
121 } | 123 } |
122 } | 124 } |
123 | 125 |
339 } | 341 } |
340 } | 342 } |
341 return size; | 343 return size; |
342 } | 344 } |
343 } | 345 } |
344 | 346 this(){ |
347 toolbarCache = new SizeCache(); | |
348 clientCache = new SizeCache(); | |
349 messageCache = new SizeCache(); | |
350 } | |
345 /* (non-Javadoc) | 351 /* (non-Javadoc) |
346 * @see dwt.widgets.Control#forceFocus() | 352 * @see dwt.widgets.Control#forceFocus() |
347 */ | 353 */ |
348 public bool forceFocus() { | 354 public bool forceFocus() { |
349 return false; | 355 return false; |
424 return; | 430 return; |
425 } | 431 } |
426 ensureControlExists(); | 432 ensureControlExists(); |
427 if (needHyperlink()) { | 433 if (needHyperlink()) { |
428 messageHyperlink.setText(newMessage); | 434 messageHyperlink.setText(newMessage); |
429 messageHyperlink.setHref(messages); | 435 messageHyperlink.setHref(new ArrayWrapperT!(IMessage)(messages)); |
430 } else { | 436 } else { |
431 messageLabel.setText(newMessage); | 437 messageLabel.setText(newMessage); |
432 } | 438 } |
433 if (oldType !is newType) | 439 if (oldType !is newType) |
434 updateForeground(); | 440 updateForeground(); |
479 } | 485 } |
480 | 486 |
481 public void addMessageHyperlinkListener(IHyperlinkListener listener) { | 487 public void addMessageHyperlinkListener(IHyperlinkListener listener) { |
482 if (listeners is null) | 488 if (listeners is null) |
483 listeners = new ListenerList(); | 489 listeners = new ListenerList(); |
484 listeners.add(listener); | 490 listeners.add(cast(Object)listener); |
485 ensureControlExists(); | 491 ensureControlExists(); |
486 if (messageHyperlink !is null) | 492 if (messageHyperlink !is null) |
487 messageHyperlink.addHyperlinkListener(listener); | 493 messageHyperlink.addHyperlinkListener(listener); |
488 if (listeners.size() is 1) | 494 if (listeners.size() is 1) |
489 updateForeground(); | 495 updateForeground(); |
490 } | 496 } |
491 | 497 |
492 private void removeMessageHyperlinkListener(IHyperlinkListener listener) { | 498 private void removeMessageHyperlinkListener(IHyperlinkListener listener) { |
493 if (listeners !is null) { | 499 if (listeners !is null) { |
494 listeners.remove(listener); | 500 listeners.remove(cast(Object)listener); |
495 if (messageHyperlink !is null) | 501 if (messageHyperlink !is null) |
496 messageHyperlink.removeHyperlinkListener(listener); | 502 messageHyperlink.removeHyperlinkListener(listener); |
497 if (listeners.isEmpty()) | 503 if (listeners.isEmpty()) |
498 listeners = null; | 504 listeners = null; |
499 ensureControlExists(); | 505 ensureControlExists(); |
508 messageLabel.setVisible(false); | 514 messageLabel.setVisible(false); |
509 if (messageHyperlink is null) { | 515 if (messageHyperlink is null) { |
510 messageHyperlink = new Hyperlink(this.outer, DWT.NULL); | 516 messageHyperlink = new Hyperlink(this.outer, DWT.NULL); |
511 messageHyperlink.setUnderlined(true); | 517 messageHyperlink.setUnderlined(true); |
512 messageHyperlink.setText(message); | 518 messageHyperlink.setText(message); |
513 messageHyperlink.setHref(messages); | 519 messageHyperlink.setHref(new ArrayWrapperT!(IMessage)(messages)); |
514 Object[] llist = listeners.getListeners(); | 520 Object[] llist = listeners.getListeners(); |
515 for (int i = 0; i < llist.length; i++) | 521 for (int i = 0; i < llist.length; i++) |
516 messageHyperlink | 522 messageHyperlink |
517 .addHyperlinkListener(cast(IHyperlinkListener) llist[i]); | 523 .addHyperlinkListener(cast(IHyperlinkListener) llist[i]); |
518 if (messageToolTipManager !is null) | 524 if (messageToolTipManager !is null) |
519 messageToolTipManager.createToolTip(messageHyperlink, false); | 525 messageToolTipManager.createToolTip(messageHyperlink, false); |
520 } else if (!messageHyperlink.getVisible()) { | 526 } else if (!messageHyperlink.getVisible()) { |
521 messageHyperlink.setText(message); | 527 messageHyperlink.setText(message); |
522 messageHyperlink.setHref(messages); | 528 messageHyperlink.setHref(new ArrayWrapperT!(IMessage)(messages)); |
523 messageHyperlink.setVisible(true); | 529 messageHyperlink.setVisible(true); |
524 } | 530 } |
525 } else { | 531 } else { |
526 // need a label | 532 // need a label |
527 if (messageHyperlink !is null) | 533 if (messageHyperlink !is null) |
989 layout(); | 995 layout(); |
990 } | 996 } |
991 | 997 |
992 public void putColor(String key, Color color) { | 998 public void putColor(String key, Color color) { |
993 if (color is null) | 999 if (color is null) |
994 colors.remove(key); | 1000 colors.removeKey(key); |
995 else | 1001 else |
996 colors.put(key, color); | 1002 colors.add(key, color); |
997 } | 1003 } |
998 | 1004 |
999 public Color getColor(String key) { | 1005 public Color getColor(String key) { |
1000 return cast(Color) colors.get(key); | 1006 return cast(Color) colors.get(key); |
1001 } | 1007 } |