ginebra2/GridView.h
changeset 16 3c88a81ff781
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ginebra2/GridView.h	Fri Oct 15 17:30:59 2010 -0400
@@ -0,0 +1,43 @@
+#ifndef GRIDVIEW_H
+#define GRIDVIEW_H
+
+#include <QGraphicsWidget>
+#include <QGraphicsGridLayout>
+
+
+namespace GVA {
+
+class GridView : public QGraphicsWidget
+{
+public:
+    explicit GridView(QGraphicsItem *parent = 0);
+    ~GridView();
+
+    void addItem(QGraphicsLayoutItem *item);
+
+    enum LayoutMode{
+        Normal,
+        Vertical
+    };
+
+    void setMode(LayoutMode mode);
+    LayoutMode mode() const { return m_mode; }
+
+    void setColumnRowCounts(int columns, int rows);
+    int columnCount() const { return m_columnCount; }
+    int rowCount() const { return m_rowCount; }
+
+    void clear();
+    void rebuildLayout();
+
+protected:
+    QGraphicsGridLayout *m_gridLayout;
+    LayoutMode m_mode;
+    QList<QGraphicsLayoutItem *> m_items;
+    int m_columnCount;
+    int m_rowCount;
+};
+
+}  // namespace
+
+#endif // GRIDVIEW_H