diff --git a/data.qrc b/data.qrc
index 9c654af..e712d32 100644
--- a/data.qrc
+++ b/data.qrc
@@ -19,5 +19,6 @@
data/images/save_as.png
data/images/underline.png
data/images/add.png
+ data/images/font-color.png
diff --git a/data/images/font-color.png b/data/images/font-color.png
new file mode 100644
index 0000000..9cbbd43
Binary files /dev/null and b/data/images/font-color.png differ
diff --git a/mainwindow.cpp b/mainwindow.cpp
index b37664a..6eb2ac8 100644
--- a/mainwindow.cpp
+++ b/mainwindow.cpp
@@ -6,6 +6,7 @@
#include
#include
#include
+#include
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
@@ -212,3 +213,91 @@ void MainWindow::on_actionEditCut_triggered()
}
}
+void MainWindow::setBold(){
+ QWidget *focused = QApplication::focusWidget();
+ QTextEdit* textEdit = qobject_cast(focused);
+
+ if (textEdit) {
+ QTextCursor cursor = textEdit->textCursor();
+ if (cursor.hasSelection()) {
+ QTextCharFormat format;
+ QFont font = textEdit->currentFont();
+ font.setBold(!font.bold());
+ format.setFont(font);
+ cursor.mergeCharFormat(format);
+ }
+ }
+}
+
+void MainWindow::on_actionBold_triggered()
+{
+ this->setBold();
+}
+
+
+
+void MainWindow::setItalic(){
+ QWidget *focused = QApplication::focusWidget();
+ QTextEdit* textEdit = qobject_cast(focused);
+
+ if (textEdit) {
+ QTextCursor cursor = textEdit->textCursor();
+ if (cursor.hasSelection()) {
+ QTextCharFormat format;
+ QFont font = textEdit->currentFont();
+ font.setItalic(!font.italic());
+ format.setFont(font);
+ cursor.mergeCharFormat(format);
+ }
+ }
+}
+
+void MainWindow::on_actionItalic_triggered()
+{
+ this->setItalic();
+}
+
+
+void MainWindow::setUnderline(){
+ QWidget *focused = QApplication::focusWidget();
+ QTextEdit* textEdit = qobject_cast(focused);
+
+ if (textEdit) {
+ QTextCursor cursor = textEdit->textCursor();
+ if (cursor.hasSelection()) {
+ QTextCharFormat format;
+ QFont font = textEdit->currentFont();
+ font.setUnderline(!font.underline());
+ format.setFont(font);
+ cursor.mergeCharFormat(format);
+ }
+ }
+}
+
+void MainWindow::on_actionUnderline_triggered()
+{
+ this->setUnderline();
+}
+
+
+
+void MainWindow::setColor(){
+ QWidget *focused = QApplication::focusWidget();
+ QTextEdit* textEdit = qobject_cast(focused);
+
+ if (textEdit) {
+ QTextCursor cursor = textEdit->textCursor();
+ if (cursor.hasSelection()) {
+ QTextCharFormat format;
+ format.setForeground(QBrush(QColor(255,0,0)));
+ cursor.mergeCharFormat(format);
+ }
+ }
+
+}
+
+void MainWindow::on_actionColor_triggered()
+{
+ this->setColor();
+}
+
diff --git a/mainwindow.h b/mainwindow.h
index 7c78516..39d3414 100644
--- a/mainwindow.h
+++ b/mainwindow.h
@@ -26,6 +26,10 @@ public:
void addNewPath();
void addNewStep();
void exportHTMLMap();
+ void setBold();
+ void setItalic();
+ void setUnderline();
+ void setColor();
private slots:
void on_pushButton_clicked();
@@ -43,6 +47,14 @@ private slots:
void on_actionEditCut_triggered();
+ void on_actionBold_triggered();
+
+ void on_actionItalic_triggered();
+
+ void on_actionUnderline_triggered();
+
+ void on_actionColor_triggered();
+
private:
Ui::MainWindow *ui;
QString currentFile;
diff --git a/mainwindow.ui b/mainwindow.ui
index 2f533da..29a3dc8 100644
--- a/mainwindow.ui
+++ b/mainwindow.ui
@@ -38,9 +38,6 @@
Path information
-
- Qt::AlignmentFlag::AlignLeading|Qt::AlignmentFlag::AlignLeft|Qt::AlignmentFlag::AlignTop
-
-
@@ -52,10 +49,7 @@
- QFrame::Shape::StyledPanel
-
-
- QFrame::Shadow::Raised
+ QFrame::NoFrame
@@ -279,19 +273,23 @@
Step information
-
- Qt::AlignmentFlag::AlignLeading|Qt::AlignmentFlag::AlignLeft|Qt::AlignmentFlag::AlignTop
-
-
- QFrame::Shape::StyledPanel
-
-
- QFrame::Shadow::Raised
+ QFrame::NoFrame
+
+
+
+ 250
+ 100
+ 391
+ 121
+
+
+
@@ -302,7 +300,7 @@
0
0
800
- 23
+ 21
@@ -378,7 +380,7 @@
New File
- QAction::MenuRole::NoRole
+ QAction::NoRole
@@ -390,7 +392,7 @@
Save
- QAction::MenuRole::NoRole
+ QAction::NoRole
@@ -402,7 +404,7 @@
Save as
- QAction::MenuRole::NoRole
+ QAction::NoRole
@@ -414,7 +416,7 @@
Print
- QAction::MenuRole::NoRole
+ QAction::NoRole
@@ -426,7 +428,7 @@
Copy
- QAction::MenuRole::NoRole
+ QAction::NoRole
@@ -438,7 +440,7 @@
Paste
- QAction::MenuRole::NoRole
+ QAction::NoRole
@@ -450,7 +452,7 @@
Cut
- QAction::MenuRole::NoRole
+ QAction::NoRole
@@ -462,7 +464,7 @@
Undo
- QAction::MenuRole::NoRole
+ QAction::NoRole
@@ -474,7 +476,7 @@
Redo
- QAction::MenuRole::NoRole
+ QAction::NoRole
@@ -486,7 +488,43 @@
Open file
- QAction::MenuRole::NoRole
+ QAction::NoRole
+
+
+
+
+
+ :/data/images/data/images/bold.png:/data/images/data/images/bold.png
+
+
+ Bold
+
+
+
+
+
+ :/data/images/data/images/italic.png:/data/images/data/images/italic.png
+
+
+ Italic
+
+
+
+
+
+ :/data/images/data/images/underline.png:/data/images/data/images/underline.png
+
+
+ Underline
+
+
+
+
+
+ :/data/images/data/images/font-color.png:/data/images/data/images/font-color.png
+
+
+ Color
diff --git a/path.cpp b/path.cpp
index 7a421f7..26a2558 100644
--- a/path.cpp
+++ b/path.cpp
@@ -75,7 +75,7 @@ Path::Path(QFile *file){
QJsonArray stepsArray = json["steps"].toArray();
for (const QJsonValue &stepValue : stepsArray) {
QJsonObject stepObj = stepValue.toObject();
- //step.append(Step(stepObj));
+ step.append(Step(stepObj));
}
}