summaryrefslogtreecommitdiffstats
path: root/qt-ui/printlayout.cpp
diff options
context:
space:
mode:
authorGravatar Lubomir I. Ivanov <neolit123@gmail.com>2013-07-10 15:34:57 +0300
committerGravatar Lubomir I. Ivanov <neolit123@gmail.com>2013-07-10 15:34:57 +0300
commit41bad7695ee40571062a370610e6ca518295e3c7 (patch)
tree6c3d960f36440edb3e5532a84400811004853d0a /qt-ui/printlayout.cpp
parent74f989bc46a06c124283fa851a06dd093f817c96 (diff)
downloadsubsurface-41bad7695ee40571062a370610e6ca518295e3c7.tar.gz
Print: add a class for print layouting
PrintLayout is a class that will handle the layouting part of dive profiles, text, tables depending on the settings of a QPrinter and the PrinterDialog and PrintOptions instances. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Diffstat (limited to 'qt-ui/printlayout.cpp')
-rw-r--r--qt-ui/printlayout.cpp50
1 files changed, 50 insertions, 0 deletions
diff --git a/qt-ui/printlayout.cpp b/qt-ui/printlayout.cpp
new file mode 100644
index 000000000..7716883e8
--- /dev/null
+++ b/qt-ui/printlayout.cpp
@@ -0,0 +1,50 @@
+#include <QPainter>
+#include "mainwindow.h"
+#include "printlayout.h"
+
+/*
+struct options {
+ enum { PRETTY, TABLE, TWOPERPAGE } type;
+ int print_selected;
+ int color_selected;
+ bool notes_up;
+ int profile_height, notes_height, tanks_height;
+};
+*/
+
+PrintLayout::PrintLayout(PrintDialog *dialogPtr, QPrinter *printerPtr, struct options *optionsPtr)
+{
+ dialog = dialogPtr;
+ printer = printerPtr;
+ printOptions = optionsPtr;
+}
+
+void PrintLayout::print()
+{
+ switch (printOptions->type) {
+ case options::PRETTY:
+ printSixDives();
+ break;
+ case options::TWOPERPAGE:
+ printTwoDives();
+ break;
+ case options::TABLE:
+ printTable();
+ break;
+ }
+}
+
+void PrintLayout::printSixDives()
+{
+ // nop
+}
+
+void PrintLayout::printTwoDives()
+{
+ // nop
+}
+
+void PrintLayout::printTable()
+{
+ // nop
+}