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

Collapse All | Expand All

(-)Eclipse UI/org/eclipse/ui/ISources.java (-13 / +38 lines)
Lines 46-55 Link Here
46
 * <b>Note in 3.3:</b>
46
 * <b>Note in 3.3:</b>
47
 * </p>
47
 * </p>
48
 * <p>
48
 * <p>
49
 * Currently, source variables are not extensible by user plugins, and
49
 * Currently, source variables are not extensible by user plugins, and the
50
 * the number of bits available for resolving conflicts is limited.  When
50
 * number of bits available for resolving conflicts is limited. When the
51
 * the variable sources become user extensible a new conflict resolution
51
 * variable sources become user extensible a new conflict resolution mechanism
52
 * mechanism will be implemented.
52
 * will be implemented.
53
 * </p>
53
 * </p>
54
 * <p>
54
 * <p>
55
 * This interface is not intended to be implemented or extended by clients.
55
 * This interface is not intended to be implemented or extended by clients.
Lines 92-103 Link Here
92
	/**
92
	/**
93
	 * The variable name for the active contexts. This is for use with the
93
	 * The variable name for the active contexts. This is for use with the
94
	 * <code>ISourceProvider</code> and <code>IEvaluationContext</code>.
94
	 * <code>ISourceProvider</code> and <code>IEvaluationContext</code>.
95
	 * 
95
	 * @since 3.2
96
	 * @since 3.2
96
	 */
97
	 */
97
	public static final String ACTIVE_CONTEXT_NAME = "activeContexts"; //$NON-NLS-1$
98
	public static final String ACTIVE_CONTEXT_NAME = "activeContexts"; //$NON-NLS-1$
98
99
99
	/**
100
	/**
100
	 * The priority given when the source includes a particular action set.
101
	 * The priority given when the source includes a particular action set.
102
	 * 
101
	 * @since 3.2
103
	 * @since 3.2
102
	 */
104
	 */
103
	public static final int ACTIVE_ACTION_SETS = 1 << 8;
105
	public static final int ACTIVE_ACTION_SETS = 1 << 8;
Lines 105-110 Link Here
105
	/**
107
	/**
106
	 * The variable name for the active action sets. This is for use with the
108
	 * The variable name for the active action sets. This is for use with the
107
	 * {@link ISourceProvider} and {@link IEvaluationContext}.
109
	 * {@link ISourceProvider} and {@link IEvaluationContext}.
110
	 * 
108
	 * @since 3.2
111
	 * @since 3.2
109
	 */
112
	 */
110
	public static final String ACTIVE_ACTION_SETS_NAME = "activeActionSets"; //$NON-NLS-1$
113
	public static final String ACTIVE_ACTION_SETS_NAME = "activeActionSets"; //$NON-NLS-1$
Lines 123-128 Link Here
123
	/**
126
	/**
124
	 * The priority given when the source includes the currently active
127
	 * The priority given when the source includes the currently active
125
	 * workbench window shell.
128
	 * workbench window shell.
129
	 * 
126
	 * @since 3.2
130
	 * @since 3.2
127
	 */
131
	 */
128
	public static final int ACTIVE_WORKBENCH_WINDOW_SHELL = 1 << 12;
132
	public static final int ACTIVE_WORKBENCH_WINDOW_SHELL = 1 << 12;
Lines 131-136 Link Here
131
	 * The variable name for the active workbench window shell. This is for use
135
	 * The variable name for the active workbench window shell. This is for use
132
	 * with the <code>ISourceProvider</code> and
136
	 * with the <code>ISourceProvider</code> and
133
	 * <code>IEvaluationContext</code>.
137
	 * <code>IEvaluationContext</code>.
138
	 * 
134
	 * @since 3.2
139
	 * @since 3.2
135
	 */
140
	 */
136
	public static final String ACTIVE_WORKBENCH_WINDOW_SHELL_NAME = "activeWorkbenchWindowShell"; //$NON-NLS-1$
141
	public static final String ACTIVE_WORKBENCH_WINDOW_SHELL_NAME = "activeWorkbenchWindowShell"; //$NON-NLS-1$
Lines 146-160 Link Here
146
	 * the <code>ISourceProvider</code> and <code>IEvaluationContext</code>.
151
	 * the <code>ISourceProvider</code> and <code>IEvaluationContext</code>.
147
	 */
152
	 */
148
	public static final String ACTIVE_WORKBENCH_WINDOW_NAME = "activeWorkbenchWindow"; //$NON-NLS-1$
153
	public static final String ACTIVE_WORKBENCH_WINDOW_NAME = "activeWorkbenchWindow"; //$NON-NLS-1$
149
	
154
150
	/**
155
	/**
151
	 * The priority given when the source includes subordinate properties of the currently active
156
	 * The priority given when the source includes subordinate properties of the
152
	 * workbench window.
157
	 * currently active workbench window.
153
	 * 
158
	 * 
154
	 * @since 3.3
159
	 * @since 3.3
155
	 */
160
	 */
156
	public static final int ACTIVE_WORKBENCH_WINDOW_SUBORDINATE = 1 << 15;
161
	public static final int ACTIVE_WORKBENCH_WINDOW_SUBORDINATE = 1 << 15;
157
	
162
158
	/**
163
	/**
159
	 * The variable name for the coolbar visibility state of the active
164
	 * The variable name for the coolbar visibility state of the active
160
	 * workbench window. This is for use with the <code>ISourceProvider</code>
165
	 * workbench window. This is for use with the <code>ISourceProvider</code>
Lines 164-170 Link Here
164
	 */
169
	 */
165
	public static final String ACTIVE_WORKBENCH_WINDOW_IS_COOLBAR_VISIBLE_NAME = ACTIVE_WORKBENCH_WINDOW_NAME
170
	public static final String ACTIVE_WORKBENCH_WINDOW_IS_COOLBAR_VISIBLE_NAME = ACTIVE_WORKBENCH_WINDOW_NAME
166
			+ ".isCoolbarVisible"; //$NON-NLS-1$
171
			+ ".isCoolbarVisible"; //$NON-NLS-1$
167
	
172
168
	/**
173
	/**
169
	 * The variable name for the perspective bar visibility state of the active
174
	 * The variable name for the perspective bar visibility state of the active
170
	 * workbench window. This is for use with the <code>ISourceProvider</code>
175
	 * workbench window. This is for use with the <code>ISourceProvider</code>
Lines 183-188 Link Here
183
	/**
188
	/**
184
	 * The variable name for the active editor part. This is for use with the
189
	 * The variable name for the active editor part. This is for use with the
185
	 * <code>ISourceProvider</code> and <code>IEvaluationContext</code>.
190
	 * <code>ISourceProvider</code> and <code>IEvaluationContext</code>.
191
	 * 
186
	 * @since 3.2
192
	 * @since 3.2
187
	 */
193
	 */
188
	public static final String ACTIVE_EDITOR_NAME = "activeEditor"; //$NON-NLS-1$
194
	public static final String ACTIVE_EDITOR_NAME = "activeEditor"; //$NON-NLS-1$
Lines 249-260 Link Here
249
	/**
255
	/**
250
	 * The variable name for the active selection. This is for use with the
256
	 * The variable name for the active selection. This is for use with the
251
	 * <code>ISourceProvider</code> and <code>IEvaluationContext</code>.
257
	 * <code>ISourceProvider</code> and <code>IEvaluationContext</code>.
258
	 * 
252
	 * @since 3.2
259
	 * @since 3.2
253
	 */
260
	 */
254
	public static final String ACTIVE_CURRENT_SELECTION_NAME = "selection"; //$NON-NLS-1$
261
	public static final String ACTIVE_CURRENT_SELECTION_NAME = "selection"; //$NON-NLS-1$
255
262
256
	/**
263
	/**
257
	 * The priority given when the source includes the current menu.
264
	 * The priority given when the source includes the current menu.
265
	 * 
258
	 * @since 3.2
266
	 * @since 3.2
259
	 */
267
	 */
260
	public static final int ACTIVE_MENU = 1 << 31;
268
	public static final int ACTIVE_MENU = 1 << 31;
Lines 262-284 Link Here
262
	/**
270
	/**
263
	 * The variable name for the active menu. This is for use with the
271
	 * The variable name for the active menu. This is for use with the
264
	 * {@link ISourceProvider} and {@link IEvaluationContext}.
272
	 * {@link ISourceProvider} and {@link IEvaluationContext}.
273
	 * 
265
	 * @since 3.2
274
	 * @since 3.2
266
	 */
275
	 */
267
	public static final String ACTIVE_MENU_NAME = "activeMenu"; //$NON-NLS-1$
276
	public static final String ACTIVE_MENU_NAME = "activeMenu"; //$NON-NLS-1$
268
	
277
269
	/**
278
	/**
270
	 * The variable name for the <b>local</b> selection, available while a
279
	 * The variable name for the <b>local</b> selection, available while a
271
	 * context menu is visible.
280
	 * context menu is visible.
272
	 * 
281
	 * 
273
	 * @since 3.3
282
	 * @since 3.3
274
	 */
283
	 */
275
	public static final String ACTIVE_MENU_SELECTION_NAME = "activeMenuSelection";  //$NON-NLS-1$
284
	public static final String ACTIVE_MENU_SELECTION_NAME = "activeMenuSelection"; //$NON-NLS-1$
276
	
285
277
	/**
286
	/**
278
	 * The variable name for the <b>local</b> editor input which is sometimes
287
	 * The variable name for the <b>local</b> editor input which is sometimes
279
	 * available while a context menu is visible.
288
	 * available while a context menu is visible.
280
	 * 
289
	 * 
281
	 * @since 3.3
290
	 * @since 3.3
282
	 */
291
	 */
283
	public static final String ACTIVE_MENU_EDITOR_INPUT_NAME = "activeMenuEditorInput";  //$NON-NLS-1$
292
	public static final String ACTIVE_MENU_EDITOR_INPUT_NAME = "activeMenuEditorInput"; //$NON-NLS-1$
293
294
	/**
295
	 * The variable name for the active focus Control, which is sometimes
296
	 * available.
297
	 * 
298
	 * @since 3.3
299
	 */
300
	public static final String ACTIVE_FOCUS_CONTROL_NAME = "activeFocusControl"; //$NON-NLS-1$
301
302
	/**
303
	 * The variable name for the active focus Control id, which is sometimes
304
	 * available.
305
	 * 
306
	 * @since 3.3
307
	 */
308
	public static final String ACTIVE_FOCUS_CONTROL_ID_NAME = "activeFocusControlId"; //$NON-NLS-1$
284
}
309
}
(-)Eclipse (+44 lines)
Added Link Here
1
/*******************************************************************************
2
 * Copyright (c) 2007 IBM Corporation and others.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 *
8
 * Contributors:
9
 *     IBM Corporation - initial API and implementation
10
 ******************************************************************************/
11
12
package org.eclipse.ui.menus;
13
14
import org.eclipse.swt.widgets.Control;
15
16
/**
17
 * Tracks focusGained and focusLost events for a Control registered with this
18
 * service, and provides them as variables to the application evaluation context
19
 * for evaluation be the various services.
20
 * 
21
 * @since 3.3
22
 */
23
public interface IFocusService {
24
	/**
25
	 * A Control for the service to track. We will remove ourselves as a
26
	 * listener on a dispose.
27
	 * 
28
	 * @param control
29
	 *            the control. Must not be <code>null</code>.
30
	 * @param id
31
	 *            the unique ID for this control. Must not be <code>null</code>.
32
	 */
33
	public void addTrackerFor(Control control, String id);
34
35
	/**
36
	 * No longer track focus events for this control. Use this method when the
37
	 * control should no longer be tracked, but is not disposed.
38
	 * 
39
	 * @param control
40
	 *            the control registered with the service. Must not be
41
	 *            <code>null</code>.
42
	 */
43
	public void removeTrackerFor(Control control);
44
}

Return to bug 177806