Lines 28-33
Link Here
|
28 |
import org.eclipse.swt.layout.FormLayout; |
28 |
import org.eclipse.swt.layout.FormLayout; |
29 |
import org.eclipse.swt.layout.GridData; |
29 |
import org.eclipse.swt.layout.GridData; |
30 |
import org.eclipse.swt.layout.GridLayout; |
30 |
import org.eclipse.swt.layout.GridLayout; |
|
|
31 |
import org.eclipse.swt.widgets.Button; |
31 |
import org.eclipse.swt.widgets.Composite; |
32 |
import org.eclipse.swt.widgets.Composite; |
32 |
import org.eclipse.swt.widgets.Control; |
33 |
import org.eclipse.swt.widgets.Control; |
33 |
import org.eclipse.swt.widgets.Display; |
34 |
import org.eclipse.swt.widgets.Display; |
Lines 89-96
Link Here
|
89 |
private RGB titleAreaRGB; |
90 |
private RGB titleAreaRGB; |
90 |
|
91 |
|
91 |
Color titleAreaColor; |
92 |
Color titleAreaColor; |
|
|
93 |
|
94 |
private String description = ""; //$NON-NLS-1$ |
92 |
|
95 |
|
93 |
private String message = ""; //$NON-NLS-1$ |
96 |
private String message; |
|
|
97 |
|
98 |
private int messageType = IMessageProvider.NONE; |
94 |
|
99 |
|
95 |
private String errorMessage; |
100 |
private String errorMessage; |
96 |
|
101 |
|
Lines 103-110
Link Here
|
103 |
private Image messageImage; |
108 |
private Image messageImage; |
104 |
|
109 |
|
105 |
private boolean showingError = false; |
110 |
private boolean showingError = false; |
|
|
111 |
|
112 |
private boolean showingMessage = false; |
106 |
|
113 |
|
107 |
private boolean titleImageLargest = true; |
114 |
private boolean titleImageLargest = true; |
|
|
115 |
|
116 |
private boolean dialogComplete = true; |
108 |
|
117 |
|
109 |
private int messageLabelHeight; |
118 |
private int messageLabelHeight; |
110 |
|
119 |
|
Lines 118-123
Link Here
|
118 |
*/ |
127 |
*/ |
119 |
public TitleAreaDialog(Shell parentShell) { |
128 |
public TitleAreaDialog(Shell parentShell) { |
120 |
super(parentShell); |
129 |
super(parentShell); |
|
|
130 |
System.out.println("here"); //$NON-NLS-1$ |
121 |
} |
131 |
} |
122 |
|
132 |
|
123 |
/* |
133 |
/* |
Lines 372-387
Link Here
|
372 |
// we were previously showing an error |
382 |
// we were previously showing an error |
373 |
showingError = false; |
383 |
showingError = false; |
374 |
} |
384 |
} |
375 |
// show the message |
385 |
// show the description or message |
376 |
// avoid calling setMessage in case it is overridden to call |
386 |
// avoid calling setDescription or setMessage in case it is overridden to call |
377 |
// setErrorMessage, |
387 |
// setErrorMessage, |
378 |
// which would result in a recursive infinite loop |
388 |
// which would result in a recursive infinite loop |
379 |
if (message == null) // this should probably never happen since |
389 |
if (showingMessage) { |
380 |
// setMessage does this conversion.... |
390 |
updateMessage(message); |
381 |
message = ""; //$NON-NLS-1$ |
391 |
messageImageLabel.setImage(messageImage); |
382 |
updateMessage(message); |
392 |
setImageLabelVisible(messageImage != null); |
383 |
messageImageLabel.setImage(messageImage); |
393 |
} |
384 |
setImageLabelVisible(messageImage != null); |
394 |
else { |
|
|
395 |
updateMessage(description); |
396 |
messageImageLabel.setImage(null); |
397 |
setImageLabelVisible(false); |
398 |
} |
385 |
} else { |
399 |
} else { |
386 |
// Add in a space for layout purposes but do not |
400 |
// Add in a space for layout purposes but do not |
387 |
// change the instance variable |
401 |
// change the instance variable |
Lines 492-497
Link Here
|
492 |
*/ |
506 |
*/ |
493 |
public void setMessage(String newMessage, int newType) { |
507 |
public void setMessage(String newMessage, int newType) { |
494 |
Image newImage = null; |
508 |
Image newImage = null; |
|
|
509 |
messageType = newType; |
495 |
if (newMessage != null) { |
510 |
if (newMessage != null) { |
496 |
switch (newType) { |
511 |
switch (newType) { |
497 |
case IMessageProvider.NONE: |
512 |
case IMessageProvider.NONE: |
Lines 518-540
Link Here
|
518 |
*/ |
533 |
*/ |
519 |
private void showMessage(String newMessage, Image newImage) { |
534 |
private void showMessage(String newMessage, Image newImage) { |
520 |
// Any change? |
535 |
// Any change? |
521 |
if (message.equals(newMessage) && messageImage == newImage) { |
536 |
if ((message == null ? newMessage == null : message |
|
|
537 |
.equals(newMessage)) && messageImage == newImage) { |
522 |
return; |
538 |
return; |
523 |
} |
539 |
} |
524 |
message = newMessage; |
540 |
message = newMessage; |
525 |
if (message == null) |
|
|
526 |
message = "";//$NON-NLS-1$ |
527 |
// Message string to be shown - if there is an image then add in |
528 |
// a space to the message for layout purposes |
529 |
String shownMessage = (newImage == null) ? message : " " + message; //$NON-NLS-1$ |
530 |
messageImage = newImage; |
541 |
messageImage = newImage; |
531 |
if (!showingError) { |
542 |
|
532 |
// we are not showing an error |
543 |
if (message == null) { |
533 |
updateMessage(shownMessage); |
544 |
if (showingMessage) |
534 |
messageImageLabel.setImage(messageImage); |
545 |
showingMessage = false; |
535 |
setImageLabelVisible(messageImage != null); |
546 |
if (!showingError) { |
536 |
layoutForNewMessage(); |
547 |
updateMessage(description); |
|
|
548 |
} |
537 |
} |
549 |
} |
|
|
550 |
else { |
551 |
if (!showingMessage) |
552 |
showingMessage = true; |
553 |
// Message string to be shown - if there is an image then add in |
554 |
// a space to the message for layout purposes |
555 |
String shownMessage = (newImage == null) ? message : " " + message; //$NON-NLS-1$ |
556 |
if (!showingError) { |
557 |
// we are not showing an error |
558 |
updateMessage(shownMessage); |
559 |
} |
560 |
} |
561 |
messageImageLabel.setImage(messageImage); |
562 |
setImageLabelVisible(messageImage != null); |
563 |
layoutForNewMessage(); |
538 |
} |
564 |
} |
539 |
|
565 |
|
540 |
/** |
566 |
/** |
Lines 621-624
Link Here
|
621 |
childData.bottom = new FormAttachment(100, 0); |
647 |
childData.bottom = new FormAttachment(100, 0); |
622 |
workArea.setLayoutData(childData); |
648 |
workArea.setLayoutData(childData); |
623 |
} |
649 |
} |
|
|
650 |
|
651 |
protected Control createButtonBar(Composite parent) { |
652 |
Control control = super.createButtonBar(parent); |
653 |
Button okButton = getButton(IDialogConstants.OK_ID); |
654 |
if (okButton != null) { |
655 |
okButton.setEnabled(dialogComplete); |
656 |
} |
657 |
return control; |
658 |
} |
659 |
|
660 |
/** |
661 |
* Sets whether this dialog is complete. |
662 |
* @param complete |
663 |
* true if this dialog is complete, and and false otherwise |
664 |
*/ |
665 |
public void setDialogComplete(boolean complete) { |
666 |
Button okButton = getButton(IDialogConstants.OK_ID); |
667 |
if (okButton != null) |
668 |
okButton.setEnabled(complete); |
669 |
dialogComplete = complete; |
670 |
} |
671 |
|
672 |
/** |
673 |
* Returns the value of an internal state variable set by setPageComplete. |
674 |
* @return true if this dialog is complete, and false otherwise |
675 |
*/ |
676 |
public boolean isDialogComplete() { |
677 |
return dialogComplete; |
678 |
} |
679 |
|
680 |
/** |
681 |
* Sets this dialog description text. |
682 |
* @param description |
683 |
* the description text for this dialog page, or null if none |
684 |
*/ |
685 |
public void setDescription(String description) { |
686 |
showDescription(description); |
687 |
} |
688 |
|
689 |
private void showDescription(String newDescription) { |
690 |
// Any change? |
691 |
if (description.equals(newDescription)) { |
692 |
return; |
693 |
} |
694 |
description = newDescription; |
695 |
if (description == null) { |
696 |
description = ""; //$NON-NLS-1$ |
697 |
} |
698 |
|
699 |
if (!showingError && !showingMessage) { |
700 |
updateMessage(description); |
701 |
messageImageLabel.setImage(null); |
702 |
setImageLabelVisible(false); |
703 |
layoutForNewMessage(); |
704 |
} |
705 |
} |
706 |
|
707 |
/** |
708 |
* Returns this dialog description text. |
709 |
* @return the description text for this dialog, or null if none |
710 |
*/ |
711 |
public String getDescription() { |
712 |
return description; |
713 |
} |
714 |
|
715 |
/** |
716 |
* Returns the current message for this dialog. |
717 |
* A message provides instruction or information to the user, as opposed to an error message which should describe some error state. |
718 |
* @return the message, or null if none |
719 |
*/ |
720 |
public String getMessage() { |
721 |
return message; |
722 |
} |
723 |
|
724 |
/** |
725 |
* Returns a value indicating if the message is a an information message, a warning message, or an error message. |
726 |
* Returns one of NONE,INFORMATION, WARNING, or ERROR. |
727 |
* @return the message type |
728 |
*/ |
729 |
public int getMessageType() { |
730 |
return messageType; |
731 |
} |
732 |
|
733 |
/** |
734 |
* Returns the current error message for this dialog. May be null to indicate no error message. |
735 |
* An error message should describe some error state, as opposed to a message which may simply provide instruction or information to the user. |
736 |
* @return the error message, or null if none |
737 |
*/ |
738 |
public String getErrorMessage() { |
739 |
return errorMessage; |
740 |
} |
624 |
} |
741 |
} |