Changeset 18487


Ignore:
Timestamp:
2013-12-15T19:18:27+01:00 (10 years ago)
Author:
adrpo
Message:

Merged revision(s) r18483-r18486 from trunk/

Location:
branches/adrpo
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/adrpo

  • branches/adrpo/Makefile.libraries

    r18482 r18487  
    1 GITCOMMIT=0667a0452beead764104de23ad60ecbef6e1080b
     1GITCOMMIT=9ff54eab7a148768e8e8ac2a94febba08b58db61
    22ifdef NOLIBRARIES
    33omlibrary:
  • branches/adrpo/OMEdit

  • branches/adrpo/OMEdit/OMEditGUI/GUI/MainWindow.cpp

    r18412 r18487  
    10431043  if (pModelWidget)
    10441044  {
    1045     mpFindReplaceDialog->readFindTextFromSettings();
    10461045    mpFindReplaceDialog->setTextEdit(pModelWidget->getModelicaTextWidget()->getModelicaTextEdit());
    10471046    mpFindReplaceDialog->show();
  • branches/adrpo/OMEdit/OMEditGUI/GUI/Widgets/ModelicaTextWidget.cpp

    r16954 r18487  
    990990void FindReplaceDialog::show()
    991991{
     992  QTextCursor currentTextCursor = mpModelicaTextEdit->textCursor();
     993  if (currentTextCursor.hasSelection())
     994  {
     995    QString selectedText = currentTextCursor.selectedText();
     996    saveFindTextToSettings(selectedText);
     997    readFindTextFromSettings();
     998  }
     999  else
     1000  {
     1001    readFindTextFromSettings();
     1002  }
    9921003  mpFindComboBox->lineEdit()->selectAll();
    9931004  setVisible(true);
     
    10951106
    10961107  if(!result)
    1097     showError(tr("Can't find the text"));
     1108  {
     1109    QString message = QString( "Can't find the text '" ) + textToFind + QString( " '." );
     1110    QMessageBox::information( this, "Find", message );
     1111  }
    10981112}
    10991113
     
    11031117void FindReplaceDialog::replace()
    11041118{
    1105   if (!mpModelicaTextEdit->textCursor().hasSelection())
    1106   {
    1107     find();
    1108   }
     1119  int compareString(0);
     1120  if(mpCaseSensitiveCheckBox->isChecked())
     1121    compareString = Qt::CaseSensitive;
    11091122  else
     1123    compareString = Qt::CaseInsensitive;
     1124  find();
     1125  int same = mpModelicaTextEdit->textCursor().selectedText().compare(mpFindComboBox->currentText(),( Qt::CaseSensitivity)compareString );
     1126  if (mpModelicaTextEdit->textCursor().hasSelection()&& same == 0  )
    11101127  {
    11111128    mpModelicaTextEdit->textCursor().insertText(mpReplaceWithTextBox->text());
    11121129    find();
    11131130  }
     1131  else
     1132    find();
    11141133}
    11151134
     
    11191138void FindReplaceDialog::replaceAll()
    11201139{
     1140  // move cursor to start of text
     1141  QTextCursor cursor = mpModelicaTextEdit->textCursor();
     1142  cursor.movePosition(QTextCursor::Start);
     1143  mpModelicaTextEdit->setTextCursor(cursor);
     1144
     1145  QTextDocument::FindFlags flags;
     1146  if (mpCaseSensitiveCheckBox->isChecked())
     1147    flags |= QTextDocument::FindCaseSensitively;
     1148  if (mpWholeWordCheckBox->isChecked())
     1149    flags |= QTextDocument::FindWholeWords;
     1150
     1151  // save the find text in settings
     1152  saveFindTextToSettings(mpFindComboBox->currentText());
     1153  // replace all
    11211154  int i=0;
    1122   while (mpModelicaTextEdit->textCursor().hasSelection())
     1155  mpModelicaTextEdit->textCursor().beginEditBlock();
     1156  while(mpModelicaTextEdit->find(mpFindComboBox->currentText(), flags ))
    11231157  {
    11241158    mpModelicaTextEdit->textCursor().insertText(mpReplaceWithTextBox->text());
    1125     find();
    11261159    i++;
    11271160  }
    1128   showMessage(tr("Replaced %1 occurrence(s)").arg(i));
     1161  mpModelicaTextEdit->textCursor().endEditBlock();
     1162
     1163  // show message box with status information
     1164  QString message;
     1165  message.setNum(i);
     1166  message += QString( " occurence(s) of the text '" ) + mpFindComboBox->currentText() +
     1167    QString( "' was replaced with the text '" ) + mpReplaceWithTextBox->text() + QString( "'." );
     1168    QMessageBox::information( this, "Replace All", message );
    11291169}
    11301170
     
    12031243{
    12041244  mpFindButton->setEnabled(mpFindComboBox->currentText().size() > 0);
    1205 
    1206 }
    1207 
     1245}
     1246
Note: See TracChangeset for help on using the changeset viewer.