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

Collapse All | Expand All

(-)src/org/eclipse/ecf/internal/presence/ui/preferences/PreferenceConstants.java (+1 lines)
Lines 16-19 Link Here
16
 */
16
 */
17
public class PreferenceConstants {
17
public class PreferenceConstants {
18
	public static final String CHATROOM_SHOW_USER_PRESENCE = "chatroom.user.presence.visible";
18
	public static final String CHATROOM_SHOW_USER_PRESENCE = "chatroom.user.presence.visible";
19
	public static final String CHATROOM_HYPERLINK_BUG_URL = "chatroom.hyperlink.bug.url";
19
}
20
}
(-)src/org/eclipse/ecf/internal/presence/ui/preferences/PreferenceInitializer.java (+4 lines)
Lines 21-32 Link Here
21
 */
21
 */
22
public class PreferenceInitializer extends AbstractPreferenceInitializer {
22
public class PreferenceInitializer extends AbstractPreferenceInitializer {
23
23
24
	public static final String HYPERLINK_BUG_DEFAULT_URL = "https://bugs.eclipse.org/bugs/show_bug.cgi?id=<bug#>";
25
24
	/**
26
	/**
25
	 * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
27
	 * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
26
	 */
28
	 */
27
	public void initializeDefaultPreferences() {
29
	public void initializeDefaultPreferences() {
28
		IPreferenceStore store = Activator.getDefault().getPreferenceStore();
30
		IPreferenceStore store = Activator.getDefault().getPreferenceStore();
29
		store.setDefault(PreferenceConstants.CHATROOM_SHOW_USER_PRESENCE, false);
31
		store.setDefault(PreferenceConstants.CHATROOM_SHOW_USER_PRESENCE, false);
32
		store.setDefault(PreferenceConstants.CHATROOM_HYPERLINK_BUG_URL,
33
				HYPERLINK_BUG_DEFAULT_URL);
30
	}
34
	}
31
35
32
}
36
}
(-)src/org/eclipse/ecf/internal/presence/ui/preferences/ChatRoomPreferencePage.java (-2 / +76 lines)
Lines 14-39 Link Here
14
import org.eclipse.ecf.internal.presence.ui.Activator;
14
import org.eclipse.ecf.internal.presence.ui.Activator;
15
import org.eclipse.ecf.internal.presence.ui.Messages;
15
import org.eclipse.ecf.internal.presence.ui.Messages;
16
import org.eclipse.jface.preference.BooleanFieldEditor;
16
import org.eclipse.jface.preference.BooleanFieldEditor;
17
import org.eclipse.jface.preference.FieldEditor;
17
import org.eclipse.jface.preference.FieldEditorPreferencePage;
18
import org.eclipse.jface.preference.FieldEditorPreferencePage;
19
import org.eclipse.jface.preference.StringFieldEditor;
20
import org.eclipse.jface.util.PropertyChangeEvent;
21
import org.eclipse.osgi.util.NLS;
22
import org.eclipse.swt.SWT;
23
import org.eclipse.swt.layout.GridData;
24
import org.eclipse.swt.layout.GridLayout;
25
import org.eclipse.swt.widgets.Group;
18
import org.eclipse.ui.IWorkbench;
26
import org.eclipse.ui.IWorkbench;
19
import org.eclipse.ui.IWorkbenchPreferencePage;
27
import org.eclipse.ui.IWorkbenchPreferencePage;
20
28
21
public class ChatRoomPreferencePage extends FieldEditorPreferencePage implements
29
public class ChatRoomPreferencePage extends FieldEditorPreferencePage implements
22
		IWorkbenchPreferencePage {
30
		IWorkbenchPreferencePage {
23
31
32
	public static final String BUG_NUMBER = "<bug#>";
33
34
	private StringFieldEditor bugUrl;
35
24
	public ChatRoomPreferencePage() {
36
	public ChatRoomPreferencePage() {
25
		super(GRID);
37
		super(GRID);
26
		setPreferenceStore(Activator.getDefault().getPreferenceStore());
38
		setPreferenceStore(Activator.getDefault().getPreferenceStore());
27
	}
39
	}
28
40
29
	/* (non-Javadoc)
41
	/*
42
	 * (non-Javadoc)
43
	 * 
30
	 * @see org.eclipse.jface.preference.FieldEditorPreferencePage#createFieldEditors()
44
	 * @see org.eclipse.jface.preference.FieldEditorPreferencePage#createFieldEditors()
31
	 */
45
	 */
32
	public void createFieldEditors() {
46
	public void createFieldEditors() {
47
		Group messageGroup = new Group(getFieldEditorParent(),SWT.NONE);
48
		messageGroup.setText("Chat Room Messages");
49
		
33
		addField(new BooleanFieldEditor(
50
		addField(new BooleanFieldEditor(
34
				PreferenceConstants.CHATROOM_SHOW_USER_PRESENCE,
51
				PreferenceConstants.CHATROOM_SHOW_USER_PRESENCE,
35
				Messages.ChatRoomPreferencePage_CHATROOM_SHOW_USER_PRESENCE_TEXT,
52
				Messages.ChatRoomPreferencePage_CHATROOM_SHOW_USER_PRESENCE_TEXT,
36
				getFieldEditorParent()));
53
				messageGroup));
54
55
		GridLayout messageGroupLayout = new GridLayout();
56
		messageGroup.setLayout(messageGroupLayout);
57
		GridData messageGroupGridData = new GridData(GridData.FILL_HORIZONTAL);
58
		messageGroupGridData.horizontalSpan = 2;
59
		messageGroup.setLayoutData(messageGroupGridData);
60
		
61
		Group hyperlinkGroup = new Group(getFieldEditorParent(),SWT.NONE);
62
		hyperlinkGroup.setText("Hyperlinks");
63
64
		bugUrl = new StringFieldEditor(
65
				PreferenceConstants.CHATROOM_HYPERLINK_BUG_URL,
66
				Messages.ChatRoomPreferencePage_CHATROOM_HYPERLINK_BUG_URL,
67
				hyperlinkGroup);
68
		addField(bugUrl);
69
		
70
		GridLayout hyperlinkGroupLayout = new GridLayout();
71
		hyperlinkGroup.setLayout(hyperlinkGroupLayout);
72
		GridData hyperlinkGroupGridData = new GridData(GridData.FILL_HORIZONTAL);
73
		hyperlinkGroupGridData.horizontalSpan = 2;
74
		hyperlinkGroup.setLayoutData(hyperlinkGroupGridData);
37
	}
75
	}
38
76
39
	/*
77
	/*
Lines 42-45 Link Here
42
	public void init(IWorkbench workbench) {
80
	public void init(IWorkbench workbench) {
43
	}
81
	}
44
82
83
	/*
84
	 * (non-Javadoc)
85
	 * 
86
	 * @see org.eclipse.jface.preference.FieldEditorPreferencePage#checkState()
87
	 */
88
	protected void checkState() {
89
		super.checkState();
90
91
		if (!isValid())
92
			return;
93
		if (bugUrl.getStringValue().indexOf(BUG_NUMBER) < 0) {
94
			setErrorMessage(NLS
95
					.bind(
96
							Messages.ChatRoomPreferencePage_CHATROOM_HYPERLINK_BUG_URL_ERROR,
97
							BUG_NUMBER));
98
			setValid(false);
99
		} else {
100
			setErrorMessage(null);
101
			setValid(true);
102
		}
103
	}
104
105
	/*
106
	 * (non-Javadoc)
107
	 * 
108
	 * @see org.eclipse.jface.preference.FieldEditorPreferencePage#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
109
	 */
110
	public void propertyChange(PropertyChangeEvent event) {
111
		super.propertyChange(event);
112
113
		if (event.getProperty().equals(FieldEditor.VALUE)) {
114
			if (event.getSource() == bugUrl)
115
				checkState();
116
		}
117
	}
118
45
}
119
}
(-)src/org/eclipse/ecf/internal/presence/ui/Messages.java (+2 lines)
Lines 234-239 Link Here
234
	public static String MessageRenderer_DEFAULT_TIME_FORMAT;
234
	public static String MessageRenderer_DEFAULT_TIME_FORMAT;
235
	
235
	
236
	public static String ChatRoomPreferencePage_CHATROOM_SHOW_USER_PRESENCE_TEXT;
236
	public static String ChatRoomPreferencePage_CHATROOM_SHOW_USER_PRESENCE_TEXT;
237
	public static String ChatRoomPreferencePage_CHATROOM_HYPERLINK_BUG_URL;
238
	public static String ChatRoomPreferencePage_CHATROOM_HYPERLINK_BUG_URL_ERROR;
237
	
239
	
238
	static {
240
	static {
239
		NLS.initializeMessages(BUNDLE_NAME, Messages.class);
241
		NLS.initializeMessages(BUNDLE_NAME, Messages.class);
(-)src/org/eclipse/ecf/internal/presence/ui/messages.properties (-1 / +2 lines)
Lines 143-146 Link Here
143
MessageRenderer_DEFAULT_DATETIME_FORMAT=({0})
143
MessageRenderer_DEFAULT_DATETIME_FORMAT=({0})
144
144
145
ChatRoomPreferencePage_CHATROOM_SHOW_USER_PRESENCE_TEXT=&Show user entry messages
145
ChatRoomPreferencePage_CHATROOM_SHOW_USER_PRESENCE_TEXT=&Show user entry messages
146
 
146
ChatRoomPreferencePage_CHATROOM_HYPERLINK_BUG_URL=&URL for hyperlink bugs:
147
ChatRoomPreferencePage_CHATROOM_HYPERLINK_BUG_URL_ERROR=Bug URL must contain: "{0}"

Return to bug 197991