VirtualBox

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


Ignore:
Timestamp:
Jan 5, 2024 3:27:12 PM (13 months ago)
Author:
vboxsync
Message:

FE/Qt: UIVirtualBoxManager: Store whether log-viewer opened detached or embedded way to extra-data.

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

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.cpp

    r102222 r102775  
    108108const char *UIExtraDataDefs::GUI_Toolbar_GlobalTools_Order = "GUI/Toolbar/GlobalTools/Order";
    109109const char *UIExtraDataDefs::GUI_Tools_LastItemsSelected = "GUI/Tools/LastItemsSelected";
     110const char *UIExtraDataDefs::GUI_Tools_Detached = "GUI/Tools/Detached";
    110111const char *UIExtraDataDefs::GUI_Statusbar = "GUI/Statusbar";
    111112const char *UIExtraDataDefs::GUI_GroupDefinitions = "GUI/GroupDefinitions";
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h

    r101447 r102775  
    194194        /** Holds the last selected tool set of VirtualBox Manager. */
    195195        SHARED_LIBRARY_STUFF extern const char *GUI_Tools_LastItemsSelected;
     196        /** Holds the list of detached tools of VirtualBox Manager. */
     197        SHARED_LIBRARY_STUFF extern const char *GUI_Tools_Detached;
    196198        /** Holds whether selector-window status-bar visible. */
    197199        SHARED_LIBRARY_STUFF extern const char *GUI_Statusbar;
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp

    r101571 r102775  
    19371937           << GUI_Toolbar << GUI_Toolbar_Text
    19381938           << GUI_Toolbar_MachineTools_Order << GUI_Toolbar_GlobalTools_Order
    1939            << GUI_Tools_LastItemsSelected
     1939           << GUI_Tools_LastItemsSelected << GUI_Tools_Detached
    19401940           << GUI_Statusbar
    19411941           << GUI_GroupDefinitions << GUI_LastItemSelected
     
    29172917}
    29182918
     2919QList<UIToolType> UIExtraDataManager::detachedTools()
     2920{
     2921    /* Parse loaded data: */
     2922    QList<UIToolType> result;
     2923    foreach (const QString &strValue, extraDataStringList(GUI_Tools_Detached))
     2924    {
     2925        const UIToolType enmType = gpConverter->fromInternalString<UIToolType>(strValue);
     2926        if (enmType != UIToolType_Invalid)
     2927            result << enmType;
     2928    }
     2929
     2930    /* Return result: */
     2931    return result;
     2932}
     2933
     2934void UIExtraDataManager::setDetachedTools(const QList<UIToolType> &tools)
     2935{
     2936    /* Serialize passed values: */
     2937    QStringList data;
     2938    foreach (const UIToolType &enmType, tools)
     2939        data << gpConverter->toInternalString(enmType);
     2940
     2941    /* Re-cache corresponding extra-data: */
     2942    setExtraDataStringList(GUI_Tools_Detached, data);
     2943}
     2944
    29192945bool UIExtraDataManager::selectorWindowStatusBarVisible()
    29202946{
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h

    r101447 r102775  
    406406        /** Defines last selected tool @a set of VirtualBox Manager. */
    407407        void setToolsPaneLastItemsChosen(const QList<UIToolType> &set);
     408        /** Returns the list of detached tools of VirtualBox Manager. */
     409        QList<UIToolType> detachedTools();
     410        /** Defines the list of detached @a tools of VirtualBox Manager. */
     411        void setDetachedTools(const QList<UIToolType> &tools);
    408412
    409413        /** Returns whether selector-window status-bar visible. */
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxManager.cpp

    r102764 r102775  
    965965void UIVirtualBoxManager::sltDetachLogViewer()
    966966{
     967    /* Add tool to detached: */
     968    QList<UIToolType> tools = gEDataManager->detachedTools();
     969    if (!tools.contains(UIToolType_Logs))
     970    {
     971        tools << UIToolType_Logs;
     972        gEDataManager->setDetachedTools(tools);
     973    }
     974
     975    /* Detach Log Viewer: */
    967976    sltOpenManagerWindow(UIToolType_Logs);
    968977}
     
    10691078    /* Make sure type is valid: */
    10701079    AssertReturnVoid(enmType != UIToolType_Invalid);
     1080
     1081    /* Remove tool from detached: */
     1082    QList<UIToolType> tools = gEDataManager->detachedTools();
     1083    if (tools.contains(UIToolType_Logs))
     1084    {
     1085        tools.removeAll(UIToolType_Logs);
     1086        gEDataManager->setDetachedTools(tools);
     1087    }
    10711088
    10721089    /* Open known tool finally: */
     
    22562273    AssertReturnVoid(enmType != UIToolType_Invalid);
    22572274
     2275    /* Check if this tool should be opened detached way: */
     2276    if (gEDataManager->detachedTools().contains(enmType))
     2277        return sltOpenManagerWindow(enmType);
     2278
    22582279    /* Open the tool finally: */
    22592280    m_pWidget->setToolsTypeMachine(enmType);
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