aboutsummaryrefslogtreecommitdiffstats
path: root/qt-ui/printdialog.cpp
diff options
context:
space:
mode:
authorGravatar Lubomir I. Ivanov <neolit123@gmail.com>2013-07-09 15:37:53 +0300
committerGravatar Lubomir I. Ivanov <neolit123@gmail.com>2013-07-09 21:01:42 +0300
commit52534bfb686ade48938768bb137d82c0bb849efc (patch)
tree066a148d3170dadcbb4d0de64762541cff5dfa18 /qt-ui/printdialog.cpp
parent35356e364d2f0765c04c6d8838ff403743d20ae3 (diff)
downloadsubsurface-52534bfb686ade48938768bb137d82c0bb849efc.tar.gz
Print: add UI for a print dialog
PrintOptions is a QWidget class to be used as an addition to a future print dialog (possibly based on QPrintDialog). Currently only contains a couple of radio buttons. PrintDialog (printdialog.cpp/h) which is a basic QDialog is currently added for testing only and it holds an instance of PrintOptions. Calling File->Print opens this test dialog for now. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Diffstat (limited to 'qt-ui/printdialog.cpp')
-rw-r--r--qt-ui/printdialog.cpp42
1 files changed, 42 insertions, 0 deletions
diff --git a/qt-ui/printdialog.cpp b/qt-ui/printdialog.cpp
new file mode 100644
index 000000000..c1aff2a9b
--- /dev/null
+++ b/qt-ui/printdialog.cpp
@@ -0,0 +1,42 @@
+#include "printdialog.h"
+
+#include <QDebug>
+#include <QPushButton>
+#include <QVBoxLayout>
+
+PrintDialog *PrintDialog::instance()
+{
+ static PrintDialog *self = new PrintDialog();
+ self->setAttribute(Qt::WA_QuitOnClose, false);
+ return self;
+}
+
+PrintDialog::PrintDialog(QWidget *parent, Qt::WindowFlags f)
+{
+ // options template (are we storing these in the settings?)
+ struct options tempOptions = {options::PRETTY, 0, 2, false, 65, 15, 12};
+ printOptions = tempOptions;
+ /* temporary.
+ * add the PrintOptions widget and a Print button for testing purposes. */
+ optionsWidget = PrintOptions::instance();
+ QVBoxLayout *layout = new QVBoxLayout(this);
+ setLayout(layout);
+ layout->addWidget(optionsWidget);
+
+ QPushButton *printButton = new QPushButton(tr("&Print"));
+ connect(printButton, SIGNAL(clicked(bool)), this, SLOT(printClicked()));
+ layout->addWidget(printButton);
+
+ setFixedSize(600, 400);
+ setWindowTitle("Print");
+}
+
+void PrintDialog::runDialog()
+{
+ exec();
+}
+
+void PrintDialog::printClicked(void)
+{
+ // nop for now
+}