VirtualBox

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

Last change on this file since 100347 was 99664, checked in by vboxsync, 21 months ago

FE/Qt: OCI related wizards: Integer64 support for UIFormEditorWidget and linked stuff.

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

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