X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=src%2Fedit%2Feditor.cpp;h=ffdc94c9cfe89498d8448da2c341006d4d514d5b;hb=384b67e0232e553151dfdc9caffd255c5f597d2b;hp=b507a6fb6ee796149135d1c6dc044988657ce2fa;hpb=abfcef957ac4399d169c9e18404304acc377c1c3;p=vlp.git diff --git a/src/edit/editor.cpp b/src/edit/editor.cpp index b507a6f..ffdc94c 100644 --- a/src/edit/editor.cpp +++ b/src/edit/editor.cpp @@ -5,7 +5,6 @@ #include #include #include -#include #include #include #include @@ -17,9 +16,13 @@ #include "ProgramStructureDialog.h" #include "UnitStructureDialog.h" #include "PreferencesDialog.h" +#include "FindDialog.h" #include "editor.h" +namespace loglan { +namespace vlp { + /** * Editor constructor. Initializes and sets variables of Loglan Editor. * @@ -32,6 +35,7 @@ Editor::Editor(int argc, char **argv) if (argc > 1) { strcpy(HomeDir, argv[1]); + fprintf(stderr, "EDIT: HomeDir inited with: %s (%s)\n", HomeDir, argv[1]); } find_text = ""; @@ -170,7 +174,8 @@ void Editor::compile(int mode) void Editor::on_actionNew_triggered() { on_actionClear_all_triggered(); - fname.sprintf("%s", "");} + fname.sprintf("%s", ""); +} /** * Displays additional window @@ -245,44 +250,18 @@ void Editor::on_actionClear_all_triggered() */ void Editor::on_actionFind_triggered() { - QDialog dlg(this, Qt::Dialog); - - QLineEdit *tmpQLineEdit; - tmpQLineEdit = new QLineEdit("", &dlg); - tmpQLineEdit->setGeometry(60, 10, 180, 30); - - QLabel *tmpQLabel; - tmpQLabel = new QLabel(&dlg); - tmpQLabel->setGeometry(10, 10, 50, 30); - - tmpQLabel->setText("Text:"); - - QCheckBox *tmpQRadioButton; - tmpQRadioButton = new QCheckBox("Case sensitive", &dlg); - tmpQRadioButton->setGeometry(70, 50, 150, 30); - tmpQRadioButton->setAutoRepeat(FALSE); - - QPushButton *okbtn, *cbtn; - okbtn = new QPushButton("Find", &dlg); - okbtn->setGeometry(260, 10, 100, 30); - okbtn->setDefault(TRUE); - connect(okbtn,SIGNAL(clicked()), &dlg, SLOT(accept())); + dialog::FindDialog dialog(this); - cbtn = new QPushButton("Close", &dlg); - cbtn->setGeometry(260, 50, 100, 30); - connect(cbtn, SIGNAL(clicked()), &dlg, SLOT(reject())); - - dlg.resize(380, 90); - - if (dlg.exec()) { - sensitive = tmpQRadioButton->isChecked(); - find_text = tmpQLineEdit->text(); + if (dialog.exec()) { + sensitive = dialog.isCaseSensitive(); + find_text = dialog.getSearchText(); QTextDocument::FindFlags flags = 0; if (sensitive) { flags |= QTextDocument::FindCaseSensitively; } + editor->find(find_text, flags); } } @@ -309,7 +288,7 @@ void Editor::on_actionFind_Next_triggered() */ void Editor::on_actionPreferences_triggered() { - PreferencesDialog dialog(this); + dialog::PreferencesDialog dialog(this); dialog.setCompilerPath(compiler_path); dialog.setFilesPath(file_path); @@ -350,7 +329,7 @@ void Editor::on_actionCompile_Gen_triggered() void Editor::on_actionProgram_structure_triggered() { - ProgramStructureDialog dialog(this); + dialog::ProgramStructureDialog dialog(this); if (dialog.exec()) { editor->textCursor().insertText(dialog.getCode()); @@ -359,13 +338,16 @@ void Editor::on_actionProgram_structure_triggered() void Editor::on_actionUnit_structure_triggered() { - UnitStructureDialog dialog(this); + dialog::UnitStructureDialog dialog(this); if (dialog.exec()) { editor->textCursor().insertText(dialog.getCode()); } } +} +} + /** * Program main function. * argv[1] is mandatory and should be a path to the home directory of @@ -377,7 +359,7 @@ void Editor::on_actionUnit_structure_triggered() int main(int argc, char **argv) { QApplication app(argc, argv); - Editor * editor = new Editor(argc, argv); + loglan::vlp::Editor * editor = new loglan::vlp::Editor(argc, argv); editor->show(); return app.exec(); }