UIMessageCenter.h revision dfd576109cb676448a2c4574150060aa3d8626ba
6728a36898fd2be125a28e84d2115d19aa4923edvboxsync/** @file
6728a36898fd2be125a28e84d2115d19aa4923edvboxsync *
6728a36898fd2be125a28e84d2115d19aa4923edvboxsync * VBox frontends: Qt GUI ("VirtualBox"):
6728a36898fd2be125a28e84d2115d19aa4923edvboxsync * UIMessageCenter class declaration
9562e2d410460d8fae06fa24297f172fee1d1995vboxsync */
6728a36898fd2be125a28e84d2115d19aa4923edvboxsync
9562e2d410460d8fae06fa24297f172fee1d1995vboxsync/*
9562e2d410460d8fae06fa24297f172fee1d1995vboxsync * Copyright (C) 2006-2011 Oracle Corporation
9562e2d410460d8fae06fa24297f172fee1d1995vboxsync *
6728a36898fd2be125a28e84d2115d19aa4923edvboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
9562e2d410460d8fae06fa24297f172fee1d1995vboxsync * available from http://www.virtualbox.org. This file is free software;
9562e2d410460d8fae06fa24297f172fee1d1995vboxsync * you can redistribute it and/or modify it under the terms of the GNU
9562e2d410460d8fae06fa24297f172fee1d1995vboxsync * General Public License (GPL) as published by the Free Software
9562e2d410460d8fae06fa24297f172fee1d1995vboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
9562e2d410460d8fae06fa24297f172fee1d1995vboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
9562e2d410460d8fae06fa24297f172fee1d1995vboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
6728a36898fd2be125a28e84d2115d19aa4923edvboxsync */
af4f17cef2a9025fd52d548565055c179914fbfavboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync#ifndef __UIMessageCenter_h__
af4f17cef2a9025fd52d548565055c179914fbfavboxsync#define __UIMessageCenter_h__
af4f17cef2a9025fd52d548565055c179914fbfavboxsync
af4f17cef2a9025fd52d548565055c179914fbfavboxsync/* Global includes */
af4f17cef2a9025fd52d548565055c179914fbfavboxsync#include <QObject>
af4f17cef2a9025fd52d548565055c179914fbfavboxsync#include <QPointer>
af4f17cef2a9025fd52d548565055c179914fbfavboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync/* Local includes */
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync#include "COMDefs.h"
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync#include "QIMessageBox.h"
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync/* Forward declarations */
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsyncclass VBoxMedium;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsyncstruct StorageSlot;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync/**
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync * The UIMessageCenter class is a central place to handle all problem/error
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync * situations that happen during application runtime and require the user's
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync * attention.
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync *
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync * The role of this class is to describe the problem and/or the cause of the
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync * error to the user and give him the opportunity to select an action (when
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync * appropriate).
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync *
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync * Every problem situation has its own (correspondingly named) method in this
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync * class that takes a list of arguments necessary to describe the situation and
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync * to provide the appropriate actions. The method then returns the choice to the
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync * caller.
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync */
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsyncclass UIMessageCenter: public QObject
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync{
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync Q_OBJECT;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsyncpublic:
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync enum Type
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync {
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync Info = 1,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync Question,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync Warning,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync Error,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync Critical,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync GuruMeditation
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync };
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync enum
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync {
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync AutoConfirmed = 0x8000
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync };
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool isAnyWarningShown();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool isAlreadyShown(const QString &strGuardBlockName) const;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void setShownStatus(const QString &strGuardBlockName);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void clearShownStatus(const QString &strGuardBlockName);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void closeAllWarnings();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int message(QWidget *pParent, Type type, const QString &strMessage,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strDetails = QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const char *pcszAutoConfirmId = 0,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int button1 = 0, int button2 = 0, int button3 = 0,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strText1 = QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strText2 = QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strText3 = QString::null) const;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int message(QWidget *pParent, Type type, const QString &strMessage,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const char *pcszAutoConfirmId,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int button1 = 0, int button2 = 0, int button3 = 0,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strText1 = QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strText2 = QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strText3 = QString::null) const
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync {
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync return message(pParent, type, strMessage, QString::null, pcszAutoConfirmId,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync button1, button2, button3, strText1, strText2, strText3);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync }
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool messageYesNo(QWidget *pParent, Type type, const QString &strMessage,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strDetails = QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const char *pcszAutoConfirmId = 0,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strYesText = QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strNoText = QString::null) const
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync {
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync return(message(pParent, type, strMessage, strDetails, pcszAutoConfirmId,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync QIMessageBox::Yes | QIMessageBox::Default,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync QIMessageBox::No | QIMessageBox::Escape,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync 0,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync strYesText, strNoText, QString::null) &
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync QIMessageBox::ButtonMask) == QIMessageBox::Yes;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync }
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool messageYesNo(QWidget *pParent, Type type, const QString &strMessage,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const char *pcszAutoConfirmId,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strYesText = QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strNoText = QString::null) const
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync {
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync return messageYesNo(pParent, type, strMessage, QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync pcszAutoConfirmId, strYesText, strNoText);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync }
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool messageOkCancel(QWidget *pParent, Type type, const QString &strMessage,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync const QString &strDetails = QString::null,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync const char *pcszAutoConfirmId = 0,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync const QString &strOkText = QString::null,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync const QString &strCancelText = QString::null) const
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync {
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync return(message(pParent, type, strMessage, strDetails, pcszAutoConfirmId,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync QIMessageBox::Ok | QIMessageBox::Default,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync QIMessageBox::Cancel | QIMessageBox::Escape,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync 0,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync strOkText, strCancelText, QString::null) &
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync QIMessageBox::ButtonMask) == QIMessageBox::Ok;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync }
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool messageOkCancel(QWidget *pParent, Type type, const QString &strMessage,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const char *pcszAutoConfirmId,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strOkText = QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strCancelText = QString::null) const
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync {
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync return messageOkCancel(pParent, type, strMessage, QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync pcszAutoConfirmId, strOkText, strCancelText);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync }
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int messageWithOption(QWidget *pParent,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync Type type,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strMessage,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strOptionText,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool fDefaultOptionValue = true,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strDetails = QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int iButton1 = 0,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int iButton2 = 0,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int iButton3 = 0,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strButtonName1 = QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strButtonName2 = QString::null,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strButtonName3 = QString::null) const;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool showModalProgressDialog(CProgress &progress, const QString &strTitle,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strImage = "", QWidget *pParent = 0,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool fSheetOnDarwin = false, int cMinDuration = 2000);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync QWidget* mainWindowShown() const;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync QWidget* mainMachineWindowShown() const;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync QWidget* networkManagerOrMainWindowShown() const;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync QWidget* networkManagerOrMainMachineWindowShown() const;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool askForOverridingFile(const QString& strPath, QWidget *pParent = NULL);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool askForOverridingFiles(const QVector<QString>& strPaths, QWidget *pParent = NULL);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool askForOverridingFileIfExists(const QString& strPath, QWidget *pParent = NULL);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool askForOverridingFilesIfExists(const QVector<QString>& strPaths, QWidget *pParent = NULL);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void checkForMountedWrongUSB();
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void showBETAWarning();
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void showBEBWarning();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync#ifdef Q_WS_X11
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotFindLicenseFiles(const QString &strPath);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync#endif
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotOpenLicenseFile(QWidget *pParent, const QString &strPath);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotOpenURL(const QString &strUrl);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotFindLanguage(const QString &strLangId, const QString &strNlsPath);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotLoadLanguage(const QString &strLangFile);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotInitCOM(HRESULT rc);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotCreateVirtualBox(const CVirtualBox &vbox);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotLoadGlobalConfig(const CVirtualBox &vbox, const QString &strError);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotSaveGlobalConfig(const CVirtualBox &vbox);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotSetSystemProperties(const CSystemProperties &props);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotAccessUSB(const COMBaseWithEI &object);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotCreateMachine(const CVirtualBox &vbox, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotCreateMachine(const CVirtualBox &vbox, const CMachine &machine, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotOpenMachine(QWidget *pParent, const QString &strMachinePath, const CVirtualBox &vbox);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotRegisterMachine(const CVirtualBox &vbox, const CMachine &machine, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotReregisterMachine(QWidget *pParent, const QString &strMachinePath, const QString &strMachineName);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotApplyMachineSettings(const CMachine &machine, const COMResult &res);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotSaveMachineSettings(const CMachine &machine, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotLoadMachineSettings(const CMachine &machine, bool fStrict = true, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool confirmedSettingsReloading(QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void warnAboutStateChange(QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotStartMachine(const CConsole &console);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotStartMachine(const CProgress &progress);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotPauseMachine(const CConsole &console);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotResumeMachine(const CConsole &console);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotACPIShutdownMachine(const CConsole &console);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotSaveMachineState(const CConsole &console);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotSaveMachineState(const CProgress &progress);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotCreateClone(const CMachine &machine, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotCreateClone(const CMachine &machine, const CProgress &progress, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotTakeSnapshot(const CConsole &console);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotTakeSnapshot(const CProgress &progress);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotStopMachine(const CConsole &console);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotStopMachine(const CProgress &progress);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotDeleteMachine(const CMachine &machine);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotDeleteMachine(const CMachine &machine, const CProgress &progress);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotDiscardSavedState(const CConsole &console);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotSendACPIToMachine();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool warnAboutVirtNotEnabled64BitsGuest(bool fHWVirtExSupported);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool warnAboutVirtNotEnabledGuestRequired(bool fHWVirtExSupported);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int askAboutSnapshotRestoring(const QString &strSnapshotName, bool fAlsoCreateNewSnapshot);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool askAboutSnapshotDeleting(const QString &strSnapshotName);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool askAboutSnapshotDeletingFreeSpace(const QString &strSnapshotName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strTargetImageName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strTargetImageMaxSize,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strTargetFileSystemFree);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotRestoreSnapshot(const CConsole &console, const QString &strSnapshotName);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotRestoreSnapshot(const CProgress &progress, const QString &strSnapshotName);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotDeleteSnapshot(const CConsole &console, const QString &strSnapshotName);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotDeleteSnapshot(const CProgress &progress, const QString &strSnapshotName);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotFindSnapshotByName(QWidget *pParent, const CMachine &machine, const QString &strMachine) const;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotFindMachineByName(const CVirtualBox &vbox, const QString &name);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotEnterSeamlessMode(ULONG uWidth, ULONG uHeight,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync ULONG uBpp, ULONG64 uMinVRAM);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int cannotEnterFullscreenMode(ULONG uWidth, ULONG uHeight,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync ULONG uBpp, ULONG64 uMinVRAM);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotSwitchScreenInSeamless(quint64 uMinVRAM);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int cannotSwitchScreenInFullscreen(quint64 uMinVRAM);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int cannotEnterFullscreenMode();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int cannotEnterSeamlessMode();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync int confirmMachineDeletion(const QList<CMachine> &machines);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmDiscardSavedState(const CMachine &machine);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotChangeMediumType(QWidget *pParent, const CMedium &medium, KMediumType oldMediumType, KMediumType newMediumType);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool confirmReleaseMedium(QWidget *pParent, const VBoxMedium &aMedium,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strUsage);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync bool confirmRemoveMedium(QWidget *pParent, const VBoxMedium &aMedium);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sayCannotOverwriteHardDiskStorage(QWidget *pParent,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strLocation);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int confirmDeleteHardDiskStorage(QWidget *pParent,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strLocation);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotDeleteHardDiskStorage(QWidget *pParent, const CMedium &medium,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const CProgress &progress);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int askAboutHardDiskAttachmentCreation(QWidget *pParent, const QString &strControllerName);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int askAboutOpticalAttachmentCreation(QWidget *pParent, const QString &strControllerName);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync int askAboutFloppyAttachmentCreation(QWidget *pParent, const QString &strControllerName);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int confirmRemovingOfLastDVDDevice() const;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotCreateHardDiskStorage(QWidget *pParent, const CVirtualBox &vbox,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strLocation,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const CMedium &medium,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const CProgress &progress);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotDetachDevice(QWidget *pParent, const CMachine &machine,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync VBoxDefs::MediumType type, const QString &strLocation, const StorageSlot &storageSlot);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync int cannotRemountMedium(QWidget *pParent, const CMachine &machine, const VBoxMedium &aMedium, bool fMount, bool fRetry);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotOpenMedium(QWidget *pParent, const CVirtualBox &vbox,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync VBoxDefs::MediumType type, const QString &strLocation);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotCloseMedium(QWidget *pParent, const VBoxMedium &aMedium,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const COMResult &rc);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotOpenSession(const CSession &session);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotOpenSession(const CVirtualBox &vbox, const CMachine &machine,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const CProgress &progress = CProgress());
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotGetMediaAccessibility(const VBoxMedium &aMedium);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync int confirmDeletingHostInterface(const QString &strName, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotAttachUSBDevice(const CConsole &console, const QString &device);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotAttachUSBDevice(const CConsole &console, const QString &device,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const CVirtualBoxErrorInfo &error);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotDetachUSBDevice(const CConsole &console, const QString &device);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotDetachUSBDevice(const CConsole &console, const QString &device,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync const CVirtualBoxErrorInfo &error);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void remindAboutGuestAdditionsAreNotActive(QWidget *pParent);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool cannotFindGuestAdditions(const QString &strSrc1, const QString &strSrc2);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotMountGuestAdditions(const QString &strMachineName);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmDownloadAdditions(const QString &strUrl, qulonglong uSize);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmMountAdditions(const QString &strUrl, const QString &strSrc);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void warnAboutAdditionsCantBeSaved(const QString &strTarget);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool askAboutUserManualDownload(const QString &strMissedLocation);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmUserManualDownload(const QString &strURL, qulonglong uSize);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void warnAboutUserManualDownloaded(const QString &strURL, const QString &strTarget);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void warnAboutUserManualCantBeSaved(const QString &strURL, const QString &strTarget);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool proposeDownloadExtensionPack(const QString &strExtPackName, const QString &strExtPackVersion);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool requestUserDownloadExtensionPack(const QString &strExtPackName, const QString &strExtPackVersion, const QString &strVBoxVersion);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmDownloadExtensionPack(const QString &strExtPackName, const QString &strURL, qulonglong uSize);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool proposeInstallExtentionPack(const QString &strExtPackName, const QString &strFrom, const QString &strTo);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void warnAboutExtentionPackCantBeSaved(const QString &strExtPackName, const QString &strFrom, const QString &strTo);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotConnectRegister(QWidget *pParent,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync const QString &strUrl,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync const QString &strReason);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void showRegisterResult(QWidget *pParent,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync const QString &strResult);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void showUpdateSuccess(const QString &strVersion, const QString &strLink);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void showUpdateNotFound();
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool askAboutCancelAllNetworkRequest(QWidget *pParent);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool askAboutCancelOrLeaveAllNetworkRequest(QWidget *pParent);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmInputCapture(bool *pfAutoConfirmed = NULL);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void remindAboutAutoCapture();
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void remindAboutMouseIntegration(bool fSupportsAbsolute);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool remindAboutPausedVMInput();
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync int warnAboutSettingsAutoConversion(const QString &strFileList, bool fAfterRefresh);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool remindAboutInaccessibleMedia();
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmGoingFullscreen(const QString &strHotKey);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmGoingSeamless(const QString &strHotKey);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmGoingScale(const QString &strHotKey);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool remindAboutGuruMeditation(const CConsole &console,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync const QString &strLogFolder);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmVMReset(QWidget *pParent = 0);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmVMACPIShutdown(QWidget *pParent = 0);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmVMPowerOff(QWidget *pParent = 0);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void warnAboutCannotRemoveMachineFolder(QWidget *pParent, const QString &strFolderName);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void warnAboutCannotRewriteMachineFolder(QWidget *pParent, const QString &strFolderName);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void warnAboutCannotCreateMachineFolder(QWidget *pParent, const QString &strFolderName);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmHardDisklessMachine(QWidget *pParent);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotRunInSelectorMode();
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotImportAppliance(CAppliance *pAppliance, QWidget *pParent = NULL) const;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotImportAppliance(const CProgress &progress, CAppliance *pAppliance, QWidget *pParent = NULL) const;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotCheckFiles(const CProgress &progress, QWidget *pParent = NULL) const;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotRemoveFiles(const CProgress &progress, QWidget *pParent = NULL) const;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmExportMachinesInSaveState(const QStringList &strMachineNames, QWidget *pParent = NULL) const;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotExportAppliance(CAppliance *pAppliance, QWidget *pParent = NULL) const;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotExportAppliance(const CMachine &machine, CAppliance *pAppliance, QWidget *pParent = NULL) const;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotExportAppliance(const CProgress &progress, CAppliance *pAppliance, QWidget *pParent = NULL) const;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotUpdateGuestAdditions(const CProgress &progress, QWidget *pParent /* = NULL */) const;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotOpenExtPack(const QString &strFilename, const CExtPackManager &extPackManager, QWidget *pParent);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void badExtPackFile(const QString &strFilename, const CExtPackFile &extPackFile, QWidget *pParent);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotInstallExtPack(const QString &strFilename, const CExtPackFile &extPackFile, const CProgress &progress, QWidget *pParent);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void cannotUninstallExtPack(const QString &strPackName, const CExtPackManager &extPackManager, const CProgress &progress, QWidget *pParent);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmInstallingPackage(const QString &strPackName, const QString &strPackVersion, const QString &strPackDescription, QWidget *pParent);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmReplacePackage(const QString &strPackName, const QString &strPackVersionNew, const QString &strPackVersionOld,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync const QString &strPackDescription, QWidget *pParent);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmRemovingPackage(const QString &strPackName, QWidget *pParent);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void notifyAboutExtPackInstalled(const QString &strPackName, QWidget *pParent);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void warnAboutIncorrectPort(QWidget *pParent) const;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync bool confirmCancelingPortForwardingDialog(QWidget *pParent) const;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync void showRuntimeError(const CConsole &console, bool fFatal,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync const QString &strErrorId,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync const QString &strErrorMsg) const;
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync static QString mediumToAccusative(VBoxDefs::MediumType type, bool fIsHostDrive = false);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync static QString formatRC(HRESULT rc);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync static QString formatErrorInfo(const COMErrorInfo &info,
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync HRESULT wrapperRC = S_OK);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync static QString formatErrorInfo(const CVirtualBoxErrorInfo &info)
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync {
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync return formatErrorInfo(COMErrorInfo(info));
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync }
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync static QString formatErrorInfo(const COMBaseWithEI &wrapper)
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync {
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync Assert(wrapper.lastRC() != S_OK);
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync return formatErrorInfo(wrapper.errorInfo(), wrapper.lastRC());
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync }
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync
8821ce866b13cb0b956406c99016e3f2a3f64272vboxsync static QString formatErrorInfo(const COMResult &rc)
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync {
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync Assert(rc.rc() != S_OK);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync return formatErrorInfo(rc.errorInfo(), rc.rc());
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync }
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void showGenericError(COMBaseWithEI *object, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync /* Stuff supporting interthreading: */
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotCreateHostInterface(const CHost &host, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotCreateHostInterface(const CProgress &progress, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotRemoveHostInterface(const CHost &host, const CHostNetworkInterface &iface, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotRemoveHostInterface(const CProgress &progress, const CHostNetworkInterface &iface, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotAttachDevice(const CMachine &machine, VBoxDefs::MediumType type,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strLocation, const StorageSlot &storageSlot, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotCreateSharedFolder(const CMachine &machine, const QString &strName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strPath, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotRemoveSharedFolder(const CMachine &machine, const QString &strName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strPath, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotCreateSharedFolder(const CConsole &console, const QString &strName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strPath, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotRemoveSharedFolder(const CConsole &console, const QString &strName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strPath, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync#ifdef VBOX_WITH_DRAG_AND_DROP
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotDropData(const CGuest &guest, QWidget *pParent = 0) const;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void cannotDropData(const CProgress &progress, QWidget *pParent = 0) const;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync#endif /* VBOX_WITH_DRAG_AND_DROP */
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void remindAboutWrongColorDepth(ulong uRealBPP, ulong uWantedBPP);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void remindAboutUnsupportedUSB2(const QString &strExtPackName, QWidget *pParent = 0);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsyncsignals:
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sigToCloseAllWarnings();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync /* Stuff supporting interthreading: */
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sigCannotCreateHostInterface(const CHost &host, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sigCannotCreateHostInterface(const CProgress &progress, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sigCannotRemoveHostInterface(const CHost &host, const CHostNetworkInterface &iface, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sigCannotRemoveHostInterface(const CProgress &progress, const CHostNetworkInterface &iface, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sigCannotAttachDevice(const CMachine &machine, VBoxDefs::MediumType type,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strLocation, const StorageSlot &storageSlot, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sigCannotCreateSharedFolder(const CMachine &machine, const QString &strName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strPath, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sigCannotRemoveSharedFolder(const CMachine &machine, const QString &strName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strPath, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sigCannotCreateSharedFolder(const CConsole &console, const QString &strName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strPath, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sigCannotRemoveSharedFolder(const CConsole &console, const QString &strName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strPath, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sigRemindAboutWrongColorDepth(ulong uRealBPP, ulong uWantedBPP);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sigRemindAboutUnsupportedUSB2(const QString &strExtPackName, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsyncpublic slots:
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltShowHelpWebDialog();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltShowHelpAboutDialog();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltShowHelpHelpDialog();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltResetSuppressedMessages();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltShowUserManual(const QString &strLocation);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsyncprivate slots:
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync /* Stuff supporting interthreading: */
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltCannotCreateHostInterface(const CHost &host, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltCannotCreateHostInterface(const CProgress &progress, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltCannotRemoveHostInterface(const CHost &host, const CHostNetworkInterface &iface, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltCannotRemoveHostInterface(const CProgress &progress, const CHostNetworkInterface &iface, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltCannotAttachDevice(const CMachine &machine, VBoxDefs::MediumType type,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strLocation, const StorageSlot &storageSlot, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltCannotCreateSharedFolder(const CMachine &machine, const QString &strName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strPath, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltCannotRemoveSharedFolder(const CMachine &machine, const QString &strName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strPath, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltCannotCreateSharedFolder(const CConsole &console, const QString &strName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strPath, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltCannotRemoveSharedFolder(const CConsole &console, const QString &strName,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync const QString &strPath, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltRemindAboutWrongColorDepth(ulong uRealBPP, ulong uWantedBPP);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync void sltRemindAboutUnsupportedUSB2(const QString &strExtPackName, QWidget *pParent);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsyncprivate:
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync UIMessageCenter();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync static UIMessageCenter &instance();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync friend UIMessageCenter &msgCenter();
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync static QString errorInfoToString(const COMErrorInfo &info,
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync HRESULT wrapperRC = S_OK);
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync QStringList m_strShownWarnings;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync mutable QList<QPointer<QIMessageBox> > m_warnings;
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync};
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync/* Shortcut to the static UIMessageCenter::instance() method, for convenience. */
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsyncinline UIMessageCenter &msgCenter() { return UIMessageCenter::instance(); }
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync#endif // __UIMessageCenter_h__
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync
59ed03c7513d48f512fa0683517df4de8a597d3fvboxsync