VirtualBox

source: vbox/trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h

Last change on this file was 108356, checked in by vboxsync, 4 weeks ago

FE/Qt: bugref:10814: VBox Manager / Tools pane: Introducing invisible for now Management tool class which can be used to accumulate various manager tools; Pass it through all the handling places.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 47.4 KB
Line 
1/* $Id: UIExtraDataDefs.h 108356 2025-02-24 16:21:30Z vboxsync $ */
2/** @file
3 * VBox Qt GUI - Extra-data related definitions.
4 */
5
6/*
7 * Copyright (C) 2006-2024 Oracle and/or its affiliates.
8 *
9 * This file is part of VirtualBox base platform packages, as
10 * available from https://www.virtualbox.org.
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation, in version 3 of the
15 * License.
16 *
17 * This program is distributed in the hope that it will be useful, but
18 * WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 * General Public License for more details.
21 *
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, see <https://www.gnu.org/licenses>.
24 *
25 * SPDX-License-Identifier: GPL-3.0-only
26 */
27
28#ifndef FEQT_INCLUDED_SRC_extradata_UIExtraDataDefs_h
29#define FEQT_INCLUDED_SRC_extradata_UIExtraDataDefs_h
30#ifndef RT_WITHOUT_PRAGMA_ONCE
31# pragma once
32#endif
33
34/* Qt includes: */
35#include <QMap>
36#include <QMetaType>
37#include <QObject>
38
39/* GUI includes: */
40#include "UILibraryDefs.h"
41
42
43/** Typedef for QPair of QStrings. */
44typedef QPair<QString, QString> QIStringPair;
45typedef QList<QIStringPair> QIStringPairList;
46
47
48/** Extra-data namespace. */
49namespace UIExtraDataDefs
50{
51 /** @name General
52 * @{ */
53 /** Holds restricted dialogs. */
54 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedDialogs;
55 /** @} */
56
57 /** @name Messaging
58 * @{ */
59 /** Holds the list of suppressed messages for the Message/Popup center frameworks. */
60 SHARED_LIBRARY_STUFF extern const char *GUI_SuppressMessages;
61 /** Holds the list of messages for the Message/Popup center frameworks with inverted check-box state. */
62 SHARED_LIBRARY_STUFF extern const char *GUI_InvertMessageOption;
63#ifdef VBOX_NOTIFICATION_CENTER_WITH_KEEP_BUTTON
64 /** Holds whether successfull notification-progresses should NOT close automatically. */
65 SHARED_LIBRARY_STUFF extern const char *GUI_NotificationCenter_KeepSuccessfullProgresses;
66#endif
67 /** Holds notification-center alignment. */
68 SHARED_LIBRARY_STUFF extern const char *GUI_NotificationCenter_Alignment;
69 /** Holds notification-center order. */
70 SHARED_LIBRARY_STUFF extern const char *GUI_NotificationCenter_Order;
71 /** Holds whether BETA build label should be hidden. */
72 SHARED_LIBRARY_STUFF extern const char *GUI_PreventBetaLabel;
73#if !defined(VBOX_BLEEDING_EDGE) && !defined(DEBUG)
74 /** Holds version for which user wants to prevent BETA build warning. */
75 SHARED_LIBRARY_STUFF extern const char *GUI_PreventBetaWarning;
76#endif
77 /** @} */
78
79#ifdef VBOX_GUI_WITH_NETWORK_MANAGER
80 /** @name Application Update
81 * @{ */
82 /** Holds whether Application Update functionality enabled. */
83 SHARED_LIBRARY_STUFF extern const char *GUI_PreventApplicationUpdate;
84 /** Holds Application Update data. */
85 SHARED_LIBRARY_STUFF extern const char *GUI_UpdateDate;
86 /** Holds Application Update check counter. */
87 SHARED_LIBRARY_STUFF extern const char *GUI_UpdateCheckCount;
88 /** @} */
89#endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
90
91 /** @name Progress
92 * @{ */
93 /** Holds whether legacy progress handling method is requested. */
94 SHARED_LIBRARY_STUFF extern const char *GUI_Progress_LegacyMode;
95 /** @} */
96
97 /** @name Settings
98 * @{ */
99 /** Holds GUI feature list. */
100 SHARED_LIBRARY_STUFF extern const char *GUI_Customizations;
101 /** Holds restricted Global Settings pages. */
102 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedGlobalSettingsPages;
103 /** Holds restricted Machine Settings pages. */
104 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedMachineSettingsPages;
105 /** Holds whether settings are in expert mode. */
106 SHARED_LIBRARY_STUFF extern const char *GUI_Settings_ExpertMode;
107 /** @} */
108
109 /** @name Settings: Language
110 * @{ */
111 /** Holds GUI language ID. */
112 SHARED_LIBRARY_STUFF extern const char *GUI_LanguageID;
113 /** @} */
114
115 /** @name Settings: Display
116 * @{ */
117 /** Holds maximum guest-screen resolution policy/value. */
118 SHARED_LIBRARY_STUFF extern const char *GUI_MaxGuestResolution;
119 /** Holds whether hovered machine-window should be activated. */
120 SHARED_LIBRARY_STUFF extern const char *GUI_ActivateHoveredMachineWindow;
121 /** Holds whether the host scrrn saver is disabled when a vm is running. */
122 SHARED_LIBRARY_STUFF extern const char *GUI_DisableHostScreenSaver;
123 /** @} */
124
125 /** @name Settings: Keyboard
126 * @{ */
127 /** Holds Selector UI shortcut overrides. */
128 SHARED_LIBRARY_STUFF extern const char *GUI_Input_SelectorShortcuts;
129 /** Holds Runtime UI shortcut overrides. */
130 SHARED_LIBRARY_STUFF extern const char *GUI_Input_MachineShortcuts;
131 /** Holds Runtime UI host-key combination. */
132 SHARED_LIBRARY_STUFF extern const char *GUI_Input_HostKeyCombination;
133 /** Holds whether Runtime UI auto-capture is enabled. */
134 SHARED_LIBRARY_STUFF extern const char *GUI_Input_AutoCapture;
135 /** Holds Runtime UI remapped scan codes. */
136 SHARED_LIBRARY_STUFF extern const char *GUI_RemapScancodes;
137 /** @} */
138
139 /** @name Settings: Proxy
140 * @{ */
141 /** Holds VBox proxy settings. */
142 SHARED_LIBRARY_STUFF extern const char *GUI_ProxySettings;
143 /** @} */
144
145 /** @name Settings: Storage
146 * @{ */
147 /** Holds recent folder for hard-drives. */
148 SHARED_LIBRARY_STUFF extern const char *GUI_RecentFolderHD;
149 /** Holds recent folder for optical-disks. */
150 SHARED_LIBRARY_STUFF extern const char *GUI_RecentFolderCD;
151 /** Holds recent folder for floppy-disks. */
152 SHARED_LIBRARY_STUFF extern const char *GUI_RecentFolderFD;
153 /** Holds the list of recently used hard-drives. */
154 SHARED_LIBRARY_STUFF extern const char *GUI_RecentListHD;
155 /** Holds the list of recently used optical-disks. */
156 SHARED_LIBRARY_STUFF extern const char *GUI_RecentListCD;
157 /** Holds the list of recently used floppy-disks. */
158 SHARED_LIBRARY_STUFF extern const char *GUI_RecentListFD;
159 /** @} */
160
161 /** @name Settings: Network
162 * @{ */
163 /** Holds the list of restricted network attachment types. */
164 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedNetworkAttachmentTypes;
165 /** @} */
166
167 /** @name VISO Creator
168 * @{ */
169 /** Holds recent folder for VISO creation content. */
170 SHARED_LIBRARY_STUFF extern const char *GUI_VISOCreator_RecentFolder;
171 SHARED_LIBRARY_STUFF extern const char *GUI_VISOCreator_DialogGeometry;
172 /** @} */
173
174 /** @name VirtualBox Manager
175 * @{ */
176 /** Holds selector-window geometry. */
177 SHARED_LIBRARY_STUFF extern const char *GUI_LastSelectorWindowPosition;
178 /** Holds selector-window splitter hints. */
179 SHARED_LIBRARY_STUFF extern const char *GUI_SplitterSizes;
180 /** Holds whether selector-window tool-bar visible. */
181 SHARED_LIBRARY_STUFF extern const char *GUI_Toolbar;
182 /** Holds whether selector-window tool-bar text visible. */
183 SHARED_LIBRARY_STUFF extern const char *GUI_Toolbar_Text;
184 /** Holds the selector-window machine tools order. */
185 SHARED_LIBRARY_STUFF extern const char *GUI_Toolbar_MachineTools_Order;
186 /** Holds the selector-window global tools order. */
187 SHARED_LIBRARY_STUFF extern const char *GUI_Toolbar_GlobalTools_Order;
188 /** Holds the last selected tool set of VirtualBox Manager. */
189 SHARED_LIBRARY_STUFF extern const char *GUI_Tools_LastItemsSelected;
190 /** Holds the list of detached tools of VirtualBox Manager. */
191 SHARED_LIBRARY_STUFF extern const char *GUI_Tools_Detached;
192 /** Holds whether tools tool-bar text visible. */
193 SHARED_LIBRARY_STUFF extern const char *GUI_Tools_Text;
194 /** Holds whether selector-window status-bar visible. */
195 SHARED_LIBRARY_STUFF extern const char *GUI_Statusbar;
196 /** Prefix used by composite extra-data keys,
197 * which holds selector-window chooser-pane' groups definitions. */
198 SHARED_LIBRARY_STUFF extern const char *GUI_GroupDefinitions;
199 /** Holds last item chosen in selector-window chooser-pane. */
200 SHARED_LIBRARY_STUFF extern const char *GUI_LastItemSelected;
201 /** Holds selector-window details-pane' elements. */
202 /// @todo remove GUI_DetailsPageBoxes in 6.2
203 SHARED_LIBRARY_STUFF extern const char *GUI_DetailsPageBoxes;
204 /// @todo remove GUI_PreviewUpdate in 6.2
205 /** Holds selector-window details-pane' preview update interval. */
206 SHARED_LIBRARY_STUFF extern const char *GUI_PreviewUpdate;
207 /** Holds VirtualBox Manager Details-pane elements. */
208 SHARED_LIBRARY_STUFF extern const char *GUI_Details_Elements;
209 /** Holds VirtualBox Manager Details-pane / Preview element update interval. */
210 SHARED_LIBRARY_STUFF extern const char *GUI_Details_Elements_Preview_UpdateInterval;
211 /** @} */
212
213 /** @name Snapshot Manager
214 * @{ */
215 /** Holds whether Snapshot Manager details expanded. */
216 SHARED_LIBRARY_STUFF extern const char *GUI_SnapshotManager_Details_Expanded;
217 /** @} */
218
219 /** @name Virtual Media Manager
220 * @{ */
221 /** Holds whether Virtual Media Manager details expanded. */
222 SHARED_LIBRARY_STUFF extern const char *GUI_VirtualMediaManager_Details_Expanded;
223 /** Holds whether Virtual Media Manager search widget expanded. */
224 SHARED_LIBRARY_STUFF extern const char *GUI_VirtualMediaManager_Search_Widget_Expanded;
225 /** @} */
226
227 /** @name Host Network Manager
228 * @{ */
229 /** Holds whether Host Network Manager details expanded. */
230 SHARED_LIBRARY_STUFF extern const char *GUI_HostNetworkManager_Details_Expanded;
231 /** @} */
232
233 /** @name Cloud Profile Manager
234 * @{ */
235 /** Holds Cloud Profile Manager restrictions. */
236 SHARED_LIBRARY_STUFF extern const char *GUI_CloudProfileManager_Restrictions;
237 /** Holds whether Cloud Profile Manager details expanded. */
238 SHARED_LIBRARY_STUFF extern const char *GUI_CloudProfileManager_Details_Expanded;
239 /** @} */
240
241 /** @name Cloud Console Manager
242 * @{ */
243 /** Holds Cloud Console Manager applications/profiles. */
244 SHARED_LIBRARY_STUFF extern const char *GUI_CloudConsoleManager_Application;
245 /** Holds Cloud Console Manager restrictions. */
246 SHARED_LIBRARY_STUFF extern const char *GUI_CloudConsoleManager_Restrictions;
247 /** Holds whether Cloud Console Manager details expanded. */
248 SHARED_LIBRARY_STUFF extern const char *GUI_CloudConsoleManager_Details_Expanded;
249 /** @} */
250
251 /** @name Cloud Console
252 * @{ */
253 /** Holds Cloud Console public key path. */
254 SHARED_LIBRARY_STUFF extern const char *GUI_CloudConsole_PublicKey_Path;
255 /** @} */
256
257#ifdef VBOX_GUI_WITH_EXTRADATA_MANAGER_UI
258 /** @name Extra-data Manager
259 * @{ */
260 /** Holds extra-data manager geometry. */
261 SHARED_LIBRARY_STUFF extern const char *GUI_ExtraDataManager_Geometry;
262 /** Holds extra-data manager splitter hints. */
263 SHARED_LIBRARY_STUFF extern const char *GUI_ExtraDataManager_SplitterHints;
264 /** @} */
265#endif /* VBOX_GUI_WITH_EXTRADATA_MANAGER_UI */
266
267 /** @name Virtual Machine
268 * @{ */
269 /** Holds whether machine shouldn't be shown in selector-window chooser-pane. */
270 SHARED_LIBRARY_STUFF extern const char *GUI_HideFromManager;
271 /** Holds whether machine shouldn't be shown in selector-window details-pane. */
272 SHARED_LIBRARY_STUFF extern const char *GUI_HideDetails;
273 /** Holds whether machine reconfiguration disabled. */
274 SHARED_LIBRARY_STUFF extern const char *GUI_PreventReconfiguration;
275 /** Holds whether machine snapshot operations disabled. */
276 SHARED_LIBRARY_STUFF extern const char *GUI_PreventSnapshotOperations;
277 /** Except Mac OS X: Holds redefined machine-window icon names. */
278 SHARED_LIBRARY_STUFF extern const char *GUI_MachineWindowIcons;
279#ifndef VBOX_WS_MAC
280 /** Except Mac OS X: Holds redefined machine-window name postfix. */
281 SHARED_LIBRARY_STUFF extern const char *GUI_MachineWindowNamePostfix;
282#endif
283 /** Prefix used by composite extra-data keys,
284 * which holds normal machine-window geometry per screen-index. */
285 SHARED_LIBRARY_STUFF extern const char *GUI_LastNormalWindowPosition;
286 /** Prefix used by composite extra-data keys,
287 * which holds scaled machine-window geometry per screen-index. */
288 SHARED_LIBRARY_STUFF extern const char *GUI_LastScaleWindowPosition;
289 /** Holds machine-window geometry maximized state flag. */
290 SHARED_LIBRARY_STUFF extern const char *GUI_Geometry_State_Max;
291#ifndef VBOX_WS_MAC
292 /** Holds Runtime UI menu-bar availability status. */
293 SHARED_LIBRARY_STUFF extern const char *GUI_MenuBar_Enabled;
294#endif
295 /** Holds Runtime UI menu-bar context-menu availability status. */
296 SHARED_LIBRARY_STUFF extern const char *GUI_MenuBar_ContextMenu_Enabled;
297 /** Holds restricted Runtime UI menu types. */
298 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedRuntimeMenus;
299 /** Holds restricted Runtime UI action types for 'Application' menu. */
300 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedRuntimeApplicationMenuActions;
301 /** Holds restricted Runtime UI action types for Machine menu. */
302 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedRuntimeMachineMenuActions;
303 /** Holds restricted Runtime UI action types for View menu. */
304 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedRuntimeViewMenuActions;
305 /** Holds restricted Runtime UI action types for Input menu. */
306 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedRuntimeInputMenuActions;
307 /** Holds restricted Runtime UI action types for Devices menu. */
308 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedRuntimeDevicesMenuActions;
309#ifdef VBOX_WITH_DEBUGGER_GUI
310 /** Holds restricted Runtime UI action types for Debugger menu. */
311 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedRuntimeDebuggerMenuActions;
312#endif
313#ifdef VBOX_WS_MAC
314 /** Mac OS X: Holds restricted Runtime UI action types for 'Window' menu. */
315 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedRuntimeWindowMenuActions;
316#endif
317 /** Holds restricted Runtime UI action types for Help menu. */
318 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedRuntimeHelpMenuActions;
319 /** Holds restricted Runtime UI visual-states. */
320 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedVisualStates;
321 /** Holds whether full screen visual-state is requested. */
322 SHARED_LIBRARY_STUFF extern const char *GUI_Fullscreen;
323 /** Holds whether seamless visual-state is requested. */
324 SHARED_LIBRARY_STUFF extern const char *GUI_Seamless;
325 /** Holds whether scaled visual-state is requested. */
326 SHARED_LIBRARY_STUFF extern const char *GUI_Scale;
327#ifdef VBOX_WS_NIX
328 /** Holds whether legacy full-screen mode is requested. */
329 SHARED_LIBRARY_STUFF extern const char *GUI_Fullscreen_LegacyMode;
330 /** Holds whether internal machine-window names should be unique. */
331 SHARED_LIBRARY_STUFF extern const char *GUI_DistinguishMachineWindowGroups;
332#endif /* VBOX_WS_NIX */
333 /** Holds whether guest-screen auto-resize according machine-window size is enabled. */
334 SHARED_LIBRARY_STUFF extern const char *GUI_AutoresizeGuest;
335 /** Prefix used by composite extra-data keys,
336 * which holds last guest-screen visibility status per screen-index. */
337 SHARED_LIBRARY_STUFF extern const char *GUI_LastVisibilityStatusForGuestScreen;
338 /** Prefix used by composite extra-data keys,
339 * which holds last guest-screen size-hint per screen-index. */
340 SHARED_LIBRARY_STUFF extern const char *GUI_LastGuestSizeHint;
341 /** Prefix used by composite extra-data keys,
342 * which holds host-screen index per guest-screen index. */
343 SHARED_LIBRARY_STUFF extern const char *GUI_VirtualScreenToHostScreen;
344 /** Holds whether automatic mounting/unmounting of guest-screens enabled. */
345 SHARED_LIBRARY_STUFF extern const char *GUI_AutomountGuestScreens;
346#ifndef VBOX_WS_MAC
347 /** Holds whether mini-toolbar is enabled for full and seamless screens. */
348 SHARED_LIBRARY_STUFF extern const char *GUI_ShowMiniToolBar;
349 /** Holds whether mini-toolbar should auto-hide itself. */
350 SHARED_LIBRARY_STUFF extern const char *GUI_MiniToolBarAutoHide;
351 /** Holds mini-toolbar alignment. */
352 SHARED_LIBRARY_STUFF extern const char *GUI_MiniToolBarAlignment;
353#endif /* !VBOX_WS_MAC */
354 /** Holds Runtime UI status-bar availability status. */
355 SHARED_LIBRARY_STUFF extern const char *GUI_StatusBar_Enabled;
356 /** Holds Runtime UI status-bar context-menu availability status. */
357 SHARED_LIBRARY_STUFF extern const char *GUI_StatusBar_ContextMenu_Enabled;
358 /** Holds restricted Runtime UI status-bar indicators. */
359 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedStatusBarIndicators;
360 /** Holds Runtime UI status-bar indicator order. */
361 SHARED_LIBRARY_STUFF extern const char *GUI_StatusBar_IndicatorOrder;
362#ifdef VBOX_WS_MAC
363 /** Mac OS X: Holds whether Dock icon should be updated at runtime. */
364 SHARED_LIBRARY_STUFF extern const char *GUI_RealtimeDockIconUpdateEnabled;
365 /** Mac OS X: Holds guest-screen which Dock icon should reflect at runtime. */
366 SHARED_LIBRARY_STUFF extern const char *GUI_RealtimeDockIconUpdateMonitor;
367 /** Mac OS X: Holds whether Dock icon should have overlay disabled. */
368 SHARED_LIBRARY_STUFF extern const char *GUI_DockIconDisableOverlay;
369#endif /* VBOX_WS_MAC */
370 /** Holds whether machine should pass CAD to guest. */
371 SHARED_LIBRARY_STUFF extern const char *GUI_PassCAD;
372 /** Holds the mouse capture policy. */
373 SHARED_LIBRARY_STUFF extern const char *GUI_MouseCapturePolicy;
374 /** Holds redefined guru-meditation handler type. */
375 SHARED_LIBRARY_STUFF extern const char *GUI_GuruMeditationHandler;
376 /** Holds whether machine should perform HID LEDs synchronization. */
377 SHARED_LIBRARY_STUFF extern const char *GUI_HidLedsSync;
378 /** Holds the scale-factor. */
379 SHARED_LIBRARY_STUFF extern const char *GUI_ScaleFactor;
380 /** Holds the scaling optimization type. */
381 SHARED_LIBRARY_STUFF extern const char *GUI_Scaling_Optimization;
382 /** Holds the font scale factor. */
383 SHARED_LIBRARY_STUFF extern const char *GUI_FontScaleFactor;
384 /** @} */
385
386 /** @name Virtual Machine: Information dialog
387 * @{ */
388 /** Holds information-window geometry. */
389 SHARED_LIBRARY_STUFF extern const char *GUI_SessionInformationDialogGeometry;
390 /** @} */
391
392 /** @name Guest Control UI related data
393 * @{ */
394 extern const char *GUI_GuestControl_FileManagerDialogGeometry;
395 extern const char *GUI_GuestControl_FileManagerVisiblePanels;
396 extern const char *GUI_GuestControl_ProcessControlSplitterHints;
397 extern const char *GUI_GuestControl_ProcessControlDialogGeometry;
398 /** @} */
399
400 /** @name Soft Keyboard related data
401 * @{ */
402 extern const char *GUI_SoftKeyboard_DialogGeometry;
403 extern const char *GUI_SoftKeyboard_ColorTheme;
404 extern const char *GUI_SoftKeyboard_SelectedColorTheme;
405 extern const char *GUI_SoftKeyboard_SelectedLayout;
406 extern const char *GUI_SoftKeyboard_Options;
407 extern const char *GUI_SoftKeyboard_HideNumPad;
408 extern const char *GUI_SoftKeyboard_HideOSMenuKeys;
409 extern const char *GUI_SoftKeyboard_HideMultimediaKeys;
410 /** @} */
411
412 /** @name File Manager options
413 * @{ */
414 extern const char *GUI_GuestControl_FileManagerOptions;
415 extern const char *GUI_GuestControl_FileManagerListDirectoriesFirst;
416 extern const char *GUI_GuestControl_FileManagerShowDeleteConfirmation;
417 extern const char *GUI_GuestControl_FileManagerShowHumanReadableSizes;
418 extern const char *GUI_GuestControl_FileManagerShowHiddenObjects;
419 /** @} */
420
421 /** @name Virtual Machine: Close dialog
422 * @{ */
423 /** Holds default machine close action. */
424 SHARED_LIBRARY_STUFF extern const char *GUI_DefaultCloseAction;
425 /** Holds restricted machine close actions. */
426 SHARED_LIBRARY_STUFF extern const char *GUI_RestrictedCloseActions;
427 /** Holds last machine close action. */
428 SHARED_LIBRARY_STUFF extern const char *GUI_LastCloseAction;
429 /** Holds machine close hook script name as simple string. */
430 SHARED_LIBRARY_STUFF extern const char *GUI_CloseActionHook;
431 /** Holds whether machine should discard state on power off. */
432 SHARED_LIBRARY_STUFF extern const char *GUI_DiscardStateOnPowerOff;
433 /** @} */
434
435#ifdef VBOX_WITH_DEBUGGER_GUI
436 /** @name Virtual Machine: Debug UI
437 * @{ */
438 /** Holds whether debugger UI enabled. */
439 SHARED_LIBRARY_STUFF extern const char *GUI_Dbg_Enabled;
440 /** Holds whether debugger UI should be auto-shown. */
441 SHARED_LIBRARY_STUFF extern const char *GUI_Dbg_AutoShow;
442 /** @} */
443#endif /* VBOX_WITH_DEBUGGER_GUI */
444
445 /** @name Virtual Machine: Log-viewer
446 * @{ */
447 /** Holds log-viewer geometry. */
448 SHARED_LIBRARY_STUFF extern const char *GUI_LogWindowGeometry;
449 /** @} */
450 /** @name Virtual Machine: Log-viewer widget options
451 * @{ */
452 SHARED_LIBRARY_STUFF extern const char *GUI_LogViewerOptions;
453 /** Holds log-viewer wrap line flag. */
454 SHARED_LIBRARY_STUFF extern const char *GUI_LogViewerWrapLinesEnabled;
455 SHARED_LIBRARY_STUFF extern const char *GUI_LogViewerShowLineNumbersDisabled;
456 SHARED_LIBRARY_STUFF extern const char *GUI_LogViewerNoFontStyleName;
457 /** @} */
458
459 /** @name Help Browser
460 * @{ */
461 SHARED_LIBRARY_STUFF extern const char *GUI_HelpBrowser_LastURLList;
462 SHARED_LIBRARY_STUFF extern const char *GUI_HelpBrowser_DialogGeometry;
463 SHARED_LIBRARY_STUFF extern const char *GUI_HelpBrowser_Bookmarks;
464 SHARED_LIBRARY_STUFF extern const char *GUI_HelpBrowser_ZoomPercentage;
465 /** @} */
466
467 /** @name Manager UI: VM Activity Monitor and Overview Related stuff
468 * @{ */
469 SHARED_LIBRARY_STUFF extern const char *GUI_VMActivityOverview_HiddenColumns;
470 SHARED_LIBRARY_STUFF extern const char *GUI_VMActivityOverview_ShowAllMachines;
471 SHARED_LIBRARY_STUFF extern const char *GUI_VMActivityMonitor_DataSeriesColors;
472 SHARED_LIBRARY_STUFF extern const char *GUI_VMActivityMonitor_ShowVMExits;
473 /** @} */
474
475 /** @name Medium Selector stuff
476 * @{ */
477 SHARED_LIBRARY_STUFF extern const char *GUI_MediumSelector_DialogGeometry;
478 /** @} */
479
480 /** @name Old key support stuff.
481 * @{ */
482 /** Prepares obsolete keys map. */
483 SHARED_LIBRARY_STUFF QMultiMap<QString, QString> prepareObsoleteKeysMap();
484
485 /** Holds the obsolete keys map. */
486 SHARED_LIBRARY_STUFF extern QMultiMap<QString, QString> g_mapOfObsoleteKeys;
487 /** @} */
488
489 /** @name Font scaling factor min-max.
490 * @{ */
491 extern const int iFontScaleMin;
492 extern const int iFontScaleMax;
493 /** @} */
494}
495
496
497/** Extra-data meta definitions. */
498class SHARED_LIBRARY_STUFF UIExtraDataMetaDefs : public QObject
499{
500 Q_OBJECT;
501
502 /* Menu related stuff: */
503 Q_ENUMS(MenuType);
504 Q_ENUMS(MenuApplicationActionType);
505 Q_ENUMS(MenuHelpActionType);
506 Q_ENUMS(RuntimeMenuMachineActionType);
507 Q_ENUMS(RuntimeMenuViewActionType);
508 Q_ENUMS(RuntimeMenuInputActionType);
509 Q_ENUMS(RuntimeMenuDevicesActionType);
510#ifdef VBOX_WITH_DEBUGGER_GUI
511 Q_ENUMS(RuntimeMenuDebuggerActionType);
512#endif
513#ifdef VBOX_WS_MAC
514 Q_ENUMS(MenuWindowActionType);
515#endif
516
517public:
518
519 /** Common UI: Dialog types. */
520 enum DialogType
521 {
522 DialogType_Invalid = 0,
523 DialogType_VISOCreator = RT_BIT(0),
524 DialogType_BootFailure = RT_BIT(1),
525 DialogType_All = 0xFFFF
526 };
527 Q_ENUM(DialogType);
528
529 /** Common UI: Menu types. */
530 enum MenuType
531 {
532 MenuType_Invalid = 0,
533 MenuType_Application = RT_BIT(0),
534 MenuType_Machine = RT_BIT(1),
535 MenuType_View = RT_BIT(2),
536 MenuType_Input = RT_BIT(3),
537 MenuType_Devices = RT_BIT(4),
538#ifdef VBOX_WITH_DEBUGGER_GUI
539 MenuType_Debug = RT_BIT(5),
540#endif
541#ifdef VBOX_WS_MAC
542 MenuType_Window = RT_BIT(6),
543#endif
544 MenuType_Help = RT_BIT(7),
545 MenuType_All = 0xFF
546 };
547
548 /** Menu "Application": Action types. */
549 enum MenuApplicationActionType
550 {
551 MenuApplicationActionType_Invalid = 0,
552#ifdef VBOX_WS_MAC
553 MenuApplicationActionType_About = RT_BIT(0),
554#endif
555 MenuApplicationActionType_Preferences = RT_BIT(1),
556#ifdef VBOX_GUI_WITH_NETWORK_MANAGER
557 MenuApplicationActionType_NetworkAccessManager = RT_BIT(2),
558 MenuApplicationActionType_CheckForUpdates = RT_BIT(3),
559#endif
560 MenuApplicationActionType_ResetWarnings = RT_BIT(4),
561 MenuApplicationActionType_Close = RT_BIT(5),
562 MenuApplicationActionType_All = 0xFFFF
563 };
564
565 /** Menu "Help": Action types. */
566 enum MenuHelpActionType
567 {
568 MenuHelpActionType_Invalid = 0,
569 MenuHelpActionType_Contents = RT_BIT(0),
570 MenuHelpActionType_WebSite = RT_BIT(1),
571 MenuHelpActionType_BugTracker = RT_BIT(2),
572 MenuHelpActionType_Forums = RT_BIT(3),
573 MenuHelpActionType_Oracle = RT_BIT(4),
574 MenuHelpActionType_OnlineDocumentation = RT_BIT(5),
575#ifndef VBOX_WS_MAC
576 MenuHelpActionType_About = RT_BIT(6),
577#endif
578 MenuHelpActionType_All = 0xFFFF
579 };
580
581 /** Runtime UI: Menu "Machine": Action types. */
582 enum RuntimeMenuMachineActionType
583 {
584 RuntimeMenuMachineActionType_Invalid = 0,
585 RuntimeMenuMachineActionType_SettingsDialog = RT_BIT(0),
586 RuntimeMenuMachineActionType_TakeSnapshot = RT_BIT(1),
587 RuntimeMenuMachineActionType_InformationDialog = RT_BIT(2),
588 RuntimeMenuMachineActionType_FileManagerDialog = RT_BIT(3),
589 RuntimeMenuMachineActionType_GuestProcessControlDialog = RT_BIT(4),
590 RuntimeMenuMachineActionType_Pause = RT_BIT(5),
591 RuntimeMenuMachineActionType_Reset = RT_BIT(6),
592 RuntimeMenuMachineActionType_Detach = RT_BIT(7),
593 RuntimeMenuMachineActionType_SaveState = RT_BIT(8),
594 RuntimeMenuMachineActionType_Shutdown = RT_BIT(9),
595 RuntimeMenuMachineActionType_PowerOff = RT_BIT(10),
596 RuntimeMenuMachineActionType_LogDialog = RT_BIT(11),
597 RuntimeMenuMachineActionType_Nothing = RT_BIT(12),
598 RuntimeMenuMachineActionType_All = 0xFFFF
599 };
600
601 /** Runtime UI: Menu "View": Action types. */
602 enum RuntimeMenuViewActionType
603 {
604 RuntimeMenuViewActionType_Invalid = 0,
605 RuntimeMenuViewActionType_Fullscreen = RT_BIT(0),
606 RuntimeMenuViewActionType_Seamless = RT_BIT(1),
607 RuntimeMenuViewActionType_Scale = RT_BIT(2),
608#ifndef VBOX_WS_MAC
609 RuntimeMenuViewActionType_MinimizeWindow = RT_BIT(3),
610#endif
611 RuntimeMenuViewActionType_AdjustWindow = RT_BIT(4),
612 RuntimeMenuViewActionType_GuestAutoresize = RT_BIT(5),
613 RuntimeMenuViewActionType_TakeScreenshot = RT_BIT(6),
614 RuntimeMenuViewActionType_Recording = RT_BIT(7),
615 RuntimeMenuViewActionType_RecordingSettings = RT_BIT(8),
616 RuntimeMenuViewActionType_StartRecording = RT_BIT(9),
617 RuntimeMenuViewActionType_VRDEServer = RT_BIT(10),
618 RuntimeMenuViewActionType_MenuBar = RT_BIT(11),
619 RuntimeMenuViewActionType_MenuBarSettings = RT_BIT(12),
620#ifndef VBOX_WS_MAC
621 RuntimeMenuViewActionType_ToggleMenuBar = RT_BIT(13),
622#endif
623 RuntimeMenuViewActionType_StatusBar = RT_BIT(14),
624 RuntimeMenuViewActionType_StatusBarSettings = RT_BIT(15),
625 RuntimeMenuViewActionType_ToggleStatusBar = RT_BIT(16),
626 RuntimeMenuViewActionType_Resize = RT_BIT(17),
627 RuntimeMenuViewActionType_Remap = RT_BIT(18),
628 RuntimeMenuViewActionType_Rescale = RT_BIT(19),
629 RuntimeMenuViewActionType_All = 0xFFFF
630 };
631
632 /** Runtime UI: Menu "Input": Action types. */
633 enum RuntimeMenuInputActionType
634 {
635 RuntimeMenuInputActionType_Invalid = 0,
636 RuntimeMenuInputActionType_Keyboard = RT_BIT(0),
637 RuntimeMenuInputActionType_KeyboardSettings = RT_BIT(1),
638 RuntimeMenuInputActionType_SoftKeyboard = RT_BIT(2),
639 RuntimeMenuInputActionType_TypeCAD = RT_BIT(3),
640#ifdef VBOX_WS_NIX
641 RuntimeMenuInputActionType_TypeCABS = RT_BIT(4),
642#endif
643 RuntimeMenuInputActionType_TypeCtrlBreak = RT_BIT(5),
644 RuntimeMenuInputActionType_TypeInsert = RT_BIT(6),
645 RuntimeMenuInputActionType_TypePrintScreen = RT_BIT(7),
646 RuntimeMenuInputActionType_TypeAltPrintScreen = RT_BIT(8),
647 RuntimeMenuInputActionType_Mouse = RT_BIT(9),
648 RuntimeMenuInputActionType_MouseIntegration = RT_BIT(10),
649 RuntimeMenuInputActionType_TypeHostKeyCombo = RT_BIT(11),
650 RuntimeMenuInputActionType_All = 0xFFFF
651 };
652
653 /** Runtime UI: Menu "Devices": Action types. */
654 enum RuntimeMenuDevicesActionType
655 {
656 RuntimeMenuDevicesActionType_Invalid = 0,
657 RuntimeMenuDevicesActionType_HardDrives = RT_BIT(0),
658 RuntimeMenuDevicesActionType_HardDrivesSettings = RT_BIT(1),
659 RuntimeMenuDevicesActionType_OpticalDevices = RT_BIT(2),
660 RuntimeMenuDevicesActionType_FloppyDevices = RT_BIT(3),
661 RuntimeMenuDevicesActionType_Audio = RT_BIT(4),
662 RuntimeMenuDevicesActionType_AudioOutput = RT_BIT(5),
663 RuntimeMenuDevicesActionType_AudioInput = RT_BIT(6),
664 RuntimeMenuDevicesActionType_Network = RT_BIT(7),
665 RuntimeMenuDevicesActionType_NetworkSettings = RT_BIT(8),
666 RuntimeMenuDevicesActionType_USBDevices = RT_BIT(9),
667 RuntimeMenuDevicesActionType_USBDevicesSettings = RT_BIT(10),
668 RuntimeMenuDevicesActionType_WebCams = RT_BIT(11),
669 RuntimeMenuDevicesActionType_SharedClipboard = RT_BIT(12),
670 RuntimeMenuDevicesActionType_DragAndDrop = RT_BIT(13),
671 RuntimeMenuDevicesActionType_SharedFolders = RT_BIT(14),
672 RuntimeMenuDevicesActionType_SharedFoldersSettings = RT_BIT(15),
673 RuntimeMenuDevicesActionType_InsertGuestAdditionsDisk = RT_BIT(16),
674 RuntimeMenuDevicesActionType_UpgradeGuestAdditions = RT_BIT(17),
675 RuntimeMenuDevicesActionType_Nothing = RT_BIT(18),
676 RuntimeMenuDevicesActionType_All = 0xFFFF
677 };
678
679#ifdef VBOX_WITH_DEBUGGER_GUI
680 /** Runtime UI: Menu "Debugger": Action types. */
681 enum RuntimeMenuDebuggerActionType
682 {
683 RuntimeMenuDebuggerActionType_Invalid = 0,
684 RuntimeMenuDebuggerActionType_Statistics = RT_BIT(0),
685 RuntimeMenuDebuggerActionType_CommandLine = RT_BIT(1),
686 RuntimeMenuDebuggerActionType_Logging = RT_BIT(2),
687 RuntimeMenuDebuggerActionType_GuestControlConsole = RT_BIT(3),
688 RuntimeMenuDebuggerActionType_All = 0xFFFF
689 };
690#endif /* VBOX_WITH_DEBUGGER_GUI */
691
692#ifdef VBOX_WS_MAC
693 /** Menu "Window": Action types. */
694 enum MenuWindowActionType
695 {
696 MenuWindowActionType_Invalid = 0,
697 MenuWindowActionType_Minimize = RT_BIT(0),
698 MenuWindowActionType_Switch = RT_BIT(1),
699 MenuWindowActionType_All = 0xFFFF
700 };
701#endif /* VBOX_WS_MAC */
702
703
704 /** VirtualBox Manager UI: Details element: "General" option types. */
705 enum DetailsElementOptionTypeGeneral
706 {
707 DetailsElementOptionTypeGeneral_Invalid = 0,
708 DetailsElementOptionTypeGeneral_Name = RT_BIT(0),
709 DetailsElementOptionTypeGeneral_OS = RT_BIT(1),
710 DetailsElementOptionTypeGeneral_Location = RT_BIT(2),
711 DetailsElementOptionTypeGeneral_Groups = RT_BIT(3),
712 DetailsElementOptionTypeGeneral_Default = 0xFFFB
713 };
714 Q_ENUM(DetailsElementOptionTypeGeneral);
715
716 /** VirtualBox Manager UI: Details element: "System" option types. */
717 enum DetailsElementOptionTypeSystem
718 {
719 DetailsElementOptionTypeSystem_Invalid = 0,
720 DetailsElementOptionTypeSystem_RAM = RT_BIT(0),
721 DetailsElementOptionTypeSystem_CPUCount = RT_BIT(1),
722 DetailsElementOptionTypeSystem_CPUExecutionCap = RT_BIT(2),
723 DetailsElementOptionTypeSystem_BootOrder = RT_BIT(3),
724 DetailsElementOptionTypeSystem_ChipsetType = RT_BIT(4),
725 DetailsElementOptionTypeSystem_TpmType = RT_BIT(5),
726 DetailsElementOptionTypeSystem_Firmware = RT_BIT(6),
727 DetailsElementOptionTypeSystem_SecureBoot = RT_BIT(7),
728 DetailsElementOptionTypeSystem_Acceleration = RT_BIT(8),
729 DetailsElementOptionTypeSystem_Default = 0xFFFF
730 };
731 Q_ENUM(DetailsElementOptionTypeSystem);
732
733 /** VirtualBox Manager UI: Details element: "Display" option types. */
734 enum DetailsElementOptionTypeDisplay
735 {
736 DetailsElementOptionTypeDisplay_Invalid = 0,
737 DetailsElementOptionTypeDisplay_VRAM = RT_BIT(0),
738 DetailsElementOptionTypeDisplay_ScreenCount = RT_BIT(1),
739 DetailsElementOptionTypeDisplay_ScaleFactor = RT_BIT(2),
740 DetailsElementOptionTypeDisplay_GraphicsController = RT_BIT(3),
741 DetailsElementOptionTypeDisplay_Acceleration = RT_BIT(4),
742 DetailsElementOptionTypeDisplay_VRDE = RT_BIT(5),
743 DetailsElementOptionTypeDisplay_Recording = RT_BIT(6),
744 DetailsElementOptionTypeDisplay_Default = 0xFFFF
745 };
746 Q_ENUM(DetailsElementOptionTypeDisplay);
747
748 /** VirtualBox Manager UI: Details element: "Storage" option types. */
749 enum DetailsElementOptionTypeStorage
750 {
751 DetailsElementOptionTypeStorage_Invalid = 0,
752 DetailsElementOptionTypeStorage_HardDisks = RT_BIT(0),
753 DetailsElementOptionTypeStorage_OpticalDevices = RT_BIT(1),
754 DetailsElementOptionTypeStorage_FloppyDevices = RT_BIT(2),
755 DetailsElementOptionTypeStorage_Default = 0xFFFF
756 };
757 Q_ENUM(DetailsElementOptionTypeStorage);
758
759 /** VirtualBox Manager UI: Details element: "Audio" option types. */
760 enum DetailsElementOptionTypeAudio
761 {
762 DetailsElementOptionTypeAudio_Invalid = 0,
763 DetailsElementOptionTypeAudio_Driver = RT_BIT(0),
764 DetailsElementOptionTypeAudio_Controller = RT_BIT(1),
765 DetailsElementOptionTypeAudio_IO = RT_BIT(2),
766 DetailsElementOptionTypeAudio_Default = 0xFFFF
767 };
768 Q_ENUM(DetailsElementOptionTypeAudio);
769
770 /** VirtualBox Manager UI: Details element: "Network" option types. */
771 enum DetailsElementOptionTypeNetwork
772 {
773 DetailsElementOptionTypeNetwork_Invalid = 0,
774 DetailsElementOptionTypeNetwork_NotAttached = RT_BIT(0),
775 DetailsElementOptionTypeNetwork_NAT = RT_BIT(1),
776 DetailsElementOptionTypeNetwork_BridgedAdapter = RT_BIT(2),
777 DetailsElementOptionTypeNetwork_InternalNetwork = RT_BIT(3),
778 DetailsElementOptionTypeNetwork_HostOnlyAdapter = RT_BIT(4),
779 DetailsElementOptionTypeNetwork_GenericDriver = RT_BIT(5),
780 DetailsElementOptionTypeNetwork_NATNetwork = RT_BIT(6),
781#ifdef VBOX_WITH_CLOUD_NET
782 DetailsElementOptionTypeNetwork_CloudNetwork = RT_BIT(7),
783#endif /* VBOX_WITH_CLOUD_NET */
784#ifdef VBOX_WITH_VMNET
785 DetailsElementOptionTypeNetwork_HostOnlyNetwork = RT_BIT(8),
786#endif /* VBOX_WITH_VMNET */
787 DetailsElementOptionTypeNetwork_Default = 0xFFFF
788 };
789 Q_ENUM(DetailsElementOptionTypeNetwork);
790
791 /** VirtualBox Manager UI: Details element: "Serial" option types. */
792 enum DetailsElementOptionTypeSerial
793 {
794 DetailsElementOptionTypeSerial_Invalid = 0,
795 DetailsElementOptionTypeSerial_Disconnected = RT_BIT(0),
796 DetailsElementOptionTypeSerial_HostPipe = RT_BIT(1),
797 DetailsElementOptionTypeSerial_HostDevice = RT_BIT(2),
798 DetailsElementOptionTypeSerial_RawFile = RT_BIT(3),
799 DetailsElementOptionTypeSerial_TCP = RT_BIT(4),
800 DetailsElementOptionTypeSerial_Default = 0xFFFF
801 };
802 Q_ENUM(DetailsElementOptionTypeSerial);
803
804 /** VirtualBox Manager UI: Details element: "USB" option types. */
805 enum DetailsElementOptionTypeUsb
806 {
807 DetailsElementOptionTypeUsb_Invalid = 0,
808 DetailsElementOptionTypeUsb_Controller = RT_BIT(0),
809 DetailsElementOptionTypeUsb_DeviceFilters = RT_BIT(1),
810 DetailsElementOptionTypeUsb_Default = 0xFFFF
811 };
812 Q_ENUM(DetailsElementOptionTypeUsb);
813
814 /** VirtualBox Manager UI: Details element: "SharedFolders" option types. */
815 enum DetailsElementOptionTypeSharedFolders
816 {
817 DetailsElementOptionTypeSharedFolders_Invalid = 0,
818 DetailsElementOptionTypeSharedFolders_Default = 0xFFFF
819 };
820 Q_ENUM(DetailsElementOptionTypeSharedFolders);
821
822 /** VirtualBox Manager UI: Details element: "UserInterface" option types. */
823 enum DetailsElementOptionTypeUserInterface
824 {
825 DetailsElementOptionTypeUserInterface_Invalid = 0,
826 DetailsElementOptionTypeUserInterface_VisualState = RT_BIT(0),
827 DetailsElementOptionTypeUserInterface_MenuBar = RT_BIT(1),
828 DetailsElementOptionTypeUserInterface_StatusBar = RT_BIT(2),
829 DetailsElementOptionTypeUserInterface_MiniToolbar = RT_BIT(3),
830 DetailsElementOptionTypeUserInterface_Default = 0xFFFF
831 };
832 Q_ENUM(DetailsElementOptionTypeUserInterface);
833
834 /** VirtualBox Manager UI: Details element: "Description" option types. */
835 enum DetailsElementOptionTypeDescription
836 {
837 DetailsElementOptionTypeDescription_Invalid = 0,
838 DetailsElementOptionTypeDescription_Default = 0xFFFF
839 };
840 Q_ENUM(DetailsElementOptionTypeDescription);
841};
842
843
844/** Common UI: GUI feature types. */
845enum GUIFeatureType
846{
847 GUIFeatureType_None = 0,
848 GUIFeatureType_NoSelector = RT_BIT(0),
849#ifdef VBOX_WS_MAC
850 GUIFeatureType_NoUserElements = RT_BIT(1),
851#else
852 GUIFeatureType_NoMenuBar = RT_BIT(1),
853#endif
854 GUIFeatureType_NoStatusBar = RT_BIT(2),
855 GUIFeatureType_All = 0xFF
856};
857
858
859/** Common UI: Global settings page types. */
860enum GlobalSettingsPageType
861{
862 GlobalSettingsPageType_Invalid,
863 GlobalSettingsPageType_General,
864 GlobalSettingsPageType_Input,
865#ifdef VBOX_GUI_WITH_NETWORK_MANAGER
866 GlobalSettingsPageType_Update,
867#endif
868 GlobalSettingsPageType_Language,
869 GlobalSettingsPageType_Display,
870#ifdef VBOX_GUI_WITH_NETWORK_MANAGER
871 GlobalSettingsPageType_Proxy,
872#endif
873 GlobalSettingsPageType_Max
874};
875Q_DECLARE_METATYPE(GlobalSettingsPageType);
876
877
878/** Common UI: Machine settings page types. */
879enum MachineSettingsPageType
880{
881 MachineSettingsPageType_Invalid,
882 MachineSettingsPageType_General,
883 MachineSettingsPageType_System,
884 MachineSettingsPageType_Display,
885 MachineSettingsPageType_Storage,
886 MachineSettingsPageType_Audio,
887 MachineSettingsPageType_Network,
888 MachineSettingsPageType_Serial,
889 MachineSettingsPageType_USB,
890 MachineSettingsPageType_SF,
891 MachineSettingsPageType_Interface,
892 MachineSettingsPageType_Max
893};
894Q_DECLARE_METATYPE(MachineSettingsPageType);
895
896
897/** Common UI: Shared Folder types. */
898enum UISharedFolderType
899{
900 UISharedFolderType_Global,
901 UISharedFolderType_Machine,
902 UISharedFolderType_Console
903};
904
905
906/** Remote mode types. */
907enum UIRemoteMode
908{
909 UIRemoteMode_Any,
910 UIRemoteMode_On,
911 UIRemoteMode_Off
912};
913Q_DECLARE_METATYPE(UIRemoteMode);
914
915
916/** Common UI: Wizard types. */
917enum WizardType
918{
919 WizardType_Invalid,
920 WizardType_NewVM,
921 WizardType_CloneVM,
922 WizardType_ExportAppliance,
923 WizardType_ImportAppliance,
924 WizardType_NewCloudVM,
925 WizardType_AddCloudVM,
926 WizardType_NewVD,
927 WizardType_CloneVD
928};
929
930
931/** Common UI: Wizard modes. */
932enum WizardMode
933{
934 WizardMode_Basic,
935 WizardMode_Expert
936};
937
938
939/** Tool item classes. */
940enum UIToolClass
941{
942 UIToolClass_Invalid,
943 UIToolClass_Aux,
944 UIToolClass_Global,
945 UIToolClass_Machine,
946 UIToolClass_Management
947};
948
949
950/** Tool item types. */
951enum UIToolType
952{
953 UIToolType_Invalid,
954 /* Aux types: */
955 UIToolType_Toggle,
956 /* Global types: */
957 UIToolType_Home,
958 UIToolType_Machines,
959 UIToolType_Managers,
960 UIToolType_Extensions,
961 UIToolType_Media,
962 UIToolType_Network,
963 UIToolType_Cloud,
964 UIToolType_CloudConsole,
965 UIToolType_Activities,
966 /* Machine types: */
967 UIToolType_Error,
968 UIToolType_Details,
969 UIToolType_Snapshots,
970 UIToolType_Logs,
971 UIToolType_VMActivity,
972 UIToolType_FileManager
973};
974Q_DECLARE_METATYPE(UIToolType);
975
976
977/** Contains stuff related to tools handling. */
978namespace UIToolStuff
979{
980 /** Returns @a enmClass for passed @a enmType. */
981 SHARED_LIBRARY_STUFF UIToolClass castTypeToClass(UIToolType enmType);
982 /** Returns whether passed @a enmType is of passed @a enmClass. */
983 SHARED_LIBRARY_STUFF bool isTypeOfClass(UIToolType enmType, UIToolClass enmClass);
984}
985
986
987/** Selector UI: Details-element types. */
988enum DetailsElementType
989{
990 DetailsElementType_Invalid,
991 DetailsElementType_General,
992 DetailsElementType_System,
993 DetailsElementType_Preview,
994 DetailsElementType_Display,
995 DetailsElementType_Storage,
996 DetailsElementType_Audio,
997 DetailsElementType_Network,
998 DetailsElementType_Serial,
999 DetailsElementType_USB,
1000 DetailsElementType_SF,
1001 DetailsElementType_UI,
1002 DetailsElementType_Description,
1003 DetailsElementType_Max
1004};
1005Q_DECLARE_METATYPE(DetailsElementType);
1006
1007
1008/** Selector UI: Preview update interval types. */
1009enum PreviewUpdateIntervalType
1010{
1011 PreviewUpdateIntervalType_Disabled,
1012 PreviewUpdateIntervalType_500ms,
1013 PreviewUpdateIntervalType_1000ms,
1014 PreviewUpdateIntervalType_2000ms,
1015 PreviewUpdateIntervalType_5000ms,
1016 PreviewUpdateIntervalType_10000ms,
1017 PreviewUpdateIntervalType_Max
1018};
1019
1020
1021/** Selector UI: Disk encryption cipher types. */
1022enum UIDiskEncryptionCipherType
1023{
1024 UIDiskEncryptionCipherType_Unchanged,
1025 UIDiskEncryptionCipherType_XTS256,
1026 UIDiskEncryptionCipherType_XTS128,
1027 UIDiskEncryptionCipherType_Max
1028};
1029Q_DECLARE_METATYPE(UIDiskEncryptionCipherType);
1030
1031
1032/** Runtime UI: Visual-state types. */
1033enum UIVisualStateType
1034{
1035 UIVisualStateType_Invalid = 0,
1036 UIVisualStateType_Normal = RT_BIT(0),
1037 UIVisualStateType_Fullscreen = RT_BIT(1),
1038 UIVisualStateType_Seamless = RT_BIT(2),
1039 UIVisualStateType_Scale = RT_BIT(3),
1040 UIVisualStateType_All = 0xFF
1041};
1042Q_DECLARE_METATYPE(UIVisualStateType);
1043
1044
1045/** Runtime UI: Indicator types. */
1046enum IndicatorType
1047{
1048 IndicatorType_Invalid,
1049 IndicatorType_HardDisks,
1050 IndicatorType_OpticalDisks,
1051 IndicatorType_FloppyDisks,
1052 IndicatorType_Audio,
1053 IndicatorType_Network,
1054 IndicatorType_USB,
1055 IndicatorType_SharedFolders,
1056 IndicatorType_Display,
1057 IndicatorType_Recording,
1058 IndicatorType_Features,
1059 IndicatorType_Mouse,
1060 IndicatorType_Keyboard,
1061 IndicatorType_KeyboardExtension,
1062 IndicatorType_Max
1063};
1064Q_DECLARE_METATYPE(IndicatorType);
1065
1066
1067/** Runtime UI: Machine close actions. */
1068enum MachineCloseAction
1069{
1070 MachineCloseAction_Invalid = 0,
1071 MachineCloseAction_Detach = RT_BIT(0),
1072 MachineCloseAction_SaveState = RT_BIT(1),
1073 MachineCloseAction_Shutdown = RT_BIT(2),
1074 MachineCloseAction_PowerOff = RT_BIT(3),
1075 MachineCloseAction_PowerOff_RestoringSnapshot = RT_BIT(4),
1076 MachineCloseAction_All = 0xFF
1077};
1078Q_DECLARE_METATYPE(MachineCloseAction);
1079
1080
1081/** Runtime UI: Mouse capture policy types. */
1082enum MouseCapturePolicy
1083{
1084 MouseCapturePolicy_Default,
1085 MouseCapturePolicy_HostComboOnly,
1086 MouseCapturePolicy_Disabled
1087};
1088
1089
1090/** Runtime UI: Guru Meditation handler types. */
1091enum GuruMeditationHandlerType
1092{
1093 GuruMeditationHandlerType_Default,
1094 GuruMeditationHandlerType_PowerOff,
1095 GuruMeditationHandlerType_Ignore
1096};
1097
1098
1099/** Runtime UI: Scaling optimization types. */
1100enum ScalingOptimizationType
1101{
1102 ScalingOptimizationType_None,
1103 ScalingOptimizationType_Performance
1104};
1105
1106
1107#ifndef VBOX_WS_MAC
1108/** Runtime UI: Mini-toolbar alignment. */
1109enum MiniToolbarAlignment
1110{
1111 MiniToolbarAlignment_Disabled,
1112 MiniToolbarAlignment_Bottom,
1113 MiniToolbarAlignment_Top
1114};
1115#endif /* !VBOX_WS_MAC */
1116
1117
1118/** Runtime UI: Information-element types. */
1119enum InformationElementType
1120{
1121 InformationElementType_Invalid,
1122 InformationElementType_General,
1123 InformationElementType_System,
1124 InformationElementType_Preview,
1125 InformationElementType_Display,
1126 InformationElementType_Storage,
1127 InformationElementType_Audio,
1128 InformationElementType_Network,
1129 InformationElementType_Serial,
1130 InformationElementType_USB,
1131 InformationElementType_SharedFolders,
1132 InformationElementType_UI,
1133 InformationElementType_Description,
1134 InformationElementType_RuntimeAttributes,
1135 InformationElementType_StorageStatistics,
1136 InformationElementType_NetworkStatistics
1137};
1138Q_DECLARE_METATYPE(InformationElementType);
1139
1140
1141/** Runtime UI: Maximum guest-screen size policy types.
1142 * @note This policy determines which guest-screen sizes we wish to
1143 * handle. We also accept anything smaller than the current size. */
1144enum MaximumGuestScreenSizePolicy
1145{
1146 /** Anything at all. */
1147 MaximumGuestScreenSizePolicy_Any,
1148 /** Anything up to a fixed size. */
1149 MaximumGuestScreenSizePolicy_Fixed,
1150 /** Anything up to host-screen available space. */
1151 MaximumGuestScreenSizePolicy_Automatic
1152};
1153Q_DECLARE_METATYPE(MaximumGuestScreenSizePolicy);
1154
1155
1156/** Manager UI: VM Activity Overview Column types.
1157 * @note The first element must be 0 and the rest must be consecutive */
1158enum VMActivityOverviewColumn
1159{
1160 VMActivityOverviewColumn_Name = 0,
1161 VMActivityOverviewColumn_CPUGuestLoad,
1162 VMActivityOverviewColumn_CPUVMMLoad,
1163 VMActivityOverviewColumn_RAMUsedAndTotal,
1164 VMActivityOverviewColumn_RAMUsedPercentage,
1165 VMActivityOverviewColumn_NetworkUpRate,
1166 VMActivityOverviewColumn_NetworkDownRate,
1167 VMActivityOverviewColumn_NetworkUpTotal,
1168 VMActivityOverviewColumn_NetworkDownTotal,
1169 VMActivityOverviewColumn_DiskIOReadRate,
1170 VMActivityOverviewColumn_DiskIOWriteRate,
1171 VMActivityOverviewColumn_DiskIOReadTotal,
1172 VMActivityOverviewColumn_DiskIOWriteTotal,
1173 VMActivityOverviewColumn_VMExits,
1174 VMActivityOverviewColumn_Max
1175};
1176
1177#endif /* !FEQT_INCLUDED_SRC_extradata_UIExtraDataDefs_h */
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette