Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIIndicatorsPool.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIIndicatorsPool.cpp	(revision 65254)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIIndicatorsPool.cpp	(revision 65255)
@@ -68,12 +68,12 @@
 
     /** Constructor which remembers passed @a session object. */
-    UISessionStateStatusBarIndicator(IndicatorType enmType, UISession *pSession)
-        : m_enmType(enmType)
-        , m_pSession(pSession)
-    {}
+    UISessionStateStatusBarIndicator(IndicatorType enmType, UISession *pSession);
 
     /** Returns the indicator type. */
     IndicatorType type() const { return m_enmType; }
 
+    /** Returns the indicator description. */
+    virtual QString description() const { return m_strDescription; }
+
     /** Abstract update routine. */
     virtual void updateAppearance() = 0;
@@ -81,4 +81,7 @@
 protected:
 
+    /** Handles translation event. */
+    virtual void retranslateUi() /* override */;
+
     /** Holds the indicator type. */
     const IndicatorType m_enmType;
@@ -86,5 +89,26 @@
     /** Holds the session UI reference. */
     UISession *m_pSession;
+
+    /** Holds the indicator description. */
+    QString m_strDescription;
 };
+
+
+UISessionStateStatusBarIndicator::UISessionStateStatusBarIndicator(IndicatorType enmType, UISession *pSession)
+    : m_enmType(enmType)
+    , m_pSession(pSession)
+{
+}
+
+void UISessionStateStatusBarIndicator::retranslateUi()
+{
+    /* Translate description: */
+    m_strDescription = tr("%1 status-bar indicator", "like 'hard-disk status-bar indicator'")
+                         .arg(gpConverter->toString(type()));
+
+    /* Update appearance finally: */
+    updateAppearance();
+}
+
 
 /** UISessionStateStatusBarIndicator extension for Runtime UI: Hard-drive indicator. */
@@ -109,10 +133,4 @@
 
 private:
-
-    /** Retranslation routine. */
-    void retranslateUi()
-    {
-        updateAppearance();
-    }
 
     /** Update routine. */
@@ -182,10 +200,4 @@
 
 private:
-
-    /** Retranslation routine. */
-    void retranslateUi()
-    {
-        updateAppearance();
-    }
 
     /** Update routine. */
@@ -260,10 +272,4 @@
 private:
 
-    /** Retranslation routine. */
-    void retranslateUi()
-    {
-        updateAppearance();
-    }
-
     /** Update routine. */
     void updateAppearance()
@@ -375,10 +381,4 @@
 
 private:
-
-    /** Retranslation routine. */
-    void retranslateUi()
-    {
-        updateAppearance();
-    }
 
     /** Update routine. */
@@ -487,10 +487,4 @@
 private:
 
-    /** Retranslation routine. */
-    void retranslateUi()
-    {
-        updateAppearance();
-    }
-
     /** Update routine. */
     void updateAppearance()
@@ -553,10 +547,4 @@
 private:
 
-    /** Retranslation routine. */
-    void retranslateUi()
-    {
-        updateAppearance();
-    }
-
     /** Update routine. */
     void updateAppearance()
@@ -622,10 +610,4 @@
 
 private:
-
-    /** Retranslation routine. */
-    void retranslateUi()
-    {
-        updateAppearance();
-    }
 
     /** Update routine. */
@@ -731,10 +713,4 @@
 
 private:
-
-    /** Retranslation routine. */
-    void retranslateUi()
-    {
-        updateAppearance();
-    }
 
     /** Paint-event handler. */
@@ -826,10 +802,4 @@
 private:
 
-    /** Retranslation routine. */
-    void retranslateUi()
-    {
-        updateAppearance();
-    }
-
     /** Update routine. */
     void updateAppearance()
@@ -934,6 +904,6 @@
 private:
 
-    /** Retranslation routine. */
-    void retranslateUi()
+    /** Update routine. */
+    void updateAppearance()
     {
         setToolTip(QApplication::translate("UIIndicatorsPool",
@@ -946,7 +916,4 @@
                    "Note that the mouse integration feature requires Guest Additions to be installed in the guest OS."));
     }
-
-    /** Update routine. */
-    void updateAppearance() {}
 };
 
@@ -976,6 +943,6 @@
 private:
 
-    /** Retranslation routine. */
-    void retranslateUi()
+    /** Update routine. */
+    void updateAppearance()
     {
         setToolTip(QApplication::translate("UIIndicatorsPool",
@@ -984,7 +951,4 @@
                    "<nobr><img src=:/hostkey_captured_16px.png/>&nbsp;&nbsp;keyboard is captured</nobr>"));
     }
-
-    /** Update routine. */
-    void updateAppearance() {}
 };
 
