0029018: Documentation - Provide user guide for Qt browser
[occt.git] / tools / DFBrowserPane / DFBrowserPane_AttributePaneModel.hxx
index 8177df3..047ea67 100644 (file)
@@ -46,35 +46,53 @@ public:
   //! \param theOrientation if horizontal, the values are applyed by rows, otherwise by columns
   void SetOrientation (const Qt::Orientation& theOrientation) { myOrientation = theOrientation; }
 
+  //! Returns table orientation for setting data values
+  //! \return thye current orientation
+  Qt::Orientation GetOrientation() const { return myOrientation; }
+
   //! Sets number of columns
   //! \param theColumnCount a column count
   void SetColumnCount (const int theColumnCount) { myColumnCount = theColumnCount; }
 
   //! Fills the model with the values. Store the values in a cache.
   //! \param theValues a container of values
-  Standard_EXPORT void Init(const QList<QVariant>& theValues);
+  Standard_EXPORT void Init (const QList<QVariant>& theValues);
 
   //! Fills the model header values for orientation.
   //! \param theValues a container of header text values
   //! \param theOrientation an orientation of header
-  Standard_EXPORT void SetHeaderValues(const QList<QVariant>& theValues, Qt::Orientation theOrientation);
+  Standard_EXPORT void SetHeaderValues (const QList<QVariant>& theValues, Qt::Orientation theOrientation);
+
+  //! Returns header values for orientation.
+  //! \param theValues a container of header text values
+  //! \param theOrientation an orientation of header
+  const QList<QVariant>& HeaderValues (Qt::Orientation theOrientation)
+    { return theOrientation == Qt::Horizontal ? myHorizontalHeaderValues : myVerticalHeaderValues; }
+
+  //! Returns indices of italic columns
+  //! \return indices of columns
+  const QList<int>& GetItalicColumns() const { return myItalicColumns; }
+
+  //! Sets indices of italic columns
+  //! \param theValues indices of columns
+  void SetItalicColumns (const QList<int>& theValues) { myItalicColumns = theValues; }
 
   //! Returns number of columns, depending on orientation: myColumnCount or size of values container
   //! \param theParent an index of the parent item
   //! \return an integer value
-  Standard_EXPORT virtual int columnCount(const QModelIndex& theParent = QModelIndex()) const Standard_OVERRIDE;
+  Standard_EXPORT virtual int columnCount (const QModelIndex& theParent = QModelIndex()) const Standard_OVERRIDE;
 
   //! Returns number of rows, depending on orientation: myColumnCount or size of values container
   //! \param theParent an index of the parent item
   //! \return an integer value
-  Standard_EXPORT virtual int rowCount(const QModelIndex& theParent = QModelIndex()) const Standard_OVERRIDE;
+  Standard_EXPORT virtual int rowCount (const QModelIndex& theParent = QModelIndex()) const Standard_OVERRIDE;
 
   //! Returns content of the model index for the given role, it is obtained from internal container of values
   //! It returns value only for DisplayRole.
   //! \param theIndex a model index
   //! \param theRole a view role
   //! \return value intepreted depending on the given role
-  Standard_EXPORT virtual QVariant data(const QModelIndex& theIndex, int theRole = Qt::DisplayRole) const Standard_OVERRIDE;
+  Standard_EXPORT virtual QVariant data (const QModelIndex& theIndex, int theRole = Qt::DisplayRole) const Standard_OVERRIDE;
 
   //! Returns content of the model index for the given role, it is obtainer from internal container of header values
   //! It returns value only for DisplayRole.
@@ -82,7 +100,7 @@ public:
   //! \param theIndex a model index
   //! \param theRole a view role
   //! \return value intepreted depending on the given role
-  Standard_EXPORT virtual QVariant headerData(int theSection, Qt::Orientation theOrientation, int theRole = Qt::DisplayRole) const Standard_OVERRIDE;
+  Standard_EXPORT virtual QVariant headerData (int theSection, Qt::Orientation theOrientation, int theRole = Qt::DisplayRole) const Standard_OVERRIDE;
 
   //! Returns flags for the item: ItemIsEnabled | Qt::ItemIsSelectable
   //! \param theIndex a model index
@@ -97,6 +115,8 @@ private:
   QMap< int, QList<QVariant> > myValuesMap; //!< container of values, filled in Init(), used in data()
   QList<QVariant> myHorizontalHeaderValues; //!< table horizontal header values
   QList<QVariant> myVerticalHeaderValues; //!< table vertical header values
+  QList<int> myItalicColumns; //!< indices of columns that should be visualized in gray and italic
+
 };
 
 #endif