VirtualBox

source: vbox/trunk/src/VBox/Frontends/VirtualBox/include/VBoxSelectorWnd.h@ 2981

Last change on this file since 2981 was 2981, checked in by vboxsync, 18 years ago

InnoTek -> innotek: all the headers and comments.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.7 KB
Line 
1/** @file
2 *
3 * VBox frontends: Qt GUI ("VirtualBox"):
4 * VBoxSelectorWnd class declaration
5 */
6
7/*
8 * Copyright (C) 2006-2007 innotek GmbH
9 *
10 * This file is part of VirtualBox Open Source Edition (OSE), as
11 * available from http://www.virtualbox.org. This file is free software;
12 * you can redistribute it and/or modify it under the terms of the GNU
13 * General Public License as published by the Free Software Foundation,
14 * in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
15 * distribution. VirtualBox OSE is distributed in the hope that it will
16 * be useful, but WITHOUT ANY WARRANTY of any kind.
17 *
18 * If you received this file as part of a commercial VirtualBox
19 * distribution, then only the terms of your commercial VirtualBox
20 * license agreement apply instead of the previous paragraph.
21 */
22
23#ifndef __VBoxSelectorWnd_h__
24#define __VBoxSelectorWnd_h__
25
26#include "COMDefs.h"
27
28#include "VBoxGlobal.h"
29
30#include <qapplication.h>
31#include <qmainwindow.h>
32#include <qgroupbox.h>
33#include <qaction.h>
34
35#include <qvaluelist.h>
36
37class VBoxVMListBox;
38class VBoxSnapshotsWgt;
39class VBoxVMDetailsView;
40class VBoxVMDescriptionPage;
41class VBoxVMLogViewer;
42
43class QLabel;
44class QTextBrowser;
45class QTabWidget;
46struct QUuid;
47
48class VBoxSelectorWnd : public QMainWindow
49{
50 Q_OBJECT
51
52public:
53
54 VBoxSelectorWnd (VBoxSelectorWnd **aSelf,
55 QWidget* aParent = 0, const char* aName = 0,
56 WFlags aFlags = WType_TopLevel);
57 virtual ~VBoxSelectorWnd();
58
59 bool startMachine (const QUuid &id);
60
61public slots:
62
63 void fileDiskMgr();
64 void fileSettings();
65 void fileExit();
66
67 void vmNew();
68 void vmSettings (const QString &aCategory = QString::null,
69 const QString &aControl = QString::null);
70 void vmDelete();
71 void vmStart();
72 void vmDiscard();
73 void vmRefresh();
74 void vmShowLogs (bool);
75
76 void refreshVMList();
77 void refreshVMItem (const QUuid &aID, bool aDetails,
78 bool aSnapshots,
79 bool aDescription);
80
81 void showHelpContents();
82
83protected:
84
85 /* events */
86 bool event (QEvent *e);
87
88protected slots:
89
90private:
91
92 void languageChange();
93
94private slots:
95
96 void vmListBoxCurrentChanged (bool aRefreshDetails = true,
97 bool aRefreshSnapshots = true,
98 bool aRefreshDescription = true);
99
100 void mediaEnumStarted();
101 void mediaEnumFinished (const VBoxMediaList &);
102
103 /* VirtualBox callback events we're interested in */
104
105 void machineStateChanged (const VBoxMachineStateChangeEvent &e);
106 void machineDataChanged (const VBoxMachineDataChangeEvent &e);
107 void machineRegistered (const VBoxMachineRegisteredEvent &e);
108 void sessionStateChanged (const VBoxSessionStateChangeEvent &e);
109 void snapshotChanged (const VBoxSnapshotEvent &e);
110
111private:
112
113 /* actions */
114 QAction *fileDiskMgrAction;
115 QAction *fileSettingsAction;
116 QAction *fileExitAction;
117 QAction *vmNewAction;
118 QAction *vmConfigAction;
119 QAction *vmDeleteAction;
120 QAction *vmStartAction;
121 QAction *vmDiscardAction;
122 QAction *vmRefreshAction;
123 QAction *vmShowLogsAction;
124 QAction *helpContentsAction;
125 QAction *helpWebAction;
126 QAction *helpAboutAction;
127 QAction *helpResetMessagesAction;
128
129 /* widgets */
130 VBoxVMListBox *vmListBox;
131 QTabWidget *vmTabWidget;
132 VBoxVMDetailsView *vmDetailsView;
133 VBoxSnapshotsWgt *vmSnapshotsWgt;
134 VBoxVMDescriptionPage *vmDescriptionPage;
135
136 QValueList <CSession> sessions;
137
138 QPoint normal_pos;
139 QSize normal_size;
140
141 bool doneInaccessibleWarningOnce : 1;
142};
143
144#endif // __VBoxSelectorWnd_h__
Note: See TracBrowser for help on using the repository browser.

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