aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/MainUI.cpp23
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/MainUI.h1
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/MainUI.ui11
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/lumina-textedit.pro2
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/syntax_rules/cpp.syntax2
5 files changed, 33 insertions, 6 deletions
diff --git a/src-qt5/desktop-utils/lumina-textedit/MainUI.cpp b/src-qt5/desktop-utils/lumina-textedit/MainUI.cpp
index 65979c46..52a29c01 100644
--- a/src-qt5/desktop-utils/lumina-textedit/MainUI.cpp
+++ b/src-qt5/desktop-utils/lumina-textedit/MainUI.cpp
@@ -18,6 +18,8 @@
#include <QTimer>
#include <QMessageBox>
#include <QActionGroup>
+#include <QPrinter>
+#include <QPrintDialog>
#include "PlainTextEditor.h"
MainUI::MainUI() : QMainWindow(), ui(new Ui::MainUI){
@@ -87,6 +89,7 @@ MainUI::MainUI() : QMainWindow(), ui(new Ui::MainUI){
connect(ui->actionClose_File, SIGNAL(triggered()), this, SLOT(CloseFile()) );
connect(ui->actionSave_File, SIGNAL(triggered()), this, SLOT(SaveFile()) );
connect(ui->actionSave_File_As, SIGNAL(triggered()), this, SLOT(SaveFileAs()) );
+ connect(ui->actionPrint, SIGNAL(triggered()), this, SLOT(Print()) );
connect(ui->menuSyntax_Highlighting, SIGNAL(triggered(QAction*)), this, SLOT(UpdateHighlighting(QAction*)) );
connect(tabWidget, SIGNAL(currentChanged(int)), this, SLOT(tabChanged()) );
connect(tabWidget, SIGNAL(tabCloseRequested(int)), this, SLOT(tabClosed(int)) );
@@ -144,6 +147,7 @@ void MainUI::updateIcons(){
ui->actionClose_File->setIcon(LXDG::findIcon("document-close") );
ui->actionSave_File->setIcon(LXDG::findIcon("document-save") );
ui->actionSave_File_As->setIcon(LXDG::findIcon("document-save-as") );
+ ui->actionPrint->setIcon(LXDG::findIcon("printer") );
ui->actionFind->setIcon(LXDG::findIcon("edit-find") );
ui->actionReplace->setIcon(LXDG::findIcon("edit-find-replace") );
ui->menuSyntax_Highlighting->setIcon( LXDG::findIcon("format-text-color") );
@@ -239,7 +243,20 @@ void MainUI::SaveFile(){
void MainUI::SaveFileAs(){
PlainTextEditor *cur = currentEditor();
if(cur==0){ return; }
- cur->SaveFile(true);
+ cur->SaveFile(true);
+}
+
+void MainUI::Print() {
+ QPrinter *print = new QPrinter(QPrinter::HighResolution);
+ QPrintDialog dialog(print, NULL);
+ dialog.setWindowTitle(tr("Print Content"));
+ dialog.setOptions( QAbstractPrintDialog::PrintCurrentPage | QAbstractPrintDialog::PrintToFile );
+ if(currentEditor()->textCursor().hasSelection()) {
+ dialog.setOptions( QAbstractPrintDialog::PrintCurrentPage | QAbstractPrintDialog::PrintToFile | QAbstractPrintDialog::PrintSelection );
+ }
+ if(dialog.exec() == QDialog::Accepted) {
+ currentEditor()->print(print);
+ }
}
void MainUI::fontChanged(const QFont&){
@@ -422,7 +439,7 @@ void MainUI::findNext(){
if(!found){
//Try starting back at the top of the file
cur->moveCursor(QTextCursor::Start);
- cur->find( ui->line_find->text(), ui->tool_find_casesensitive->isChecked() ? QTextDocument::FindCaseSensitively : QTextDocument::FindFlags() );
+ cur->find( ui->line_find->text(), ui->tool_find_casesensitive->isChecked() ? QTextDocument::FindCaseSensitively : QTextDocument::FindFlags() );
}
}
@@ -433,7 +450,7 @@ void MainUI::findPrev(){
if(!found){
//Try starting back at the bottom of the file
cur->moveCursor(QTextCursor::End);
- cur->find( ui->line_find->text(), ui->tool_find_casesensitive->isChecked() ? QTextDocument::FindCaseSensitively | QTextDocument::FindBackward : QTextDocument::FindBackward );
+ cur->find( ui->line_find->text(), ui->tool_find_casesensitive->isChecked() ? QTextDocument::FindCaseSensitively | QTextDocument::FindBackward : QTextDocument::FindBackward );
}
}
diff --git a/src-qt5/desktop-utils/lumina-textedit/MainUI.h b/src-qt5/desktop-utils/lumina-textedit/MainUI.h
index 845a4a19..963443b6 100644
--- a/src-qt5/desktop-utils/lumina-textedit/MainUI.h
+++ b/src-qt5/desktop-utils/lumina-textedit/MainUI.h
@@ -52,6 +52,7 @@ private slots:
void CloseFile(); //current file only
void SaveFile();
void SaveFileAs();
+ void Print();
void fontChanged(const QFont &font);
void updateStatusTip();
void changeFontSize(int newFontSize);
diff --git a/src-qt5/desktop-utils/lumina-textedit/MainUI.ui b/src-qt5/desktop-utils/lumina-textedit/MainUI.ui
index aa7669b2..a09f1bb1 100644
--- a/src-qt5/desktop-utils/lumina-textedit/MainUI.ui
+++ b/src-qt5/desktop-utils/lumina-textedit/MainUI.ui
@@ -185,7 +185,7 @@
<x>0</x>
<y>0</y>
<width>505</width>
- <height>20</height>
+ <height>21</height>
</rect>
</property>
<property name="contextMenuPolicy">
@@ -202,6 +202,7 @@
<addaction name="actionSave_File"/>
<addaction name="actionSave_File_As"/>
<addaction name="separator"/>
+ <addaction name="actionPrint"/>
<addaction name="actionClose"/>
</widget>
<widget class="QMenu" name="menuView">
@@ -433,6 +434,14 @@
<string>Right</string>
</property>
</action>
+ <action name="actionPrint">
+ <property name="text">
+ <string>Print</string>
+ </property>
+ <property name="shortcut">
+ <string>Ctrl+P</string>
+ </property>
+ </action>
</widget>
<resources/>
<connections/>
diff --git a/src-qt5/desktop-utils/lumina-textedit/lumina-textedit.pro b/src-qt5/desktop-utils/lumina-textedit/lumina-textedit.pro
index 9dfd8fea..df9093e6 100644
--- a/src-qt5/desktop-utils/lumina-textedit/lumina-textedit.pro
+++ b/src-qt5/desktop-utils/lumina-textedit/lumina-textedit.pro
@@ -1,6 +1,6 @@
include("$${PWD}/../../OS-detect.pri")
-QT += core gui widgets
+QT += core gui widgets printsupport
TARGET = lumina-textedit
target.path = $${L_BINDIR}
diff --git a/src-qt5/desktop-utils/lumina-textedit/syntax_rules/cpp.syntax b/src-qt5/desktop-utils/lumina-textedit/syntax_rules/cpp.syntax
index 4efd7fb3..ada90b24 100644
--- a/src-qt5/desktop-utils/lumina-textedit/syntax_rules/cpp.syntax
+++ b/src-qt5/desktop-utils/lumina-textedit/syntax_rules/cpp.syntax
@@ -27,7 +27,7 @@
},
{
"name": "keywords",
- "words": ["char", "class", "const", "double", "enum", "explicit", "extern", "float", "friend", "inline", "int", "long", "namespace", "operator", "private", "protected", "public", "short", "signals", "signed", "slots", "static", "struct", "template", "typedef", "typename", "union", "using","unsigned", "virtual", "void", "volatile", "true", "false", "bool"],
+ "words": ["char", "class", "const", "double", "enum", "explicit", "extern", "float", "friend", "inline", "int", "long", "namespace", "operator", "private", "protected", "public", "short", "signals", "signed", "slots", "static", "struct", "template", "typedef", "typename", "union", "using","unsigned", "virtual", "void", "volatile", "true", "false", "bool", "and", "or", "not"],
"foreground": "colors/keyword",
"font_weight": "bold"
},
bgstack15