Quark  0.1
BasicGridModel.h++
Go to the documentation of this file.
1 #ifndef __libquark_gui_BasicGridModel_hxx
2 #define __libquark_gui_BasicGridModel_hxx
3 
5 
6 namespace quark {
7 namespace gui {
8 
19 template<class T, class IS = QDataStream, class OS = QDataStream>
20 class BasicGridModel : public AbstractGridModel<T, IS, OS>
21 {
22  public:
23 
30  BasicGridModel(int rows = 0, int columns = 0, QObject *parent = NULL);
31 
33  virtual ~BasicGridModel();
34 
35  virtual QPoint positionOf(const T *item) const;
36 
37  protected:
38 
39  virtual void resizeData(int rows, int columns);
40  virtual T *getAt(int row, int column) const;
41  virtual T *takeAt(int row, int column);
42  virtual void setAt(T *item, int row, int column);
43  virtual void removeAll();
44 
45  private:
46 
47  QVector<T *> _data;
48 };
49 
50 #include <quark/BasicGridModelImpl.h++>
51 
52 } // namespace gui
53 } // namespace quark
54 
55 #endif // __libquark_gui_BasicGridModel_hxx
56 
int columns() const
Returns the number of columns in the model.
virtual ~BasicGridModel()
Destructor.
virtual T * takeAt(int row, int column)
Removes and returns the item at the given row and column.
int rows() const
Returns the number of rows in the model.
virtual QModelIndex parent(const QModelIndex &index) const
Specified by QAbstractItemModel.
virtual void setAt(T *item, int row, int column)
Sets the item at the given row and column.
BasicGridModel(int rows=0, int columns=0, QObject *parent=NULL)
Constructs a new BasicGridModel with the given dimensions.
Definition: BarChartView.h++:6
virtual void resizeData(int rows, int columns)
Resizes the model.
virtual void removeAll()
Removes all items from the model.
A default concrete implementation of AbstractGridModel that stores items in a QVector.
Definition: BasicGridModel.h++:20
virtual QPoint positionOf(const T *item) const
Returns the row and column position of the given item in the model.
virtual T * getAt(int row, int column) const
Returns the item at the given row and column.
An abstract base class for grid data models, i.e., models in which every cell contains the same type ...
Definition: AbstractGridModel.h++:32