VirtualBox

source: vbox/trunk/src/VBox/Frontends/VirtualBox/src/notificationcenter/UINotificationObjects.h@ 105266

Last change on this file since 105266 was 105081, checked in by vboxsync, 9 months ago

FE/Qt: Moving local machine related stuff from UICommon to new UILocalMachineStuff namespace; Reworking GUI to use it accordingly; Dependencies and includes cleanup.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 118.7 KB
Line 
1/* $Id: UINotificationObjects.h 105081 2024-07-01 15:38:32Z vboxsync $ */
2/** @file
3 * VBox Qt GUI - Various UINotificationObjects declarations.
4 */
5
6/*
7 * Copyright (C) 2021-2023 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_notificationcenter_UINotificationObjects_h
29#define FEQT_INCLUDED_SRC_notificationcenter_UINotificationObjects_h
30#ifndef RT_WITHOUT_PRAGMA_ONCE
31# pragma once
32#endif
33
34/* Qt includes: */
35#include <QUuid>
36
37/* GUI includes: */
38#include "UIDefs.h"
39#include "UIMediumDefs.h"
40#include "UINotificationObject.h"
41
42/* COM includes: */
43#include "CAppliance.h"
44#include "CCloudClient.h"
45#include "CCloudMachine.h"
46#include "CConsole.h"
47#include "CDataStream.h"
48#include "CExtPackFile.h"
49#include "CExtPackManager.h"
50#include "CForm.h"
51#include "CFormValue.h"
52#include "CGuest.h"
53#include "CHost.h"
54#include "CHostNetworkInterface.h"
55#include "CMachine.h"
56#include "CMedium.h"
57#include "CSession.h"
58#include "CSnapshot.h"
59#include "CStringArray.h"
60#ifdef VBOX_WITH_UPDATE_AGENT
61# include "CUpdateAgent.h"
62#endif
63#include "CVFSExplorer.h"
64#include "CVirtualSystemDescription.h"
65#include "CVirtualSystemDescriptionForm.h"
66
67/* Forward declarations: */
68class UINotificationCenter;
69class CAudioAdapter;
70class CCloudProviderManager;
71class CCloudProvider;
72class CCloudProfile;
73class CEmulatedUSB;
74class CGuestOSType;
75class CKeyboard;
76class CMachineDebugger;
77class CMediumAttachment;
78class CMouse;
79class CNetworkAdapter;
80class CPlatformProperties;
81class CStorageController;
82class CSystemProperties;
83class CVirtualBox;
84class CVirtualBoxErrorInfo;
85class CVRDEServer;
86class CVRDEServerInfo;
87class CUnattended;
88
89/** UINotificationObject extension for message functionality. */
90class SHARED_LIBRARY_STUFF UINotificationMessage : public UINotificationSimple
91{
92 Q_OBJECT;
93
94public:
95
96 /** @name Simple general warnings.
97 * @{ */
98 /** Notifies about inability to find help file at certain @a strLocation. */
99 static void cannotFindHelpFile(const QString &strLocation);
100
101 /** Notifies about inability to open @a strUrl. */
102 static void cannotOpenURL(const QString &strUrl);
103
104 /** Reminds about BETA build. */
105 static void remindAboutBetaBuild();
106 /** Reminds about BETA build. */
107 static void remindAboutExperimentalBuild();
108 /** Notifies about invalid encryption password.
109 * @param strPasswordId Brings password ID. */
110 static void warnAboutInvalidEncryptionPassword(const QString &strPasswordId);
111 /** Notifies about a clipboard error. */
112 static void showClipboardError(QString strId, QString strMsg, long rcError);
113
114#ifdef VBOX_GUI_WITH_NETWORK_MANAGER
115 /** Notifies about update not found. */
116 static void showUpdateNotFound();
117 /** Notifies about update successful.
118 * @param strVersion Brings the found version.
119 * @param strLink Brings the link to found package. */
120 static void showUpdateSuccess(const QString &strVersion, const QString &strLink);
121 /** Notifies about extension pack needs to be updated.
122 * @param strExtPackName Brings the package name.
123 * @param strExtPackVersion Brings the package version.
124 * @param strVBoxVersion Brings VBox version. */
125 static void askUserToDownloadExtensionPack(const QString &strExtPackName,
126 const QString &strExtPackVersion,
127 const QString &strVBoxVersion);
128
129 /** Notifies about inability to validate guest additions.
130 * @param strUrl Brings the GA URL.
131 * @param strSrc Brings the GA source. */
132 static void cannotValidateGuestAdditionsSHA256Sum(const QString &strUrl,
133 const QString &strSrc);
134
135 /** Notifies about user manual downloded.
136 * @param strUrl Brings the GA URL.
137 * @param strSrc Brings the GA source. */
138 static void warnAboutUserManualDownloaded(const QString &strUrl,
139 const QString &strTarget);
140
141 /** Notifies about inability to validate guest additions.
142 * @param strUrl Brings the GA URL.
143 * @param strSrc Brings the GA source. */
144 static void cannotValidateExtentionPackSHA256Sum(const QString &strExtPackName,
145 const QString &strFrom,
146 const QString &strTo);
147#endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
148 /** @} */
149
150 /** @name Simple VirtualBox Manager warnings.
151 * @{ */
152 /** Notifies about inability to create machine folder.
153 * @param strPath Brings the machine folder path. */
154 static void cannotCreateMachineFolder(const QString &strPath,
155 UINotificationCenter *pParent = 0);
156 /** Notifies about inability to overwrite machine folder.
157 * @param strPath Brings the machine folder path. */
158 static void cannotOverwriteMachineFolder(const QString &strPath,
159 UINotificationCenter *pParent = 0);
160 /** Notifies about inability to remove machine folder.
161 * @param strPath Brings the machine folder path. */
162 static void cannotRemoveMachineFolder(const QString &strPath,
163 UINotificationCenter *pParent = 0);
164
165 /** Notifies about inability to register existing machine.
166 * @param streName Brings the machine name.
167 * @param strLocation Brings the machine location. */
168 static void cannotReregisterExistingMachine(const QString &strName, const QString &strLocation);
169
170 /** Notifies about inability to resolve collision automatically.
171 * @param strCollisionName Brings the collision VM name.
172 * @param strGroupName Brings the group name. */
173 static void cannotResolveCollisionAutomatically(const QString &strCollisionName, const QString &strGroupName);
174
175 /** Notifies about inability to acquire cloud machine settings.
176 * @param strErrorDetails Brings the error details. */
177 static void cannotAcquireCloudMachineSettings(const QString &strErrorDetails);
178
179 /** Notifies about inability to create medium storage in FAT.
180 * @param strPath Brings the medium path. */
181 static void cannotCreateMediumStorageInFAT(const QString &strPath,
182 UINotificationCenter *pParent = 0);
183 /** Notifies about inability to overwrite medium storage.
184 * @param strPath Brings the medium path. */
185 static void cannotOverwriteMediumStorage(const QString &strPath,
186 UINotificationCenter *pParent = 0);
187
188 /** Notifies about inability to open license file.
189 * @param strPath Brings the license file path. */
190 static void cannotOpenLicenseFile(const QString &strPath);
191
192 /** Notifies about public key path is empty. */
193 static void warnAboutPublicKeyFilePathIsEmpty();
194 /** Notifies about public key file doesn't exist.
195 * @param strPath Brings the path being checked. */
196 static void warnAboutPublicKeyFileDoesntExist(const QString &strPath);
197 /** Notifies about public key file is of too large size.
198 * @param strPath Brings the path being checked. */
199 static void warnAboutPublicKeyFileIsOfTooLargeSize(const QString &strPath);
200 /** Notifies about public key file isn't readable.
201 * @param strPath Brings the path being checked. */
202 static void warnAboutPublicKeyFileIsntReadable(const QString &strPath);
203
204 /** Notifies about DHCP server isn't enabled.
205 * @param strName Brings the interface name. */
206 static void warnAboutDHCPServerIsNotEnabled(const QString &strName);
207 /** Notifies about invalid IPv4 address.
208 * @param strName Brings the interface name. */
209 static void warnAboutInvalidIPv4Address(const QString &strName);
210 /** Notifies about invalid IPv4 mask.
211 * @param strName Brings the interface name. */
212 static void warnAboutInvalidIPv4Mask(const QString &strName);
213 /** Notifies about invalid IPv6 address.
214 * @param strName Brings the interface name. */
215 static void warnAboutInvalidIPv6Address(const QString &strName);
216 /** Notifies about invalid IPv6 prefix length.
217 * @param strName Brings the interface name. */
218 static void warnAboutInvalidIPv6PrefixLength(const QString &strName);
219 /** Notifies about invalid DHCP server address.
220 * @param strName Brings the interface name. */
221 static void warnAboutInvalidDHCPServerAddress(const QString &strName);
222 /** Notifies about invalid DHCP server mask.
223 * @param strName Brings the interface name. */
224 static void warnAboutInvalidDHCPServerMask(const QString &strName);
225 /** Notifies about invalid DHCP server lower address.
226 * @param strName Brings the interface name. */
227 static void warnAboutInvalidDHCPServerLowerAddress(const QString &strName);
228 /** Notifies about invalid DHCP server upper address.
229 * @param strName Brings the interface name. */
230 static void warnAboutInvalidDHCPServerUpperAddress(const QString &strName);
231 /** Notifies about no name specified.
232 * @param strName Brings the interface name. */
233 static void warnAboutNoNameSpecified(const QString &strName);
234 /** Notifies about name already busy.
235 * @param strName Brings the interface name. */
236 static void warnAboutNameAlreadyBusy(const QString &strName);
237 /** Notifies about no IPv4 prefix specified.
238 * @param strName Brings the interface name. */
239 static void warnAboutNoIPv4PrefixSpecified(const QString &strName);
240 /** Notifies about no IPv6 prefix specified.
241 * @param strName Brings the interface name. */
242 static void warnAboutNoIPv6PrefixSpecified(const QString &strName);
243 /** @} */
244
245 /** @name Simple Runtime UI warnings.
246 * @{ */
247 /** Notifies about inability to mount image.
248 * @param strMachineName Brings the machine name.
249 * @param strMediumName Brings the medium name. */
250 static void cannotMountImage(const QString &strMachineName, const QString &strMediumName);
251
252 /** Notifies about inability to send ACPI shutdown. */
253 static void cannotSendACPIToMachine();
254
255 /** Reminds about keyboard auto capturing. */
256 static void remindAboutAutoCapture();
257
258 /** Reminds about GA not affected. */
259 static void remindAboutGuestAdditionsAreNotActive();
260
261 /** Reminds about mouse integration.
262 * @param fSupportsAbsolute Brings whether mouse supports absolute pointing. */
263 static void remindAboutMouseIntegration(bool fSupportsAbsolute);
264
265 /** Reminds about paused VM input. */
266 static void remindAboutPausedVMInput();
267 /** Revokes message about paused VM input. */
268 static void forgetAboutPausedVMInput();
269
270 /** Reminds about wrong color depth.
271 * @param uRealBPP Brings real bit per pixel value.
272 * @param uWantedBPP Brings wanted bit per pixel value. */
273 static void remindAboutWrongColorDepth(ulong uRealBPP, ulong uWantedBPP);
274 /** Revokes message about wrong color depth. */
275 static void forgetAboutWrongColorDepth();
276 /** @} */
277
278 /** @name COM general warnings.
279 * @{ */
280 /** Notifies about inability to acquire IVirtualBox parameter.
281 * @param comVBox Brings the object parameter get acquired from. */
282 static void cannotAcquireVirtualBoxParameter(const CVirtualBox &comVBox,
283 UINotificationCenter *pParent = 0);
284 /** Notifies about inability to acquire IAppliance parameter.
285 * @param comVBox Brings the object parameter get acquired from. */
286 static void cannotAcquireApplianceParameter(const CAppliance &comAppliance,
287 UINotificationCenter *pParent = 0);
288 /** Notifies about inability to acquire IPlatform parameter.
289 * @param comPlatform Brings the object parameter get acquired from. */
290 static void cannotAcquirePlatformParameter(const CPlatform &comPlatform);
291 /** Notifies about inability to acquire IPlatformProperties parameter.
292 * @param comProperties Brings the object parameter get acquired from. */
293 static void cannotAcquirePlatformPropertiesParameter(const CPlatformProperties &comProperties);
294 /** Notifies about inability to acquire ISystemProperties parameter.
295 * @param comProperties Brings the object parameter get acquired from. */
296 static void cannotAcquireSystemPropertiesParameter(const CSystemProperties &comProperties);
297 /** Notifies about inability to acquire IExtPackManager parameter.
298 * @param comVBox Brings the object parameter get acquired from. */
299 static void cannotAcquireExtensionPackManagerParameter(const CExtPackManager &comEPManager);
300 /** Notifies about inability to acquire IExtPack parameter.
301 * @param comPackage Brings the object parameter get acquired from. */
302 static void cannotAcquireExtensionPackParameter(const CExtPack &comPackage);
303 /** Notifies about inability to acquire IHost parameter.
304 * @param comHost Brings the object parameter get acquired from. */
305 static void cannotAcquireHostParameter(const CHost &comHost);
306 /** Notifies about inability to acquire IStorageController parameter.
307 * @param comStorageController Brings the object parameter get acquired from. */
308 static void cannotAcquireStorageControllerParameter(const CStorageController &comStorageController);
309 /** Notifies about inability to acquire IMediumAttachment parameter.
310 * @param comMediumAttachment Brings the object parameter get acquired from. */
311 static void cannotAcquireMediumAttachmentParameter(const CMediumAttachment &comMediumAttachment);
312 /** Notifies about inability to acquire IMedium parameter.
313 * @param comMedium Brings the object parameter get acquired from. */
314 static void cannotAcquireMediumParameter(const CMedium &comMedium);
315 /** Notifies about inability to acquire ISession parameter.
316 * @param comSession Brings the object parameter get acquired from. */
317 static void cannotAcquireSessionParameter(const CSession &comSession);
318 /** Notifies about inability to acquire IMachine parameter.
319 * @param comMachine Brings the object parameter get acquired from. */
320 static void cannotAcquireMachineParameter(const CMachine &comMachine);
321 /** Notifies about inability to acquire IMachineDebugger parameter.
322 * @param comMachineDebugger Brings the object parameter get acquired from. */
323 static void cannotAcquireMachineDebuggerParameter(const CMachineDebugger &comMachineDebugger);
324 /** Notifies about inability to acquire IGraphicsAdapter parameter.
325 * @param comAdapter Brings the object parameter get acquired from. */
326 static void cannotAcquireGraphicsAdapterParameter(const CGraphicsAdapter &comAdapter);
327 /** Notifies about inability to acquire IAudioSettings parameter.
328 * @param comSettings Brings the object parameter get acquired from. */
329 static void cannotAcquireAudioSettingsParameter(const CAudioSettings &comSettings);
330 /** Notifies about inability to acquire IAudioAdapter parameter.
331 * @param comAdapter Brings the object parameter get acquired from. */
332 static void cannotAcquireAudioAdapterParameter(const CAudioAdapter &comAdapter);
333 /** Notifies about inability to acquire INetworkAdapter parameter.
334 * @param comAdapter Brings the object parameter get acquired from. */
335 static void cannotAcquireNetworkAdapterParameter(const CNetworkAdapter &comAdapter);
336 /** Notifies about inability to acquire IConsole parameter.
337 * @param comConsole Brings the object parameter get acquired from. */
338 static void cannotAcquireConsoleParameter(const CConsole &comConsole);
339 /** Notifies about inability to acquire IGuest parameter.
340 * @param comGuest Brings the object parameter get acquired from. */
341 static void cannotAcquireGuestParameter(const CGuest &comGuest);
342 /** Notifies about inability to acquire IGuestOSType parameter.
343 * @param comGuestOSType Brings the object parameter get acquired from. */
344 static void cannotAcquireGuestOSTypeParameter(const CGuestOSType &comGuestOSType);
345 /** Notifies about inability to acquire ISnapshot parameter.
346 * @param comSnapshot Brings the object parameter get acquired from. */
347 static void cannotAcquireSnapshotParameter(const CSnapshot &comSnapshot);
348 /** Notifies about inability to acquire IDHCPServer parameter.
349 * @param comServer Brings the object parameter get acquired from. */
350 static void cannotAcquireDHCPServerParameter(const CDHCPServer &comServer);
351 /** Notifies about inability to acquire ICloudNetwork parameter.
352 * @param comNetwork Brings the object parameter get acquired from. */
353 static void cannotAcquireCloudNetworkParameter(const CCloudNetwork &comNetwork);
354 /** Notifies about inability to acquire IHostNetworkInterface parameter.
355 * @param comInterface Brings the object parameter get acquired from. */
356 static void cannotAcquireHostNetworkInterfaceParameter(const CHostNetworkInterface &comInterface);
357 /** Notifies about inability to acquire IHostOnlyNetwork parameter.
358 * @param comNetwork Brings the object parameter get acquired from. */
359 static void cannotAcquireHostOnlyNetworkParameter(const CHostOnlyNetwork &comNetwork);
360 /** Notifies about inability to acquire INATNetwork parameter.
361 * @param comNetwork Brings the object parameter get acquired from. */
362 static void cannotAcquireNATNetworkParameter(const CNATNetwork &comNetwork);
363 /** Notifies about inability to acquire IDisplay parameter.
364 * @param comDisplay Brings the object parameter get acquired from. */
365 static void cannotAcquireDisplayParameter(const CDisplay &comDisplay);
366 /** Notifies about inability to acquire IUpdateAgent parameter.
367 * @param comAgent Brings the object parameter get acquired from. */
368 static void cannotAcquireUpdateAgentParameter(const CUpdateAgent &comAgent);
369 /** Notifies about inability to acquire IMouse parameter.
370 * @param comMouse Brings the object parameter get acquired from. */
371 static void cannotAcquireMouseParameter(const CMouse &comMouse);
372 /** Notifies about inability to acquire IEmulatedUSB parameter.
373 * @param comDispatcher Brings the object parameter get acquired from. */
374 static void cannotAcquireEmulatedUSBParameter(const CEmulatedUSB &comDispatcher);
375 /** Notifies about inability to acquire IRecordingSettings parameter.
376 * @param comSettings Brings the object parameter get acquired from. */
377 static void cannotAcquireRecordingSettingsParameter(const CRecordingSettings &comSettings);
378 /** Notifies about inability to acquire IVRDEServer parameter.
379 * @param comServer Brings the object parameter get acquired from. */
380 static void cannotAcquireVRDEServerParameter(const CVRDEServer &comServer);
381 /** Notifies about inability to acquire IVRDEServerInfo parameter.
382 * @param comVRDEServerInfo Brings the object parameter get acquired from. */
383 static void cannotAcquireVRDEServerInfoParameter(const CVRDEServerInfo &comVRDEServerInfo);
384 /** Notifies about inability to acquire IVirtualSystemDescription parameter.
385 * @param comVsd Brings the object parameter get acquired from. */
386 static void cannotAcquireVirtualSystemDescriptionParameter(const CVirtualSystemDescription &comVsd,
387 UINotificationCenter *pParent = 0);
388 /** Notifies about inability to acquire IVirtualSystemDescriptionForm parameter.
389 * @param comVsdForm Brings the object parameter get acquired from. */
390 static void cannotAcquireVirtualSystemDescriptionFormParameter(const CVirtualSystemDescriptionForm &comVsdForm,
391 UINotificationCenter *pParent = 0);
392 /** Notifies about inability to acquire ICloudProviderManager parameter.
393 * @param comCloudProviderManager Brings the object parameter get acquired from. */
394 static void cannotAcquireCloudProviderManagerParameter(const CCloudProviderManager &comCloudProviderManager,
395 UINotificationCenter *pParent = 0);
396 /** Notifies about inability to acquire ICloudProvider parameter.
397 * @param comCloudProvider Brings the object parameter get acquired from. */
398 static void cannotAcquireCloudProviderParameter(const CCloudProvider &comCloudProvider,
399 UINotificationCenter *pParent = 0);
400 /** Notifies about inability to acquire ICloudProfile parameter.
401 * @param comCloudProfile Brings the object parameter get acquired from. */
402 static void cannotAcquireCloudProfileParameter(const CCloudProfile &comCloudProfile,
403 UINotificationCenter *pParent = 0);
404 /** Notifies about inability to acquire ICloudMachine parameter.
405 * @param comCloudMachine Brings the object parameter get acquired from. */
406 static void cannotAcquireCloudMachineParameter(const CCloudMachine &comCloudMachine,
407 UINotificationCenter *pParent = 0);
408
409 /** Notifies about inability to change IMedium parameter.
410 * @param comMedium Brings the object parameter being changed for. */
411 static void cannotChangeMediumParameter(const CMedium &comMedium);
412 /** Notifies about inability to change IMachine parameter.
413 * @param comMachine Brings the object parameter being changed for. */
414 static void cannotChangeMachineParameter(const CMachine &comMachine);
415 /** Notifies about inability to change IMachineDebugger parameter.
416 * @param comMachineDebugger Brings the object parameter being changed for. */
417 static void cannotChangeMachineDebuggerParameter(const CMachineDebugger &comMachineDebugger);
418 /** Notifies about inability to change IGraphicsAdapter parameter.
419 * @param comAdapter Brings the object parameter being changed for. */
420 static void cannotChangeGraphicsAdapterParameter(const CGraphicsAdapter &comAdapter);
421 /** Notifies about inability to change IAudioAdapter parameter.
422 * @param comAdapter Brings the object parameter being changed for. */
423 static void cannotChangeAudioAdapterParameter(const CAudioAdapter &comAdapter);
424 /** Notifies about inability to change INetworkAdapter parameter.
425 * @param comAdapter Brings the object parameter being changed for. */
426 static void cannotChangeNetworkAdapterParameter(const CNetworkAdapter &comAdapter);
427 /** Notifies about inability to change IDHCPServer parameter.
428 * @param comServer Brings the object parameter being changed for. */
429 static void cannotChangeDHCPServerParameter(const CDHCPServer &comServer);
430 /** Notifies about inability to change ICloudNetwork parameter.
431 * @param comNetwork Brings the object parameter being changed for. */
432 static void cannotChangeCloudNetworkParameter(const CCloudNetwork &comNetwork);
433 /** Notifies about inability to change IHostNetworkInterface parameter.
434 * @param comInterface Brings the object parameter being changed for. */
435 static void cannotChangeHostNetworkInterfaceParameter(const CHostNetworkInterface &comInterface);
436 /** Notifies about inability to change IHostOnlyNetwork parameter.
437 * @param comNetwork Brings the object parameter being changed for. */
438 static void cannotChangeHostOnlyNetworkParameter(const CHostOnlyNetwork &comNetwork);
439 /** Notifies about inability to change INATNetwork parameter.
440 * @param comNetwork Brings the object parameter being changed for. */
441 static void cannotChangeNATNetworkParameter(const CNATNetwork &comNetwork);
442 /** Notifies about inability to change IDisplay parameter.
443 * @param comDisplay Brings the object parameter being changed for. */
444 static void cannotChangeDisplayParameter(const CDisplay &comDisplay);
445 /** Notifies about inability to change ICloudProfile parameter.
446 * @param comProfile Brings the object parameter being changed for. */
447 static void cannotChangeCloudProfileParameter(const CCloudProfile &comProfile);
448 /** Notifies about inability to change IUpdateAgent parameter.
449 * @param comAgent Brings the object parameter being changed for. */
450 static void cannotChangeUpdateAgentParameter(const CUpdateAgent &comAgent);
451 /** Notifies about inability to change IKeyboard parameter.
452 * @param comKeyboard Brings the object parameter being changed for. */
453 static void cannotChangeKeyboardParameter(const CKeyboard &comKeyboard);
454 /** Notifies about inability to change IMouse parameter.
455 * @param comMouse Brings the object parameter being changed for. */
456 static void cannotChangeMouseParameter(const CMouse &comMouse);
457 /** Notifies about inability to change IVirtualSystemDescription parameter.
458 * @param comVsd Brings the object parameter being changed for. */
459 static void cannotChangeVirtualSystemDescriptionParameter(const CVirtualSystemDescription &comVsd,
460 UINotificationCenter *pParent = 0);
461
462 /** Notifies about inability to enumerate host USB devices.
463 * @param comHost Brings the host devices enumerated for. */
464 static void cannotEnumerateHostUSBDevices(const CHost &comHost);
465 /** Notifies about inability to open medium.
466 * @param comVBox Brings common VBox object trying to open medium.
467 * @param strLocation Brings the medium location. */
468 static void cannotOpenMedium(const CVirtualBox &comVBox, const QString &strLocation,
469 UINotificationCenter *pParent = 0);
470
471 /** Notifies about inability to pause machine.
472 * @param comConsole Brings console trying to pause machine. */
473 static void cannotPauseMachine(const CConsole &comConsole);
474 /** Notifies about inability to resume machine.
475 * @param comConsole Brings console trying to resume machine. */
476 static void cannotResumeMachine(const CConsole &comConsole);
477 /** Notifies about inability to ACPI shutdown machine.
478 * @param comConsole Brings console trying to shutdown machine. */
479 static void cannotACPIShutdownMachine(const CConsole &comConsole);
480 /** Notifies about inability to reset machine.
481 * @param comConsole Brings console trying to reset machine. */
482 static void cannotResetMachine(const CConsole &comConsole);
483 /** @} */
484
485 /** @name COM VirtualBox Manager warnings.
486 * @{ */
487 /** Notifies about inability to create appliance.
488 * @param comVBox Brings common VBox object trying to create appliance. */
489 static void cannotCreateAppliance(const CVirtualBox &comVBox, UINotificationCenter *pParent = 0);
490 /** Notifies about inability to register machine.
491 * @param comVBox Brings common VBox object trying to register machine.
492 * @param strName Brings the name of VM being registered. */
493 static void cannotRegisterMachine(const CVirtualBox &comVBox, const QString &strName, UINotificationCenter *pParent = 0);
494 /** Notifies about inability to create machine.
495 * @param comVBox Brings common VBox object trying to create machine. */
496 static void cannotCreateMachine(const CVirtualBox &comVBox, UINotificationCenter *pParent = 0);
497 /** Notifies about inability to find machine by ID.
498 * @param comVBox Brings common VBox object trying to find machine.
499 * @param uMachineId Brings the machine ID. */
500 static void cannotFindMachineById(const CVirtualBox &comVBox,
501 const QUuid &uMachineId,
502 UINotificationCenter *pParent = 0);
503 /** Notifies about inability to open machine.
504 * @param comVBox Brings common VBox object trying to open machine.
505 * @param strLocation Brings the machine location. */
506 static void cannotOpenMachine(const CVirtualBox &comVBox, const QString &strLocation);
507 /** Notifies about inability to create medium storage.
508 * @param comVBox Brings common VBox object trying to create medium storage.
509 * @param strPath Brings the medium path. */
510 static void cannotCreateMediumStorage(const CVirtualBox &comVBox,
511 const QString &strPath,
512 UINotificationCenter *pParent = 0);
513 /** Notifies about inability to get ext pack manager.
514 * @param comVBox Brings common VBox object trying to open machine. */
515 static void cannotGetExtensionPackManager(const CVirtualBox &comVBox);
516
517 /** Notifies about inability to create VFS explorer.
518 * @param comAppliance Brings appliance trying to create VFS explorer. */
519 static void cannotCreateVfsExplorer(const CAppliance &comAppliance, UINotificationCenter *pParent = 0);
520 /** Notifies about inability to add disk scryption password.
521 * @param comAppliance Brings appliance trying to add disk scryption password. */
522 static void cannotAddDiskEncryptionPassword(const CAppliance &comAppliance, UINotificationCenter *pParent = 0);
523 /** Notifies about inability to interpret appliance.
524 * @param comAppliance Brings appliance we are trying to interpret. */
525 static void cannotInterpretAppliance(const CAppliance &comAppliance, UINotificationCenter *pParent = 0);
526 /** Notifies about inability to create VSD.
527 * @param comAppliance Brings appliance trying to create VSD. */
528 static void cannotCreateVirtualSystemDescription(const CAppliance &comAppliance, UINotificationCenter *pParent = 0);
529
530 /** Notifies about inability to open extension pack.
531 * @param comExtPackManager Brings extension pack manager trying to open extension pack.
532 * @param strFilename Brings extension pack file name. */
533 static void cannotOpenExtPack(const CExtPackManager &comExtPackManager, const QString &strFilename);
534 /** Notifies about inability to read extpack file.
535 * @param comExtPackFile Brings extension pack manager trying to open extension pack.
536 * @param strFilename Brings extension pack file name. */
537 static void cannotReadExtPack(const CExtPackFile &comExtPackFile, const QString &strFilename);
538
539 /** Notifies about inability to find cloud network.
540 * @param comVBox Brings common VBox object being search through.
541 * @param strNetworkName Brings network name. */
542 static void cannotFindCloudNetwork(const CVirtualBox &comVBox, const QString &strNetworkName);
543 /** Notifies about inability to find host network interface.
544 * @param comHost Brings the host being search through.
545 * @param strInterfaceName Brings interface name. */
546 static void cannotFindHostNetworkInterface(const CHost &comHost, const QString &strInterfaceName);
547 /** Notifies about inability to find host only network.
548 * @param comVBox Brings the common VBox object being search through.
549 * @param strNetworkName Brings interface name. */
550 static void cannotFindHostOnlyNetwork(const CVirtualBox &comVBox, const QString &strNetworkName);
551 /** Notifies about inability to find NAT network.
552 * @param comVBox Brings common VBox object being search through.
553 * @param strNetworkName Brings network name. */
554 static void cannotFindNATNetwork(const CVirtualBox &comVBox, const QString &strNetworkName);
555 /** Notifies about inability to create DHCP server.
556 * @param comVBox Brings common VBox object trying to create DHCP server.
557 * @param strInterfaceName Brings the interface name. */
558 static void cannotCreateDHCPServer(const CVirtualBox &comVBox, const QString &strInterfaceName);
559 /** Notifies about inability to remove DHCP server.
560 * @param comVBox Brings common VBox object trying to remove DHCP server.
561 * @param strInterfaceName Brings the interface name. */
562 static void cannotRemoveDHCPServer(const CVirtualBox &comVBox, const QString &strInterfaceName);
563 /** Notifies about inability to create cloud network.
564 * @param comVBox Brings common VBox object trying to create cloud network. */
565 static void cannotCreateCloudNetwork(const CVirtualBox &comVBox);
566 /** Notifies about inability to remove cloud network.
567 * @param comVBox Brings common VBox object trying to remove cloud network.
568 * @param strNetworkName Brings the network name. */
569 static void cannotRemoveCloudNetwork(const CVirtualBox &comVBox, const QString &strNetworkName);
570 /** Notifies about inability to create host only network.
571 * @param comVBox Brings common VBox object trying to create host only network. */
572 static void cannotCreateHostOnlyNetwork(const CVirtualBox &comVBox);
573 /** Notifies about inability to remove host only network.
574 * @param comVBox Brings common VBox object trying to remove host only network.
575 * @param strNetworkName Brings the network name. */
576 static void cannotRemoveHostOnlyNetwork(const CVirtualBox &comVBox, const QString &strNetworkName);
577 /** Notifies about inability to create NAT network.
578 * @param comVBox Brings common VBox object trying to create NAT network. */
579 static void cannotCreateNATNetwork(const CVirtualBox &comVBox);
580 /** Notifies about inability to remove NAT network.
581 * @param comVBox Brings common VBox object trying to remove NAT network.
582 * @param strNetworkName Brings the network name. */
583 static void cannotRemoveNATNetwork(const CVirtualBox &comVBox, const QString &strNetworkName);
584
585 /** Notifies about inability to create cloud profile.
586 * @param comProvider Brings the provider profile being created for. */
587 static void cannotCreateCloudProfile(const CCloudProvider &comProvider);
588 /** Notifies about inability to remove cloud profile.
589 * @param comProvider Brings the provider profile being removed from. */
590 static void cannotRemoveCloudProfile(const CCloudProfile &comProfile);
591 /** Notifies about inability to save cloud profiles.
592 * @param comProvider Brings the provider profiles being saved for. */
593 static void cannotSaveCloudProfiles(const CCloudProvider &comProvider);
594 /** Notifies about inability to import cloud profiles.
595 * @param comProvider Brings the provider profiles being imported for. */
596 static void cannotImportCloudProfiles(const CCloudProvider &comProvider);
597 /** Notifies about inability to refresh cloud machine.
598 * @param comMachine Brings the machine being refreshed. */
599 static void cannotRefreshCloudMachine(const CCloudMachine &comMachine);
600 /** Notifies about inability to refresh cloud machine.
601 * @param comProgress Brings the progress of machine being refreshed. */
602 static void cannotRefreshCloudMachine(const CProgress &comProgress);
603 /** Notifies about inability to create cloud client.
604 * @param comProfile Brings the profile client being created for. */
605 static void cannotCreateCloudClient(const CCloudProfile &comProfile, UINotificationCenter *pParent = 0);
606
607 /** Notifies about inability to open machine.
608 * @param comMedium Brings the medium being closed. */
609 static void cannotCloseMedium(const CMedium &comMedium);
610
611 /** Notifies about inability to discard saved state.
612 * @param comMachine Brings the collision VM name. */
613 static void cannotDiscardSavedState(const CMachine &comMachine);
614 /** Notifies about inability to remove machine.
615 * @param comMachine Brings machine being removed. */
616 static void cannotRemoveMachine(const CMachine &comMachine, UINotificationCenter *pParent = 0);
617 /** Notifies about inability to export appliance.
618 * @param comMachine Brings machine trying to export appliance. */
619 static void cannotExportMachine(const CMachine &comMachine, UINotificationCenter *pParent = 0);
620 /** Notifies about inability to attach device.
621 * @param comMachine Brings machine trying to attach device. */
622 static void cannotAttachDevice(const CMachine &comMachine,
623 UIMediumDeviceType enmType,
624 const QString &strLocation,
625 const StorageSlot &storageSlot,
626 UINotificationCenter *pParent = 0);
627
628 /** Notifies about inability to find snapshot by ID.
629 * @param comMachine Brings the machine being searched for particular snapshot.
630 * @param uId Brings the required snapshot ID. */
631 static void cannotFindSnapshotById(const CMachine &comMachine, const QUuid &uId);
632 /** Notifies about inability to find snapshot by name.
633 * @param comMachine Brings the machine being searched for particular snapshot.
634 * @param strName Brings the required snapshot name. */
635 static void cannotFindSnapshotByName(const CMachine &comMachine, const QString &strName, UINotificationCenter *pParent = 0);
636 /** Notifies about inability to change snapshot.
637 * @param comSnapshot Brings the snapshot being changed.
638 * @param strSnapshotName Brings snapshot name.
639 * @param strMachineName Brings machine name. */
640 static void cannotChangeSnapshot(const CSnapshot &comSnapshot, const QString &strSnapshotName, const QString &strMachineName);
641
642 /** Notifies about inability to run unattended guest install.
643 * @param comUnattended Brings the unattended being running guest install. */
644 static void cannotRunUnattendedGuestInstall(const CUnattended &comUnattended);
645 /** @} */
646
647 /** @name COM Runtime UI warnings.
648 * @{ */
649 /** Notifies about inability to attach USB device.
650 * @param comConsole Brings console USB device belongs to.
651 * @param strDevice Brings the device name. */
652 static void cannotAttachUSBDevice(const CConsole &comConsole, const QString &strDevice);
653 /** Notifies about inability to attach USB device.
654 * @param comErrorInfo Brings info about error happened.
655 * @param strDevice Brings the device name.
656 * @param strMachineName Brings the machine name. */
657 static void cannotAttachUSBDevice(const CVirtualBoxErrorInfo &comErrorInfo,
658 const QString &strDevice, const QString &strMachineName);
659 /** Notifies about inability to detach USB device.
660 * @param comConsole Brings console USB device belongs to.
661 * @param strDevice Brings the device name. */
662 static void cannotDetachUSBDevice(const CConsole &comConsole, const QString &strDevice);
663 /** Notifies about inability to detach USB device.
664 * @param comErrorInfo Brings info about error happened.
665 * @param strDevice Brings the device name.
666 * @param strMachineName Brings the machine name. */
667 static void cannotDetachUSBDevice(const CVirtualBoxErrorInfo &comErrorInfo,
668 const QString &strDevice, const QString &strMachineName);
669
670 /** Notifies about inability to attach webcam.
671 * @param comDispatcher Brings emulated USB dispatcher webcam being attached to.
672 * @param strWebCamName Brings the webcam name.
673 * @param strMachineName Brings the machine name. */
674 static void cannotAttachWebCam(const CEmulatedUSB &comDispatcher,
675 const QString &strWebCamName, const QString &strMachineName);
676 /** Notifies about inability to detach webcam.
677 * @param comDispatcher Brings emulated USB dispatcher webcam being detached from.
678 * @param strWebCamName Brings the webcam name.
679 * @param strMachineName Brings the machine name. */
680 static void cannotDetachWebCam(const CEmulatedUSB &comDispatcher,
681 const QString &strWebCamName, const QString &strMachineName);
682
683 /** Notifies about inability to save machine settings.
684 * @param comMachine Brings the machine trying to save settings. */
685 static void cannotSaveMachineSettings(const CMachine &comMachine, UINotificationCenter *pParent = 0);
686
687 /** Notifies about inability to toggle audio input.
688 * @param comAdapter Brings the adapter input being toggled for.
689 * @param strMachineName Brings the machine name.
690 * @param fEnable Brings whether adapter input is enabled or not. */
691 static void cannotToggleAudioInput(const CAudioAdapter &comAdapter,
692 const QString &strMachineName, bool fEnable);
693 /** Notifies about inability to toggle audio output.
694 * @param comAdapter Brings the adapter output being toggled for.
695 * @param strMachineName Brings the machine name.
696 * @param fEnable Brings whether adapter output is enabled or not. */
697 static void cannotToggleAudioOutput(const CAudioAdapter &comAdapter,
698 const QString &strMachineName, bool fEnable);
699
700 /** Notifies about inability to toggle network cable.
701 * @param comAdapter Brings the adapter network cable being toggled for.
702 * @param strMachineName Brings the machine name.
703 * @param fConnect Brings whether network cable is connected or not. */
704 static void cannotToggleNetworkCable(const CNetworkAdapter &comAdapter,
705 const QString &strMachineName, bool fConnect);
706
707 /** Notifies about inability to toggle recording.
708 * @param comRecording Brings the recording settings being toggled for.
709 * @param strMachineName Brings the machine name.
710 * @param fEnable Brings whether recording is enabled or not. */
711 static void cannotToggleRecording(const CRecordingSettings &comRecording, const QString &strMachineName, bool fEnable);
712
713 /** Notifies about inability to toggle VRDE server.
714 * @param comServer Brings the server being toggled.
715 * @param strMachineName Brings the machine name.
716 * @param fEnable Brings whether server is enabled or not. */
717 static void cannotToggleVRDEServer(const CVRDEServer &comServer,
718 const QString &strMachineName, bool fEnable);
719 /** @} */
720
721protected:
722
723 /** Constructs message notification-object.
724 * @param strName Brings the message name.
725 * @param strDetails Brings the message details.
726 * @param strInternalName Brings the message internal name.
727 * @param strHelpKeyword Brings the message help keyword. */
728 UINotificationMessage(const QString &strName,
729 const QString &strDetails,
730 const QString &strInternalName,
731 const QString &strHelpKeyword);
732 /** Destructs message notification-object. */
733 virtual ~UINotificationMessage() RT_OVERRIDE RT_FINAL;
734
735private:
736
737 /** Creates message.
738 * @param strName Brings the message name.
739 * @param strDetails Brings the message details.
740 * @param strInternalName Brings the message internal name.
741 * @param strHelpKeyword Brings the message help keyword.
742 * @param pParent Brings the local notification-center reference. */
743 static void createMessage(const QString &strName,
744 const QString &strDetails,
745 const QString &strInternalName = QString(),
746 const QString &strHelpKeyword = QString(),
747 UINotificationCenter *pParent = 0);
748 /** Destroys message.
749 * @param strInternalName Brings the message internal name.
750 * @param pParent Brings the local notification-center reference. */
751 static void destroyMessage(const QString &strInternalName,
752 UINotificationCenter *pParent = 0);
753
754 /** Holds the IDs of messages registered. */
755 static QMap<QString, QUuid> m_messages;
756
757 /** Holds the message name. */
758 QString m_strName;
759 /** Holds the message details. */
760 QString m_strDetails;
761 /** Holds the message internal name. */
762 QString m_strInternalName;
763};
764
765/** UINotificationProgress extension for medium create functionality. */
766class SHARED_LIBRARY_STUFF UINotificationProgressMediumCreate : public UINotificationProgress
767{
768 Q_OBJECT;
769
770signals:
771
772 /** Notifies listeners about @a comMedium was created. */
773 void sigMediumCreated(const CMedium &comMedium);
774
775public:
776
777 /** Constructs medium create notification-progress.
778 * @param comTarget Brings the medium being the target.
779 * @param uSize Brings the target medium size.
780 * @param variants Brings the target medium options. */
781 UINotificationProgressMediumCreate(const CMedium &comTarget,
782 qulonglong uSize,
783 const QVector<KMediumVariant> &variants);
784
785protected:
786
787 /** Returns object name. */
788 virtual QString name() const RT_OVERRIDE RT_FINAL;
789 /** Returns object details. */
790 virtual QString details() const RT_OVERRIDE RT_FINAL;
791 /** Creates and returns started progress-wrapper. */
792 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
793
794private slots:
795
796 /** Handles signal about progress being finished. */
797 void sltHandleProgressFinished();
798
799private:
800
801 /** Holds the medium being the target. */
802 CMedium m_comTarget;
803 /** Holds the target location. */
804 QString m_strLocation;
805 /** Holds the target medium size. */
806 qulonglong m_uSize;
807 /** Holds the target medium options. */
808 QVector<KMediumVariant> m_variants;
809};
810
811/** UINotificationProgress extension for medium copy functionality. */
812class SHARED_LIBRARY_STUFF UINotificationProgressMediumCopy : public UINotificationProgress
813{
814 Q_OBJECT;
815
816signals:
817
818 /** Notifies listeners about @a comMedium was copied. */
819 void sigMediumCopied(const CMedium &comMedium);
820
821public:
822
823 /** Constructs medium copy notification-progress.
824 * @param comSource Brings the medium being copied.
825 * @param comTarget Brings the medium being the target.
826 * @param variants Brings the target medium options. */
827 UINotificationProgressMediumCopy(const CMedium &comSource,
828 const CMedium &comTarget,
829 const QVector<KMediumVariant> &variants);
830
831protected:
832
833 /** Returns object name. */
834 virtual QString name() const RT_OVERRIDE RT_FINAL;
835 /** Returns object details. */
836 virtual QString details() const RT_OVERRIDE RT_FINAL;
837 /** Creates and returns started progress-wrapper. */
838 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
839
840private slots:
841
842 /** Handles signal about progress being finished. */
843 void sltHandleProgressFinished();
844
845private:
846
847 /** Holds the medium being copied. */
848 CMedium m_comSource;
849 /** Holds the medium being the target. */
850 CMedium m_comTarget;
851 /** Holds the source location. */
852 QString m_strSourceLocation;
853 /** Holds the target location. */
854 QString m_strTargetLocation;
855 /** Holds the target medium options. */
856 QVector<KMediumVariant> m_variants;
857};
858
859/** UINotificationProgress extension for medium move functionality. */
860class SHARED_LIBRARY_STUFF UINotificationProgressMediumMove : public UINotificationProgress
861{
862 Q_OBJECT;
863
864public:
865
866 /** Constructs medium move notification-progress.
867 * @param comMedium Brings the medium being moved.
868 * @param strLocation Brings the desired location. */
869 UINotificationProgressMediumMove(const CMedium &comMedium,
870 const QString &strLocation);
871
872protected:
873
874 /** Returns object name. */
875 virtual QString name() const RT_OVERRIDE RT_FINAL;
876 /** Returns object details. */
877 virtual QString details() const RT_OVERRIDE RT_FINAL;
878 /** Creates and returns started progress-wrapper. */
879 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
880
881private:
882
883 /** Holds the medium being moved. */
884 CMedium m_comMedium;
885 /** Holds the initial location. */
886 QString m_strFrom;
887 /** Holds the desired location. */
888 QString m_strTo;
889};
890
891/** UINotificationProgress extension for medium resize functionality. */
892class SHARED_LIBRARY_STUFF UINotificationProgressMediumResize : public UINotificationProgress
893{
894 Q_OBJECT;
895
896public:
897
898 /** Constructs medium resize notification-progress.
899 * @param comMedium Brings the medium being resized.
900 * @param uSize Brings the desired size. */
901 UINotificationProgressMediumResize(const CMedium &comMedium,
902 qulonglong uSize);
903
904protected:
905
906 /** Returns object name. */
907 virtual QString name() const RT_OVERRIDE RT_FINAL;
908 /** Returns object details. */
909 virtual QString details() const RT_OVERRIDE RT_FINAL;
910 /** Creates and returns started progress-wrapper. */
911 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
912
913private:
914
915 /** Holds the medium being resized. */
916 CMedium m_comMedium;
917 /** Holds the initial size. */
918 qulonglong m_uFrom;
919 /** Holds the desired size. */
920 qulonglong m_uTo;
921};
922
923/** UINotificationProgress extension for deleting medium storage functionality. */
924class SHARED_LIBRARY_STUFF UINotificationProgressMediumDeletingStorage : public UINotificationProgress
925{
926 Q_OBJECT;
927
928signals:
929
930 /** Notifies listeners about @a comMedium storage was deleted. */
931 void sigMediumStorageDeleted(const CMedium &comMedium);
932
933public:
934
935 /** Constructs deleting medium storage notification-progress.
936 * @param comMedium Brings the medium which storage being deleted. */
937 UINotificationProgressMediumDeletingStorage(const CMedium &comMedium);
938
939protected:
940
941 /** Returns object name. */
942 virtual QString name() const RT_OVERRIDE RT_FINAL;
943 /** Returns object details. */
944 virtual QString details() const RT_OVERRIDE RT_FINAL;
945 /** Creates and returns started progress-wrapper. */
946 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
947
948private slots:
949
950 /** Handles signal about progress being finished. */
951 void sltHandleProgressFinished();
952
953private:
954
955 /** Holds the medium which storage being deleted. */
956 CMedium m_comMedium;
957 /** Holds the medium location. */
958 QString m_strLocation;
959};
960
961/** UINotificationProgress extension for machine copy functionality. */
962class SHARED_LIBRARY_STUFF UINotificationProgressMachineCopy : public UINotificationProgress
963{
964 Q_OBJECT;
965
966public:
967
968 /** Constructs machine copy notification-progress.
969 * @param comSource Brings the machine being copied.
970 * @param comTarget Brings the machine being the target.
971 * @param enmCloneMode Brings the cloning mode.
972 * @param options Brings the cloning options. */
973 UINotificationProgressMachineCopy(const CMachine &comSource,
974 const CMachine &comTarget,
975 const KCloneMode &enmCloneMode,
976 const QVector<KCloneOptions> &options);
977
978protected:
979
980 /** Returns object name. */
981 virtual QString name() const RT_OVERRIDE RT_FINAL;
982 /** Returns object details. */
983 virtual QString details() const RT_OVERRIDE RT_FINAL;
984 /** Creates and returns started progress-wrapper. */
985 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
986
987private slots:
988
989 /** Handles signal about progress being finished. */
990 void sltHandleProgressFinished();
991
992private:
993
994 /** Holds the machine being copied. */
995 CMachine m_comSource;
996 /** Holds the machine being the target. */
997 CMachine m_comTarget;
998 /** Holds the source name. */
999 QString m_strSourceName;
1000 /** Holds the target name. */
1001 QString m_strTargetName;
1002 /** Holds the machine cloning mode. */
1003 KCloneMode m_enmCloneMode;
1004 /** Holds the target machine options. */
1005 QVector<KCloneOptions> m_options;
1006};
1007
1008/** UINotificationProgress extension for machine move functionality. */
1009class SHARED_LIBRARY_STUFF UINotificationProgressMachineMove : public UINotificationProgress
1010{
1011 Q_OBJECT;
1012
1013public:
1014
1015 /** Constructs machine move notification-progress.
1016 * @param uId Brings the machine id.
1017 * @param strDestination Brings the move destination.
1018 * @param strType Brings the moving type. */
1019 UINotificationProgressMachineMove(const QUuid &uId,
1020 const QString &strDestination,
1021 const QString &strType);
1022
1023protected:
1024
1025 /** Returns object name. */
1026 virtual QString name() const RT_OVERRIDE RT_FINAL;
1027 /** Returns object details. */
1028 virtual QString details() const RT_OVERRIDE RT_FINAL;
1029 /** Creates and returns started progress-wrapper. */
1030 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1031
1032private slots:
1033
1034 /** Handles signal about progress being finished. */
1035 void sltHandleProgressFinished();
1036
1037private:
1038
1039 /** Holds the machine id. */
1040 QUuid m_uId;
1041 /** Holds the session being opened. */
1042 CSession m_comSession;
1043 /** Holds the machine source. */
1044 QString m_strSource;
1045 /** Holds the machine destination. */
1046 QString m_strDestination;
1047 /** Holds the moving type. */
1048 QString m_strType;
1049};
1050
1051/** UINotificationProgress extension for machine power-up functionality. */
1052class SHARED_LIBRARY_STUFF UINotificationProgressMachinePowerUp : public UINotificationProgress
1053{
1054 Q_OBJECT;
1055
1056public:
1057
1058 /** Constructs machine power-up notification-progress.
1059 * @param comMachine Brings the machine being powered-up. */
1060 UINotificationProgressMachinePowerUp(const CMachine &comMachine, UILaunchMode enmLaunchMode);
1061
1062protected:
1063
1064 /** Returns object name. */
1065 virtual QString name() const RT_OVERRIDE RT_FINAL;
1066 /** Returns object details. */
1067 virtual QString details() const RT_OVERRIDE RT_FINAL;
1068 /** Creates and returns started progress-wrapper. */
1069 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1070
1071private slots:
1072
1073 /** Handles signal about progress being finished. */
1074 void sltHandleProgressFinished();
1075
1076private:
1077
1078 /** Holds the machine being powered-up. */
1079 CMachine m_comMachine;
1080 /** Holds the launch mode. */
1081 UILaunchMode m_enmLaunchMode;
1082 /** Holds the session being opened. */
1083 CSession m_comSession;
1084 /** Holds the machine name. */
1085 QString m_strName;
1086};
1087
1088/** UINotificationProgress extension for machine save-state functionality. */
1089class SHARED_LIBRARY_STUFF UINotificationProgressMachineSaveState : public UINotificationProgress
1090{
1091 Q_OBJECT;
1092
1093signals:
1094
1095 /** Notifies listeners about machine state saved.
1096 * @param fSuccess Brings whether state was saved successfully. */
1097 void sigMachineStateSaved(bool fSuccess);
1098
1099public:
1100
1101 /** Constructs machine save-state notification-progress.
1102 * @param comMachine Brings the machine being saved. */
1103 UINotificationProgressMachineSaveState(const CMachine &comMachine);
1104
1105protected:
1106
1107 /** Returns object name. */
1108 virtual QString name() const RT_OVERRIDE RT_FINAL;
1109 /** Returns object details. */
1110 virtual QString details() const RT_OVERRIDE RT_FINAL;
1111 /** Creates and returns started progress-wrapper. */
1112 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1113
1114private slots:
1115
1116 /** Handles signal about progress being finished. */
1117 void sltHandleProgressFinished();
1118
1119private:
1120
1121 /** Holds the machine being saved. */
1122 CMachine m_comMachine;
1123 /** Holds the session being opened. */
1124 CSession m_comSession;
1125 /** Holds the machine name. */
1126 QString m_strName;
1127};
1128
1129/** UINotificationProgress extension for machine power-off functionality. */
1130class SHARED_LIBRARY_STUFF UINotificationProgressMachinePowerOff : public UINotificationProgress
1131{
1132 Q_OBJECT;
1133
1134signals:
1135
1136 /** Notifies listeners about machine powered off.
1137 * @param fSuccess Brings whether power off sequence successfully.
1138 * @param fIncludingDiscard Brings whether machine state should be discarded. */
1139 void sigMachinePoweredOff(bool fSuccess, bool fIncludingDiscard);
1140
1141public:
1142
1143 /** Constructs machine power-off notification-progress.
1144 * @param comMachine Brings the machine being powered off.
1145 * @param comConsole Brings the console of machine being powered off.
1146 * @param fIncludingDiscard Brings whether machine state should be discarded. */
1147 UINotificationProgressMachinePowerOff(const CMachine &comMachine,
1148 const CConsole &comConsole = CConsole(),
1149 bool fIncludingDiscard = false);
1150
1151protected:
1152
1153 /** Returns object name. */
1154 virtual QString name() const RT_OVERRIDE RT_FINAL;
1155 /** Returns object details. */
1156 virtual QString details() const RT_OVERRIDE RT_FINAL;
1157 /** Creates and returns started progress-wrapper. */
1158 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1159
1160private slots:
1161
1162 /** Handles signal about progress being finished. */
1163 void sltHandleProgressFinished();
1164
1165private:
1166
1167 /** Holds the machine being powered off. */
1168 CMachine m_comMachine;
1169 /** Holds the console of machine being powered off. */
1170 CConsole m_comConsole;
1171 /** Holds whether machine state should be discarded. */
1172 bool m_fIncludingDiscard;
1173 /** Holds the session being opened. */
1174 CSession m_comSession;
1175 /** Holds the machine name. */
1176 QString m_strName;
1177};
1178
1179/** UINotificationProgress extension for machine media remove functionality. */
1180class SHARED_LIBRARY_STUFF UINotificationProgressMachineMediaRemove : public UINotificationProgress
1181{
1182 Q_OBJECT;
1183
1184public:
1185
1186 /** Constructs machine media remove notification-progress.
1187 * @param comMachine Brings the machine being removed.
1188 * @param media Brings the machine media being removed. */
1189 UINotificationProgressMachineMediaRemove(const CMachine &comMachine,
1190 const CMediumVector &media);
1191
1192protected:
1193
1194 /** Returns object name. */
1195 virtual QString name() const RT_OVERRIDE RT_FINAL;
1196 /** Returns object details. */
1197 virtual QString details() const RT_OVERRIDE RT_FINAL;
1198 /** Creates and returns started progress-wrapper. */
1199 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1200
1201private:
1202
1203 /** Holds the machine being removed. */
1204 CMachine m_comMachine;
1205 /** Holds the machine name. */
1206 QString m_strName;
1207 /** Holds the machine media being removed. */
1208 CMediumVector m_media;
1209};
1210
1211/** UINotificationProgress extension for VFS explorer update functionality. */
1212class SHARED_LIBRARY_STUFF UINotificationProgressVFSExplorerUpdate : public UINotificationProgress
1213{
1214 Q_OBJECT;
1215
1216public:
1217
1218 /** Constructs VFS explorer update notification-progress.
1219 * @param comExplorer Brings the VFS explorer being updated. */
1220 UINotificationProgressVFSExplorerUpdate(const CVFSExplorer &comExplorer);
1221
1222protected:
1223
1224 /** Returns object name. */
1225 virtual QString name() const RT_OVERRIDE RT_FINAL;
1226 /** Returns object details. */
1227 virtual QString details() const RT_OVERRIDE RT_FINAL;
1228 /** Creates and returns started progress-wrapper. */
1229 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1230
1231private:
1232
1233 /** Holds the VFS explorer being updated. */
1234 CVFSExplorer m_comExplorer;
1235 /** Holds the VFS explorer path. */
1236 QString m_strPath;
1237};
1238
1239/** UINotificationProgress extension for VFS explorer files remove functionality. */
1240class SHARED_LIBRARY_STUFF UINotificationProgressVFSExplorerFilesRemove : public UINotificationProgress
1241{
1242 Q_OBJECT;
1243
1244public:
1245
1246 /** Constructs VFS explorer files remove notification-progress.
1247 * @param comExplorer Brings the VFS explorer removing the files.
1248 * @param files Brings a vector of files to be removed. */
1249 UINotificationProgressVFSExplorerFilesRemove(const CVFSExplorer &comExplorer,
1250 const QVector<QString> &files);
1251
1252protected:
1253
1254 /** Returns object name. */
1255 virtual QString name() const RT_OVERRIDE RT_FINAL;
1256 /** Returns object details. */
1257 virtual QString details() const RT_OVERRIDE RT_FINAL;
1258 /** Creates and returns started progress-wrapper. */
1259 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1260
1261private:
1262
1263 /** Holds the VFS explorer removing the files. */
1264 CVFSExplorer m_comExplorer;
1265 /** Holds a vector of files to be removed. */
1266 QVector<QString> m_files;
1267 /** Holds the VFS explorer path. */
1268 QString m_strPath;
1269};
1270
1271/** UINotificationProgress extension for subnet selection VSD form create functionality. */
1272class SHARED_LIBRARY_STUFF UINotificationProgressSubnetSelectionVSDFormCreate : public UINotificationProgress
1273{
1274 Q_OBJECT;
1275
1276signals:
1277
1278 /** Notifies listeners about VSD @a comForm created.
1279 * @param comForm Brings created VSD form. */
1280 void sigVSDFormCreated(const CVirtualSystemDescriptionForm &comForm);
1281
1282public:
1283
1284 /** Constructs subnet selection VSD form create notification-progress.
1285 * @param comClient Brings the cloud client being creating VSD form.
1286 * @param comVsd Brings the VSD, form being created for.
1287 * @param strProviderShortName Brings the short provider name.
1288 * @param strProfileName Brings the profile name. */
1289 UINotificationProgressSubnetSelectionVSDFormCreate(const CCloudClient &comClient,
1290 const CVirtualSystemDescription &comVSD,
1291 const QString &strProviderShortName,
1292 const QString &strProfileName);
1293
1294protected:
1295
1296 /** Returns object name. */
1297 virtual QString name() const RT_OVERRIDE RT_FINAL;
1298 /** Returns object details. */
1299 virtual QString details() const RT_OVERRIDE RT_FINAL;
1300 /** Creates and returns started progress-wrapper. */
1301 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1302
1303private slots:
1304
1305 /** Handles signal about progress being finished. */
1306 void sltHandleProgressFinished();
1307
1308private:
1309
1310 /** Holds the cloud client being creating VSD form. */
1311 CCloudClient m_comClient;
1312 /** Holds the VSD, form being created for. */
1313 CVirtualSystemDescription m_comVSD;
1314 /** Holds the VSD form being created. */
1315 CVirtualSystemDescriptionForm m_comVSDForm;
1316 /** Holds the short provider name. */
1317 QString m_strProviderShortName;
1318 /** Holds the profile name. */
1319 QString m_strProfileName;
1320};
1321
1322/** UINotificationProgress extension for launch VSD form create functionality. */
1323class SHARED_LIBRARY_STUFF UINotificationProgressLaunchVSDFormCreate : public UINotificationProgress
1324{
1325 Q_OBJECT;
1326
1327signals:
1328
1329 /** Notifies listeners about VSD @a comForm created.
1330 * @param comForm Brings created VSD form. */
1331 void sigVSDFormCreated(const CVirtualSystemDescriptionForm &comForm);
1332
1333public:
1334
1335 /** Constructs launch VSD form create notification-progress.
1336 * @param comClient Brings the cloud client being creating VSD form.
1337 * @param comVsd Brings the VSD, form being created for.
1338 * @param strProviderShortName Brings the short provider name.
1339 * @param strProfileName Brings the profile name. */
1340 UINotificationProgressLaunchVSDFormCreate(const CCloudClient &comClient,
1341 const CVirtualSystemDescription &comVSD,
1342 const QString &strProviderShortName,
1343 const QString &strProfileName);
1344
1345protected:
1346
1347 /** Returns object name. */
1348 virtual QString name() const RT_OVERRIDE RT_FINAL;
1349 /** Returns object details. */
1350 virtual QString details() const RT_OVERRIDE RT_FINAL;
1351 /** Creates and returns started progress-wrapper. */
1352 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1353
1354private slots:
1355
1356 /** Handles signal about progress being finished. */
1357 void sltHandleProgressFinished();
1358
1359private:
1360
1361 /** Holds the cloud client being creating VSD form. */
1362 CCloudClient m_comClient;
1363 /** Holds the VSD, form being created for. */
1364 CVirtualSystemDescription m_comVSD;
1365 /** Holds the VSD form being created. */
1366 CVirtualSystemDescriptionForm m_comVSDForm;
1367 /** Holds the short provider name. */
1368 QString m_strProviderShortName;
1369 /** Holds the profile name. */
1370 QString m_strProfileName;
1371};
1372
1373/** UINotificationProgress extension for export VSD form create functionality. */
1374class SHARED_LIBRARY_STUFF UINotificationProgressExportVSDFormCreate : public UINotificationProgress
1375{
1376 Q_OBJECT;
1377
1378signals:
1379
1380 /** Notifies listeners about VSD @a comForm created.
1381 * @param form Brings created VSD form. */
1382 void sigVSDFormCreated(const QVariant &form);
1383
1384public:
1385
1386 /** Constructs export VSD form create notification-progress.
1387 * @param comClient Brings the cloud client being creating VSD form.
1388 * @param comVsd Brings the VSD, form being created for. */
1389 UINotificationProgressExportVSDFormCreate(const CCloudClient &comClient,
1390 const CVirtualSystemDescription &comVSD);
1391
1392protected:
1393
1394 /** Returns object name. */
1395 virtual QString name() const RT_OVERRIDE RT_FINAL;
1396 /** Returns object details. */
1397 virtual QString details() const RT_OVERRIDE RT_FINAL;
1398 /** Creates and returns started progress-wrapper. */
1399 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1400
1401private slots:
1402
1403 /** Handles signal about progress being finished. */
1404 void sltHandleProgressFinished();
1405
1406private:
1407
1408 /** Holds the cloud client being creating VSD form. */
1409 CCloudClient m_comClient;
1410 /** Holds the VSD, form being created for. */
1411 CVirtualSystemDescription m_comVSD;
1412 /** Holds the VSD form being created. */
1413 CVirtualSystemDescriptionForm m_comVSDForm;
1414};
1415
1416/** UINotificationProgress extension for import VSD form create functionality. */
1417class SHARED_LIBRARY_STUFF UINotificationProgressImportVSDFormCreate : public UINotificationProgress
1418{
1419 Q_OBJECT;
1420
1421signals:
1422
1423 /** Notifies listeners about VSD @a comForm created.
1424 * @param form Brings created VSD form. */
1425 void sigVSDFormCreated(const QVariant &form);
1426
1427public:
1428
1429 /** Constructs import VSD form create notification-progress.
1430 * @param comClient Brings the cloud client being creating VSD form.
1431 * @param comVsd Brings the VSD, form being created for. */
1432 UINotificationProgressImportVSDFormCreate(const CCloudClient &comClient,
1433 const CVirtualSystemDescription &comVSD);
1434
1435protected:
1436
1437 /** Returns object name. */
1438 virtual QString name() const RT_OVERRIDE RT_FINAL;
1439 /** Returns object details. */
1440 virtual QString details() const RT_OVERRIDE RT_FINAL;
1441 /** Creates and returns started progress-wrapper. */
1442 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1443
1444private slots:
1445
1446 /** Handles signal about progress being finished. */
1447 void sltHandleProgressFinished();
1448
1449private:
1450
1451 /** Holds the cloud client being creating VSD form. */
1452 CCloudClient m_comClient;
1453 /** Holds the VSD, form being created for. */
1454 CVirtualSystemDescription m_comVSD;
1455 /** Holds the VSD form being created. */
1456 CVirtualSystemDescriptionForm m_comVSDForm;
1457};
1458
1459/** UINotificationProgress extension for cloud image list functionality. */
1460class SHARED_LIBRARY_STUFF UINotificationProgressCloudImageList : public UINotificationProgress
1461{
1462 Q_OBJECT;
1463
1464signals:
1465
1466 /** Notifies listeners about image @a names received. */
1467 void sigImageNamesReceived(const QVariant &names);
1468 /** Notifies listeners about image @a ids received. */
1469 void sigImageIdsReceived(const QVariant &ids);
1470
1471public:
1472
1473 /** Constructs cloud images list notification-progress.
1474 * @param comClient Brings the cloud client being listing images.
1475 * @param cloudImageStates Brings the image states we are interested in. */
1476 UINotificationProgressCloudImageList(const CCloudClient &comClient,
1477 const QVector<KCloudImageState> &cloudImageStates);
1478
1479protected:
1480
1481 /** Returns object name. */
1482 virtual QString name() const RT_OVERRIDE RT_FINAL;
1483 /** Returns object details. */
1484 virtual QString details() const RT_OVERRIDE RT_FINAL;
1485 /** Creates and returns started progress-wrapper. */
1486 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1487
1488private slots:
1489
1490 /** Handles signal about progress being finished. */
1491 void sltHandleProgressFinished();
1492
1493private:
1494
1495 /** Holds the cloud client being listing images. */
1496 CCloudClient m_comClient;
1497 /** Holds the image states we are interested in. */
1498 QVector<KCloudImageState> m_cloudImageStates;
1499 /** Holds the listed names. */
1500 CStringArray m_comNames;
1501 /** Holds the listed ids. */
1502 CStringArray m_comIds;
1503};
1504
1505/** UINotificationProgress extension for cloud source boot volume list functionality. */
1506class SHARED_LIBRARY_STUFF UINotificationProgressCloudSourceBootVolumeList : public UINotificationProgress
1507{
1508 Q_OBJECT;
1509
1510signals:
1511
1512 /** Notifies listeners about source boot volume @a names received. */
1513 void sigImageNamesReceived(const QVariant &names);
1514 /** Notifies listeners about source boot volume @a ids received. */
1515 void sigImageIdsReceived(const QVariant &ids);
1516
1517public:
1518
1519 /** Constructs cloud source boot volumes list notification-progress.
1520 * @param comClient Brings the cloud client being listing source boot volumes. */
1521 UINotificationProgressCloudSourceBootVolumeList(const CCloudClient &comClient);
1522
1523protected:
1524
1525 /** Returns object name. */
1526 virtual QString name() const RT_OVERRIDE RT_FINAL;
1527 /** Returns object details. */
1528 virtual QString details() const RT_OVERRIDE RT_FINAL;
1529 /** Creates and returns started progress-wrapper. */
1530 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1531
1532private slots:
1533
1534 /** Handles signal about progress being finished. */
1535 void sltHandleProgressFinished();
1536
1537private:
1538
1539 /** Holds the cloud client being listing source boot volumes. */
1540 CCloudClient m_comClient;
1541 /** Holds the listed names. */
1542 CStringArray m_comNames;
1543 /** Holds the listed ids. */
1544 CStringArray m_comIds;
1545};
1546
1547/** UINotificationProgress extension for cloud instance list functionality. */
1548class SHARED_LIBRARY_STUFF UINotificationProgressCloudInstanceList : public UINotificationProgress
1549{
1550 Q_OBJECT;
1551
1552signals:
1553
1554 /** Notifies listeners about instance @a names received. */
1555 void sigImageNamesReceived(const QVariant &names);
1556 /** Notifies listeners about instance @a ids received. */
1557 void sigImageIdsReceived(const QVariant &ids);
1558
1559public:
1560
1561 /** Constructs cloud instances list notification-progress.
1562 * @param comClient Brings the cloud client being listing instances. */
1563 UINotificationProgressCloudInstanceList(const CCloudClient &comClient);
1564
1565protected:
1566
1567 /** Returns object name. */
1568 virtual QString name() const RT_OVERRIDE RT_FINAL;
1569 /** Returns object details. */
1570 virtual QString details() const RT_OVERRIDE RT_FINAL;
1571 /** Creates and returns started progress-wrapper. */
1572 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1573
1574private slots:
1575
1576 /** Handles signal about progress being finished. */
1577 void sltHandleProgressFinished();
1578
1579private:
1580
1581 /** Holds the cloud client being listing instances. */
1582 CCloudClient m_comClient;
1583 /** Holds the listed names. */
1584 CStringArray m_comNames;
1585 /** Holds the listed ids. */
1586 CStringArray m_comIds;
1587};
1588
1589/** UINotificationProgress extension for cloud source instance list functionality. */
1590class SHARED_LIBRARY_STUFF UINotificationProgressCloudSourceInstanceList : public UINotificationProgress
1591{
1592 Q_OBJECT;
1593
1594signals:
1595
1596 /** Notifies listeners about source instance @a names received. */
1597 void sigImageNamesReceived(const QVariant &names);
1598 /** Notifies listeners about source instance @a ids received. */
1599 void sigImageIdsReceived(const QVariant &ids);
1600
1601public:
1602
1603 /** Constructs cloud source instances list notification-progress.
1604 * @param comClient Brings the cloud client being listing source instances. */
1605 UINotificationProgressCloudSourceInstanceList(const CCloudClient &comClient);
1606
1607protected:
1608
1609 /** Returns object name. */
1610 virtual QString name() const RT_OVERRIDE RT_FINAL;
1611 /** Returns object details. */
1612 virtual QString details() const RT_OVERRIDE RT_FINAL;
1613 /** Creates and returns started progress-wrapper. */
1614 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1615
1616private slots:
1617
1618 /** Handles signal about progress being finished. */
1619 void sltHandleProgressFinished();
1620
1621private:
1622
1623 /** Holds the cloud client being listing source instances. */
1624 CCloudClient m_comClient;
1625 /** Holds the listed names. */
1626 CStringArray m_comNames;
1627 /** Holds the listed ids. */
1628 CStringArray m_comIds;
1629};
1630
1631/** UINotificationProgress extension for cloud machine add functionality. */
1632class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineAdd : public UINotificationProgress
1633{
1634 Q_OBJECT;
1635
1636signals:
1637
1638 /** Notifies listeners about cloud @a comMachine was added.
1639 * @param strProviderShortName Brings the short provider name.
1640 * @param strProfileName Brings the profile name. */
1641 void sigCloudMachineAdded(const QString &strProviderShortName,
1642 const QString &strProfileName,
1643 const CCloudMachine &comMachine);
1644
1645public:
1646
1647 /** Constructs cloud machine add notification-progress.
1648 * @param comClient Brings the cloud client being adding machine.
1649 * @param comMachine Brings the cloud machine being added.
1650 * @param strInstanceName Brings the instance name.
1651 * @param strProviderShortName Brings the short provider name.
1652 * @param strProfileName Brings the profile name. */
1653 UINotificationProgressCloudMachineAdd(const CCloudClient &comClient,
1654 const CCloudMachine &comMachine,
1655 const QString &strInstanceName,
1656 const QString &strProviderShortName,
1657 const QString &strProfileName);
1658
1659protected:
1660
1661 /** Returns object name. */
1662 virtual QString name() const RT_OVERRIDE RT_FINAL;
1663 /** Returns object details. */
1664 virtual QString details() const RT_OVERRIDE RT_FINAL;
1665 /** Creates and returns started progress-wrapper. */
1666 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1667
1668private slots:
1669
1670 /** Handles signal about progress being finished. */
1671 void sltHandleProgressFinished();
1672
1673private:
1674
1675 /** Holds the cloud client being adding machine. */
1676 CCloudClient m_comClient;
1677 /** Holds the cloud machine being added. */
1678 CCloudMachine m_comMachine;
1679 /** Holds the instance name. */
1680 QString m_strInstanceName;
1681 /** Holds the short provider name. */
1682 QString m_strProviderShortName;
1683 /** Holds the profile name. */
1684 QString m_strProfileName;
1685};
1686
1687/** UINotificationProgress extension for cloud machine create functionality. */
1688class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineCreate : public UINotificationProgress
1689{
1690 Q_OBJECT;
1691
1692signals:
1693
1694 /** Notifies listeners about cloud @a comMachine was created.
1695 * @param strProviderShortName Brings the short provider name.
1696 * @param strProfileName Brings the profile name. */
1697 void sigCloudMachineCreated(const QString &strProviderShortName,
1698 const QString &strProfileName,
1699 const CCloudMachine &comMachine);
1700
1701public:
1702
1703 /** Constructs cloud machine create notification-progress.
1704 * @param comClient Brings the cloud client being adding machine.
1705 * @param comMachine Brings the cloud machine being added.
1706 * @param comVSD Brings the virtual system description.
1707 * @param strProviderShortName Brings the short provider name.
1708 * @param strProfileName Brings the profile name. */
1709 UINotificationProgressCloudMachineCreate(const CCloudClient &comClient,
1710 const CCloudMachine &comMachine,
1711 const CVirtualSystemDescription &comVSD,
1712 const QString &strProviderShortName,
1713 const QString &strProfileName);
1714
1715protected:
1716
1717 /** Returns object name. */
1718 virtual QString name() const RT_OVERRIDE RT_FINAL;
1719 /** Returns object details. */
1720 virtual QString details() const RT_OVERRIDE RT_FINAL;
1721 /** Creates and returns started progress-wrapper. */
1722 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1723
1724private slots:
1725
1726 /** Handles signal about progress being finished. */
1727 void sltHandleProgressFinished();
1728
1729private:
1730
1731 /** Holds the cloud client being adding machine. */
1732 CCloudClient m_comClient;
1733 /** Holds the cloud machine being added. */
1734 CCloudMachine m_comMachine;
1735 /** Holds the the virtual system description. */
1736 CVirtualSystemDescription m_comVSD;
1737 /** Holds the cloud machine name. */
1738 QString m_strName;
1739 /** Holds the short provider name. */
1740 QString m_strProviderShortName;
1741 /** Holds the profile name. */
1742 QString m_strProfileName;
1743};
1744
1745/** UINotificationProgress extension for cloud machine remove functionality. */
1746class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineRemove : public UINotificationProgress
1747{
1748 Q_OBJECT;
1749
1750signals:
1751
1752 /** Notifies listeners about cloud machine was removed.
1753 * @param strProviderShortName Brings the short provider name.
1754 * @param strProfileName Brings the profile name.
1755 * @param strName Brings the machine name. */
1756 void sigCloudMachineRemoved(const QString &strProviderShortName,
1757 const QString &strProfileName,
1758 const QString &strName);
1759
1760public:
1761
1762 /** Constructs cloud machine remove notification-progress.
1763 * @param comMachine Brings the cloud machine being removed.
1764 * @param fFullRemoval Brings whether cloud machine should be removed fully. */
1765 UINotificationProgressCloudMachineRemove(const CCloudMachine &comMachine,
1766 bool fFullRemoval,
1767 const QString &strProviderShortName,
1768 const QString &strProfileName);
1769
1770protected:
1771
1772 /** Returns object name. */
1773 virtual QString name() const RT_OVERRIDE RT_FINAL;
1774 /** Returns object details. */
1775 virtual QString details() const RT_OVERRIDE RT_FINAL;
1776 /** Creates and returns started progress-wrapper. */
1777 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1778
1779private slots:
1780
1781 /** Handles signal about progress being finished. */
1782 void sltHandleProgressFinished();
1783
1784private:
1785
1786 /** Holds the cloud machine being removed. */
1787 CCloudMachine m_comMachine;
1788 /** Holds the cloud machine name. */
1789 QString m_strName;
1790 /** Holds whether cloud machine should be removed fully. */
1791 bool m_fFullRemoval;
1792 /** Holds the short provider name. */
1793 QString m_strProviderShortName;
1794 /** Holds the profile name. */
1795 QString m_strProfileName;
1796};
1797
1798/** UINotificationProgress extension for cloud machine power-up functionality. */
1799class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachinePowerUp : public UINotificationProgress
1800{
1801 Q_OBJECT;
1802
1803public:
1804
1805 /** Constructs cloud machine power-up notification-progress.
1806 * @param comMachine Brings the machine being powered-up. */
1807 UINotificationProgressCloudMachinePowerUp(const CCloudMachine &comMachine);
1808
1809protected:
1810
1811 /** Returns object name. */
1812 virtual QString name() const RT_OVERRIDE RT_FINAL;
1813 /** Returns object details. */
1814 virtual QString details() const RT_OVERRIDE RT_FINAL;
1815 /** Creates and returns started progress-wrapper. */
1816 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1817
1818private:
1819
1820 /** Holds the machine being powered-up. */
1821 CCloudMachine m_comMachine;
1822 /** Holds the machine name. */
1823 QString m_strName;
1824};
1825
1826/** UINotificationProgress extension for cloud machine clone functionality. */
1827class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineClone : public UINotificationProgress
1828{
1829 Q_OBJECT;
1830
1831public:
1832
1833 /** Constructs cloud machine clone notification-progress.
1834 * @param comClient Brings the cloud client to clone cloud machine.
1835 * @param comMachine Brings the cloud machine to be cloned.
1836 * @param strCloneName Brings the clone name. */
1837 UINotificationProgressCloudMachineClone(const CCloudClient &comClient,
1838 const CCloudMachine &comMachine,
1839 const QString &strCloneName);
1840
1841protected:
1842
1843 /** Returns object name. */
1844 virtual QString name() const RT_OVERRIDE RT_FINAL;
1845 /** Returns object details. */
1846 virtual QString details() const RT_OVERRIDE RT_FINAL;
1847 /** Creates and returns started progress-wrapper. */
1848 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1849
1850private:
1851
1852 /** Holds the client cloning machine. */
1853 CCloudClient m_comClient;
1854 /** Holds the machine being reset. */
1855 CCloudMachine m_comMachine;
1856 /** Holds the clone name. */
1857 QString m_strCloneName;
1858 /** Holds the machine internal id. */
1859 QString m_strId;
1860 /** Holds the machine name. */
1861 QString m_strName;
1862};
1863
1864/** UINotificationProgress extension for cloud machine reset functionality. */
1865class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineReset : public UINotificationProgress
1866{
1867 Q_OBJECT;
1868
1869public:
1870
1871 /** Constructs cloud machine reset notification-progress.
1872 * @param comMachine Brings the machine being reset. */
1873 UINotificationProgressCloudMachineReset(const CCloudMachine &comMachine);
1874
1875protected:
1876
1877 /** Returns object name. */
1878 virtual QString name() const RT_OVERRIDE RT_FINAL;
1879 /** Returns object details. */
1880 virtual QString details() const RT_OVERRIDE RT_FINAL;
1881 /** Creates and returns started progress-wrapper. */
1882 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1883
1884private:
1885
1886 /** Holds the machine being reset. */
1887 CCloudMachine m_comMachine;
1888 /** Holds the machine name. */
1889 QString m_strName;
1890};
1891
1892/** UINotificationProgress extension for cloud machine power-off functionality. */
1893class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachinePowerOff : public UINotificationProgress
1894{
1895 Q_OBJECT;
1896
1897public:
1898
1899 /** Constructs cloud machine power-off notification-progress.
1900 * @param comMachine Brings the machine being powered-off. */
1901 UINotificationProgressCloudMachinePowerOff(const CCloudMachine &comMachine);
1902
1903protected:
1904
1905 /** Returns object name. */
1906 virtual QString name() const RT_OVERRIDE RT_FINAL;
1907 /** Returns object details. */
1908 virtual QString details() const RT_OVERRIDE RT_FINAL;
1909 /** Creates and returns started progress-wrapper. */
1910 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1911
1912private:
1913
1914 /** Holds the machine being powered-off. */
1915 CCloudMachine m_comMachine;
1916 /** Holds the machine name. */
1917 QString m_strName;
1918};
1919
1920/** UINotificationProgress extension for cloud machine shutdown functionality. */
1921class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineShutdown : public UINotificationProgress
1922{
1923 Q_OBJECT;
1924
1925public:
1926
1927 /** Constructs cloud machine shutdown notification-progress.
1928 * @param comMachine Brings the machine being shutdown. */
1929 UINotificationProgressCloudMachineShutdown(const CCloudMachine &comMachine);
1930
1931protected:
1932
1933 /** Returns object name. */
1934 virtual QString name() const RT_OVERRIDE RT_FINAL;
1935 /** Returns object details. */
1936 virtual QString details() const RT_OVERRIDE RT_FINAL;
1937 /** Creates and returns started progress-wrapper. */
1938 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1939
1940private:
1941
1942 /** Holds the machine being shutdown. */
1943 CCloudMachine m_comMachine;
1944 /** Holds the machine name. */
1945 QString m_strName;
1946};
1947
1948/** UINotificationProgress extension for cloud machine terminate functionality. */
1949class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineTerminate : public UINotificationProgress
1950{
1951 Q_OBJECT;
1952
1953public:
1954
1955 /** Constructs cloud machine terminate notification-progress.
1956 * @param comMachine Brings the machine being terminate. */
1957 UINotificationProgressCloudMachineTerminate(const CCloudMachine &comMachine);
1958
1959protected:
1960
1961 /** Returns object name. */
1962 virtual QString name() const RT_OVERRIDE RT_FINAL;
1963 /** Returns object details. */
1964 virtual QString details() const RT_OVERRIDE RT_FINAL;
1965 /** Creates and returns started progress-wrapper. */
1966 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1967
1968private:
1969
1970 /** Holds the machine being terminated. */
1971 CCloudMachine m_comMachine;
1972 /** Holds the machine name. */
1973 QString m_strName;
1974};
1975
1976/** UINotificationProgress extension for cloud machine settings form create functionality. */
1977class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineSettingsFormCreate : public UINotificationProgress
1978{
1979 Q_OBJECT;
1980
1981signals:
1982
1983 /** Notifies listeners about settings @a comForm created.
1984 * @param form Brings created VSD form. */
1985 void sigSettingsFormCreated(const QVariant &form);
1986
1987public:
1988
1989 /** Constructs cloud machine settings form create notification-progress.
1990 * @param comMachine Brings the machine form being created for.
1991 * @param strMachineName Brings the machine name. */
1992 UINotificationProgressCloudMachineSettingsFormCreate(const CCloudMachine &comMachine,
1993 const QString &strMachineName);
1994
1995protected:
1996
1997 /** Returns object name. */
1998 virtual QString name() const RT_OVERRIDE RT_FINAL;
1999 /** Returns object details. */
2000 virtual QString details() const RT_OVERRIDE RT_FINAL;
2001 /** Creates and returns started progress-wrapper. */
2002 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2003
2004private slots:
2005
2006 /** Handles signal about progress being finished. */
2007 void sltHandleProgressFinished();
2008
2009private:
2010
2011 /** Holds the machine form being created for. */
2012 CCloudMachine m_comMachine;
2013 /** Holds the machine name. */
2014 QString m_strMachineName;
2015 /** Holds the form being created. */
2016 CForm m_comForm;
2017};
2018
2019/** UINotificationProgress extension for cloud machine settings form apply functionality. */
2020class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineSettingsFormApply : public UINotificationProgress
2021{
2022 Q_OBJECT;
2023
2024public:
2025
2026 /** Constructs cloud machine settings form apply notification-progress.
2027 * @param comForm Brings the form being applied.
2028 * @param strMachineName Brings the machine name. */
2029 UINotificationProgressCloudMachineSettingsFormApply(const CForm &comForm,
2030 const QString &strMachineName);
2031
2032protected:
2033
2034 /** Returns object name. */
2035 virtual QString name() const RT_OVERRIDE RT_FINAL;
2036 /** Returns object details. */
2037 virtual QString details() const RT_OVERRIDE RT_FINAL;
2038 /** Creates and returns started progress-wrapper. */
2039 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2040
2041private:
2042
2043 /** Holds the machine form being created for. */
2044 CForm m_comForm;
2045 /** Holds the machine name. */
2046 QString m_strMachineName;
2047};
2048
2049/** UINotificationProgress extension for cloud console connection create functionality. */
2050class SHARED_LIBRARY_STUFF UINotificationProgressCloudConsoleConnectionCreate : public UINotificationProgress
2051{
2052 Q_OBJECT;
2053
2054public:
2055
2056 /** Constructs cloud console connection create notification-progress.
2057 * @param comMachine Brings the cloud machine for which console connection being created.
2058 * @param strPublicKey Brings the public key used for console connection being created. */
2059 UINotificationProgressCloudConsoleConnectionCreate(const CCloudMachine &comMachine,
2060 const QString &strPublicKey);
2061
2062protected:
2063
2064 /** Returns object name. */
2065 virtual QString name() const RT_OVERRIDE RT_FINAL;
2066 /** Returns object details. */
2067 virtual QString details() const RT_OVERRIDE RT_FINAL;
2068 /** Creates and returns started progress-wrapper. */
2069 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2070
2071private:
2072
2073 /** Holds the cloud machine for which console connection being created. */
2074 CCloudMachine m_comMachine;
2075 /** Holds the cloud machine name. */
2076 QString m_strName;
2077 /** Holds the public key used for console connection being created. */
2078 QString m_strPublicKey;
2079};
2080
2081/** UINotificationProgress extension for cloud console connection delete functionality. */
2082class SHARED_LIBRARY_STUFF UINotificationProgressCloudConsoleConnectionDelete : public UINotificationProgress
2083{
2084 Q_OBJECT;
2085
2086public:
2087
2088 /** Constructs cloud console connection delete notification-progress.
2089 * @param comMachine Brings the cloud machine for which console connection being deleted. */
2090 UINotificationProgressCloudConsoleConnectionDelete(const CCloudMachine &comMachine);
2091
2092protected:
2093
2094 /** Returns object name. */
2095 virtual QString name() const RT_OVERRIDE RT_FINAL;
2096 /** Returns object details. */
2097 virtual QString details() const RT_OVERRIDE RT_FINAL;
2098 /** Creates and returns started progress-wrapper. */
2099 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2100
2101private:
2102
2103 /** Holds the cloud machine for which console connection being deleted. */
2104 CCloudMachine m_comMachine;
2105 /** Holds the cloud machine name. */
2106 QString m_strName;
2107};
2108
2109/** UINotificationProgress extension for cloud console log acquire functionality. */
2110class SHARED_LIBRARY_STUFF UINotificationProgressCloudConsoleLogAcquire : public UINotificationProgress
2111{
2112 Q_OBJECT;
2113
2114signals:
2115
2116 /** Notifies listeners about console @a strLog for cloud VM with @a strName read. */
2117 void sigLogRead(const QString &strName, const QString &strLog);
2118
2119public:
2120
2121 /** Constructs cloud console log acquire notification-progress.
2122 * @param comMachine Brings the cloud machine for which console log being acquired. */
2123 UINotificationProgressCloudConsoleLogAcquire(const CCloudMachine &comMachine);
2124
2125protected:
2126
2127 /** Returns object name. */
2128 virtual QString name() const RT_OVERRIDE RT_FINAL;
2129 /** Returns object details. */
2130 virtual QString details() const RT_OVERRIDE RT_FINAL;
2131 /** Creates and returns started progress-wrapper. */
2132 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2133
2134private slots:
2135
2136 /** Handles signal about progress being finished. */
2137 void sltHandleProgressFinished();
2138
2139private:
2140
2141 /** Holds the cloud machine for which console log being acquired. */
2142 CCloudMachine m_comMachine;
2143 /** Holds the cloud machine name. */
2144 QString m_strName;
2145 /** Holds the stream log being read to. */
2146 CDataStream m_comStream;
2147};
2148
2149/** UINotificationProgress extension for snapshot take functionality. */
2150class SHARED_LIBRARY_STUFF UINotificationProgressSnapshotTake : public UINotificationProgress
2151{
2152 Q_OBJECT;
2153
2154signals:
2155
2156 /** Notifies listeners about snapshot with @a id taken. */
2157 void sigSnapshotTaken(const QVariant &id);
2158
2159public:
2160
2161 /** Constructs snapshot take notification-progress.
2162 * @param comMachine Brings the machine we are taking snapshot for.
2163 * @param strSnapshotName Brings the name of snapshot being taken.
2164 * @param strSnapshotDescription Brings the description of snapshot being taken. */
2165 UINotificationProgressSnapshotTake(const CMachine &comMachine,
2166 const QString &strSnapshotName,
2167 const QString &strSnapshotDescription);
2168
2169protected:
2170
2171 /** Returns object name. */
2172 virtual QString name() const RT_OVERRIDE RT_FINAL;
2173 /** Returns object details. */
2174 virtual QString details() const RT_OVERRIDE RT_FINAL;
2175 /** Creates and returns started progress-wrapper. */
2176 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2177
2178private slots:
2179
2180 /** Handles signal about progress being finished. */
2181 void sltHandleProgressFinished();
2182
2183private:
2184
2185 /** Holds the machine we are taking snapshot for. */
2186 CMachine m_comMachine;
2187 /** Holds the name of snapshot being taken. */
2188 QString m_strSnapshotName;
2189 /** Holds the description of snapshot being taken. */
2190 QString m_strSnapshotDescription;
2191 /** Holds the machine name. */
2192 QString m_strMachineName;
2193 /** Holds the session being opened. */
2194 CSession m_comSession;
2195 /** Holds the taken snapshot id. */
2196 QUuid m_uSnapshotId;
2197};
2198
2199/** UINotificationProgress extension for snapshot restore functionality. */
2200class SHARED_LIBRARY_STUFF UINotificationProgressSnapshotRestore : public UINotificationProgress
2201{
2202 Q_OBJECT;
2203
2204signals:
2205
2206 /** Notifies listeners about snapshot restored.
2207 * @param fSuccess Brings whether snapshot restored successfully. */
2208 void sigSnapshotRestored(bool fSuccess);
2209
2210public:
2211
2212 /** Constructs snapshot restore notification-progress.
2213 * @param uMachineId Brings the ID of machine we are restoring snapshot for.
2214 * @param comSnapshot Brings the snapshot being restored. */
2215 UINotificationProgressSnapshotRestore(const QUuid &uMachineId,
2216 const CSnapshot &comSnapshot = CSnapshot());
2217 /** Constructs snapshot restore notification-progress.
2218 * @param comMachine Brings the machine we are restoring snapshot for.
2219 * @param comSnapshot Brings the snapshot being restored. */
2220 UINotificationProgressSnapshotRestore(const CMachine &comMachine,
2221 const CSnapshot &comSnapshot = CSnapshot());
2222
2223protected:
2224
2225 /** Returns object name. */
2226 virtual QString name() const RT_OVERRIDE RT_FINAL;
2227 /** Returns object details. */
2228 virtual QString details() const RT_OVERRIDE RT_FINAL;
2229 /** Creates and returns started progress-wrapper. */
2230 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2231
2232private slots:
2233
2234 /** Handles signal about progress being finished. */
2235 void sltHandleProgressFinished();
2236
2237private:
2238
2239 /** Holds the ID of machine we are restoring snapshot for. */
2240 QUuid m_uMachineId;
2241 /** Holds the machine we are restoring snapshot for. */
2242 CMachine m_comMachine;
2243 /** Holds the snapshot being restored. */
2244 CSnapshot m_comSnapshot;
2245 /** Holds the machine name. */
2246 QString m_strMachineName;
2247 /** Holds the snapshot name. */
2248 QString m_strSnapshotName;
2249 /** Holds the session being opened. */
2250 CSession m_comSession;
2251};
2252
2253/** UINotificationProgress extension for snapshot delete functionality. */
2254class SHARED_LIBRARY_STUFF UINotificationProgressSnapshotDelete : public UINotificationProgress
2255{
2256 Q_OBJECT;
2257
2258public:
2259
2260 /** Constructs snapshot delete notification-progress.
2261 * @param comMachine Brings the machine we are deleting snapshot from.
2262 * @param uSnapshotId Brings the ID of snapshot being deleted. */
2263 UINotificationProgressSnapshotDelete(const CMachine &comMachine,
2264 const QUuid &uSnapshotId);
2265
2266protected:
2267
2268 /** Returns object name. */
2269 virtual QString name() const RT_OVERRIDE RT_FINAL;
2270 /** Returns object details. */
2271 virtual QString details() const RT_OVERRIDE RT_FINAL;
2272 /** Creates and returns started progress-wrapper. */
2273 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2274
2275private slots:
2276
2277 /** Handles signal about progress being finished. */
2278 void sltHandleProgressFinished();
2279
2280private:
2281
2282 /** Holds the machine we are deleting snapshot from. */
2283 CMachine m_comMachine;
2284 /** Holds the ID of snapshot being deleted. */
2285 QUuid m_uSnapshotId;
2286 /** Holds the machine name. */
2287 QString m_strMachineName;
2288 /** Holds the snapshot name. */
2289 QString m_strSnapshotName;
2290 /** Holds the session being opened. */
2291 CSession m_comSession;
2292};
2293
2294/** UINotificationProgress extension for appliance write functionality. */
2295class SHARED_LIBRARY_STUFF UINotificationProgressApplianceWrite : public UINotificationProgress
2296{
2297 Q_OBJECT;
2298
2299public:
2300
2301 /** Constructs appliance write notification-progress.
2302 * @param comAppliance Brings the appliance being written.
2303 * @param strFormat Brings the appliance format.
2304 * @param options Brings the export options to be taken into account.
2305 * @param strPath Brings the appliance path. */
2306 UINotificationProgressApplianceWrite(const CAppliance &comAppliance,
2307 const QString &strFormat,
2308 const QVector<KExportOptions> &options,
2309 const QString &strPath);
2310
2311protected:
2312
2313 /** Returns object name. */
2314 virtual QString name() const RT_OVERRIDE RT_FINAL;
2315 /** Returns object details. */
2316 virtual QString details() const RT_OVERRIDE RT_FINAL;
2317 /** Creates and returns started progress-wrapper. */
2318 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2319
2320private:
2321
2322 /** Holds the appliance being written. */
2323 CAppliance m_comAppliance;
2324 /** Holds the appliance format. */
2325 QString m_strFormat;
2326 /** Holds the export options to be taken into account. */
2327 QVector<KExportOptions> m_options;
2328 /** Holds the appliance path. */
2329 QString m_strPath;
2330};
2331
2332/** UINotificationProgress extension for appliance read functionality. */
2333class SHARED_LIBRARY_STUFF UINotificationProgressApplianceRead : public UINotificationProgress
2334{
2335 Q_OBJECT;
2336
2337public:
2338
2339 /** Constructs appliance read notification-progress.
2340 * @param comAppliance Brings the appliance being read.
2341 * @param strPath Brings the appliance path. */
2342 UINotificationProgressApplianceRead(const CAppliance &comAppliance,
2343 const QString &strPath);
2344
2345protected:
2346
2347 /** Returns object name. */
2348 virtual QString name() const RT_OVERRIDE RT_FINAL;
2349 /** Returns object details. */
2350 virtual QString details() const RT_OVERRIDE RT_FINAL;
2351 /** Creates and returns started progress-wrapper. */
2352 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2353
2354private:
2355
2356 /** Holds the appliance being read. */
2357 CAppliance m_comAppliance;
2358 /** Holds the appliance path. */
2359 QString m_strPath;
2360};
2361
2362/** UINotificationProgress extension for import appliance functionality. */
2363class SHARED_LIBRARY_STUFF UINotificationProgressApplianceImport : public UINotificationProgress
2364{
2365 Q_OBJECT;
2366
2367public:
2368
2369 /** Constructs import appliance notification-progress.
2370 * @param comAppliance Brings the appliance being imported.
2371 * @param options Brings the import options to be taken into account. */
2372 UINotificationProgressApplianceImport(const CAppliance &comAppliance,
2373 const QVector<KImportOptions> &options);
2374
2375protected:
2376
2377 /** Returns object name. */
2378 virtual QString name() const RT_OVERRIDE RT_FINAL;
2379 /** Returns object details. */
2380 virtual QString details() const RT_OVERRIDE RT_FINAL;
2381 /** Creates and returns started progress-wrapper. */
2382 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2383
2384private:
2385
2386 /** Holds the appliance being imported. */
2387 CAppliance m_comAppliance;
2388 /** Holds the import options to be taken into account. */
2389 QVector<KImportOptions> m_options;
2390};
2391
2392/** UINotificationProgress extension for extension pack install functionality. */
2393class SHARED_LIBRARY_STUFF UINotificationProgressExtensionPackInstall : public UINotificationProgress
2394{
2395 Q_OBJECT;
2396
2397public:
2398
2399 /** Constructs extension pack install notification-progress.
2400 * @param comExtPackFile Brings the extension pack file to install.
2401 * @param fReplace Brings whether extension pack should be replaced.
2402 * @param strExtensionPackName Brings the extension pack name.
2403 * @param strDisplayInfo Brings the display info. */
2404 UINotificationProgressExtensionPackInstall(const CExtPackFile &comExtPackFile,
2405 bool fReplace,
2406 const QString &strExtensionPackName,
2407 const QString &strDisplayInfo);
2408
2409protected:
2410
2411 /** Returns object name. */
2412 virtual QString name() const RT_OVERRIDE RT_FINAL;
2413 /** Returns object details. */
2414 virtual QString details() const RT_OVERRIDE RT_FINAL;
2415 /** Creates and returns started progress-wrapper. */
2416 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2417
2418private:
2419
2420 /** Holds the extension pack file to install. */
2421 CExtPackFile m_comExtPackFile;
2422 /** Holds whether extension pack should be replaced. */
2423 bool m_fReplace;
2424 /** Holds the extension pack name. */
2425 QString m_strExtensionPackName;
2426 /** Holds the display info. */
2427 QString m_strDisplayInfo;
2428};
2429
2430/** UINotificationProgress extension for extension pack uninstall functionality. */
2431class SHARED_LIBRARY_STUFF UINotificationProgressExtensionPackUninstall : public UINotificationProgress
2432{
2433 Q_OBJECT;
2434
2435public:
2436
2437 /** Constructs extension pack uninstall notification-progress.
2438 * @param comExtPackManager Brings the extension pack manager.
2439 * @param strExtensionPackName Brings the extension pack name.
2440 * @param strDisplayInfo Brings the display info. */
2441 UINotificationProgressExtensionPackUninstall(const CExtPackManager &comExtPackManager,
2442 const QString &strExtensionPackName,
2443 const QString &strDisplayInfo);
2444
2445protected:
2446
2447 /** Returns object name. */
2448 virtual QString name() const RT_OVERRIDE RT_FINAL;
2449 /** Returns object details. */
2450 virtual QString details() const RT_OVERRIDE RT_FINAL;
2451 /** Creates and returns started progress-wrapper. */
2452 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2453
2454private:
2455
2456 /** Holds the extension pack manager. */
2457 CExtPackManager m_comExtPackManager;
2458 /** Holds the extension pack name. */
2459 QString m_strExtensionPackName;
2460 /** Holds the display info. */
2461 QString m_strDisplayInfo;
2462};
2463
2464/** UINotificationProgress extension for guest additions install functionality. */
2465class SHARED_LIBRARY_STUFF UINotificationProgressGuestAdditionsInstall : public UINotificationProgress
2466{
2467 Q_OBJECT;
2468
2469signals:
2470
2471 /** Notifies listeners about guest additions installation failed.
2472 * @param strSource Brings the guest additions file path. */
2473 void sigGuestAdditionsInstallationFailed(const QString &strSource);
2474
2475public:
2476
2477 /** Constructs guest additions install notification-progress.
2478 * @param comGuest Brings the guest additions being installed to.
2479 * @param strSource Brings the guest additions file path. */
2480 UINotificationProgressGuestAdditionsInstall(const CGuest &comGuest,
2481 const QString &strSource);
2482
2483protected:
2484
2485 /** Returns object name. */
2486 virtual QString name() const RT_OVERRIDE RT_FINAL;
2487 /** Returns object details. */
2488 virtual QString details() const RT_OVERRIDE RT_FINAL;
2489 /** Creates and returns started progress-wrapper. */
2490 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2491
2492private slots:
2493
2494 /** Handles signal about progress being finished. */
2495 void sltHandleProgressFinished();
2496
2497private:
2498
2499 /** Holds the guest additions being installed to. */
2500 CGuest m_comGuest;
2501 /** Holds the guest additions file path. */
2502 QString m_strSource;
2503};
2504
2505/** UINotificationProgress extension for host-only network interface create functionality. */
2506class SHARED_LIBRARY_STUFF UINotificationProgressHostOnlyNetworkInterfaceCreate : public UINotificationProgress
2507{
2508 Q_OBJECT;
2509
2510signals:
2511
2512 /** Notifies listeners about host-only network interface created.
2513 * @param comInterface Brings network interface created. */
2514 void sigHostOnlyNetworkInterfaceCreated(const CHostNetworkInterface &comInterface);
2515
2516public:
2517
2518 /** Constructs host-only network interface create notification-progress.
2519 * @param comHost Brings the host network interface being created for.
2520 * @param comInterface Brings the network interface being created. */
2521 UINotificationProgressHostOnlyNetworkInterfaceCreate(const CHost &comHost,
2522 const CHostNetworkInterface &comInterface);
2523
2524protected:
2525
2526 /** Returns object name. */
2527 virtual QString name() const RT_OVERRIDE RT_FINAL;
2528 /** Returns object details. */
2529 virtual QString details() const RT_OVERRIDE RT_FINAL;
2530 /** Creates and returns started progress-wrapper. */
2531 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2532
2533private slots:
2534
2535 /** Handles signal about progress being finished. */
2536 void sltHandleProgressFinished();
2537
2538private:
2539
2540 /** Holds the host network interface being created for. */
2541 CHost m_comHost;
2542 /** Holds the network interface being created. */
2543 CHostNetworkInterface m_comInterface;
2544};
2545
2546/** UINotificationProgress extension for host-only network interface remove functionality. */
2547class SHARED_LIBRARY_STUFF UINotificationProgressHostOnlyNetworkInterfaceRemove : public UINotificationProgress
2548{
2549 Q_OBJECT;
2550
2551signals:
2552
2553 /** Notifies listeners about host-only network interface removed.
2554 * @param strInterfaceName Brings the name of network interface removed. */
2555 void sigHostOnlyNetworkInterfaceRemoved(const QString &strInterfaceName);
2556
2557public:
2558
2559 /** Constructs host-only network interface remove notification-progress.
2560 * @param comHost Brings the host network interface being removed for.
2561 * @param uInterfaceId Brings the ID of network interface being removed. */
2562 UINotificationProgressHostOnlyNetworkInterfaceRemove(const CHost &comHost,
2563 const QUuid &uInterfaceId);
2564
2565protected:
2566
2567 /** Returns object name. */
2568 virtual QString name() const RT_OVERRIDE RT_FINAL;
2569 /** Returns object details. */
2570 virtual QString details() const RT_OVERRIDE RT_FINAL;
2571 /** Creates and returns started progress-wrapper. */
2572 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2573
2574private slots:
2575
2576 /** Handles signal about progress being finished. */
2577 void sltHandleProgressFinished();
2578
2579private:
2580
2581 /** Holds the host network interface being removed for. */
2582 CHost m_comHost;
2583 /** Holds the ID of network interface being removed. */
2584 QUuid m_uInterfaceId;
2585 /** Holds the network interface name. */
2586 QString m_strInterfaceName;
2587};
2588
2589/** UINotificationProgress extension for virtual system description form value set functionality. */
2590class SHARED_LIBRARY_STUFF UINotificationProgressVsdFormValueSet : public UINotificationProgress
2591{
2592 Q_OBJECT;
2593
2594public:
2595
2596 /** Constructs virtual system description form value set notification-progress.
2597 * @param comValue Brings our value being set.
2598 * @param fBool Brings the value our value being set to. */
2599 UINotificationProgressVsdFormValueSet(const CBooleanFormValue &comValue, bool fBool);
2600
2601 /** Constructs virtual system description form value set notification-progress.
2602 * @param comValue Brings our value being set.
2603 * @param strString Brings the value our value being set to. */
2604 UINotificationProgressVsdFormValueSet(const CStringFormValue &comValue, const QString &strString);
2605
2606 /** Constructs virtual system description form value set notification-progress.
2607 * @param comValue Brings our value being set.
2608 * @param iChoice Brings the value our value being set to. */
2609 UINotificationProgressVsdFormValueSet(const CChoiceFormValue &comValue, int iChoice);
2610
2611 /** Constructs virtual system description form value set notification-progress.
2612 * @param comValue Brings our value being set.
2613 * @param iInteger Brings the value our value being set to. */
2614 UINotificationProgressVsdFormValueSet(const CRangedIntegerFormValue &comValue, int iInteger);
2615
2616 /** Constructs virtual system description form value set notification-progress.
2617 * @param comValue Brings our value being set.
2618 * @param iInteger64 Brings the value our value being set to. */
2619 UINotificationProgressVsdFormValueSet(const CRangedInteger64FormValue &comValue, qlonglong iInteger64);
2620
2621protected:
2622
2623 /** Returns object name. */
2624 virtual QString name() const RT_OVERRIDE RT_FINAL;
2625 /** Returns object details. */
2626 virtual QString details() const RT_OVERRIDE RT_FINAL;
2627 /** Creates and returns started progress-wrapper. */
2628 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2629
2630private:
2631
2632 /** Value type. */
2633 KFormValueType m_enmType;
2634
2635 /** Holds our value being set. */
2636 CFormValue m_comValue;
2637
2638 /** Holds the bool value. */
2639 bool m_fBool;
2640 /** Holds the string value. */
2641 QString m_strString;
2642 /** Holds the choice value. */
2643 int m_iChoice;
2644 /** Holds the integer value. */
2645 int m_iInteger;
2646 /** Holds the integer64 value. */
2647 qlonglong m_iInteger64;
2648};
2649
2650#ifdef VBOX_GUI_WITH_NETWORK_MANAGER
2651/** UINotificationDownloader extension for extension pack downloading functionality. */
2652class SHARED_LIBRARY_STUFF UINotificationDownloaderExtensionPack : public UINotificationDownloader
2653{
2654 Q_OBJECT;
2655
2656signals:
2657
2658 /** Notifies listeners about extension pack downloaded.
2659 * @param strSource Brings the EP source.
2660 * @param strTarget Brings the EP target.
2661 * @param strDigest Brings the EP digest. */
2662 void sigExtensionPackDownloaded(const QString &strSource,
2663 const QString &strTarget,
2664 const QString &strDigest);
2665
2666public:
2667
2668 /** Returns singleton instance, creates if necessary.
2669 * @param strPackName Brings the package name. */
2670 static UINotificationDownloaderExtensionPack *instance(const QString &strPackName);
2671 /** Returns whether singleton instance already created. */
2672 static bool exists();
2673
2674 /** Destructs extension pack downloading notification-downloader.
2675 * @note Notification-center can destroy us at any time. */
2676 virtual ~UINotificationDownloaderExtensionPack() RT_OVERRIDE RT_FINAL;
2677
2678protected:
2679
2680 /** Constructs extension pack downloading notification-downloader.
2681 * @param strPackName Brings the package name. */
2682 UINotificationDownloaderExtensionPack(const QString &strPackName);
2683
2684 /** Returns object name. */
2685 virtual QString name() const RT_OVERRIDE RT_FINAL;
2686 /** Returns object details. */
2687 virtual QString details() const RT_OVERRIDE RT_FINAL;
2688 /** Creates and returns started downloader. */
2689 virtual UIDownloader *createDownloader() RT_OVERRIDE RT_FINAL;
2690
2691private:
2692
2693 /** Holds the singleton instance. */
2694 static UINotificationDownloaderExtensionPack *s_pInstance;
2695
2696 /** Holds the name of pack being dowloaded. */
2697 QString m_strPackName;
2698};
2699
2700/** UINotificationDownloader extension for guest additions downloading functionality. */
2701class SHARED_LIBRARY_STUFF UINotificationDownloaderGuestAdditions : public UINotificationDownloader
2702{
2703 Q_OBJECT;
2704
2705signals:
2706
2707 /** Notifies listeners about guest additions downloaded.
2708 * @param strLocation Brings the UM location. */
2709 void sigGuestAdditionsDownloaded(const QString &strLocation);
2710
2711public:
2712
2713 /** Returns singleton instance, creates if necessary.
2714 * @param strFileName Brings the file name. */
2715 static UINotificationDownloaderGuestAdditions *instance(const QString &strFileName);
2716 /** Returns whether singleton instance already created. */
2717 static bool exists();
2718
2719 /** Destructs guest additions downloading notification-downloader.
2720 * @note Notification-center can destroy us at any time. */
2721 virtual ~UINotificationDownloaderGuestAdditions() RT_OVERRIDE RT_FINAL;
2722
2723protected:
2724
2725 /** Constructs guest additions downloading notification-downloader.
2726 * @param strFileName Brings the file name. */
2727 UINotificationDownloaderGuestAdditions(const QString &strFileName);
2728
2729 /** Returns object name. */
2730 virtual QString name() const RT_OVERRIDE RT_FINAL;
2731 /** Returns object details. */
2732 virtual QString details() const RT_OVERRIDE RT_FINAL;
2733 /** Creates and returns started downloader. */
2734 virtual UIDownloader *createDownloader() RT_OVERRIDE RT_FINAL;
2735
2736private:
2737
2738 /** Holds the singleton instance. */
2739 static UINotificationDownloaderGuestAdditions *s_pInstance;
2740
2741 /** Holds the name of file being dowloaded. */
2742 QString m_strFileName;
2743};
2744
2745/** UINotificationDownloader extension for user manual downloading functionality. */
2746class SHARED_LIBRARY_STUFF UINotificationDownloaderUserManual : public UINotificationDownloader
2747{
2748 Q_OBJECT;
2749
2750signals:
2751
2752 /** Notifies listeners about user manual downloaded.
2753 * @param strLocation Brings the UM location. */
2754 void sigUserManualDownloaded(const QString &strLocation);
2755
2756public:
2757
2758 /** Returns singleton instance, creates if necessary.
2759 * @param strFileName Brings the file name. */
2760 static UINotificationDownloaderUserManual *instance(const QString &strFileName);
2761 /** Returns whether singleton instance already created. */
2762 static bool exists();
2763
2764 /** Destructs user manual downloading notification-downloader.
2765 * @note Notification-center can destroy us at any time. */
2766 virtual ~UINotificationDownloaderUserManual() RT_OVERRIDE RT_FINAL;
2767
2768protected:
2769
2770 /** Constructs user manual downloading notification-downloader.
2771 * @param strFileName Brings the file name. */
2772 UINotificationDownloaderUserManual(const QString &strFileName);
2773
2774 /** Returns object name. */
2775 virtual QString name() const RT_OVERRIDE RT_FINAL;
2776 /** Returns object details. */
2777 virtual QString details() const RT_OVERRIDE RT_FINAL;
2778 /** Creates and returns started downloader. */
2779 virtual UIDownloader *createDownloader() RT_OVERRIDE RT_FINAL;
2780
2781private:
2782
2783 /** Holds the singleton instance. */
2784 static UINotificationDownloaderUserManual *s_pInstance;
2785
2786 /** Holds the name of file being dowloaded. */
2787 QString m_strFileName;
2788};
2789
2790/** UINotificationProgress extension for checking a new VirtualBox version. */
2791class SHARED_LIBRARY_STUFF UINotificationProgressNewVersionChecker : public UINotificationProgress
2792{
2793 Q_OBJECT;
2794
2795public:
2796
2797 /** Constructs new version check notification-progress.
2798 * @param fForcedCall Brings whether even negative result should be reflected. */
2799 UINotificationProgressNewVersionChecker(bool fForcedCall);
2800
2801protected:
2802
2803 /** Returns object name. */
2804 virtual QString name() const RT_OVERRIDE RT_FINAL;
2805 /** Returns object details. */
2806 virtual QString details() const RT_OVERRIDE RT_FINAL;
2807 /** Creates and returns started progress-wrapper. */
2808 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2809
2810private slots:
2811
2812 /** Handles signal about progress being finished. */
2813 void sltHandleProgressFinished();
2814
2815private:
2816
2817 /** Holds whether this customer has forced privelegies. */
2818 bool m_fForcedCall;
2819# ifdef VBOX_WITH_UPDATE_AGENT
2820 /** Holds the host update agent reference. */
2821 CUpdateAgent m_comUpdateHost;
2822# endif
2823};
2824#endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
2825
2826#endif /* !FEQT_INCLUDED_SRC_notificationcenter_UINotificationObjects_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