1 /*******************************************************************************
2  * Copyright (c) 2000, 2020 IBM Corporation and others.
3  *
4  * This program and the accompanying materials
5  * are made available under the terms of the Eclipse Public License 2.0
6  * which accompanies this distribution, and is available at
7  * https://www.eclipse.org/legal/epl-2.0/
8  *
9  * SPDX-License-Identifier: EPL-2.0
10  *
11  * Contributors:
12  *     IBM Corporation - initial API and implementation
13  *     Semion Chichelnitsky (semion@il.ibm.com) - bug 278064
14  *     Tristan Hume - <trishume@gmail.com> -
15  *     		Fix for Bug 2369 [Workbench] Would like to be able to save workspace without exiting
16  *     		Implemented workbench auto-save to correctly restore state in case of crash.
17  *     Denis Zygann <d.zygann@web.de> - Bug 330453
18  *     Axel Richard <axel.richard@obeo.fr> - Bug 486644
19  *     Christian Georgi (SAP SE) - Bug 540440
20  *******************************************************************************/
21 
22 package org.eclipse.ui.internal;
23 
24 /**
25  * The IPreferenceConstants are the internal constants used by the Workbench.
26  */
27 public interface IPreferenceConstants {
28 
29 	// Boolean: true = single click opens editor; false = double click opens
30 	// it.
31 	String OPEN_ON_SINGLE_CLICK = "OPEN_ON_SINGLE_CLICK"; //$NON-NLS-1$
32 
33 	// Boolean: true = select on hover;
34 	String SELECT_ON_HOVER = "SELECT_ON_HOVER"; //$NON-NLS-1$
35 
36 	// Boolean: true = open after delay
37 	String OPEN_AFTER_DELAY = "OPEN_AFTER_DELAY"; //$NON-NLS-1$
38 
39 	// Boolean: true = bidi support enabled; false = bidi support disabled
40 	String BIDI_SUPPORT = "BIDI_SUPPORT"; //$NON-NLS-1$
41 
42 	// String: Text direction. May have the following values: "ltr", "rtl",
43 	// "auto", and "".
44 	String TEXT_DIRECTION = "TEXT_DIRECTION"; //$NON-NLS-1$
45 
46 	// String: Layout direction. May have the following values:
47 	// SWT.LEFT_TO_RIGHT, SWT.RIGHT_TO_LEFT, and SWT.NONE.
48 	String LAYOUT_DIRECTION = "LAYOUT_DIRECTION"; //$NON-NLS-1$
49 
50 	// String: Unicode locale extensions
51 	String NL_EXTENSIONS = "NL_EXTENSIONS"; //$NON-NLS-1$
52 
53 	// Do we show color icons in toolbars?
54 	String COLOR_ICONS = "COLOR_ICONS"; //$NON-NLS-1$
55 
56 	// mappings for type/extension to an editor
57 	String EDITORS = "editors"; //$NON-NLS-1$
58 
59 	String RESOURCES = "resourcetypes"; //$NON-NLS-1$
60 
61 	// saving perspective layouts
62 	String PERSPECTIVES = "perspectives"; //$NON-NLS-1$
63 
64 	// (int) If > 0, an editor will be reused once 'N' editors are opened.
65 	String REUSE_EDITORS = "REUSE_OPEN_EDITORS"; //$NON-NLS-1$
66 
67 	// On/Off option for the two preceding options.
68 	String REUSE_EDITORS_BOOLEAN = "REUSE_OPEN_EDITORS_BOOLEAN"; //$NON-NLS-1$
69 
70 	// (int) N recently viewed files will be listed in the File->Open Recent
71 	// menu.
72 	String RECENT_FILES = "RECENT_FILES"; //$NON-NLS-1$
73 
74 	// (int) Mode for opening a new perspective
75 	String OPEN_PERSP_MODE = "OPEN_PERSPECTIVE_MODE"; //$NON-NLS-1$
76 
77 	int OPM_ACTIVE_PAGE = 0;
78 
79 	// int OPM_NEW_PAGE = 1;
80 	int OPM_NEW_WINDOW = 2;
81 
82 	// Identifier for enabled decorators
83 	String ENABLED_DECORATORS = "ENABLED_DECORATORS"; //$NON-NLS-1$
84 
85 	// Boolean: true = keep cycle part dialog open when keys released
86 	String STICKY_CYCLE = "STICKY_CYCLE"; //$NON-NLS-1$
87 
88 	// List of plugins but that extends "startup" extension point but are
89 	// overriden by the user.
90 	// String of plugin unique ids separated by ";"
91 	String PLUGINS_NOT_ACTIVATED_ON_STARTUP = "PLUGINS_NOT_ACTIVATED_ON_STARTUP"; //$NON-NLS-1$
92 
93 	// Separator for PLUGINS_NOT_ACTIVATED_ON_STARTUP
94 	char SEPARATOR = ';';
95 
96 	// Preference key for default editors
97 	String DEFAULT_EDITORS = "defaultEditors"; //$NON-NLS-1$
98 
99 	// Preference key for default editors
100 	String DEFAULT_EDITORS_CACHE = "defaultEditorsCache"; //$NON-NLS-1$
101 
102 	// Tab width = tab height * scalar value
103 	String EDITOR_TAB_WIDTH = "EDITOR_TAB_WIDTH"; //$NON-NLS-1$
104 
105 	// Boolean: true = show Editors drop down button on CTabFolder
106 	String EDITORLIST_PULLDOWN_ACTIVE = "EDITORLIST_PULLDOWN_ACTIVE"; //$NON-NLS-1$
107 
108 	// Selection scope for EditorList
109 	String EDITORLIST_SELECTION_SCOPE = "EDITORLIST_SELECTION_SCOPE"; //$NON-NLS-1$
110 
111 	int EDITORLIST_SET_WINDOW_SCOPE = 0;
112 
113 	int EDITORLIST_SET_PAGE_SCOPE = 1;
114 
115 	int EDITORLIST_SET_TAB_GROUP_SCOPE = 2;
116 
117 	// Sort criteria for EditorList
118 	String EDITORLIST_SORT_CRITERIA = "EDITORLIST_SORT_CRITERIA"; //$NON-NLS-1$
119 
120 	int EDITORLIST_NAME_SORT = 0;
121 
122 	int EDITORLIST_MRU_SORT = 1;
123 
124 	// Max entries shown in the progress view (see DetailedProgressViewer)
125 	String MAX_PROGRESS_ENTRIES = "MAX_PROGRESS_ENTRIES"; //$NON-NLS-1$
126 
127 	/**
128 	 * Boolean; true = EditorList displays full path
129 	 */
130 	String EDITORLIST_DISPLAY_FULL_NAME = "EDITORLIST_DISPLAY_FULL_NAME"; //$NON-NLS-1$
131 
132 	/**
133 	 * Workbench preference id for determining whether the user has chosen to
134 	 * override some of the settings in the current presentation.
135 	 * <p>
136 	 * The default value for this preference is: <code>false</code> (prompt)
137 	 * </p>
138 	 *
139 	 * @since 3.2
140 	 */
141 	String OVERRIDE_PRESENTATION = "overridepresentation"; // $//$NON-NLS-1$
142 
143 	/**
144 	 * <p>
145 	 * The key for the preference indicating which tab is selected in the keys
146 	 * preference page when last okay was pressed. This value should never really be
147 	 * directly edited by a user.
148 	 * </p>
149 	 * <p>
150 	 * This preference is an <code>int</code> value. The default value is
151 	 * <code>0</code>.
152 	 * </p>
153 	 *
154 	 * @since 3.1
155 	 */
156 	String KEYS_PREFERENCE_SELECTED_TAB = "KEYS_PREFERENCE_SELECTED_TAB"; //$NON-NLS-1$
157 
158 	/**
159 	 * <p>
160 	 * The key for the preference indicating whether multi-stroke key sequences
161 	 * should provide assistance to the user. This means that if the user pauses
162 	 * after pressing the first key, a window will open showing the possible
163 	 * completions.
164 	 * </p>
165 	 * <p>
166 	 * This preference is a <code>boolean</code> value. The default value is
167 	 * <code>false</code>.
168 	 * </p>
169 	 *
170 	 * @since 3.0
171 	 */
172 	String MULTI_KEY_ASSIST = "MULTI_KEY_ASSIST"; //$NON-NLS-1$
173 
174 	/**
175 	 * <p>
176 	 * The key for the preference indicating how long the assist window should wait
177 	 * before opening. This is a value in milliseconds -- from the time the first
178 	 * key in a multi-key is received by the system, to the time the assist window
179 	 * should appear.
180 	 * </p>
181 	 * <p>
182 	 * This preference is an <code>int</code> value. The default value is
183 	 * <code>1000</code>.
184 	 * </p>
185 	 *
186 	 * @since 3.0
187 	 */
188 	String MULTI_KEY_ASSIST_TIME = "MULTI_KEY_ASSIST_TIME"; //$NON-NLS-1$
189 
190 	/**
191 	 * Workbench preference to use the new IPersistableEditor interface throughout
192 	 * the workbench new editor/open editor calls.
193 	 *
194 	 * @since 3.3
195 	 */
196 	String USE_IPERSISTABLE_EDITORS = "USE_IPERSISTABLE_EDITORS"; //$NON-NLS-1$
197 
198 	/**
199 	 * Preference to show user jobs in a dialog.
200 	 */
201 	String RUN_IN_BACKGROUND = "RUN_IN_BACKGROUND"; //$NON-NLS-1$
202 
203 	/**
204 	 * Workbench preference id for determining whether the user will be prompted for
205 	 * activity enablement. If this is false then activities are enabled
206 	 * automatically. If it is true, then the user is only prompted for activities
207 	 * that they have not already declared a disinterest in via the prompt dialog.
208 	 * <p>
209 	 * The default value for this preference is: <code>true</code> (prompt)
210 	 * </p>
211 	 *
212 	 * @since 3.0
213 	 */
214 	String SHOULD_PROMPT_FOR_ENABLEMENT = "shouldPromptForEnablement"; //$NON-NLS-1$
215 
216 	/**
217 	 * Preference to show/hide the CoolBar.
218 	 *
219 	 * @since 3.6
220 	 */
221 	String COOLBAR_VISIBLE = "coolBarVisible"; //$NON-NLS-1$
222 
223 	/**
224 	 * Preference to show/hide the PerspectiveBar.
225 	 *
226 	 * @since 3.6
227 	 */
228 	String PERSPECTIVEBAR_VISIBLE = "perspectiveBarVisible"; //$NON-NLS-1$
229 
230 	/**
231 	 * Preference is not supported anymore
232 	 * </p>
233 	 *
234 	 * @since 3.4
235 	 *
236 	 * @deprecated
237 	 */
238 	@Deprecated
239 	String USE_32_THREADING = "use32Threading"; //$NON-NLS-1$
240 
241 	/**
242 	 * Preference value that specifies the time interval in minutes between
243 	 * workbench auto-saves. If the value is zero it disables workbench auto-save.
244 	 *
245 	 * @since 3.105
246 	 */
247 	String WORKBENCH_SAVE_INTERVAL = "WORKBENCH_SAVE_INTERVAL"; //$NON-NLS-1$
248 
249 	/**
250 	 * This preference is the threshold value to determine whether a document is
251 	 * large or not. When the user tries to open a file larger than the threshold,
252 	 * then EditorSelectionDialog will be opened, suggesting the user to open with
253 	 * an external editor.
254 	 * <p>
255 	 * This preference is a <code>long</code> value that represents the threshold in
256 	 * bytes. The default value is <code>0</code> meaning no prompting on editor
257 	 * opening.
258 	 * </p>
259 	 *
260 	 * @since 3.7
261 	 */
262 	String LARGE_DOC_SIZE_FOR_EDITORS = "LARGE_DOC_SIZE_FOR_EDITORS"; //$NON-NLS-1$
263 
264 	/**
265 	 * Preference id for whether the editors may save automatically.
266 	 * <p>
267 	 * The boolean default value for this preference is: <code>false</code>.
268 	 * </p>
269 	 *
270 	 * @since 3.8
271 	 */
272 	String SAVE_AUTOMATICALLY = "SAVE_AUTOMATICALLY"; //$NON-NLS-1$
273 
274 	/**
275 	 * Preference value that specifies the time interval in seconds between editors
276 	 * auto-saves.
277 	 * <p>
278 	 * The integer default value for this preference is: <code>60</code>.
279 	 * </p>
280 	 *
281 	 * @since 3.8
282 	 */
283 	String SAVE_AUTOMATICALLY_INTERVAL = "SAVE_AUTOMATICALLY_INTERVAL"; //$NON-NLS-1$
284 
285 	/**
286 	 * Preference for whether pressed command keys are to be visualized
287 	 * <p>
288 	 * The boolean default value for this preference is: <code>false</code>.
289 	 * </p>
290 	 *
291 	 * @since 3.119
292 	 */
293 	String SHOW_KEYS_ENABLED_FOR_KEYBOARD = "showCommandKeysForKeyboard"; //$NON-NLS-1$
294 
295 	/**
296 	 * Preference for whether pressed command keys are to be visualized
297 	 * <p>
298 	 * The boolean default value for this preference is: <code>false</code>.
299 	 * </p>
300 	 *
301 	 * @since 3.119
302 	 */
303 	String SHOW_KEYS_ENABLED_FOR_MOUSE_EVENTS = "showCommandKeysForMouseEvents"; //$NON-NLS-1$
304 
305 	/**
306 	 * Preference for the time (in ms) after the command keys UI is to be closed
307 	 * <p>
308 	 * The integer default value for this preference is: <code>3000</code>.
309 	 * </p>
310 	 *
311 	 * @since 3.115
312 	 */
313 	String SHOW_KEYS_TIME_TO_CLOSE = "showCommandKeys_timeToClose"; //$NON-NLS-1$
314 
315 }
316