VirtualBox

Changeset 92615 in vbox for trunk/src/VBox/Frontends


Ignore:
Timestamp:
Nov 28, 2021 4:25:03 PM (3 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
148507
Message:

FE/Qt: bugref:9371. Adding file manager as a new machine tool type.

Location:
trunk/src/VBox/Frontends/VirtualBox/src
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/activity/overview/UIVMActivityToolWidget.cpp

    r92467 r92615  
    113113    m_machineIds = machineIds;
    114114
    115     //hide();
    116115    removeTabs(unselectedMachines);
    117116    addTabs(newSelections);
    118     //show();
    119117}
    120118
  • trunk/src/VBox/Frontends/VirtualBox/src/converter/UIConverterBackendGlobal.cpp

    r92487 r92615  
    16191619        case UIToolType_Logs:               strResult = "Logs"; break;
    16201620        case UIToolType_VMActivity:         strResult = "Activity"; break;
     1621        case UIToolType_FileManager:        strResult = "FileManager"; break;
    16211622        default:
    16221623        {
     
    16451646    keys << "Logs";          values << UIToolType_Logs;
    16461647    keys << "Activity";      values << UIToolType_VMActivity;
     1648    keys << "FileManager";   values << UIToolType_FileManager;
    16471649    /* Invalid type for unknown words: */
    16481650    if (!keys.contains(strToolType, Qt::CaseInsensitive))
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h

    r92492 r92615  
    934934    UIToolType_Snapshots,
    935935    UIToolType_Logs,
    936     UIToolType_VMActivity
     936    UIToolType_VMActivity,
     937    UIToolType_FileManager
    937938};
    938939Q_DECLARE_METATYPE(UIToolType);
  • trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPoolManager.cpp

    r92487 r92615  
    19041904    }
    19051905};
     1906
     1907/** Simple action extension, used as 'Show File Manager' action class. */
     1908class UIActionToggleManagerToolsMachineShowFileManager : public UIActionToggle
     1909{
     1910    Q_OBJECT;
     1911
     1912public:
     1913
     1914    /** Constructs action passing @a pParent to the base-class. */
     1915    UIActionToggleManagerToolsMachineShowFileManager(UIActionPool *pParent)
     1916        : UIActionToggle(pParent)
     1917    {
     1918        setProperty("UIToolType", QVariant::fromValue(UIToolType_FileManager));
     1919        /// @todo use icons with check-boxes
     1920        setIcon(UIIconPool::iconSetFull(":/file_manager_24px.png", ":/file_manager_16px.png",
     1921                                        ":/file_manager_disabled_24px.png", ":/file_manager_disabled_16px.png"));
     1922    }
     1923
     1924protected:
     1925
     1926    /** Returns shortcut extra-data ID. */
     1927    virtual QString shortcutExtraDataID() const /* override */
     1928    {
     1929        return QString("ToolsMachineFileManager");
     1930    }
     1931
     1932    /** Handles translation event. */
     1933    virtual void retranslateUi() /* override */
     1934    {
     1935        setName(QApplication::translate("UIActionPool", "&File Manager"));
     1936        setStatusTip(QApplication::translate("UIActionPool", "Open the File Manager"));
     1937    }
     1938};
     1939
    19061940
    19071941/** Menu action extension, used as 'Snapshot' menu class. */
     
    35413575    m_pool[UIActionIndexMN_M_Group_M_Tools_T_Logs] = new UIActionToggleManagerToolsMachineShowLogs(this);
    35423576    m_pool[UIActionIndexMN_M_Group_M_Tools_T_Activity] = new UIActionToggleManagerToolsMachineShowActivity(this);
     3577    m_pool[UIActionIndexMN_M_Group_M_Tools_T_FileManager] = new UIActionToggleManagerToolsMachineShowFileManager(this);
    35433578    m_pool[UIActionIndexMN_M_Group_S_Discard] = new UIActionSimpleManagerCommonPerformDiscard(this);
    35443579    m_pool[UIActionIndexMN_M_Group_S_ShowLogDialog] = new UIActionSimpleManagerCommonShowMachineLogs(this);
     
    35863621    m_pool[UIActionIndexMN_M_Machine_M_Tools_T_Logs] = new UIActionToggleManagerToolsMachineShowLogs(this);
    35873622    m_pool[UIActionIndexMN_M_Machine_M_Tools_T_Activity] = new UIActionToggleManagerToolsMachineShowActivity(this);
     3623    m_pool[UIActionIndexMN_M_Machine_M_Tools_T_FileManager] = new UIActionToggleManagerToolsMachineShowFileManager(this);
    35883624    m_pool[UIActionIndexMN_M_Machine_S_Discard] = new UIActionSimpleManagerCommonPerformDiscard(this);
    35893625    m_pool[UIActionIndexMN_M_Machine_S_ShowLogDialog] = new UIActionSimpleManagerCommonShowMachineLogs(this);
  • trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPoolManager.h

    r92487 r92615  
    8484    UIActionIndexMN_M_Group_M_Tools_T_Logs,
    8585    UIActionIndexMN_M_Group_M_Tools_T_Activity,
     86    UIActionIndexMN_M_Group_M_Tools_T_FileManager,
    8687    UIActionIndexMN_M_Group_S_Discard,
    8788    UIActionIndexMN_M_Group_S_ShowLogDialog,
     
    128129    UIActionIndexMN_M_Machine_M_Tools_T_Logs,
    129130    UIActionIndexMN_M_Machine_M_Tools_T_Activity,
     131    UIActionIndexMN_M_Machine_M_Tools_T_FileManager,
    130132    UIActionIndexMN_M_Machine_S_Discard,
    131133    UIActionIndexMN_M_Machine_S_ShowLogDialog,
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/UIToolPaneMachine.cpp

    r92487 r92615  
    2525/* GUI includes */
    2626#include "UIActionPoolManager.h"
     27#include "UIDetails.h"
    2728#include "UIErrorPane.h"
    28 #include "UIDetails.h"
     29#include "UIFileManager.h"
    2930#include "UIIconPool.h"
    30 #include "UIVMActivityToolWidget.h"
    3131#include "UISnapshotPane.h"
    3232#include "UIToolPaneMachine.h"
    3333#include "UIVirtualMachineItem.h"
     34#include "UIVMActivityToolWidget.h"
    3435#include "UIVMLogViewerWidget.h"
     36
    3537
    3638/* Other VBox includes: */
     
    4850    , m_pPaneLogViewer(0)
    4951    , m_pPaneVMActivityMonitor(0)
     52    , m_pPaneFileManager(0)
    5053    , m_fActive(false)
    5154{
     
    210213                connect(m_pPaneVMActivityMonitor, &UIVMActivityToolWidget::sigSwitchToActivityOverviewPane,
    211214                        this, &UIToolPaneMachine::sigSwitchToActivityOverviewPane);
     215                break;
     216            }
     217            case UIToolType_FileManager:
     218            {
     219                m_pPaneFileManager = 0;
     220
     221                // UIFileManager::UIFileManager(EmbedTo enmEmbedding, UIActionPool *pActionPool,
     222                //                                      const CGuest &comGuest, QWidget *pParent, bool fShowToolbar /* = true */)
     223
     224                AssertPtrReturnVoid(m_pPaneFileManager);
     225#ifndef VBOX_WS_MAC
     226                const int iMargin = qApp->style()->pixelMetric(QStyle::PM_LayoutLeftMargin) / 4;
     227                m_pPaneFileManager->setContentsMargins(iMargin, 0, iMargin, 0);
     228#endif
     229
     230                /* Configure pane: */
     231                m_pPaneFileManager->setProperty("ToolType", QVariant::fromValue(UIToolType_FileManager));
     232                //m_pPaneFileManager->setSelectedVMListItems(m_items);
     233                /* Add into layout: */
     234                m_pLayout->addWidget(m_pPaneFileManager);
     235                m_pLayout->setCurrentWidget(m_pPaneFileManager);
    212236                break;
    213237            }
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/UIToolPaneMachine.h

    r92487 r92615  
    4343class UIVirtualMachineItem;
    4444class UIVMLogViewerWidget;
    45 
     45class UIFileManager;
    4646
    4747/** QWidget subclass representing container for tool panes. */
     
    134134    /** Holds the Performance Monitor pane instance. */
    135135    UIVMActivityToolWidget *m_pPaneVMActivityMonitor;
     136    /** Holds the File Manager pane instance. */
     137    UIFileManager *m_pPaneFileManager;
    136138
    137139    /** Holds whether this pane is active. */
Note: See TracChangeset for help on using the changeset viewer.

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