123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197 |
- #include "mainwindow.h"
- #include "ui_mainwindow.h"
- #include <QFile>
- #include <QFileDialog>
- #include <QTextStream>
- #include <QMessageBox>
- #include <QFontDialog>
- #include <QFont>
- #include <QColorDialog>
- #include <QColor>
- #include <QPrinter>
- #include <QPrintDialog>
- MainWindow::MainWindow(QWidget *parent)
- : QMainWindow(parent)
- , ui(new Ui::MainWindow)
- {
- ui->setupUi(this);
- this->setCentralWidget(ui->textEdit);
- }
- MainWindow::~MainWindow()
- {
- delete ui;
- }
- void MainWindow::on_actionNew_triggered()
- {
- file_path = "";
- ui->textEdit->setText("");
- }
- void MainWindow::on_actionOpen_triggered()
- {
- QString filter = "All Files (*.*) ;; Text File (*.txt)";
- QString file_name = QFileDialog::getOpenFileName(this, "Open the file", QDir::homePath(), filter);
- QFile file(file_name);
- file_path = file_name;
- if (!file.open(QFile::ReadOnly | QFile::Text))
- {
- QMessageBox::warning(this, "Warning", "File not opened");
- return;
- }
- QTextStream in(&file);
- QString text = in.readAll();
- ui->textEdit->setText(text);
- file.close();
- }
- void MainWindow::on_actionClose_triggered()
- {
- close();
- }
- void MainWindow::on_actionSave_triggered()
- {
- QFile file(file_path);
- if (!file.open(QFile::WriteOnly | QFile::Text))
- {
- QMessageBox::warning(this, "Warning", "File not opened");
- return;
- }
- QTextStream out(&file);
- QString text = ui->textEdit->toPlainText();
- out << text;
- file.flush();
- file.close();
- }
- void MainWindow::on_actionSave_as_triggered()
- {
- QString filter = "All Files (*.*) ;; Text File (*.txt)";
- QString file_name = QFileDialog::getSaveFileName(this, "Open the file", QDir::homePath(), filter);
- QFile file(file_name);
- file_path = file_name;
- if (!file.open(QFile::WriteOnly | QFile::Text))
- {
- QMessageBox::warning(this, "Warning", "File not opened");
- return;
- }
- QTextStream out(&file);
- QString text = ui->textEdit->toPlainText();
- out << text;
- file.flush();
- file.close();
- }
- void MainWindow::on_actionCut_triggered()
- {
- ui->textEdit->cut();
- }
- void MainWindow::on_actionCopy_triggered()
- {
- ui->textEdit->copy();
- }
- void MainWindow::on_actionPaste_triggered()
- {
- ui->textEdit->paste();
- }
- void MainWindow::on_actionUndo_triggered()
- {
- ui->textEdit->undo();
- }
- void MainWindow::on_actionRedo_triggered()
- {
- ui->textEdit->redo();
- }
- void MainWindow::on_actionAbout_QT_triggered()
- {
- QMessageBox::aboutQt(this, "About QT");
- }
- void MainWindow::on_actionAbout_triggered()
- {
- QString about_text = "Auther:\tStranger\n";
- about_text += "Program:\tNotepad\n";
- about_text += "Created:\t23.11.22\n";
- about_text += "Notabug:\tStranger135216341";
- QMessageBox::about(this, "About Notepad", about_text);
- }
- void MainWindow::on_actionFont_triggered()
- {
- bool ok;
- QFont font = QFontDialog::getFont(&ok, this);
- if (ok)
- {
- ui->textEdit->setFont(font);
- } else return;
- }
- void MainWindow::on_actionColor_triggered()
- {
- QColor color = QColorDialog::getColor(Qt::white, this, "Choose color");
- if (color.isValid())
- {
- ui->textEdit->setTextColor(color);
- }
- }
- void MainWindow::on_actionBackground_triggered()
- {
- QColor color = QColorDialog::getColor(Qt::white, this, "Choose color");
- if (color.isValid())
- {
- ui->textEdit->setTextBackgroundColor(color);
- }
- }
- void MainWindow::on_actionBackground_Color_Edit_triggered()
- {
- QColor color = QColorDialog::getColor(Qt::white, this, "Choose color");
- if (color.isValid())
- {
- ui->textEdit->setPalette(color);
- }
- }
- void MainWindow::on_actionPrint_triggered()
- {
- QPrinter printer;
- printer.setPrinterName("desier printer name");
- QPrintDialog dialog(&printer, this);
- if (dialog.exec() == QDialog::Rejected) return;
- ui->textEdit->print(&printer);
- }
|