VirtualBox

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

Last change on this file was 103982, checked in by vboxsync, 2 months ago

FE/Qt: bugref:10624. Replacing override and final keywords with RT_OVERRIDE and RT_FINAL defines.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 118.8 KB
Line 
1/* $Id: UINotificationObjects.h 103982 2024-03-21 11:43:53Z 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
966signals:
967
968 /** Notifies listeners about @a comMachine was copied. */
969 void sigMachineCopied(const CMachine &comMachine);
970
971public:
972
973 /** Constructs machine copy notification-progress.
974 * @param comSource Brings the machine being copied.
975 * @param comTarget Brings the machine being the target.
976 * @param enmCloneMode Brings the cloning mode.
977 * @param options Brings the cloning options. */
978 UINotificationProgressMachineCopy(const CMachine &comSource,
979 const CMachine &comTarget,
980 const KCloneMode &enmCloneMode,
981 const QVector<KCloneOptions> &options);
982
983protected:
984
985 /** Returns object name. */
986 virtual QString name() const RT_OVERRIDE RT_FINAL;
987 /** Returns object details. */
988 virtual QString details() const RT_OVERRIDE RT_FINAL;
989 /** Creates and returns started progress-wrapper. */
990 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
991
992private slots:
993
994 /** Handles signal about progress being finished. */
995 void sltHandleProgressFinished();
996
997private:
998
999 /** Holds the machine being copied. */
1000 CMachine m_comSource;
1001 /** Holds the machine being the target. */
1002 CMachine m_comTarget;
1003 /** Holds the source name. */
1004 QString m_strSourceName;
1005 /** Holds the target name. */
1006 QString m_strTargetName;
1007 /** Holds the machine cloning mode. */
1008 KCloneMode m_enmCloneMode;
1009 /** Holds the target machine options. */
1010 QVector<KCloneOptions> m_options;
1011};
1012
1013/** UINotificationProgress extension for machine move functionality. */
1014class SHARED_LIBRARY_STUFF UINotificationProgressMachineMove : public UINotificationProgress
1015{
1016 Q_OBJECT;
1017
1018public:
1019
1020 /** Constructs machine move notification-progress.
1021 * @param uId Brings the machine id.
1022 * @param strDestination Brings the move destination.
1023 * @param strType Brings the moving type. */
1024 UINotificationProgressMachineMove(const QUuid &uId,
1025 const QString &strDestination,
1026 const QString &strType);
1027
1028protected:
1029
1030 /** Returns object name. */
1031 virtual QString name() const RT_OVERRIDE RT_FINAL;
1032 /** Returns object details. */
1033 virtual QString details() const RT_OVERRIDE RT_FINAL;
1034 /** Creates and returns started progress-wrapper. */
1035 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1036
1037private slots:
1038
1039 /** Handles signal about progress being finished. */
1040 void sltHandleProgressFinished();
1041
1042private:
1043
1044 /** Holds the machine id. */
1045 QUuid m_uId;
1046 /** Holds the session being opened. */
1047 CSession m_comSession;
1048 /** Holds the machine source. */
1049 QString m_strSource;
1050 /** Holds the machine destination. */
1051 QString m_strDestination;
1052 /** Holds the moving type. */
1053 QString m_strType;
1054};
1055
1056/** UINotificationProgress extension for machine power-up functionality. */
1057class SHARED_LIBRARY_STUFF UINotificationProgressMachinePowerUp : public UINotificationProgress
1058{
1059 Q_OBJECT;
1060
1061public:
1062
1063 /** Constructs machine power-up notification-progress.
1064 * @param comMachine Brings the machine being powered-up. */
1065 UINotificationProgressMachinePowerUp(const CMachine &comMachine, UILaunchMode enmLaunchMode);
1066
1067protected:
1068
1069 /** Returns object name. */
1070 virtual QString name() const RT_OVERRIDE RT_FINAL;
1071 /** Returns object details. */
1072 virtual QString details() const RT_OVERRIDE RT_FINAL;
1073 /** Creates and returns started progress-wrapper. */
1074 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1075
1076private slots:
1077
1078 /** Handles signal about progress being finished. */
1079 void sltHandleProgressFinished();
1080
1081private:
1082
1083 /** Holds the machine being powered-up. */
1084 CMachine m_comMachine;
1085 /** Holds the launch mode. */
1086 UILaunchMode m_enmLaunchMode;
1087 /** Holds the session being opened. */
1088 CSession m_comSession;
1089 /** Holds the machine name. */
1090 QString m_strName;
1091};
1092
1093/** UINotificationProgress extension for machine save-state functionality. */
1094class SHARED_LIBRARY_STUFF UINotificationProgressMachineSaveState : public UINotificationProgress
1095{
1096 Q_OBJECT;
1097
1098signals:
1099
1100 /** Notifies listeners about machine state saved.
1101 * @param fSuccess Brings whether state was saved successfully. */
1102 void sigMachineStateSaved(bool fSuccess);
1103
1104public:
1105
1106 /** Constructs machine save-state notification-progress.
1107 * @param comMachine Brings the machine being saved. */
1108 UINotificationProgressMachineSaveState(const CMachine &comMachine);
1109
1110protected:
1111
1112 /** Returns object name. */
1113 virtual QString name() const RT_OVERRIDE RT_FINAL;
1114 /** Returns object details. */
1115 virtual QString details() const RT_OVERRIDE RT_FINAL;
1116 /** Creates and returns started progress-wrapper. */
1117 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1118
1119private slots:
1120
1121 /** Handles signal about progress being finished. */
1122 void sltHandleProgressFinished();
1123
1124private:
1125
1126 /** Holds the machine being saved. */
1127 CMachine m_comMachine;
1128 /** Holds the session being opened. */
1129 CSession m_comSession;
1130 /** Holds the machine name. */
1131 QString m_strName;
1132};
1133
1134/** UINotificationProgress extension for machine power-off functionality. */
1135class SHARED_LIBRARY_STUFF UINotificationProgressMachinePowerOff : public UINotificationProgress
1136{
1137 Q_OBJECT;
1138
1139signals:
1140
1141 /** Notifies listeners about machine powered off.
1142 * @param fSuccess Brings whether power off sequence successfully.
1143 * @param fIncludingDiscard Brings whether machine state should be discarded. */
1144 void sigMachinePoweredOff(bool fSuccess, bool fIncludingDiscard);
1145
1146public:
1147
1148 /** Constructs machine power-off notification-progress.
1149 * @param comMachine Brings the machine being powered off.
1150 * @param comConsole Brings the console of machine being powered off.
1151 * @param fIncludingDiscard Brings whether machine state should be discarded. */
1152 UINotificationProgressMachinePowerOff(const CMachine &comMachine,
1153 const CConsole &comConsole = CConsole(),
1154 bool fIncludingDiscard = false);
1155
1156protected:
1157
1158 /** Returns object name. */
1159 virtual QString name() const RT_OVERRIDE RT_FINAL;
1160 /** Returns object details. */
1161 virtual QString details() const RT_OVERRIDE RT_FINAL;
1162 /** Creates and returns started progress-wrapper. */
1163 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1164
1165private slots:
1166
1167 /** Handles signal about progress being finished. */
1168 void sltHandleProgressFinished();
1169
1170private:
1171
1172 /** Holds the machine being powered off. */
1173 CMachine m_comMachine;
1174 /** Holds the console of machine being powered off. */
1175 CConsole m_comConsole;
1176 /** Holds whether machine state should be discarded. */
1177 bool m_fIncludingDiscard;
1178 /** Holds the session being opened. */
1179 CSession m_comSession;
1180 /** Holds the machine name. */
1181 QString m_strName;
1182};
1183
1184/** UINotificationProgress extension for machine media remove functionality. */
1185class SHARED_LIBRARY_STUFF UINotificationProgressMachineMediaRemove : public UINotificationProgress
1186{
1187 Q_OBJECT;
1188
1189public:
1190
1191 /** Constructs machine media remove notification-progress.
1192 * @param comMachine Brings the machine being removed.
1193 * @param media Brings the machine media being removed. */
1194 UINotificationProgressMachineMediaRemove(const CMachine &comMachine,
1195 const CMediumVector &media);
1196
1197protected:
1198
1199 /** Returns object name. */
1200 virtual QString name() const RT_OVERRIDE RT_FINAL;
1201 /** Returns object details. */
1202 virtual QString details() const RT_OVERRIDE RT_FINAL;
1203 /** Creates and returns started progress-wrapper. */
1204 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1205
1206private:
1207
1208 /** Holds the machine being removed. */
1209 CMachine m_comMachine;
1210 /** Holds the machine name. */
1211 QString m_strName;
1212 /** Holds the machine media being removed. */
1213 CMediumVector m_media;
1214};
1215
1216/** UINotificationProgress extension for VFS explorer update functionality. */
1217class SHARED_LIBRARY_STUFF UINotificationProgressVFSExplorerUpdate : public UINotificationProgress
1218{
1219 Q_OBJECT;
1220
1221public:
1222
1223 /** Constructs VFS explorer update notification-progress.
1224 * @param comExplorer Brings the VFS explorer being updated. */
1225 UINotificationProgressVFSExplorerUpdate(const CVFSExplorer &comExplorer);
1226
1227protected:
1228
1229 /** Returns object name. */
1230 virtual QString name() const RT_OVERRIDE RT_FINAL;
1231 /** Returns object details. */
1232 virtual QString details() const RT_OVERRIDE RT_FINAL;
1233 /** Creates and returns started progress-wrapper. */
1234 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1235
1236private:
1237
1238 /** Holds the VFS explorer being updated. */
1239 CVFSExplorer m_comExplorer;
1240 /** Holds the VFS explorer path. */
1241 QString m_strPath;
1242};
1243
1244/** UINotificationProgress extension for VFS explorer files remove functionality. */
1245class SHARED_LIBRARY_STUFF UINotificationProgressVFSExplorerFilesRemove : public UINotificationProgress
1246{
1247 Q_OBJECT;
1248
1249public:
1250
1251 /** Constructs VFS explorer files remove notification-progress.
1252 * @param comExplorer Brings the VFS explorer removing the files.
1253 * @param files Brings a vector of files to be removed. */
1254 UINotificationProgressVFSExplorerFilesRemove(const CVFSExplorer &comExplorer,
1255 const QVector<QString> &files);
1256
1257protected:
1258
1259 /** Returns object name. */
1260 virtual QString name() const RT_OVERRIDE RT_FINAL;
1261 /** Returns object details. */
1262 virtual QString details() const RT_OVERRIDE RT_FINAL;
1263 /** Creates and returns started progress-wrapper. */
1264 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1265
1266private:
1267
1268 /** Holds the VFS explorer removing the files. */
1269 CVFSExplorer m_comExplorer;
1270 /** Holds a vector of files to be removed. */
1271 QVector<QString> m_files;
1272 /** Holds the VFS explorer path. */
1273 QString m_strPath;
1274};
1275
1276/** UINotificationProgress extension for subnet selection VSD form create functionality. */
1277class SHARED_LIBRARY_STUFF UINotificationProgressSubnetSelectionVSDFormCreate : public UINotificationProgress
1278{
1279 Q_OBJECT;
1280
1281signals:
1282
1283 /** Notifies listeners about VSD @a comForm created.
1284 * @param comForm Brings created VSD form. */
1285 void sigVSDFormCreated(const CVirtualSystemDescriptionForm &comForm);
1286
1287public:
1288
1289 /** Constructs subnet selection VSD form create notification-progress.
1290 * @param comClient Brings the cloud client being creating VSD form.
1291 * @param comVsd Brings the VSD, form being created for.
1292 * @param strProviderShortName Brings the short provider name.
1293 * @param strProfileName Brings the profile name. */
1294 UINotificationProgressSubnetSelectionVSDFormCreate(const CCloudClient &comClient,
1295 const CVirtualSystemDescription &comVSD,
1296 const QString &strProviderShortName,
1297 const QString &strProfileName);
1298
1299protected:
1300
1301 /** Returns object name. */
1302 virtual QString name() const RT_OVERRIDE RT_FINAL;
1303 /** Returns object details. */
1304 virtual QString details() const RT_OVERRIDE RT_FINAL;
1305 /** Creates and returns started progress-wrapper. */
1306 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1307
1308private slots:
1309
1310 /** Handles signal about progress being finished. */
1311 void sltHandleProgressFinished();
1312
1313private:
1314
1315 /** Holds the cloud client being creating VSD form. */
1316 CCloudClient m_comClient;
1317 /** Holds the VSD, form being created for. */
1318 CVirtualSystemDescription m_comVSD;
1319 /** Holds the VSD form being created. */
1320 CVirtualSystemDescriptionForm m_comVSDForm;
1321 /** Holds the short provider name. */
1322 QString m_strProviderShortName;
1323 /** Holds the profile name. */
1324 QString m_strProfileName;
1325};
1326
1327/** UINotificationProgress extension for launch VSD form create functionality. */
1328class SHARED_LIBRARY_STUFF UINotificationProgressLaunchVSDFormCreate : public UINotificationProgress
1329{
1330 Q_OBJECT;
1331
1332signals:
1333
1334 /** Notifies listeners about VSD @a comForm created.
1335 * @param comForm Brings created VSD form. */
1336 void sigVSDFormCreated(const CVirtualSystemDescriptionForm &comForm);
1337
1338public:
1339
1340 /** Constructs launch VSD form create notification-progress.
1341 * @param comClient Brings the cloud client being creating VSD form.
1342 * @param comVsd Brings the VSD, form being created for.
1343 * @param strProviderShortName Brings the short provider name.
1344 * @param strProfileName Brings the profile name. */
1345 UINotificationProgressLaunchVSDFormCreate(const CCloudClient &comClient,
1346 const CVirtualSystemDescription &comVSD,
1347 const QString &strProviderShortName,
1348 const QString &strProfileName);
1349
1350protected:
1351
1352 /** Returns object name. */
1353 virtual QString name() const RT_OVERRIDE RT_FINAL;
1354 /** Returns object details. */
1355 virtual QString details() const RT_OVERRIDE RT_FINAL;
1356 /** Creates and returns started progress-wrapper. */
1357 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1358
1359private slots:
1360
1361 /** Handles signal about progress being finished. */
1362 void sltHandleProgressFinished();
1363
1364private:
1365
1366 /** Holds the cloud client being creating VSD form. */
1367 CCloudClient m_comClient;
1368 /** Holds the VSD, form being created for. */
1369 CVirtualSystemDescription m_comVSD;
1370 /** Holds the VSD form being created. */
1371 CVirtualSystemDescriptionForm m_comVSDForm;
1372 /** Holds the short provider name. */
1373 QString m_strProviderShortName;
1374 /** Holds the profile name. */
1375 QString m_strProfileName;
1376};
1377
1378/** UINotificationProgress extension for export VSD form create functionality. */
1379class SHARED_LIBRARY_STUFF UINotificationProgressExportVSDFormCreate : public UINotificationProgress
1380{
1381 Q_OBJECT;
1382
1383signals:
1384
1385 /** Notifies listeners about VSD @a comForm created.
1386 * @param form Brings created VSD form. */
1387 void sigVSDFormCreated(const QVariant &form);
1388
1389public:
1390
1391 /** Constructs export VSD form create notification-progress.
1392 * @param comClient Brings the cloud client being creating VSD form.
1393 * @param comVsd Brings the VSD, form being created for. */
1394 UINotificationProgressExportVSDFormCreate(const CCloudClient &comClient,
1395 const CVirtualSystemDescription &comVSD);
1396
1397protected:
1398
1399 /** Returns object name. */
1400 virtual QString name() const RT_OVERRIDE RT_FINAL;
1401 /** Returns object details. */
1402 virtual QString details() const RT_OVERRIDE RT_FINAL;
1403 /** Creates and returns started progress-wrapper. */
1404 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1405
1406private slots:
1407
1408 /** Handles signal about progress being finished. */
1409 void sltHandleProgressFinished();
1410
1411private:
1412
1413 /** Holds the cloud client being creating VSD form. */
1414 CCloudClient m_comClient;
1415 /** Holds the VSD, form being created for. */
1416 CVirtualSystemDescription m_comVSD;
1417 /** Holds the VSD form being created. */
1418 CVirtualSystemDescriptionForm m_comVSDForm;
1419};
1420
1421/** UINotificationProgress extension for import VSD form create functionality. */
1422class SHARED_LIBRARY_STUFF UINotificationProgressImportVSDFormCreate : public UINotificationProgress
1423{
1424 Q_OBJECT;
1425
1426signals:
1427
1428 /** Notifies listeners about VSD @a comForm created.
1429 * @param form Brings created VSD form. */
1430 void sigVSDFormCreated(const QVariant &form);
1431
1432public:
1433
1434 /** Constructs import VSD form create notification-progress.
1435 * @param comClient Brings the cloud client being creating VSD form.
1436 * @param comVsd Brings the VSD, form being created for. */
1437 UINotificationProgressImportVSDFormCreate(const CCloudClient &comClient,
1438 const CVirtualSystemDescription &comVSD);
1439
1440protected:
1441
1442 /** Returns object name. */
1443 virtual QString name() const RT_OVERRIDE RT_FINAL;
1444 /** Returns object details. */
1445 virtual QString details() const RT_OVERRIDE RT_FINAL;
1446 /** Creates and returns started progress-wrapper. */
1447 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1448
1449private slots:
1450
1451 /** Handles signal about progress being finished. */
1452 void sltHandleProgressFinished();
1453
1454private:
1455
1456 /** Holds the cloud client being creating VSD form. */
1457 CCloudClient m_comClient;
1458 /** Holds the VSD, form being created for. */
1459 CVirtualSystemDescription m_comVSD;
1460 /** Holds the VSD form being created. */
1461 CVirtualSystemDescriptionForm m_comVSDForm;
1462};
1463
1464/** UINotificationProgress extension for cloud image list functionality. */
1465class SHARED_LIBRARY_STUFF UINotificationProgressCloudImageList : public UINotificationProgress
1466{
1467 Q_OBJECT;
1468
1469signals:
1470
1471 /** Notifies listeners about image @a names received. */
1472 void sigImageNamesReceived(const QVariant &names);
1473 /** Notifies listeners about image @a ids received. */
1474 void sigImageIdsReceived(const QVariant &ids);
1475
1476public:
1477
1478 /** Constructs cloud images list notification-progress.
1479 * @param comClient Brings the cloud client being listing images.
1480 * @param cloudImageStates Brings the image states we are interested in. */
1481 UINotificationProgressCloudImageList(const CCloudClient &comClient,
1482 const QVector<KCloudImageState> &cloudImageStates);
1483
1484protected:
1485
1486 /** Returns object name. */
1487 virtual QString name() const RT_OVERRIDE RT_FINAL;
1488 /** Returns object details. */
1489 virtual QString details() const RT_OVERRIDE RT_FINAL;
1490 /** Creates and returns started progress-wrapper. */
1491 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1492
1493private slots:
1494
1495 /** Handles signal about progress being finished. */
1496 void sltHandleProgressFinished();
1497
1498private:
1499
1500 /** Holds the cloud client being listing images. */
1501 CCloudClient m_comClient;
1502 /** Holds the image states we are interested in. */
1503 QVector<KCloudImageState> m_cloudImageStates;
1504 /** Holds the listed names. */
1505 CStringArray m_comNames;
1506 /** Holds the listed ids. */
1507 CStringArray m_comIds;
1508};
1509
1510/** UINotificationProgress extension for cloud source boot volume list functionality. */
1511class SHARED_LIBRARY_STUFF UINotificationProgressCloudSourceBootVolumeList : public UINotificationProgress
1512{
1513 Q_OBJECT;
1514
1515signals:
1516
1517 /** Notifies listeners about source boot volume @a names received. */
1518 void sigImageNamesReceived(const QVariant &names);
1519 /** Notifies listeners about source boot volume @a ids received. */
1520 void sigImageIdsReceived(const QVariant &ids);
1521
1522public:
1523
1524 /** Constructs cloud source boot volumes list notification-progress.
1525 * @param comClient Brings the cloud client being listing source boot volumes. */
1526 UINotificationProgressCloudSourceBootVolumeList(const CCloudClient &comClient);
1527
1528protected:
1529
1530 /** Returns object name. */
1531 virtual QString name() const RT_OVERRIDE RT_FINAL;
1532 /** Returns object details. */
1533 virtual QString details() const RT_OVERRIDE RT_FINAL;
1534 /** Creates and returns started progress-wrapper. */
1535 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1536
1537private slots:
1538
1539 /** Handles signal about progress being finished. */
1540 void sltHandleProgressFinished();
1541
1542private:
1543
1544 /** Holds the cloud client being listing source boot volumes. */
1545 CCloudClient m_comClient;
1546 /** Holds the listed names. */
1547 CStringArray m_comNames;
1548 /** Holds the listed ids. */
1549 CStringArray m_comIds;
1550};
1551
1552/** UINotificationProgress extension for cloud instance list functionality. */
1553class SHARED_LIBRARY_STUFF UINotificationProgressCloudInstanceList : public UINotificationProgress
1554{
1555 Q_OBJECT;
1556
1557signals:
1558
1559 /** Notifies listeners about instance @a names received. */
1560 void sigImageNamesReceived(const QVariant &names);
1561 /** Notifies listeners about instance @a ids received. */
1562 void sigImageIdsReceived(const QVariant &ids);
1563
1564public:
1565
1566 /** Constructs cloud instances list notification-progress.
1567 * @param comClient Brings the cloud client being listing instances. */
1568 UINotificationProgressCloudInstanceList(const CCloudClient &comClient);
1569
1570protected:
1571
1572 /** Returns object name. */
1573 virtual QString name() const RT_OVERRIDE RT_FINAL;
1574 /** Returns object details. */
1575 virtual QString details() const RT_OVERRIDE RT_FINAL;
1576 /** Creates and returns started progress-wrapper. */
1577 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1578
1579private slots:
1580
1581 /** Handles signal about progress being finished. */
1582 void sltHandleProgressFinished();
1583
1584private:
1585
1586 /** Holds the cloud client being listing instances. */
1587 CCloudClient m_comClient;
1588 /** Holds the listed names. */
1589 CStringArray m_comNames;
1590 /** Holds the listed ids. */
1591 CStringArray m_comIds;
1592};
1593
1594/** UINotificationProgress extension for cloud source instance list functionality. */
1595class SHARED_LIBRARY_STUFF UINotificationProgressCloudSourceInstanceList : public UINotificationProgress
1596{
1597 Q_OBJECT;
1598
1599signals:
1600
1601 /** Notifies listeners about source instance @a names received. */
1602 void sigImageNamesReceived(const QVariant &names);
1603 /** Notifies listeners about source instance @a ids received. */
1604 void sigImageIdsReceived(const QVariant &ids);
1605
1606public:
1607
1608 /** Constructs cloud source instances list notification-progress.
1609 * @param comClient Brings the cloud client being listing source instances. */
1610 UINotificationProgressCloudSourceInstanceList(const CCloudClient &comClient);
1611
1612protected:
1613
1614 /** Returns object name. */
1615 virtual QString name() const RT_OVERRIDE RT_FINAL;
1616 /** Returns object details. */
1617 virtual QString details() const RT_OVERRIDE RT_FINAL;
1618 /** Creates and returns started progress-wrapper. */
1619 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1620
1621private slots:
1622
1623 /** Handles signal about progress being finished. */
1624 void sltHandleProgressFinished();
1625
1626private:
1627
1628 /** Holds the cloud client being listing source instances. */
1629 CCloudClient m_comClient;
1630 /** Holds the listed names. */
1631 CStringArray m_comNames;
1632 /** Holds the listed ids. */
1633 CStringArray m_comIds;
1634};
1635
1636/** UINotificationProgress extension for cloud machine add functionality. */
1637class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineAdd : public UINotificationProgress
1638{
1639 Q_OBJECT;
1640
1641signals:
1642
1643 /** Notifies listeners about cloud @a comMachine was added.
1644 * @param strProviderShortName Brings the short provider name.
1645 * @param strProfileName Brings the profile name. */
1646 void sigCloudMachineAdded(const QString &strProviderShortName,
1647 const QString &strProfileName,
1648 const CCloudMachine &comMachine);
1649
1650public:
1651
1652 /** Constructs cloud machine add notification-progress.
1653 * @param comClient Brings the cloud client being adding machine.
1654 * @param comMachine Brings the cloud machine being added.
1655 * @param strInstanceName Brings the instance name.
1656 * @param strProviderShortName Brings the short provider name.
1657 * @param strProfileName Brings the profile name. */
1658 UINotificationProgressCloudMachineAdd(const CCloudClient &comClient,
1659 const CCloudMachine &comMachine,
1660 const QString &strInstanceName,
1661 const QString &strProviderShortName,
1662 const QString &strProfileName);
1663
1664protected:
1665
1666 /** Returns object name. */
1667 virtual QString name() const RT_OVERRIDE RT_FINAL;
1668 /** Returns object details. */
1669 virtual QString details() const RT_OVERRIDE RT_FINAL;
1670 /** Creates and returns started progress-wrapper. */
1671 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1672
1673private slots:
1674
1675 /** Handles signal about progress being finished. */
1676 void sltHandleProgressFinished();
1677
1678private:
1679
1680 /** Holds the cloud client being adding machine. */
1681 CCloudClient m_comClient;
1682 /** Holds the cloud machine being added. */
1683 CCloudMachine m_comMachine;
1684 /** Holds the instance name. */
1685 QString m_strInstanceName;
1686 /** Holds the short provider name. */
1687 QString m_strProviderShortName;
1688 /** Holds the profile name. */
1689 QString m_strProfileName;
1690};
1691
1692/** UINotificationProgress extension for cloud machine create functionality. */
1693class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineCreate : public UINotificationProgress
1694{
1695 Q_OBJECT;
1696
1697signals:
1698
1699 /** Notifies listeners about cloud @a comMachine was created.
1700 * @param strProviderShortName Brings the short provider name.
1701 * @param strProfileName Brings the profile name. */
1702 void sigCloudMachineCreated(const QString &strProviderShortName,
1703 const QString &strProfileName,
1704 const CCloudMachine &comMachine);
1705
1706public:
1707
1708 /** Constructs cloud machine create notification-progress.
1709 * @param comClient Brings the cloud client being adding machine.
1710 * @param comMachine Brings the cloud machine being added.
1711 * @param comVSD Brings the virtual system description.
1712 * @param strProviderShortName Brings the short provider name.
1713 * @param strProfileName Brings the profile name. */
1714 UINotificationProgressCloudMachineCreate(const CCloudClient &comClient,
1715 const CCloudMachine &comMachine,
1716 const CVirtualSystemDescription &comVSD,
1717 const QString &strProviderShortName,
1718 const QString &strProfileName);
1719
1720protected:
1721
1722 /** Returns object name. */
1723 virtual QString name() const RT_OVERRIDE RT_FINAL;
1724 /** Returns object details. */
1725 virtual QString details() const RT_OVERRIDE RT_FINAL;
1726 /** Creates and returns started progress-wrapper. */
1727 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1728
1729private slots:
1730
1731 /** Handles signal about progress being finished. */
1732 void sltHandleProgressFinished();
1733
1734private:
1735
1736 /** Holds the cloud client being adding machine. */
1737 CCloudClient m_comClient;
1738 /** Holds the cloud machine being added. */
1739 CCloudMachine m_comMachine;
1740 /** Holds the the virtual system description. */
1741 CVirtualSystemDescription m_comVSD;
1742 /** Holds the cloud machine name. */
1743 QString m_strName;
1744 /** Holds the short provider name. */
1745 QString m_strProviderShortName;
1746 /** Holds the profile name. */
1747 QString m_strProfileName;
1748};
1749
1750/** UINotificationProgress extension for cloud machine remove functionality. */
1751class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineRemove : public UINotificationProgress
1752{
1753 Q_OBJECT;
1754
1755signals:
1756
1757 /** Notifies listeners about cloud machine was removed.
1758 * @param strProviderShortName Brings the short provider name.
1759 * @param strProfileName Brings the profile name.
1760 * @param strName Brings the machine name. */
1761 void sigCloudMachineRemoved(const QString &strProviderShortName,
1762 const QString &strProfileName,
1763 const QString &strName);
1764
1765public:
1766
1767 /** Constructs cloud machine remove notification-progress.
1768 * @param comMachine Brings the cloud machine being removed.
1769 * @param fFullRemoval Brings whether cloud machine should be removed fully. */
1770 UINotificationProgressCloudMachineRemove(const CCloudMachine &comMachine,
1771 bool fFullRemoval,
1772 const QString &strProviderShortName,
1773 const QString &strProfileName);
1774
1775protected:
1776
1777 /** Returns object name. */
1778 virtual QString name() const RT_OVERRIDE RT_FINAL;
1779 /** Returns object details. */
1780 virtual QString details() const RT_OVERRIDE RT_FINAL;
1781 /** Creates and returns started progress-wrapper. */
1782 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1783
1784private slots:
1785
1786 /** Handles signal about progress being finished. */
1787 void sltHandleProgressFinished();
1788
1789private:
1790
1791 /** Holds the cloud machine being removed. */
1792 CCloudMachine m_comMachine;
1793 /** Holds the cloud machine name. */
1794 QString m_strName;
1795 /** Holds whether cloud machine should be removed fully. */
1796 bool m_fFullRemoval;
1797 /** Holds the short provider name. */
1798 QString m_strProviderShortName;
1799 /** Holds the profile name. */
1800 QString m_strProfileName;
1801};
1802
1803/** UINotificationProgress extension for cloud machine power-up functionality. */
1804class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachinePowerUp : public UINotificationProgress
1805{
1806 Q_OBJECT;
1807
1808public:
1809
1810 /** Constructs cloud machine power-up notification-progress.
1811 * @param comMachine Brings the machine being powered-up. */
1812 UINotificationProgressCloudMachinePowerUp(const CCloudMachine &comMachine);
1813
1814protected:
1815
1816 /** Returns object name. */
1817 virtual QString name() const RT_OVERRIDE RT_FINAL;
1818 /** Returns object details. */
1819 virtual QString details() const RT_OVERRIDE RT_FINAL;
1820 /** Creates and returns started progress-wrapper. */
1821 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1822
1823private:
1824
1825 /** Holds the machine being powered-up. */
1826 CCloudMachine m_comMachine;
1827 /** Holds the machine name. */
1828 QString m_strName;
1829};
1830
1831/** UINotificationProgress extension for cloud machine clone functionality. */
1832class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineClone : public UINotificationProgress
1833{
1834 Q_OBJECT;
1835
1836public:
1837
1838 /** Constructs cloud machine clone notification-progress.
1839 * @param comClient Brings the cloud client to clone cloud machine.
1840 * @param comMachine Brings the cloud machine to be cloned.
1841 * @param strCloneName Brings the clone name. */
1842 UINotificationProgressCloudMachineClone(const CCloudClient &comClient,
1843 const CCloudMachine &comMachine,
1844 const QString &strCloneName);
1845
1846protected:
1847
1848 /** Returns object name. */
1849 virtual QString name() const RT_OVERRIDE RT_FINAL;
1850 /** Returns object details. */
1851 virtual QString details() const RT_OVERRIDE RT_FINAL;
1852 /** Creates and returns started progress-wrapper. */
1853 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1854
1855private:
1856
1857 /** Holds the client cloning machine. */
1858 CCloudClient m_comClient;
1859 /** Holds the machine being reset. */
1860 CCloudMachine m_comMachine;
1861 /** Holds the clone name. */
1862 QString m_strCloneName;
1863 /** Holds the machine internal id. */
1864 QString m_strId;
1865 /** Holds the machine name. */
1866 QString m_strName;
1867};
1868
1869/** UINotificationProgress extension for cloud machine reset functionality. */
1870class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineReset : public UINotificationProgress
1871{
1872 Q_OBJECT;
1873
1874public:
1875
1876 /** Constructs cloud machine reset notification-progress.
1877 * @param comMachine Brings the machine being reset. */
1878 UINotificationProgressCloudMachineReset(const CCloudMachine &comMachine);
1879
1880protected:
1881
1882 /** Returns object name. */
1883 virtual QString name() const RT_OVERRIDE RT_FINAL;
1884 /** Returns object details. */
1885 virtual QString details() const RT_OVERRIDE RT_FINAL;
1886 /** Creates and returns started progress-wrapper. */
1887 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1888
1889private:
1890
1891 /** Holds the machine being reset. */
1892 CCloudMachine m_comMachine;
1893 /** Holds the machine name. */
1894 QString m_strName;
1895};
1896
1897/** UINotificationProgress extension for cloud machine power-off functionality. */
1898class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachinePowerOff : public UINotificationProgress
1899{
1900 Q_OBJECT;
1901
1902public:
1903
1904 /** Constructs cloud machine power-off notification-progress.
1905 * @param comMachine Brings the machine being powered-off. */
1906 UINotificationProgressCloudMachinePowerOff(const CCloudMachine &comMachine);
1907
1908protected:
1909
1910 /** Returns object name. */
1911 virtual QString name() const RT_OVERRIDE RT_FINAL;
1912 /** Returns object details. */
1913 virtual QString details() const RT_OVERRIDE RT_FINAL;
1914 /** Creates and returns started progress-wrapper. */
1915 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1916
1917private:
1918
1919 /** Holds the machine being powered-off. */
1920 CCloudMachine m_comMachine;
1921 /** Holds the machine name. */
1922 QString m_strName;
1923};
1924
1925/** UINotificationProgress extension for cloud machine shutdown functionality. */
1926class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineShutdown : public UINotificationProgress
1927{
1928 Q_OBJECT;
1929
1930public:
1931
1932 /** Constructs cloud machine shutdown notification-progress.
1933 * @param comMachine Brings the machine being shutdown. */
1934 UINotificationProgressCloudMachineShutdown(const CCloudMachine &comMachine);
1935
1936protected:
1937
1938 /** Returns object name. */
1939 virtual QString name() const RT_OVERRIDE RT_FINAL;
1940 /** Returns object details. */
1941 virtual QString details() const RT_OVERRIDE RT_FINAL;
1942 /** Creates and returns started progress-wrapper. */
1943 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1944
1945private:
1946
1947 /** Holds the machine being shutdown. */
1948 CCloudMachine m_comMachine;
1949 /** Holds the machine name. */
1950 QString m_strName;
1951};
1952
1953/** UINotificationProgress extension for cloud machine terminate functionality. */
1954class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineTerminate : public UINotificationProgress
1955{
1956 Q_OBJECT;
1957
1958public:
1959
1960 /** Constructs cloud machine terminate notification-progress.
1961 * @param comMachine Brings the machine being terminate. */
1962 UINotificationProgressCloudMachineTerminate(const CCloudMachine &comMachine);
1963
1964protected:
1965
1966 /** Returns object name. */
1967 virtual QString name() const RT_OVERRIDE RT_FINAL;
1968 /** Returns object details. */
1969 virtual QString details() const RT_OVERRIDE RT_FINAL;
1970 /** Creates and returns started progress-wrapper. */
1971 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
1972
1973private:
1974
1975 /** Holds the machine being terminated. */
1976 CCloudMachine m_comMachine;
1977 /** Holds the machine name. */
1978 QString m_strName;
1979};
1980
1981/** UINotificationProgress extension for cloud machine settings form create functionality. */
1982class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineSettingsFormCreate : public UINotificationProgress
1983{
1984 Q_OBJECT;
1985
1986signals:
1987
1988 /** Notifies listeners about settings @a comForm created.
1989 * @param form Brings created VSD form. */
1990 void sigSettingsFormCreated(const QVariant &form);
1991
1992public:
1993
1994 /** Constructs cloud machine settings form create notification-progress.
1995 * @param comMachine Brings the machine form being created for.
1996 * @param strMachineName Brings the machine name. */
1997 UINotificationProgressCloudMachineSettingsFormCreate(const CCloudMachine &comMachine,
1998 const QString &strMachineName);
1999
2000protected:
2001
2002 /** Returns object name. */
2003 virtual QString name() const RT_OVERRIDE RT_FINAL;
2004 /** Returns object details. */
2005 virtual QString details() const RT_OVERRIDE RT_FINAL;
2006 /** Creates and returns started progress-wrapper. */
2007 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2008
2009private slots:
2010
2011 /** Handles signal about progress being finished. */
2012 void sltHandleProgressFinished();
2013
2014private:
2015
2016 /** Holds the machine form being created for. */
2017 CCloudMachine m_comMachine;
2018 /** Holds the machine name. */
2019 QString m_strMachineName;
2020 /** Holds the form being created. */
2021 CForm m_comForm;
2022};
2023
2024/** UINotificationProgress extension for cloud machine settings form apply functionality. */
2025class SHARED_LIBRARY_STUFF UINotificationProgressCloudMachineSettingsFormApply : public UINotificationProgress
2026{
2027 Q_OBJECT;
2028
2029public:
2030
2031 /** Constructs cloud machine settings form apply notification-progress.
2032 * @param comForm Brings the form being applied.
2033 * @param strMachineName Brings the machine name. */
2034 UINotificationProgressCloudMachineSettingsFormApply(const CForm &comForm,
2035 const QString &strMachineName);
2036
2037protected:
2038
2039 /** Returns object name. */
2040 virtual QString name() const RT_OVERRIDE RT_FINAL;
2041 /** Returns object details. */
2042 virtual QString details() const RT_OVERRIDE RT_FINAL;
2043 /** Creates and returns started progress-wrapper. */
2044 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2045
2046private:
2047
2048 /** Holds the machine form being created for. */
2049 CForm m_comForm;
2050 /** Holds the machine name. */
2051 QString m_strMachineName;
2052};
2053
2054/** UINotificationProgress extension for cloud console connection create functionality. */
2055class SHARED_LIBRARY_STUFF UINotificationProgressCloudConsoleConnectionCreate : public UINotificationProgress
2056{
2057 Q_OBJECT;
2058
2059public:
2060
2061 /** Constructs cloud console connection create notification-progress.
2062 * @param comMachine Brings the cloud machine for which console connection being created.
2063 * @param strPublicKey Brings the public key used for console connection being created. */
2064 UINotificationProgressCloudConsoleConnectionCreate(const CCloudMachine &comMachine,
2065 const QString &strPublicKey);
2066
2067protected:
2068
2069 /** Returns object name. */
2070 virtual QString name() const RT_OVERRIDE RT_FINAL;
2071 /** Returns object details. */
2072 virtual QString details() const RT_OVERRIDE RT_FINAL;
2073 /** Creates and returns started progress-wrapper. */
2074 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2075
2076private:
2077
2078 /** Holds the cloud machine for which console connection being created. */
2079 CCloudMachine m_comMachine;
2080 /** Holds the cloud machine name. */
2081 QString m_strName;
2082 /** Holds the public key used for console connection being created. */
2083 QString m_strPublicKey;
2084};
2085
2086/** UINotificationProgress extension for cloud console connection delete functionality. */
2087class SHARED_LIBRARY_STUFF UINotificationProgressCloudConsoleConnectionDelete : public UINotificationProgress
2088{
2089 Q_OBJECT;
2090
2091public:
2092
2093 /** Constructs cloud console connection delete notification-progress.
2094 * @param comMachine Brings the cloud machine for which console connection being deleted. */
2095 UINotificationProgressCloudConsoleConnectionDelete(const CCloudMachine &comMachine);
2096
2097protected:
2098
2099 /** Returns object name. */
2100 virtual QString name() const RT_OVERRIDE RT_FINAL;
2101 /** Returns object details. */
2102 virtual QString details() const RT_OVERRIDE RT_FINAL;
2103 /** Creates and returns started progress-wrapper. */
2104 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2105
2106private:
2107
2108 /** Holds the cloud machine for which console connection being deleted. */
2109 CCloudMachine m_comMachine;
2110 /** Holds the cloud machine name. */
2111 QString m_strName;
2112};
2113
2114/** UINotificationProgress extension for cloud console log acquire functionality. */
2115class SHARED_LIBRARY_STUFF UINotificationProgressCloudConsoleLogAcquire : public UINotificationProgress
2116{
2117 Q_OBJECT;
2118
2119signals:
2120
2121 /** Notifies listeners about console @a strLog for cloud VM with @a strName read. */
2122 void sigLogRead(const QString &strName, const QString &strLog);
2123
2124public:
2125
2126 /** Constructs cloud console log acquire notification-progress.
2127 * @param comMachine Brings the cloud machine for which console log being acquired. */
2128 UINotificationProgressCloudConsoleLogAcquire(const CCloudMachine &comMachine);
2129
2130protected:
2131
2132 /** Returns object name. */
2133 virtual QString name() const RT_OVERRIDE RT_FINAL;
2134 /** Returns object details. */
2135 virtual QString details() const RT_OVERRIDE RT_FINAL;
2136 /** Creates and returns started progress-wrapper. */
2137 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2138
2139private slots:
2140
2141 /** Handles signal about progress being finished. */
2142 void sltHandleProgressFinished();
2143
2144private:
2145
2146 /** Holds the cloud machine for which console log being acquired. */
2147 CCloudMachine m_comMachine;
2148 /** Holds the cloud machine name. */
2149 QString m_strName;
2150 /** Holds the stream log being read to. */
2151 CDataStream m_comStream;
2152};
2153
2154/** UINotificationProgress extension for snapshot take functionality. */
2155class SHARED_LIBRARY_STUFF UINotificationProgressSnapshotTake : public UINotificationProgress
2156{
2157 Q_OBJECT;
2158
2159signals:
2160
2161 /** Notifies listeners about snapshot with @a id taken. */
2162 void sigSnapshotTaken(const QVariant &id);
2163
2164public:
2165
2166 /** Constructs snapshot take notification-progress.
2167 * @param comMachine Brings the machine we are taking snapshot for.
2168 * @param strSnapshotName Brings the name of snapshot being taken.
2169 * @param strSnapshotDescription Brings the description of snapshot being taken. */
2170 UINotificationProgressSnapshotTake(const CMachine &comMachine,
2171 const QString &strSnapshotName,
2172 const QString &strSnapshotDescription);
2173
2174protected:
2175
2176 /** Returns object name. */
2177 virtual QString name() const RT_OVERRIDE RT_FINAL;
2178 /** Returns object details. */
2179 virtual QString details() const RT_OVERRIDE RT_FINAL;
2180 /** Creates and returns started progress-wrapper. */
2181 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2182
2183private slots:
2184
2185 /** Handles signal about progress being finished. */
2186 void sltHandleProgressFinished();
2187
2188private:
2189
2190 /** Holds the machine we are taking snapshot for. */
2191 CMachine m_comMachine;
2192 /** Holds the name of snapshot being taken. */
2193 QString m_strSnapshotName;
2194 /** Holds the description of snapshot being taken. */
2195 QString m_strSnapshotDescription;
2196 /** Holds the machine name. */
2197 QString m_strMachineName;
2198 /** Holds the session being opened. */
2199 CSession m_comSession;
2200 /** Holds the taken snapshot id. */
2201 QUuid m_uSnapshotId;
2202};
2203
2204/** UINotificationProgress extension for snapshot restore functionality. */
2205class SHARED_LIBRARY_STUFF UINotificationProgressSnapshotRestore : public UINotificationProgress
2206{
2207 Q_OBJECT;
2208
2209signals:
2210
2211 /** Notifies listeners about snapshot restored.
2212 * @param fSuccess Brings whether snapshot restored successfully. */
2213 void sigSnapshotRestored(bool fSuccess);
2214
2215public:
2216
2217 /** Constructs snapshot restore notification-progress.
2218 * @param uMachineId Brings the ID of machine we are restoring snapshot for.
2219 * @param comSnapshot Brings the snapshot being restored. */
2220 UINotificationProgressSnapshotRestore(const QUuid &uMachineId,
2221 const CSnapshot &comSnapshot = CSnapshot());
2222 /** Constructs snapshot restore notification-progress.
2223 * @param comMachine Brings the machine we are restoring snapshot for.
2224 * @param comSnapshot Brings the snapshot being restored. */
2225 UINotificationProgressSnapshotRestore(const CMachine &comMachine,
2226 const CSnapshot &comSnapshot = CSnapshot());
2227
2228protected:
2229
2230 /** Returns object name. */
2231 virtual QString name() const RT_OVERRIDE RT_FINAL;
2232 /** Returns object details. */
2233 virtual QString details() const RT_OVERRIDE RT_FINAL;
2234 /** Creates and returns started progress-wrapper. */
2235 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2236
2237private slots:
2238
2239 /** Handles signal about progress being finished. */
2240 void sltHandleProgressFinished();
2241
2242private:
2243
2244 /** Holds the ID of machine we are restoring snapshot for. */
2245 QUuid m_uMachineId;
2246 /** Holds the machine we are restoring snapshot for. */
2247 CMachine m_comMachine;
2248 /** Holds the snapshot being restored. */
2249 CSnapshot m_comSnapshot;
2250 /** Holds the machine name. */
2251 QString m_strMachineName;
2252 /** Holds the snapshot name. */
2253 QString m_strSnapshotName;
2254 /** Holds the session being opened. */
2255 CSession m_comSession;
2256};
2257
2258/** UINotificationProgress extension for snapshot delete functionality. */
2259class SHARED_LIBRARY_STUFF UINotificationProgressSnapshotDelete : public UINotificationProgress
2260{
2261 Q_OBJECT;
2262
2263public:
2264
2265 /** Constructs snapshot delete notification-progress.
2266 * @param comMachine Brings the machine we are deleting snapshot from.
2267 * @param uSnapshotId Brings the ID of snapshot being deleted. */
2268 UINotificationProgressSnapshotDelete(const CMachine &comMachine,
2269 const QUuid &uSnapshotId);
2270
2271protected:
2272
2273 /** Returns object name. */
2274 virtual QString name() const RT_OVERRIDE RT_FINAL;
2275 /** Returns object details. */
2276 virtual QString details() const RT_OVERRIDE RT_FINAL;
2277 /** Creates and returns started progress-wrapper. */
2278 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2279
2280private slots:
2281
2282 /** Handles signal about progress being finished. */
2283 void sltHandleProgressFinished();
2284
2285private:
2286
2287 /** Holds the machine we are deleting snapshot from. */
2288 CMachine m_comMachine;
2289 /** Holds the ID of snapshot being deleted. */
2290 QUuid m_uSnapshotId;
2291 /** Holds the machine name. */
2292 QString m_strMachineName;
2293 /** Holds the snapshot name. */
2294 QString m_strSnapshotName;
2295 /** Holds the session being opened. */
2296 CSession m_comSession;
2297};
2298
2299/** UINotificationProgress extension for appliance write functionality. */
2300class SHARED_LIBRARY_STUFF UINotificationProgressApplianceWrite : public UINotificationProgress
2301{
2302 Q_OBJECT;
2303
2304public:
2305
2306 /** Constructs appliance write notification-progress.
2307 * @param comAppliance Brings the appliance being written.
2308 * @param strFormat Brings the appliance format.
2309 * @param options Brings the export options to be taken into account.
2310 * @param strPath Brings the appliance path. */
2311 UINotificationProgressApplianceWrite(const CAppliance &comAppliance,
2312 const QString &strFormat,
2313 const QVector<KExportOptions> &options,
2314 const QString &strPath);
2315
2316protected:
2317
2318 /** Returns object name. */
2319 virtual QString name() const RT_OVERRIDE RT_FINAL;
2320 /** Returns object details. */
2321 virtual QString details() const RT_OVERRIDE RT_FINAL;
2322 /** Creates and returns started progress-wrapper. */
2323 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2324
2325private:
2326
2327 /** Holds the appliance being written. */
2328 CAppliance m_comAppliance;
2329 /** Holds the appliance format. */
2330 QString m_strFormat;
2331 /** Holds the export options to be taken into account. */
2332 QVector<KExportOptions> m_options;
2333 /** Holds the appliance path. */
2334 QString m_strPath;
2335};
2336
2337/** UINotificationProgress extension for appliance read functionality. */
2338class SHARED_LIBRARY_STUFF UINotificationProgressApplianceRead : public UINotificationProgress
2339{
2340 Q_OBJECT;
2341
2342public:
2343
2344 /** Constructs appliance read notification-progress.
2345 * @param comAppliance Brings the appliance being read.
2346 * @param strPath Brings the appliance path. */
2347 UINotificationProgressApplianceRead(const CAppliance &comAppliance,
2348 const QString &strPath);
2349
2350protected:
2351
2352 /** Returns object name. */
2353 virtual QString name() const RT_OVERRIDE RT_FINAL;
2354 /** Returns object details. */
2355 virtual QString details() const RT_OVERRIDE RT_FINAL;
2356 /** Creates and returns started progress-wrapper. */
2357 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2358
2359private:
2360
2361 /** Holds the appliance being read. */
2362 CAppliance m_comAppliance;
2363 /** Holds the appliance path. */
2364 QString m_strPath;
2365};
2366
2367/** UINotificationProgress extension for import appliance functionality. */
2368class SHARED_LIBRARY_STUFF UINotificationProgressApplianceImport : public UINotificationProgress
2369{
2370 Q_OBJECT;
2371
2372public:
2373
2374 /** Constructs import appliance notification-progress.
2375 * @param comAppliance Brings the appliance being imported.
2376 * @param options Brings the import options to be taken into account. */
2377 UINotificationProgressApplianceImport(const CAppliance &comAppliance,
2378 const QVector<KImportOptions> &options);
2379
2380protected:
2381
2382 /** Returns object name. */
2383 virtual QString name() const RT_OVERRIDE RT_FINAL;
2384 /** Returns object details. */
2385 virtual QString details() const RT_OVERRIDE RT_FINAL;
2386 /** Creates and returns started progress-wrapper. */
2387 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2388
2389private:
2390
2391 /** Holds the appliance being imported. */
2392 CAppliance m_comAppliance;
2393 /** Holds the import options to be taken into account. */
2394 QVector<KImportOptions> m_options;
2395};
2396
2397/** UINotificationProgress extension for extension pack install functionality. */
2398class SHARED_LIBRARY_STUFF UINotificationProgressExtensionPackInstall : public UINotificationProgress
2399{
2400 Q_OBJECT;
2401
2402public:
2403
2404 /** Constructs extension pack install notification-progress.
2405 * @param comExtPackFile Brings the extension pack file to install.
2406 * @param fReplace Brings whether extension pack should be replaced.
2407 * @param strExtensionPackName Brings the extension pack name.
2408 * @param strDisplayInfo Brings the display info. */
2409 UINotificationProgressExtensionPackInstall(const CExtPackFile &comExtPackFile,
2410 bool fReplace,
2411 const QString &strExtensionPackName,
2412 const QString &strDisplayInfo);
2413
2414protected:
2415
2416 /** Returns object name. */
2417 virtual QString name() const RT_OVERRIDE RT_FINAL;
2418 /** Returns object details. */
2419 virtual QString details() const RT_OVERRIDE RT_FINAL;
2420 /** Creates and returns started progress-wrapper. */
2421 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2422
2423private:
2424
2425 /** Holds the extension pack file to install. */
2426 CExtPackFile m_comExtPackFile;
2427 /** Holds whether extension pack should be replaced. */
2428 bool m_fReplace;
2429 /** Holds the extension pack name. */
2430 QString m_strExtensionPackName;
2431 /** Holds the display info. */
2432 QString m_strDisplayInfo;
2433};
2434
2435/** UINotificationProgress extension for extension pack uninstall functionality. */
2436class SHARED_LIBRARY_STUFF UINotificationProgressExtensionPackUninstall : public UINotificationProgress
2437{
2438 Q_OBJECT;
2439
2440public:
2441
2442 /** Constructs extension pack uninstall notification-progress.
2443 * @param comExtPackManager Brings the extension pack manager.
2444 * @param strExtensionPackName Brings the extension pack name.
2445 * @param strDisplayInfo Brings the display info. */
2446 UINotificationProgressExtensionPackUninstall(const CExtPackManager &comExtPackManager,
2447 const QString &strExtensionPackName,
2448 const QString &strDisplayInfo);
2449
2450protected:
2451
2452 /** Returns object name. */
2453 virtual QString name() const RT_OVERRIDE RT_FINAL;
2454 /** Returns object details. */
2455 virtual QString details() const RT_OVERRIDE RT_FINAL;
2456 /** Creates and returns started progress-wrapper. */
2457 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2458
2459private:
2460
2461 /** Holds the extension pack manager. */
2462 CExtPackManager m_comExtPackManager;
2463 /** Holds the extension pack name. */
2464 QString m_strExtensionPackName;
2465 /** Holds the display info. */
2466 QString m_strDisplayInfo;
2467};
2468
2469/** UINotificationProgress extension for guest additions install functionality. */
2470class SHARED_LIBRARY_STUFF UINotificationProgressGuestAdditionsInstall : public UINotificationProgress
2471{
2472 Q_OBJECT;
2473
2474signals:
2475
2476 /** Notifies listeners about guest additions installation failed.
2477 * @param strSource Brings the guest additions file path. */
2478 void sigGuestAdditionsInstallationFailed(const QString &strSource);
2479
2480public:
2481
2482 /** Constructs guest additions install notification-progress.
2483 * @param comGuest Brings the guest additions being installed to.
2484 * @param strSource Brings the guest additions file path. */
2485 UINotificationProgressGuestAdditionsInstall(const CGuest &comGuest,
2486 const QString &strSource);
2487
2488protected:
2489
2490 /** Returns object name. */
2491 virtual QString name() const RT_OVERRIDE RT_FINAL;
2492 /** Returns object details. */
2493 virtual QString details() const RT_OVERRIDE RT_FINAL;
2494 /** Creates and returns started progress-wrapper. */
2495 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2496
2497private slots:
2498
2499 /** Handles signal about progress being finished. */
2500 void sltHandleProgressFinished();
2501
2502private:
2503
2504 /** Holds the guest additions being installed to. */
2505 CGuest m_comGuest;
2506 /** Holds the guest additions file path. */
2507 QString m_strSource;
2508};
2509
2510/** UINotificationProgress extension for host-only network interface create functionality. */
2511class SHARED_LIBRARY_STUFF UINotificationProgressHostOnlyNetworkInterfaceCreate : public UINotificationProgress
2512{
2513 Q_OBJECT;
2514
2515signals:
2516
2517 /** Notifies listeners about host-only network interface created.
2518 * @param comInterface Brings network interface created. */
2519 void sigHostOnlyNetworkInterfaceCreated(const CHostNetworkInterface &comInterface);
2520
2521public:
2522
2523 /** Constructs host-only network interface create notification-progress.
2524 * @param comHost Brings the host network interface being created for.
2525 * @param comInterface Brings the network interface being created. */
2526 UINotificationProgressHostOnlyNetworkInterfaceCreate(const CHost &comHost,
2527 const CHostNetworkInterface &comInterface);
2528
2529protected:
2530
2531 /** Returns object name. */
2532 virtual QString name() const RT_OVERRIDE RT_FINAL;
2533 /** Returns object details. */
2534 virtual QString details() const RT_OVERRIDE RT_FINAL;
2535 /** Creates and returns started progress-wrapper. */
2536 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2537
2538private slots:
2539
2540 /** Handles signal about progress being finished. */
2541 void sltHandleProgressFinished();
2542
2543private:
2544
2545 /** Holds the host network interface being created for. */
2546 CHost m_comHost;
2547 /** Holds the network interface being created. */
2548 CHostNetworkInterface m_comInterface;
2549};
2550
2551/** UINotificationProgress extension for host-only network interface remove functionality. */
2552class SHARED_LIBRARY_STUFF UINotificationProgressHostOnlyNetworkInterfaceRemove : public UINotificationProgress
2553{
2554 Q_OBJECT;
2555
2556signals:
2557
2558 /** Notifies listeners about host-only network interface removed.
2559 * @param strInterfaceName Brings the name of network interface removed. */
2560 void sigHostOnlyNetworkInterfaceRemoved(const QString &strInterfaceName);
2561
2562public:
2563
2564 /** Constructs host-only network interface remove notification-progress.
2565 * @param comHost Brings the host network interface being removed for.
2566 * @param uInterfaceId Brings the ID of network interface being removed. */
2567 UINotificationProgressHostOnlyNetworkInterfaceRemove(const CHost &comHost,
2568 const QUuid &uInterfaceId);
2569
2570protected:
2571
2572 /** Returns object name. */
2573 virtual QString name() const RT_OVERRIDE RT_FINAL;
2574 /** Returns object details. */
2575 virtual QString details() const RT_OVERRIDE RT_FINAL;
2576 /** Creates and returns started progress-wrapper. */
2577 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2578
2579private slots:
2580
2581 /** Handles signal about progress being finished. */
2582 void sltHandleProgressFinished();
2583
2584private:
2585
2586 /** Holds the host network interface being removed for. */
2587 CHost m_comHost;
2588 /** Holds the ID of network interface being removed. */
2589 QUuid m_uInterfaceId;
2590 /** Holds the network interface name. */
2591 QString m_strInterfaceName;
2592};
2593
2594/** UINotificationProgress extension for virtual system description form value set functionality. */
2595class SHARED_LIBRARY_STUFF UINotificationProgressVsdFormValueSet : public UINotificationProgress
2596{
2597 Q_OBJECT;
2598
2599public:
2600
2601 /** Constructs virtual system description form value set notification-progress.
2602 * @param comValue Brings our value being set.
2603 * @param fBool Brings the value our value being set to. */
2604 UINotificationProgressVsdFormValueSet(const CBooleanFormValue &comValue, bool fBool);
2605
2606 /** Constructs virtual system description form value set notification-progress.
2607 * @param comValue Brings our value being set.
2608 * @param strString Brings the value our value being set to. */
2609 UINotificationProgressVsdFormValueSet(const CStringFormValue &comValue, const QString &strString);
2610
2611 /** Constructs virtual system description form value set notification-progress.
2612 * @param comValue Brings our value being set.
2613 * @param iChoice Brings the value our value being set to. */
2614 UINotificationProgressVsdFormValueSet(const CChoiceFormValue &comValue, int iChoice);
2615
2616 /** Constructs virtual system description form value set notification-progress.
2617 * @param comValue Brings our value being set.
2618 * @param iInteger Brings the value our value being set to. */
2619 UINotificationProgressVsdFormValueSet(const CRangedIntegerFormValue &comValue, int iInteger);
2620
2621 /** Constructs virtual system description form value set notification-progress.
2622 * @param comValue Brings our value being set.
2623 * @param iInteger64 Brings the value our value being set to. */
2624 UINotificationProgressVsdFormValueSet(const CRangedInteger64FormValue &comValue, qlonglong iInteger64);
2625
2626protected:
2627
2628 /** Returns object name. */
2629 virtual QString name() const RT_OVERRIDE RT_FINAL;
2630 /** Returns object details. */
2631 virtual QString details() const RT_OVERRIDE RT_FINAL;
2632 /** Creates and returns started progress-wrapper. */
2633 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2634
2635private:
2636
2637 /** Value type. */
2638 KFormValueType m_enmType;
2639
2640 /** Holds our value being set. */
2641 CFormValue m_comValue;
2642
2643 /** Holds the bool value. */
2644 bool m_fBool;
2645 /** Holds the string value. */
2646 QString m_strString;
2647 /** Holds the choice value. */
2648 int m_iChoice;
2649 /** Holds the integer value. */
2650 int m_iInteger;
2651 /** Holds the integer64 value. */
2652 qlonglong m_iInteger64;
2653};
2654
2655#ifdef VBOX_GUI_WITH_NETWORK_MANAGER
2656/** UINotificationDownloader extension for extension pack downloading functionality. */
2657class SHARED_LIBRARY_STUFF UINotificationDownloaderExtensionPack : public UINotificationDownloader
2658{
2659 Q_OBJECT;
2660
2661signals:
2662
2663 /** Notifies listeners about extension pack downloaded.
2664 * @param strSource Brings the EP source.
2665 * @param strTarget Brings the EP target.
2666 * @param strDigest Brings the EP digest. */
2667 void sigExtensionPackDownloaded(const QString &strSource,
2668 const QString &strTarget,
2669 const QString &strDigest);
2670
2671public:
2672
2673 /** Returns singleton instance, creates if necessary.
2674 * @param strPackName Brings the package name. */
2675 static UINotificationDownloaderExtensionPack *instance(const QString &strPackName);
2676 /** Returns whether singleton instance already created. */
2677 static bool exists();
2678
2679 /** Destructs extension pack downloading notification-downloader.
2680 * @note Notification-center can destroy us at any time. */
2681 virtual ~UINotificationDownloaderExtensionPack() RT_OVERRIDE RT_FINAL;
2682
2683protected:
2684
2685 /** Constructs extension pack downloading notification-downloader.
2686 * @param strPackName Brings the package name. */
2687 UINotificationDownloaderExtensionPack(const QString &strPackName);
2688
2689 /** Returns object name. */
2690 virtual QString name() const RT_OVERRIDE RT_FINAL;
2691 /** Returns object details. */
2692 virtual QString details() const RT_OVERRIDE RT_FINAL;
2693 /** Creates and returns started downloader. */
2694 virtual UIDownloader *createDownloader() RT_OVERRIDE RT_FINAL;
2695
2696private:
2697
2698 /** Holds the singleton instance. */
2699 static UINotificationDownloaderExtensionPack *s_pInstance;
2700
2701 /** Holds the name of pack being dowloaded. */
2702 QString m_strPackName;
2703};
2704
2705/** UINotificationDownloader extension for guest additions downloading functionality. */
2706class SHARED_LIBRARY_STUFF UINotificationDownloaderGuestAdditions : public UINotificationDownloader
2707{
2708 Q_OBJECT;
2709
2710signals:
2711
2712 /** Notifies listeners about guest additions downloaded.
2713 * @param strLocation Brings the UM location. */
2714 void sigGuestAdditionsDownloaded(const QString &strLocation);
2715
2716public:
2717
2718 /** Returns singleton instance, creates if necessary.
2719 * @param strFileName Brings the file name. */
2720 static UINotificationDownloaderGuestAdditions *instance(const QString &strFileName);
2721 /** Returns whether singleton instance already created. */
2722 static bool exists();
2723
2724 /** Destructs guest additions downloading notification-downloader.
2725 * @note Notification-center can destroy us at any time. */
2726 virtual ~UINotificationDownloaderGuestAdditions() RT_OVERRIDE RT_FINAL;
2727
2728protected:
2729
2730 /** Constructs guest additions downloading notification-downloader.
2731 * @param strFileName Brings the file name. */
2732 UINotificationDownloaderGuestAdditions(const QString &strFileName);
2733
2734 /** Returns object name. */
2735 virtual QString name() const RT_OVERRIDE RT_FINAL;
2736 /** Returns object details. */
2737 virtual QString details() const RT_OVERRIDE RT_FINAL;
2738 /** Creates and returns started downloader. */
2739 virtual UIDownloader *createDownloader() RT_OVERRIDE RT_FINAL;
2740
2741private:
2742
2743 /** Holds the singleton instance. */
2744 static UINotificationDownloaderGuestAdditions *s_pInstance;
2745
2746 /** Holds the name of file being dowloaded. */
2747 QString m_strFileName;
2748};
2749
2750/** UINotificationDownloader extension for user manual downloading functionality. */
2751class SHARED_LIBRARY_STUFF UINotificationDownloaderUserManual : public UINotificationDownloader
2752{
2753 Q_OBJECT;
2754
2755signals:
2756
2757 /** Notifies listeners about user manual downloaded.
2758 * @param strLocation Brings the UM location. */
2759 void sigUserManualDownloaded(const QString &strLocation);
2760
2761public:
2762
2763 /** Returns singleton instance, creates if necessary.
2764 * @param strFileName Brings the file name. */
2765 static UINotificationDownloaderUserManual *instance(const QString &strFileName);
2766 /** Returns whether singleton instance already created. */
2767 static bool exists();
2768
2769 /** Destructs user manual downloading notification-downloader.
2770 * @note Notification-center can destroy us at any time. */
2771 virtual ~UINotificationDownloaderUserManual() RT_OVERRIDE RT_FINAL;
2772
2773protected:
2774
2775 /** Constructs user manual downloading notification-downloader.
2776 * @param strFileName Brings the file name. */
2777 UINotificationDownloaderUserManual(const QString &strFileName);
2778
2779 /** Returns object name. */
2780 virtual QString name() const RT_OVERRIDE RT_FINAL;
2781 /** Returns object details. */
2782 virtual QString details() const RT_OVERRIDE RT_FINAL;
2783 /** Creates and returns started downloader. */
2784 virtual UIDownloader *createDownloader() RT_OVERRIDE RT_FINAL;
2785
2786private:
2787
2788 /** Holds the singleton instance. */
2789 static UINotificationDownloaderUserManual *s_pInstance;
2790
2791 /** Holds the name of file being dowloaded. */
2792 QString m_strFileName;
2793};
2794
2795/** UINotificationProgress extension for checking a new VirtualBox version. */
2796class SHARED_LIBRARY_STUFF UINotificationProgressNewVersionChecker : public UINotificationProgress
2797{
2798 Q_OBJECT;
2799
2800public:
2801
2802 /** Constructs new version check notification-progress.
2803 * @param fForcedCall Brings whether even negative result should be reflected. */
2804 UINotificationProgressNewVersionChecker(bool fForcedCall);
2805
2806protected:
2807
2808 /** Returns object name. */
2809 virtual QString name() const RT_OVERRIDE RT_FINAL;
2810 /** Returns object details. */
2811 virtual QString details() const RT_OVERRIDE RT_FINAL;
2812 /** Creates and returns started progress-wrapper. */
2813 virtual CProgress createProgress(COMResult &comResult) RT_OVERRIDE RT_FINAL;
2814
2815private slots:
2816
2817 /** Handles signal about progress being finished. */
2818 void sltHandleProgressFinished();
2819
2820private:
2821
2822 /** Holds whether this customer has forced privelegies. */
2823 bool m_fForcedCall;
2824# ifdef VBOX_WITH_UPDATE_AGENT
2825 /** Holds the host update agent reference. */
2826 CUpdateAgent m_comUpdateHost;
2827# endif
2828};
2829#endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
2830
2831#endif /* !FEQT_INCLUDED_SRC_notificationcenter_UINotificationObjects_h */
Note: See TracBrowser for help on using the repository browser.

© 2023 Oracle
ContactPrivacy policyTerms of Use