Index: /trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UITools.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UITools.cpp	(revision 88507)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UITools.cpp	(revision 88508)
@@ -5,5 +5,5 @@
 
 /*
- * Copyright (C) 2012-2020 Oracle Corporation
+ * Copyright (C) 2012-2021 Oracle Corporation
  *
  * This file is part of VirtualBox Open Source Edition (OSE), as
@@ -20,12 +20,12 @@
 
 /* GUI includes: */
+#include "UICommon.h"
 #include "UITools.h"
 #include "UIToolsModel.h"
 #include "UIToolsView.h"
 #include "UIVirtualBoxManagerWidget.h"
-#include "UICommon.h"
 
 
-UITools::UITools(UIVirtualBoxManagerWidget *pParent)
+UITools::UITools(UIVirtualBoxManagerWidget *pParent /* = 0 */)
     : QWidget(pParent, Qt::Popup)
     , m_pManagerWidget(pParent)
@@ -34,12 +34,5 @@
     , m_pToolsView(0)
 {
-    /* Prepare: */
     prepare();
-}
-
-UITools::~UITools()
-{
-    /* Cleanup: */
-    cleanup();
 }
 
@@ -106,22 +99,15 @@
 void UITools::prepare()
 {
-    /* Prepare palette: */
+    /* Prepare everything: */
     preparePalette();
-    /* Prepare layout: */
-    prepareLayout();
-    /* Prepare model: */
-    prepareModel();
-    /* Prepare view: */
-    prepareView();
-    /* Prepare connections: */
+    prepareContents();
     prepareConnections();
 
-    /* Load settings: */
-    loadSettings();
+    /* Init model finally: */
+    initModel();
 }
 
 void UITools::preparePalette()
 {
-    /* Setup palette: */
     setAutoFillBackground(true);
     QPalette pal = palette();
@@ -131,16 +117,18 @@
 }
 
-void UITools::prepareLayout()
+void UITools::prepareContents()
 {
     /* Setup own layout rules: */
     setSizePolicy(QSizePolicy::Fixed, QSizePolicy::MinimumExpanding);
 
-    /* Create main-layout: */
+    /* Prepare main-layout: */
     m_pMainLayout = new QVBoxLayout(this);
     if (m_pMainLayout)
     {
-        /* Configure main-layout: */
         m_pMainLayout->setContentsMargins(1, 1, 1, 1);
         m_pMainLayout->setSpacing(0);
+
+        /* Prepare model: */
+        prepareModel();
     }
 }
@@ -148,15 +136,19 @@
 void UITools::prepareModel()
 {
-    /* Create Tools-model: */
+    /* Prepare model: */
     m_pToolsModel = new UIToolsModel(this);
+    if (m_pToolsModel)
+        prepareView();
 }
 
 void UITools::prepareView()
 {
-    /* Setup Tools-view: */
+    AssertPtrReturnVoid(m_pToolsModel);
+    AssertPtrReturnVoid(m_pMainLayout);
+
+    /* Prepare view: */
     m_pToolsView = new UIToolsView(this);
     if (m_pToolsView)
     {
-        /* Configure Tools-view. */
         m_pToolsView->setScene(m_pToolsModel->scene());
         m_pToolsView->show();
@@ -170,5 +162,5 @@
 void UITools::prepareConnections()
 {
-    /* Setup Tools-model connections: */
+    /* Model connections: */
     connect(m_pToolsModel, &UIToolsModel::sigItemMinimumWidthHintChanged,
             m_pToolsView, &UIToolsView::sltMinimumWidthHintChanged);
@@ -178,24 +170,11 @@
             m_pToolsView, &UIToolsView::sltFocusChanged);
 
-    /* Setup Tools-view connections: */
+    /* View connections: */
     connect(m_pToolsView, &UIToolsView::sigResized,
             m_pToolsModel, &UIToolsModel::sltHandleViewResized);
 }
 
-void UITools::loadSettings()
+void UITools::initModel()
 {
-    /* Init model: */
     m_pToolsModel->init();
 }
-
-void UITools::saveSettings()
-{
-    /* Deinit model: */
-    m_pToolsModel->deinit();
-}
-
-void UITools::cleanup()
-{
-    /* Save settings: */
-    saveSettings();
-}
Index: /trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UITools.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UITools.h	(revision 88507)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UITools.h	(revision 88508)
@@ -5,5 +5,5 @@
 
 /*
- * Copyright (C) 2012-2020 Oracle Corporation
+ * Copyright (C) 2012-2021 Oracle Corporation
  *
  * This file is part of VirtualBox Open Source Edition (OSE), as
@@ -57,7 +57,5 @@
 
     /** Constructs Tools-pane passing @a pParent to the base-class. */
-    UITools(UIVirtualBoxManagerWidget *pParent);
-    /** Destructs Tools-pane. */
-    virtual ~UITools() /* override */;
+    UITools(UIVirtualBoxManagerWidget *pParent = 0);
 
     /** @name General stuff.
@@ -114,6 +112,6 @@
         /** Prepares palette. */
         void preparePalette();
-        /** Prepares layout. */
-        void prepareLayout();
+        /** Prepares contents. */
+        void prepareContents();
         /** Prepares model. */
         void prepareModel();
@@ -122,11 +120,6 @@
         /** Prepares connections. */
         void prepareConnections();
-        /** Loads settings. */
-        void loadSettings();
-
-        /** Saves settings. */
-        void saveSettings();
-        /** Cleanups all. */
-        void cleanup();
+        /** Inits model. */
+        void initModel();
     /** @} */
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsModel.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsModel.cpp	(revision 88507)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsModel.cpp	(revision 88508)
@@ -84,10 +84,4 @@
 }
 
-void UIToolsModel::deinit()
-{
-    /* Save last selected item: */
-    saveLastSelectedItems();
-}
-
 UITools *UIToolsModel::tools() const
 {
@@ -629,4 +623,6 @@
 void UIToolsModel::cleanup()
 {
+    /* Save last selected item: */
+    saveLastSelectedItems();
     /* Cleanup connections: */
     cleanupConnections();
Index: /trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsModel.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsModel.h	(revision 88507)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsModel.h	(revision 88508)
@@ -86,6 +86,4 @@
         /** Inits model. */
         void init();
-        /** Deinits model. */
-        void deinit();
 
         /** Returns the Tools reference. */
