summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Tomaz Canabrava <tomaz.canabrava@intel.com>2014-05-30 14:38:27 -0300
committerGravatar Dirk Hohndel <dirk@hohndel.org>2014-06-01 15:54:07 -0700
commit1c34c831a4bd51a94d953828ea08ab0db3373049 (patch)
treef39b37da3ef72cf396b7f98045eb098570c381f1
parent1556b723a26982204f3d648c5e1b98d6eda40a8c (diff)
downloadsubsurface-1c34c831a4bd51a94d953828ea08ab0db3373049.tar.gz
Add stub for a widget to show the dive pictures.
This has a few classes: the model is the list of pictures for the current dive, the delegate is how this pictures will be displayed on screen, the widget is the collection of delegates, and the DivePictureThumbnailThread is a worker-thread to generate the thumbnails so the UI will not freeze. [Dirk Hohndel: added the new files to subsurface.pro] Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r--CMakeLists.txt1
-rw-r--r--qt-ui/divepicturewidget.cpp26
-rw-r--r--qt-ui/divepicturewidget.h29
-rw-r--r--subsurface.pro2
4 files changed, 58 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e19032c49..ab46d3748 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -138,6 +138,7 @@ SET(SUBSURFACE_INTERFACE
qt-ui/groupedlineedit.cpp
qt-ui/usermanual.cpp
qt-ui/divelogexportdialog.cpp
+ qt-ui/divepicturewidget.cpp
)
#the profile widget
diff --git a/qt-ui/divepicturewidget.cpp b/qt-ui/divepicturewidget.cpp
new file mode 100644
index 000000000..aea415725
--- /dev/null
+++ b/qt-ui/divepicturewidget.cpp
@@ -0,0 +1,26 @@
+#include "divepicturewidget.h"
+
+void DivePictureDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
+{
+ QStyledItemDelegate::paint(painter, option, index);
+}
+
+int DivePictureModel::columnCount(const QModelIndex &parent) const
+{
+
+}
+
+QVariant DivePictureModel::data(const QModelIndex &index, int role) const
+{
+
+}
+
+int DivePictureModel::rowCount(const QModelIndex &parent) const
+{
+
+}
+
+DivePictureView::DivePictureView(QWidget *parent): QListView(parent)
+{
+
+}
diff --git a/qt-ui/divepicturewidget.h b/qt-ui/divepicturewidget.h
new file mode 100644
index 000000000..260d3caa7
--- /dev/null
+++ b/qt-ui/divepicturewidget.h
@@ -0,0 +1,29 @@
+#ifndef DIVEPICTUREWIDGET_H
+#define DIVEPICTUREWIDGET_H
+
+#include <QAbstractTableModel>
+#include <QStyledItemDelegate>
+#include <QListView>
+#include <QThread>
+
+class DivePictureModel : QAbstractTableModel {
+ virtual int columnCount(const QModelIndex &parent = QModelIndex()) const;
+ virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
+ virtual int rowCount(const QModelIndex &parent = QModelIndex()) const;
+};
+
+class DivePictureDelegate : QStyledItemDelegate {
+ virtual void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const;
+};
+
+class DivePictureView : public QListView{
+ Q_OBJECT
+public:
+ DivePictureView(QWidget *parent);
+};
+
+class DivePictureThumbnailThread : public QThread {
+
+};
+
+#endif \ No newline at end of file
diff --git a/subsurface.pro b/subsurface.pro
index 6eb2bc879..539eb0ca0 100644
--- a/subsurface.pro
+++ b/subsurface.pro
@@ -40,6 +40,7 @@ HEADERS = \
qt-ui/completionmodels.h \
qt-ui/divecomputermanagementdialog.h \
qt-ui/divelistview.h \
+ qt-ui/divepicturewidget.h \
qt-ui/diveplanner.h \
qt-ui/downloadfromdivecomputer.h \
qt-ui/globe.h \
@@ -112,6 +113,7 @@ SOURCES = \
qt-ui/completionmodels.cpp \
qt-ui/divecomputermanagementdialog.cpp \
qt-ui/divelistview.cpp \
+ qt-ui/divepicturewidget.cpp \
qt-ui/diveplanner.cpp \
qt-ui/downloadfromdivecomputer.cpp \
qt-ui/globe.cpp \