VirtualBox

Changeset 105021 in vbox


Ignore:
Timestamp:
Jun 25, 2024 1:58:19 PM (5 months ago)
Author:
vboxsync
Message:

FE/Qt: bugref:10681: UIPortForwardingTable: A bit of cleanup for model/view creation.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/widgets
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIPortForwardingTable.cpp

    r105019 r105021  
    10311031            {
    10321032                /* Update actions: */
    1033                 sltCurrentChanged();
     1033                sltUpdateActions();
    10341034                break;
    10351035            }
     
    10661066    m_pTableView->setFocus();
    10671067    m_pTableView->setCurrentIndex(m_pTableModel->index(m_pTableModel->rowCount() - 1, 0));
    1068     sltCurrentChanged();
     1068    sltUpdateActions();
    10691069    sltAdjustTable();
    10701070}
     
    10751075    m_pTableView->setFocus();
    10761076    m_pTableView->setCurrentIndex(m_pTableModel->index(m_pTableModel->rowCount() - 1, 0));
    1077     sltCurrentChanged();
     1077    sltUpdateActions();
    10781078    sltAdjustTable();
    10791079}
     
    10831083    m_pTableModel->removeRule(m_pTableView->currentIndex());
    10841084    m_pTableView->setFocus();
    1085     sltCurrentChanged();
     1085    sltUpdateActions();
    10861086    sltAdjustTable();
    10871087}
     
    10931093}
    10941094
    1095 void UIPortForwardingTable::sltCurrentChanged()
     1095void UIPortForwardingTable::sltUpdateActions()
    10961096{
    10971097    bool fTableFocused = m_pTableView->hasFocus();
     
    11681168#endif
    11691169
    1170         /* Prepare table-view: */
     1170        /* Prepare model: */
     1171        prepareTableModel();
     1172        /* Prepare view: */
    11711173        prepareTableView();
    11721174
    11731175        /* Prepare toolbar: */
    11741176        prepareToolbar();
    1175     }
    1176 }
    1177 
    1178 void UIPortForwardingTable::prepareTableView()
    1179 {
    1180     /* Create table-view: */
    1181     m_pTableView = new UIPortForwardingView(m_fIPv6, this);
    1182     if (m_pTableView)
    1183     {
    1184         /* Configure table-view: */
    1185         m_pTableView->installEventFilter(this);
    1186 
    1187         /* Prepare model: */
    1188         prepareTableModel();
    1189 
    1190         /* Finish configure table-view (after model is configured): */
    1191         connect(m_pTableView, &UIPortForwardingView::sigCurrentChanged,
    1192                 this, &UIPortForwardingTable::sltCurrentChanged);
    1193         connect(m_pTableView, &UIPortForwardingView::customContextMenuRequested,
    1194                 this, &UIPortForwardingTable::sltShowTableContexMenu);
    1195 
    1196         /* Add into layout: */
    1197         m_pLayout->addWidget(m_pTableView);
    11981177    }
    11991178}
     
    12061185    {
    12071186        /* Configure table-model: */
    1208         m_pTableView->setModel(m_pTableModel);
    12091187        connect(m_pTableModel, &UIPortForwardingModel::dataChanged,
    12101188                this, &UIPortForwardingTable::sltTableDataChanged);
     
    12131191        connect(m_pTableModel, &UIPortForwardingModel::rowsRemoved,
    12141192                this, &UIPortForwardingTable::sltTableDataChanged);
     1193    }
     1194}
     1195
     1196void UIPortForwardingTable::prepareTableView()
     1197{
     1198    /* Create table-view: */
     1199    m_pTableView = new UIPortForwardingView(m_fIPv6, this);
     1200    if (m_pTableView)
     1201    {
     1202        /* Assign model: */
     1203        if (m_pTableModel)
     1204            m_pTableView->setModel(m_pTableModel);
     1205
     1206        /* Finish configure table-view (after model is assigned): */
     1207        connect(m_pTableView, &UIPortForwardingView::sigCurrentChanged,
     1208                this, &UIPortForwardingTable::sltUpdateActions);
     1209        connect(m_pTableView, &UIPortForwardingView::customContextMenuRequested,
     1210                this, &UIPortForwardingTable::sltShowTableContexMenu);
     1211
     1212        /* Add into layout: */
     1213        m_pLayout->addWidget(m_pTableView);
    12151214    }
    12161215}
  • trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIPortForwardingTable.h

    r105007 r105021  
    262262    void sltTableDataChanged();
    263263
    264     /** Handles current item change. */
    265     void sltCurrentChanged();
     264    /** Updates actions. */
     265    void sltUpdateActions();
     266
    266267    /** Handles request to show context-menu in certain @a position. */
    267268    void sltShowTableContexMenu(const QPoint &position);
     269
    268270    /** Adjusts table column sizes. */
    269271    void sltAdjustTable();
     
    275277    /** Prepares layout. */
    276278    void prepareLayout();
     279    /** Prepares table-model. */
     280    void prepareTableModel();
    277281    /** Prepares table-view. */
    278282    void prepareTableView();
    279     /** Prepares table-model. */
    280     void prepareTableModel();
    281283    /** Prepares toolbar. */
    282284    void prepareToolbar();
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