VirtualBox

Changeset 75295 in vbox for trunk


Ignore:
Timestamp:
Nov 6, 2018 6:24:52 PM (6 years ago)
Author:
vboxsync
Message:

FE/Qt: bugref:6699. Adding a new panel to file manager to manage file/copy operations

Location:
trunk/src/VBox/Frontends/VirtualBox
Files:
4 edited
2 copied

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/Makefile.kmk

    r75290 r75295  
    845845        src/guestctrl/UIGuestControlFileManagerSessionPanel.h \
    846846        src/guestctrl/UIGuestControlFileManagerLogPanel.h \
     847        src/guestctrl/UIGuestControlFileManagerOperationsPanel.h \
    847848        src/guestctrl/UIGuestControlFileManagerSettingsPanel.h \
    848849        src/guestctrl/UIGuestControlFileModel.h \
     
    10001001        src/guestctrl/UIGuestControlFileManagerSessionPanel.h \
    10011002        src/guestctrl/UIGuestControlFileManagerLogPanel.h \
     1003        src/guestctrl/UIGuestControlFileManagerOperationsPanel.h \
    10021004        src/guestctrl/UIGuestControlFileManagerSettingsPanel.h \
    10031005        src/guestctrl/UIGuestControlFileModel.h \
     
    12251227        src/runtime/UIIndicatorsPool.cpp \
    12261228        src/guestctrl/UIGuestControlFileManager.cpp \
    1227         src/guestctrl/UIGuestControlFileManagerAccounPanel.cpp \
    12281229        src/guestctrl/UIGuestControlFileManagerLogPanel.cpp \
     1230        src/guestctrl/UIGuestControlFileManagerOperationsPanel.cpp \
    12291231        src/guestctrl/UIGuestControlFileTable.cpp \
    12301232        src/guestctrl/UIGuestFileTable.cpp \
     
    12791281        src/guestctrl/UIGuestControlFileManagerSessionPanel.cpp \
    12801282        src/guestctrl/UIGuestControlFileManagerLogPanel.cpp \
     1283        src/guestctrl/UIGuestControlFileManagerOperationsPanel.cpp \
    12811284        src/guestctrl/UIGuestControlFileTable.cpp \
    12821285        src/guestctrl/UIGuestFileTable.cpp \
     
    15581561        src/guestctrl/UIGuestControlFileManagerSessionPanel.cpp \
    15591562        src/guestctrl/UIGuestControlFileManagerLogPanel.cpp \
     1563        src/guestctrl/UIGuestControlFileManagerOperationsPanel.cpp \
    15601564        src/guestctrl/UIGuestControlFileManagerSettingsPanel.cpp \
    15611565        src/guestctrl/UIGuestControlFileModel.cpp \
     
    17361740        src/guestctrl/UIGuestControlFileManagerSessionPanel.cpp \
    17371741        src/guestctrl/UIGuestControlFileManagerLogPanel.cpp \
     1742        src/guestctrl/UIGuestControlFileManagerOperationsPanel.cpp \
    17381743        src/guestctrl/UIGuestControlFileManagerSettingsPanel.cpp \
    17391744        src/guestctrl/UIGuestControlFileModel.cpp \
  • trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManager.cpp

    r75284 r75295  
    2525# include <QHBoxLayout>
    2626# include <QHeaderView>
    27 # include <QTextEdit>
    2827# include <QPushButton>
    2928# include <QSplitter>
    30 # include <QGridLayout>
     29# include <QTableWidget>
     30# include <QTextEdit>
    3131
    3232/* GUI includes: */
     
    4545# include "UIGuestControlFileManagerSettingsPanel.h"
    4646# include "UIGuestControlFileManagerLogPanel.h"
     47# include "UIGuestControlFileManagerOperationsPanel.h"
    4748# include "UIGuestFileTable.h"
    4849# include "UIGuestControlInterface.h"
     
    144145    , m_pLogPanel(0)
    145146    , m_pSessionPanel(0)
     147    , m_pOperationsPanel(0)
    146148{
    147149    prepareGuestListener();
     
    277279        pTopLayout->addWidget(m_pSettingsPanel);
    278280    }
     281
     282    m_pOperationsPanel =
     283        new UIGuestControlFileManagerOperationsPanel(this /* manager dialog */, 0 /*parent */);
     284    if (m_pOperationsPanel)
     285    {
     286        m_pOperationsPanel->hide();
     287        m_panelActionMap.insert(m_pOperationsPanel, m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_T_FileOperations));
     288        pTopLayout->addWidget(m_pOperationsPanel);
     289    }
     290
    279291    m_pVerticalSplitter->addWidget(pTopWidget);
    280292
     
    360372                this, &UIGuestControlFileManager::sltPanelActionToggled);
    361373        connect(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_T_Session), &QAction::toggled,
     374                this, &UIGuestControlFileManager::sltPanelActionToggled);
     375        connect(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_T_FileOperations), &QAction::toggled,
    362376                this, &UIGuestControlFileManager::sltPanelActionToggled);
    363377
  • trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManager.h

    r75284 r75295  
    3838class QHBoxLayout;
    3939class QSplitter;
     40class QTableWidget;
    4041class QTextEdit;
    4142class QVBoxLayout;
     
    4849class UIGuestControlFileManagerPanel;
    4950class UIGuestControlFileManagerLogPanel;
     51class UIGuestControlFileManagerOperationsPanel;
    5052class UIGuestControlFileManagerSessionPanel;
    5153class UIGuestControlFileManagerSettingsPanel;
     
    152154    UIToolBar                *m_pToolBar;
    153155
    154     //UIFileOperationsList       *m_pFileOperationsList;
     156    //QTableView               *m_pFileOperationsTable;
    155157    UIGuestControlConsole    *m_pConsole;
    156158    UIGuestControlInterface  *m_pControlInterface;
     
    170172    UIGuestControlFileManagerLogPanel              *m_pLogPanel;
    171173    UIGuestControlFileManagerSessionPanel          *m_pSessionPanel;
     174    UIGuestControlFileManagerOperationsPanel       *m_pOperationsPanel;
    172175    friend class UIGuestControlFileManagerSettingsPanel;
    173176    friend class UIGuestControlFileManagerPanel;
  • trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManagerLogPanel.h

    r75284 r75295  
    3838    virtual QString panelName() const /* override */;
    3939
    40 signals:
    41 
    42     void sigShowLineNumbers(bool show);
    43     void sigWrapLines(bool show);
    44     void sigChangeFontSizeInPoints(int size);
    45     void sigChangeFont(QFont font);
    46     void sigResetToDefaults();
    47 
    4840protected:
    4941
  • trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManagerOperationsPanel.cpp

    r75290 r75295  
    2222/* Qt includes: */
    2323# include <QHBoxLayout>
    24 # include <QMenu>
    25 # include <QSpinBox>
    26 # include <QTextEdit>
    27 # include <QTime>
     24# include <QTableWidget>
    2825
    2926/* GUI includes: */
    30 # include "QIToolButton.h"
    31 # include "UIIconPool.h"
    3227# include "UIGuestControlFileManager.h"
    33 # include "UIGuestControlFileManagerLogPanel.h"
     28# include "UIGuestControlFileManagerOperationsPanel.h"
    3429
    3530#endif /* !VBOX_WITH_PRECOMPILED_HEADERS */
     
    3732
    3833/*********************************************************************************************************************************
    39 *   UIFileManagerLogViewer definition.                                                                                   *
     34*   UIFileOperationProgressWidget definition.                                                                                    *
    4035*********************************************************************************************************************************/
    4136
    42 class UIFileManagerLogViewer : public QTextEdit
     37class UIFileOperationProgressWidget : public QWidget
    4338{
    4439
     
    4742public:
    4843
    49     UIFileManagerLogViewer(QWidget *pParent = 0);
     44    UIFileOperationProgressWidget(QWidget *pParent = 0);
    5045
    51 protected:
    52 
    53     virtual void contextMenuEvent(QContextMenuEvent * event) /* override */;
    54 
    55 private slots:
    56 
    57     void sltClear();
    5846};
    5947
     48
    6049/*********************************************************************************************************************************
    61 *   UIFileManagerLogViewer implementation.                                                                                   *
     50*   UIFileOperationProgressWidget implementation.                                                                                *
    6251*********************************************************************************************************************************/
    6352
    64 UIFileManagerLogViewer::UIFileManagerLogViewer(QWidget *pParent /* = 0 */)
    65     :QTextEdit(pParent)
     53UIFileOperationProgressWidget::UIFileOperationProgressWidget(QWidget *pParent /* = 0 */)
     54    :QWidget(pParent)
    6655{
    67     setUndoRedoEnabled(false);
    68 }
    69 
    70 void UIFileManagerLogViewer::contextMenuEvent(QContextMenuEvent *event)
    71 {
    72     QMenu *menu = createStandardContextMenu();
    73     void sltClear();
    74 
    75     QAction *pClearAction = menu->addAction(tr("Clear"));
    76     connect(pClearAction, &QAction::triggered, this, &UIFileManagerLogViewer::sltClear);
    77     menu->exec(event->globalPos());
    78     delete menu;
    79 }
    80 
    81 void UIFileManagerLogViewer::sltClear()
    82 {
    83     clear();
    8456}
    8557
    8658
    8759/*********************************************************************************************************************************
    88 *   UIGuestControlFileManagerLogPanel implementation.                                                                            *
     60*   UIGuestControlFileManagerOperationsPanel implementation.                                                                     *
    8961*********************************************************************************************************************************/
    9062
    91 UIGuestControlFileManagerLogPanel::UIGuestControlFileManagerLogPanel(UIGuestControlFileManager *pManagerWidget, QWidget *pParent)
     63UIGuestControlFileManagerOperationsPanel::UIGuestControlFileManagerOperationsPanel(UIGuestControlFileManager *pManagerWidget, QWidget *pParent)
    9264    : UIGuestControlFileManagerPanel(pManagerWidget, pParent)
    93     , m_pLogTextEdit(0)
     65    , m_pTableWidget(0)
    9466{
    9567    prepare();
    9668}
    9769
    98 void UIGuestControlFileManagerLogPanel::appendLog(const QString &strLog, FileManagerLogType eLogType)
     70
     71QString UIGuestControlFileManagerOperationsPanel::panelName() const
    9972{
    100     if (!m_pLogTextEdit)
    101         return;
    102     QString strColorTag("<font color=\"Black\">");
    103     if (eLogType == FileManagerLogType_Error)
    104     {
    105         strColorTag = "<font color=\"Red\">";
    106     }
    107     QString strColoredLog = QString("%1 %2: %3 %4").arg(strColorTag).arg(QTime::currentTime().toString("hh:mm:ss")).arg(strLog).arg("</font>");
    108     m_pLogTextEdit->append(strColoredLog);
     73    return "OperationsPanel";
    10974}
    11075
    111 QString UIGuestControlFileManagerLogPanel::panelName() const
    112 {
    113     return "LogPanel";
    114 }
    115 
    116 void UIGuestControlFileManagerLogPanel::prepareWidgets()
     76void UIGuestControlFileManagerOperationsPanel::prepareWidgets()
    11777{
    11878    if (!mainLayout())
    11979        return;
    120     m_pLogTextEdit = new UIFileManagerLogViewer;
    121     if (m_pLogTextEdit)
     80    m_pTableWidget = new QTableWidget;
     81    if (m_pTableWidget)
    12282    {
    123         mainLayout()->addWidget(m_pLogTextEdit);
     83        mainLayout()->addWidget(m_pTableWidget);
    12484    }
    12585}
    12686
    127 void UIGuestControlFileManagerLogPanel::prepareConnections()
     87void UIGuestControlFileManagerOperationsPanel::prepareConnections()
    12888{
    12989}
    13090
    131 void UIGuestControlFileManagerLogPanel::retranslateUi()
     91void UIGuestControlFileManagerOperationsPanel::retranslateUi()
    13292{
    13393    UIGuestControlFileManagerPanel::retranslateUi();
     
    13595}
    13696
    137 
    138 #include "UIGuestControlFileManagerLogPanel.moc"
     97#include "UIGuestControlFileManagerOperationsPanel.moc"
  • trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManagerOperationsPanel.h

    r75290 r75295  
    1616 */
    1717
    18 #ifndef ___UIGuestControlFileManagerLogPanel_h___
    19 #define ___UIGuestControlFileManagerLogPanel_h___
     18#ifndef ___UIGuestControlFileManagerOperationsPanel_h___
     19#define ___UIGuestControlFileManagerOperationsPanel_h___
    2020
    2121/* GUI includes: */
     
    2424
    2525/* Forward declarations: */
    26 class QTextEdit;
     26class QTableWidget;
    2727class UIGuestControlFileManager;
    2828
    2929/** UIVMLogViewerPanel extension providing GUI to manage logviewer settings. */
    30 class UIGuestControlFileManagerLogPanel : public UIGuestControlFileManagerPanel
     30class UIGuestControlFileManagerOperationsPanel : public UIGuestControlFileManagerPanel
    3131{
    3232    Q_OBJECT;
     
    3434public:
    3535
    36     UIGuestControlFileManagerLogPanel(UIGuestControlFileManager *pManagerWidget, QWidget *pParent);
    37     void appendLog(const QString &str, FileManagerLogType);
     36    UIGuestControlFileManagerOperationsPanel(UIGuestControlFileManager *pManagerWidget, QWidget *pParent);
    3837    virtual QString panelName() const /* override */;
    3938
    4039signals:
    41 
    42     void sigShowLineNumbers(bool show);
    43     void sigWrapLines(bool show);
    44     void sigChangeFontSizeInPoints(int size);
    45     void sigChangeFont(QFont font);
    46     void sigResetToDefaults();
    4740
    4841protected:
     
    5851
    5952private:
     53    QTableWidget *m_pTableWidget;
    6054
    61     QTextEdit *m_pLogTextEdit;
    6255};
    6356
    64 #endif /* !___UIGuestControlFileManagerLogPanel_h___ */
     57#endif /* !___UIGuestControlFileManagerOperationsPanel_h___ */
Note: See TracChangeset for help on using the changeset viewer.

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