1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
|
/***************************************************************************
* copyright : (C) 2009-2017 by Pascal Brachet *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#include "jsreplacedialog.h"
#include <QMessageBox>
JSReplaceDialog::JSReplaceDialog(QWidget* parent, const char* name)
: QDialog( parent)
{
setWindowTitle(name);
setModal(true);
ui.setupUi(this);
connect( ui.findButton, SIGNAL( clicked() ), this, SLOT( doReplace() ) );
connect( ui.replaceallButton, SIGNAL( clicked() ), this, SLOT( doReplaceAll() ) );
connect( ui.closeButton, SIGNAL( clicked() ), this, SLOT( reject() ) );
ui.findButton->setShortcut(Qt::Key_Return);
}
JSReplaceDialog::~JSReplaceDialog()
{
}
void JSReplaceDialog::doReplace()
{
reject();
if ( !editor ) return;
bool go=true;
while (go && editor->search( ui.comboFind->currentText(), ui.checkCase->isChecked(),
ui.checkWords->isChecked(), ui.radioForward->isChecked(), !ui.checkBegin->isChecked()) )
{
switch( QMessageBox::warning(this, "AlgoBox",QString::fromUtf8("Remplacer cette occurence ? "),QString::fromUtf8("Oui"), QString::fromUtf8("Non"), QString::fromUtf8("Abandon"), 0,2 ) )
{
case 0:
editor->replace(ui.comboReplace->currentText() );
ui.checkBegin->setChecked( false );
break;
case 1:
ui.checkBegin->setChecked( true );
break;
case 2:
go=false;
break;
}
}
if (go) ui.checkBegin->setChecked( true );
}
void JSReplaceDialog::doReplaceAll()
{
if ( !editor ) return;
while ( editor->search( ui.comboFind->currentText(), ui.checkCase->isChecked(),
ui.checkWords->isChecked(), ui.radioForward->isChecked(), !ui.checkBegin->isChecked()) )
{
editor->replace(ui.comboReplace->currentText() );
ui.checkBegin->setChecked( false );
}
ui.checkBegin->setChecked( true );
}
void JSReplaceDialog::SetEditor(JSEditor *ed)
{
editor=ed;
}
|