Index: trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceEditorWidget.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceEditorWidget.cpp	(revision 64686)
+++ trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceEditorWidget.cpp	(revision 64688)
@@ -48,71 +48,98 @@
 
 
-/* This & the following derived classes represent the data items of a Virtual
-   System. All access/manipulation is done with the help of virtual functions
-   to keep the interface clean. ModelItem is able to handle tree structures
-   with a parent & several children's. */
+/** Describes the interface of Virtual System item.
+  * Represented as a tree structure with a parent & multiple children. */
 class ModelItem
 {
 public:
 
+    /** Constructs item with specified @a number, @a type and @a pParent. */
     ModelItem(int number, ApplianceModelItemType type, ModelItem *pParent = NULL);
-
+    /** Destructs item. */
     virtual ~ModelItem();
 
+    /** Returns the parent of the item. */
     ModelItem *parent() const { return m_pParentItem; }
 
+    /** Appends the passed @a pChild to the item's list of children. */
     void appendChild(ModelItem *pChild);
+    /** Returns the child specified by the @a row. */
     ModelItem *child(int row) const;
 
+    /** Returns the row of the item in the parent. */
     int row() const;
 
+    /** Returns the number of children. */
     int childCount() const;
+    /** Returns the number of columns. */
     int columnCount() const { return 3; }
 
+    /** Returns the item flags for the given @a column. */
     virtual Qt::ItemFlags itemFlags(int /* column */) const { return 0; }
+    /** Defines the @a role data for the item at @a column to @a value. */
     virtual bool setData(int /* column */, const QVariant & /* value */, int /* role */) { return false; }
+    /** Returns the data stored under the given @a role for the item referred to by the @a column. */
     virtual QVariant data(int /* column */, int /* role */) const { return QVariant(); }
+    /** Returns the widget used to edit the item specified by @a idx for editing.
+      * @param  pParent      Brings the parent to be assigned for newly created editor.
+      * @param  styleOption  Bring the style option set for the newly created editor. */
     virtual QWidget *createEditor(QWidget * /* pParent */, const QStyleOptionViewItem & /* styleOption */, const QModelIndex & /* idx */) const { return NULL; }
+    /** Defines the contents of the given @a pEditor to the data for the item at the given @a idx. */
     virtual bool setEditorData(QWidget * /* pEditor */, const QModelIndex & /* idx */) const { return false; }
+    /** Defines the data for the item at the given @a idx in the @a pModel to the contents of the given @a pEditor. */
     virtual bool setModelData(QWidget * /* pEditor */, QAbstractItemModel * /* pModel */, const QModelIndex & /* idx */) { return false; }
 
+    /** Restores the default values. */
     virtual void restoreDefaults() {}
+    /** Cache currently stored values, such as @a finalStates, @a finalValues and @a finalExtraValues. */
     virtual void putBack(QVector<BOOL>& finalStates, QVector<QString>& finalValues, QVector<QString>& finalExtraValues);
 
+    /** Returns the item type. */
     ApplianceModelItemType type() const { return m_type; }
 
 protected:
 
-    /* Protected member vars */
+    /** Holds the item number. */
     int                     m_number;
+    /** Holds the item type. */
     ApplianceModelItemType  m_type;
 
+    /** Holds the parent item reference. */
     ModelItem              *m_pParentItem;
+    /** Holds the list of children item instances. */
     QList<ModelItem*>       m_childItems;
 };
 
 
-/* This class represent a Virtual System with an index. */
-class VirtualSystemItem: public ModelItem
+/** ModelItem subclass representing Virtual System. */
+class VirtualSystemItem : public ModelItem
 {
 public:
+
+    /** Constructs item passing @a number and @a pParent to the base-class.
+      * @param  aDesc  Brings the Virtual System Description. */
     VirtualSystemItem(int number, CVirtualSystemDescription aDesc, ModelItem *pParent);
 
+    /** Returns the data stored under the given @a role for the item referred to by the @a column. */
     virtual QVariant data(int column, int role) const;
 
+    /** Cache currently stored values, such as @a finalStates, @a finalValues and @a finalExtraValues. */
     virtual void putBack(QVector<BOOL>& finalStates, QVector<QString>& finalValues, QVector<QString>& finalExtraValues);
 
 private:
+
+    /** Holds the Virtual System Description. */
     CVirtualSystemDescription m_desc;
 };
 
 
-/* This class represent an hardware item of a Virtual System. All values of
-   KVirtualSystemDescriptionType are supported & handled differently. */
-class HardwareItem: public ModelItem
+/** ModelItem subclass representing Virtual System item. */
+class HardwareItem : public ModelItem
 {
     friend class VirtualSystemSortProxyModel;
+
 public:
 
+    /** Data roles. */
     enum
     {
@@ -121,4 +148,10 @@
     };
 
+    /** Constructs item passing @a number and @a pParent to the base-class.
+      * @param  type                 Brings the Virtual System Description type.
+      * @param  strRef               Brings something totally useless.
+      * @param  strOrigValue         Brings the original value.
+      * @param  strConfigValue       Brings the configuration value.
+      * @param  strExtraConfigValue  Brings the extra configuration value. */
     HardwareItem(int number,
                  KVirtualSystemDescriptionType type,
@@ -129,16 +162,25 @@
                  ModelItem *pParent);
 
+    /** Cache currently stored values, such as @a finalStates, @a finalValues and @a finalExtraValues. */
     virtual void putBack(QVector<BOOL>& finalStates, QVector<QString>& finalValues, QVector<QString>& finalExtraValues);
 
+    /** Defines the @a role data for the item at @a column to @a value. */
     virtual bool setData(int column, const QVariant &value, int role);
+    /** Returns the data stored under the given @a role for the item referred to by the @a column. */
     virtual QVariant data(int column, int role) const;
 
+    /** Returns the item flags for the given @a column. */
     virtual Qt::ItemFlags itemFlags(int column) const;
 
+    /** Returns the widget used to edit the item specified by @a idx for editing.
+      * @param  pParent      Brings the parent to be assigned for newly created editor.
+      * @param  styleOption  Bring the style option set for the newly created editor. */
     virtual QWidget *createEditor(QWidget *pParent, const QStyleOptionViewItem &styleOption, const QModelIndex &idx) const;
+    /** Defines the contents of the given @a pEditor to the data for the item at the given @a idx. */
     virtual bool setEditorData(QWidget *pEditor, const QModelIndex &idx) const;
-
+    /** Defines the data for the item at the given @a idx in the @a pModel to the contents of the given @a pEditor. */
     virtual bool setModelData(QWidget *pEditor, QAbstractItemModel *pModel, const QModelIndex &idx);
 
+    /** Restores the default values. */
     virtual void restoreDefaults()
     {
@@ -149,12 +191,19 @@
 private:
 
-    /* Private member vars */
+    /** Holds the Virtual System description type. */
     KVirtualSystemDescriptionType m_type;
+    /** Holds something totally useless. */
     QString                       m_strRef;
+    /** Holds the original value. */
     QString                       m_strOrigValue;
+    /** Holds the configuration value. */
     QString                       m_strConfigValue;
+    /** Holds the default configuration value. */
     QString                       m_strConfigDefaultValue;
+    /** Holds the extra configuration value. */
     QString                       m_strExtraConfigValue;
+    /** Holds the item check state. */
     Qt::CheckState                m_checkState;
+    /** Holds whether item was modified. */
     bool                          m_fModified;
 };
Index: trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceEditorWidget.h
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceEditorWidget.h	(revision 64686)
+++ trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceEditorWidget.h	(revision 64688)
@@ -57,49 +57,68 @@
 
 
+/** QAbstractItemModel subclass used as Virtual System model. */
 class VirtualSystemModel : public QAbstractItemModel
 {
 public:
 
+    /** Constructs the Virtual System model passing @a pParent to the base-class.
+      * @param  aVSDs  Brings the Virtual System descriptions. */
     VirtualSystemModel(QVector<CVirtualSystemDescription>& aVSDs, QObject *pParent = NULL);
+    /** Destructs the Virtual System model. */
     ~VirtualSystemModel();
 
+    /** Returns the index of the item in the model specified by the given @a row, @a column and @a parentIdx. */
     QModelIndex index(int row, int column, const QModelIndex &parentIdx = QModelIndex()) const;
+    /** Returns the parent of the model item with the given @a idx. */
     QModelIndex parent(const QModelIndex &idx) const;
+    /** Returns the number of rows for the children of the given @a parentIdx. */
     int rowCount(const QModelIndex &parentIdx = QModelIndex()) const;
+    /** Returns the number of columns for the children of the given @a parentIdx. */
     int columnCount(const QModelIndex &parentIdx = QModelIndex()) const;
+    /** Defines the @a role data for the item at @a idx to @a value. */
     bool setData(const QModelIndex &idx, const QVariant &value, int role);
+    /** Returns the data stored under the given @a role for the item referred to by the @a idx. */
     QVariant data(const QModelIndex &idx, int role = Qt::DisplayRole) const;
+    /** Returns the item flags for the given @a idx. */
     Qt::ItemFlags flags(const QModelIndex &idx) const;
+    /** Returns the data for the given @a role and @a section in the header with the specified @a orientation. */
     QVariant headerData(int section, Qt::Orientation orientation, int role) const;
 
+    /** Returns a model index for the buddy of the item represented by @a idx. */
     QModelIndex buddy(const QModelIndex &idx) const;
 
+    /** Restores the default values for the item with the given @a parentIdx. */
     void restoreDefaults(const QModelIndex &parentIdx = QModelIndex());
+    /** Cache currently stored values. */
     void putBack();
 
 private:
 
-    /* Private member vars */
+    /** Holds the root item reference. */
     ModelItem *m_pRootItem;
 };
 
 
-/* The delegate is used for creating/handling the different editors for the
-   various types we support. This class forward the requests to the virtual
-   methods of our different ModelItems. If this is not possible the default
-   methods of QItemDelegate are used to get some standard behavior. Note: We
-   have to handle the proxy model ourself. I really don't understand why Qt is
-   not doing this for us. */
+/** QItemDelegate subclass used to create various Virtual System model editors. */
 class VirtualSystemDelegate : public QItemDelegate
 {
 public:
 
+    /** Constructs the Virtual System Delegate passing @a pParent to the base-class.
+      * @param  pProxy  Brings the proxy model reference used to redirect requests to. */
     VirtualSystemDelegate(QAbstractProxyModel *pProxy, QObject *pParent = NULL);
 
+    /** Returns the widget used to edit the item specified by @a idx for editing.
+      * @param  pParent      Brings the parent to be assigned for newly created editor.
+      * @param  styleOption  Bring the style option set for the newly created editor. */
     QWidget *createEditor(QWidget *pParent, const QStyleOptionViewItem &styleOption, const QModelIndex &idx) const;
+    /** Defines the contents of the given @a pEditor to the data for the item at the given @a idx. */
     void setEditorData(QWidget *pEditor, const QModelIndex &idx) const;
+    /** Defines the data for the item at the given @a idx in the @a pModel to the contents of the given @a pEditor. */
     void setModelData(QWidget *pEditor, QAbstractItemModel *pModel, const QModelIndex &idx) const;
+    /** Updates the geometry of the @a pEditor for the item with the given @a idx, according to the rectangle specified in the @a styleOption. */
     void updateEditorGeometry(QWidget *pEditor, const QStyleOptionViewItem &styleOption, const QModelIndex &idx) const;
 
+    /** Returns the size hint for the item at the given @a idx and specified @a styleOption. */
     QSize sizeHint(const QStyleOptionViewItem &styleOption, const QModelIndex &idx) const
     {
@@ -117,4 +136,5 @@
 
 #ifdef VBOX_WS_MAC
+    /** Filters @a pEvent if this object has been installed as an event filter for the watched @a pObject. */
     bool eventFilter(QObject *pObject, QEvent *pEvent);
 #endif /* VBOX_WS_MAC */
@@ -122,26 +142,34 @@
 private:
 
-    /* Private member vars */
+    /** Holds the proxy model reference used to redirect requests to. */
     QAbstractProxyModel *mProxy;
 };
 
 
+/** QSortFilterProxyModel subclass used as the Virtual System Sorting model. */
 class VirtualSystemSortProxyModel : public QSortFilterProxyModel
 {
 public:
 
+    /** Constructs the Virtual System Sorting model passing @a pParent to the base-class. */
     VirtualSystemSortProxyModel(QObject *pParent = NULL);
 
 protected:
 
+    /** Returns whether item in the row indicated by the given @a srcRow and @a srcParenIdx should be included in the model. */
     bool filterAcceptsRow(int srcRow, const QModelIndex & srcParenIdx) const;
+    /** Returns whether value of the item referred to by the given index @a leftIdx is less
+      * than the value of the item referred to by the given index @a rightIdx. */
     bool lessThan(const QModelIndex &leftIdx, const QModelIndex &rightIdx) const;
 
+    /** Holds the array of sorted Virtual System Description types. */
     static KVirtualSystemDescriptionType m_sortList[];
 
+    /** Holds the filtered list of Virtual System Description types. */
     QList<KVirtualSystemDescriptionType> m_filterList;
 };
 
 
+/** QWidget subclass used as the Appliance Editor widget. */
 class UIApplianceEditorWidget : public QIWithRetranslateUI<QWidget>
 {
@@ -150,24 +178,34 @@
 public:
 
+    /** Constructs the Appliance Editor widget passing @a pParent to the base-class. */
     UIApplianceEditorWidget(QWidget *pParent = NULL);
 
+    /** Returns whether the Appliance Editor has valid state. */
     bool isValid() const          { return m_pAppliance != NULL; }
+    /** Returns the currently set appliance reference. */
     CAppliance* appliance() const { return m_pAppliance; }
 
+    /** Returns the minimum guest RAM. */
     static int minGuestRAM()      { return m_minGuestRAM; }
+    /** Returns the maximum guest RAM. */
     static int maxGuestRAM()      { return m_maxGuestRAM; }
+    /** Returns the minimum guest CPU count. */
     static int minGuestCPUCount() { return m_minGuestCPUCount; }
+    /** Returns the maximum guest CPU count. */
     static int maxGuestCPUCount() { return m_maxGuestCPUCount; }
 
 public slots:
 
+    /** Restores the default values. */
     void restoreDefaults();
 
 protected:
 
+    /** Handles translation event. */
     virtual void retranslateUi();
 
-    /* Protected member vars */
+    /** Holds the currently set appliance reference. */
     CAppliance         *m_pAppliance;
+    /** Holds the Virtual System model reference. */
     VirtualSystemModel *m_pModel;
 
@@ -188,10 +226,14 @@
 private:
 
+    /** Performs Virtual System settings initialization. */
     static void initSystemSettings();
 
-    /* Private member vars */
+    /** Holds the minimum guest RAM. */
     static int m_minGuestRAM;
+    /** Holds the maximum guest RAM. */
     static int m_maxGuestRAM;
+    /** Holds the minimum guest CPU count. */
     static int m_minGuestCPUCount;
+    /** Holds the maximum guest CPU count. */
     static int m_maxGuestCPUCount;
 };
