From 5aa684f0581c9e8b24ec20bd70a56042f8899ae5 Mon Sep 17 00:00:00 2001 From: Robert Bieber Date: Sat, 3 Jul 2010 08:23:20 +0000 Subject: Theme Editor: Implemented replace and replace all in find/replace dialog git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27254 a1c6a512-1295-4272-9138-f99709370657 --- utils/themeeditor/gui/findreplacedialog.cpp | 33 +++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 9 deletions(-) (limited to 'utils/themeeditor/gui/findreplacedialog.cpp') diff --git a/utils/themeeditor/gui/findreplacedialog.cpp b/utils/themeeditor/gui/findreplacedialog.cpp index e2b8b9bc43..2a6161189e 100644 --- a/utils/themeeditor/gui/findreplacedialog.cpp +++ b/utils/themeeditor/gui/findreplacedialog.cpp @@ -57,13 +57,13 @@ void FindReplaceDialog::closeEvent(QCloseEvent* event) void FindReplaceDialog::setupUI() { - QObject::connect(ui->findButton, SIGNAL(pressed()), + QObject::connect(ui->findButton, SIGNAL(clicked()), this, SLOT(find())); - QObject::connect(ui->replaceButton, SIGNAL(pressed()), + QObject::connect(ui->replaceButton, SIGNAL(clicked()), this, SLOT(replace())); - QObject::connect(ui->replaceAllButton, SIGNAL(pressed()), + QObject::connect(ui->replaceAllButton, SIGNAL(clicked()), this, SLOT(replaceAll())); - QObject::connect(ui->closeButton, SIGNAL(pressed()), + QObject::connect(ui->closeButton, SIGNAL(clicked()), this, SLOT(close())); QObject::connect(ui->findBox, SIGNAL(textChanged(QString)), this, SLOT(textChanged())); @@ -77,10 +77,6 @@ void FindReplaceDialog::find() if(!editor) return; - /* Figuring out the range to search in */ - int begin = editor->textCursor().selectionStart(); - int end = editor->textCursor().selectionEnd(); - QTextDocument::FindFlags flags = 0; if(ui->caseBox->isChecked()) flags |= QTextDocument::FindCaseSensitively; @@ -109,7 +105,7 @@ void FindReplaceDialog::find() QPalette newPal; if(!textFound.isNull()) { - newPal.setColor(QPalette::Foreground, QColor(150, 255, 150)); + newPal.setColor(QPalette::Foreground, QColor(0, 150, 0)); ui->statusLabel->setPalette(newPal); ui->statusLabel->setText(tr("Match Found")); editor->setTextCursor(textFound); @@ -126,12 +122,31 @@ void FindReplaceDialog::find() void FindReplaceDialog::replace() { + if(textFound.isNull()) + find(); + + if(textFound.isNull()) + return; + editor->setTextCursor(textFound); + editor->insertPlainText(ui->replaceBox->text()); + textFound = QTextCursor(); } void FindReplaceDialog::replaceAll() { + do + { + if(!textFound.isNull()) + { + editor->setTextCursor(textFound); + editor->insertPlainText(ui->replaceBox->text()); + } + + find(); + }while(!textFound.isNull()); + } void FindReplaceDialog::textChanged() -- cgit v1.2.3