Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/QIWithRetranslateUI.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/QIWithRetranslateUI.h	(revision 26635)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/QIWithRetranslateUI.h	(revision 26636)
@@ -7,5 +7,5 @@
 
 /*
- * Copyright (C) 2008 Sun Microsystems, Inc.
+ * Copyright (C) 2008-2010 Sun Microsystems, Inc.
  *
  * This file is part of VirtualBox Open Source Edition (OSE), as
@@ -25,5 +25,5 @@
 #define __QIWithRetranslateUI_h
 
-/* Qt includes */
+/* Global includes */
 #include <QObject>
 #include <QEvent>
@@ -34,17 +34,17 @@
 public:
 
-    QIWithRetranslateUI (QWidget *aParent = 0) : Base (aParent) {}
+    QIWithRetranslateUI(QWidget *pParent = 0) : Base(pParent) {}
 
 protected:
 
-    virtual void changeEvent (QEvent *aEvent)
+    virtual void changeEvent(QEvent *pEvent)
     {
-        Base::changeEvent (aEvent);
-        switch (aEvent->type())
+        Base::changeEvent (pEvent);
+        switch (pEvent->type())
         {
             case QEvent::LanguageChange:
             {
                 retranslateUi();
-                aEvent->accept();
+                pEvent->accept();
                 break;
             }
@@ -62,17 +62,17 @@
 public:
 
-    QIWithRetranslateUI2 (QWidget *aParent = 0, Qt::WindowFlags aFlags = 0) : Base (aParent, aFlags) {}
+    QIWithRetranslateUI2(QWidget *pParent = 0, Qt::WindowFlags fFlags = 0) : Base(pParent, fFlags) {}
 
 protected:
 
-    virtual void changeEvent (QEvent *aEvent)
+    virtual void changeEvent(QEvent *pEvent)
     {
-        Base::changeEvent (aEvent);
-        switch (aEvent->type())
+        Base::changeEvent (pEvent);
+        switch (pEvent->type())
         {
             case QEvent::LanguageChange:
             {
                 retranslateUi();
-                aEvent->accept();
+                pEvent->accept();
                 break;
             }
@@ -85,4 +85,33 @@
 };
 
+template <class Base>
+class QIWithRetranslateUI3: public Base
+{
+public:
+
+    QIWithRetranslateUI3(QObject *pParent = 0) : Base(pParent) {}
+
+protected:
+
+    virtual bool event(QEvent *pEvent)
+    {
+        bool bResult = Base::event(pEvent);
+        switch (pEvent->type())
+        {
+            case QEvent::LanguageChange:
+            {
+                retranslateUi();
+                pEvent->accept();
+                bResult = true;
+                break;
+            }
+            default:
+                break;
+        }
+        return bResult;
+    }
+
+    virtual void retranslateUi() = 0;
+};
+
 #endif /* __QIWithRetranslateUI_h */
-
