diff libgui/src/m-editor/file-editor-tab.cc @ 16440:aaf024ac8015

Add editor print menu/toolbutton implementation * libgui/src/icons/fileprint.png: New file. * file-editor-tab.cc, file-editor-tab.h (file_editor_tab::print_file): New function. (includes): Added include for Qsci/qsciprinter.h, QPrintDialog. * file-editor.cc, file-editor.h (file_editor::request_print_file): New function. (file_editor::construct): Add new print QAction to menu and toolbar. (file::editor::fetab_print_file): New signal. * libgui/src/resource.qrc: Added fileprint.png as a resource. * libgui/src/module.mk: Added fileprint.png as an icon.
author John Donoghue <john.donoghue@ieee.org>
date Thu, 04 Apr 2013 22:22:17 -0400
parents 919796a440c6
children 7a2ee6ea7800
line wrap: on
line diff
--- a/libgui/src/m-editor/file-editor-tab.cc	Fri Apr 05 16:21:38 2013 -0700
+++ b/libgui/src/m-editor/file-editor-tab.cc	Thu Apr 04 22:22:17 2013 -0400
@@ -35,6 +35,7 @@
 #include <Qsci/qscilexerperl.h>
 #include <Qsci/qscilexerbatch.h>
 #include <Qsci/qscilexerdiff.h>
+#include <Qsci/qsciprinter.h>
 #include "resource-manager.h"
 #include <QApplication>
 #include <QFileDialog>
@@ -42,6 +43,7 @@
 #include <QTextStream>
 #include <QVBoxLayout>
 #include <QInputDialog>
+#include <QPrintDialog>
 
 #include "file-editor-tab.h"
 #include "file-editor.h"
@@ -332,6 +334,24 @@
 }
 
 void
+file_editor_tab::print_file (const QWidget* ID)
+{
+  if (ID != this)
+    return;
+
+  QsciPrinter * printer = new QsciPrinter( QPrinter::HighResolution );
+
+  QPrintDialog printDlg(printer, this);
+
+  if(printDlg.exec() == QDialog::Accepted)
+    {
+       printer->printRange(_edit_area);
+    }
+  delete printer;
+}
+
+
+void
 file_editor_tab::run_file_callback (void)
 {
   // Maybe someday we will do something here?