View | Details | Raw Unified | Return to bug 168769 | Differences between
and this patch

Collapse All | Expand All

(-)src/org/eclipse/ui/forms/widgets/Form.java (-2 / +24 lines)
Lines 11-16 Link Here
11
package org.eclipse.ui.forms.widgets;
11
package org.eclipse.ui.forms.widgets;
12
12
13
import org.eclipse.jface.action.IToolBarManager;
13
import org.eclipse.jface.action.IToolBarManager;
14
import org.eclipse.jface.dialogs.IMessageContainerWithDetails;
14
import org.eclipse.swt.SWT;
15
import org.eclipse.swt.SWT;
15
import org.eclipse.swt.graphics.Color;
16
import org.eclipse.swt.graphics.Color;
16
import org.eclipse.swt.graphics.Font;
17
import org.eclipse.swt.graphics.Font;
Lines 76-82 Link Here
76
 * 
77
 * 
77
 * @since 3.0
78
 * @since 3.0
78
 */
79
 */
79
public class Form extends Composite {
80
public class Form extends Composite implements IMessageContainerWithDetails {
80
	private FormHeading head;
81
	private FormHeading head;
81
82
82
	private Composite body;
83
	private Composite body;
Lines 537-543 Link Here
537
	 */
538
	 */
538
539
539
	public void setMessage(String newMessage, int newType) {
540
	public void setMessage(String newMessage, int newType) {
540
		head.setMessage(newMessage, newType);
541
		setMessage(newMessage, null, newType);
541
	}
542
	}
542
543
543
	/**
544
	/**
Lines 564-567 Link Here
564
	public void setBusy(boolean busy) {
565
	public void setBusy(boolean busy) {
565
		head.setBusy(busy);
566
		head.setBusy(busy);
566
	}
567
	}
568
569
	/* (non-Javadoc)
570
	 * @see org.eclipse.jface.dialogs.IMessageContainerWithDetails#setMessage(java.lang.String, java.lang.String, int)
571
	 */
572
	public void setMessage(String message, String details, int type) {
573
		head.setMessage(message, details, type);
574
	}
575
576
	/* (non-Javadoc)
577
	 * @see org.eclipse.jface.dialogs.IMessageProvider#getMessage()
578
	 */
579
	public String getMessage() {
580
		return head.getMessage();
581
	}
582
583
	/* (non-Javadoc)
584
	 * @see org.eclipse.jface.dialogs.IMessageProvider#getMessageType()
585
	 */
586
	public int getMessageType() {
587
		return head.getMessageType();
588
	}
567
}
589
}
(-)src/org/eclipse/ui/internal/forms/widgets/FormHeading.java (-4 / +38 lines)
Lines 120-125 Link Here
120
		static final int CLOSING = 3;
120
		static final int CLOSING = 3;
121
121
122
		private CLabel label;
122
		private CLabel label;
123
		
124
		private int type;
123
125
124
		private ImageHyperlink rlink;
126
		private ImageHyperlink rlink;
125
127
Lines 236-245 Link Here
236
			label.getParent().setBackground(bg);
238
			label.getParent().setBackground(bg);
237
			createMinimizedImages();
239
			createMinimizedImages();
238
		}
240
		}
241
		
242
		public String getText() {
243
			return this.label.getText();
244
		}
239
245
240
		public void setText(String text) {
246
		public void setText(String text) {
241
			this.label.setText(text);
247
			this.label.setText(text);
242
		}
248
		}
249
		
250
		public void setDetails(String details) {
251
			this.label.setToolTipText(details);
252
		}
243
253
244
		public void setImage(Image image) {
254
		public void setImage(Image image) {
245
			this.label.setImage(image);
255
			this.label.setImage(image);
Lines 316-321 Link Here
316
			gc.fillRectangle(x, y, 9, 3);
326
			gc.fillRectangle(x, y, 9, 3);
317
			gc.drawRectangle(x, y, 9, 3);
327
			gc.drawRectangle(x, y, 9, 3);
318
		}
328
		}
329
330
		public int getType() {
331
			return type;
332
		}
333
334
		public void setType(int type) {
335
			this.type = type;
336
		}
319
	}
337
	}
320
338
321
	private class FormHeadingLayout extends Layout implements ILayoutExtension {
339
	private class FormHeadingLayout extends Layout implements ILayoutExtension {
Lines 977-983 Link Here
977
	 * @since 3.2
995
	 * @since 3.2
978
	 */
996
	 */
979
	public void setMessage(String message) {
997
	public void setMessage(String message) {
980
		this.setMessage(message, IMessageProvider.NONE);
998
		this.setMessage(message, null, IMessageProvider.NONE);
981
	}
999
	}
982
1000
983
	/**
1001
	/**
Lines 997-1003 Link Here
997
	 * @since 3.2
1015
	 * @since 3.2
998
	 */
1016
	 */
999
1017
1000
	public void setMessage(String newMessage, int newType) {
1018
	public void setMessage(String newMessage, String details, int newType) {
1019
		if (isDisposed())
1020
			return;
1001
		Image newImage = null;
1021
		Image newImage = null;
1002
		if (newMessage != null) {
1022
		if (newMessage != null) {
1003
			switch (newType) {
1023
			switch (newType) {
Lines 1016-1025 Link Here
1016
				break;
1036
				break;
1017
			}
1037
			}
1018
		}
1038
		}
1019
		showMessage(newMessage, newImage);
1039
		showMessage(newMessage, details, newImage, newType);
1040
	}
1041
	
1042
	public String getMessage() {
1043
		if (messageArea==null || messageArea.isVisible())
1044
			return null;
1045
		return messageArea.getText();
1046
	}
1047
	
1048
	public int getMessageType() {
1049
		if (messageArea==null || messageArea.isVisible())
1050
			return 0;
1051
		return messageArea.getType();
1020
	}
1052
	}
1021
1053
1022
	private void showMessage(String newMessage, Image newImage) {
1054
	private void showMessage(String newMessage, String details, Image newImage, int newType) {
1023
		if (newMessage == null) {
1055
		if (newMessage == null) {
1024
			if (messageArea != null)
1056
			if (messageArea != null)
1025
				setMessageAreaVisible(false);
1057
				setMessageAreaVisible(false);
Lines 1027-1033 Link Here
1027
			if (messageArea==null)
1059
			if (messageArea==null)
1028
				createMessageArea();
1060
				createMessageArea();
1029
			messageArea.setText(newMessage);
1061
			messageArea.setText(newMessage);
1062
			messageArea.setDetails(details);
1030
			messageArea.setImage(newImage);
1063
			messageArea.setImage(newImage);
1064
			messageArea.setType(newType);
1031
			setMessageAreaVisible(true);
1065
			setMessageAreaVisible(true);
1032
		}
1066
		}
1033
	}
1067
	}

Return to bug 168769