File indexing completed on 2024-05-12 05:40:38
0001 /* 0002 Cahoots is a crossplatform real-time collaborative text editor. 0003 0004 Copyright (C) 2010 Chris Dimpfl, Anandi Hira, David Vega 0005 0006 This program is free software: you can redistribute it and/or modify 0007 it under the terms of the GNU General Public License as published by 0008 the Free Software Foundation, either version 3 of the License, or 0009 (at your option) any later version. 0010 0011 This program is distributed in the hope that it will be useful, 0012 but WITHOUT ANY WARRANTY; without even the implied warranty of 0013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0014 GNU General Public License for more details. 0015 0016 You should have received a copy of the GNU General Public License 0017 along with this program. If not, see <http://www.gnu.org/licenses/>. 0018 */ 0019 #include "finddialog.h" 0020 #include "ui_finddialog.h" 0021 0022 #include "enu.h" 0023 0024 FindDialog::FindDialog(QWidget* parent) : QDialog(parent), ui(new Ui::FindDialog) 0025 { 0026 ui->setupUi(this); 0027 } 0028 0029 FindDialog::~FindDialog() 0030 { 0031 delete ui; 0032 } 0033 0034 void FindDialog::changeEvent(QEvent* e) 0035 { 0036 QDialog::changeEvent(e); 0037 switch(e->type()) 0038 { 0039 case QEvent::LanguageChange: 0040 ui->retranslateUi(this); 0041 break; 0042 default: 0043 break; 0044 } 0045 } 0046 0047 void FindDialog::on_findNextPushButton_clicked() 0048 { 0049 QString searchString= ui->findTextEdit->toPlainText(); 0050 Qt::CaseSensitivity sensitivity; 0051 if(ui->ignoreCaseCheckBox->isChecked()) 0052 { 0053 sensitivity= Qt::CaseInsensitive; 0054 } 0055 else 0056 { 0057 sensitivity= Qt::CaseSensitive; 0058 } 0059 Enu::FindMode mode= Enu::Contains; 0060 if(ui->findModeComboBox->currentText() == "Contains") 0061 { 0062 mode= Enu::Contains; 0063 } 0064 else if(ui->findModeComboBox->currentText() == "Starts With") 0065 { 0066 mode= Enu::StartsWith; 0067 } 0068 else if(ui->findModeComboBox->currentText() == "Entire Word") 0069 { 0070 mode= Enu::EntireWord; 0071 } 0072 emit findDialogFindNext(searchString, sensitivity, ui->wrapAroundCheckBox->isChecked(), mode); 0073 } 0074 0075 void FindDialog::on_findPreviousPushButton_clicked() 0076 { 0077 QString searchString= ui->findTextEdit->toPlainText(); 0078 Qt::CaseSensitivity sensitivity; 0079 if(ui->ignoreCaseCheckBox->isChecked()) 0080 { 0081 sensitivity= Qt::CaseInsensitive; 0082 } 0083 else 0084 { 0085 sensitivity= Qt::CaseSensitive; 0086 } 0087 Enu::FindMode mode= Enu::Contains; 0088 if(ui->findModeComboBox->currentText() == "Contains") 0089 { 0090 mode= Enu::Contains; 0091 } 0092 else if(ui->findModeComboBox->currentText() == "Starts With") 0093 { 0094 mode= Enu::StartsWith; 0095 } 0096 else if(ui->findModeComboBox->currentText() == "Entire Word") 0097 { 0098 mode= Enu::EntireWord; 0099 } 0100 emit findDialogFindPrev(searchString, sensitivity, ui->wrapAroundCheckBox->isChecked(), mode); 0101 } 0102 0103 void FindDialog::on_replaceAllPushButton_clicked() 0104 { 0105 QString searchString= ui->findTextEdit->toPlainText(); 0106 QString replaceString= ui->replaceTextEdit->toPlainText(); 0107 Qt::CaseSensitivity sensitivity; 0108 if(ui->ignoreCaseCheckBox->isChecked()) 0109 { 0110 sensitivity= Qt::CaseInsensitive; 0111 } 0112 else 0113 { 0114 sensitivity= Qt::CaseSensitive; 0115 } 0116 Enu::FindMode mode= Enu::Contains; 0117 if(ui->findModeComboBox->currentText() == "Contains") 0118 { 0119 mode= Enu::Contains; 0120 } 0121 else if(ui->findModeComboBox->currentText() == "Starts With") 0122 { 0123 mode= Enu::StartsWith; 0124 } 0125 else if(ui->findModeComboBox->currentText() == "Entire Word") 0126 { 0127 mode= Enu::EntireWord; 0128 } 0129 emit findDialogReplaceAll(searchString, replaceString, sensitivity, mode); 0130 } 0131 0132 void FindDialog::on_replacePushButton_clicked() 0133 { 0134 QString replaceString= ui->replaceTextEdit->toPlainText(); 0135 emit findDialogReplace(replaceString); 0136 } 0137 0138 void FindDialog::on_findReplacePushButton_clicked() 0139 { 0140 QString searchString= ui->findTextEdit->toPlainText(); 0141 QString replaceString= ui->replaceTextEdit->toPlainText(); 0142 Qt::CaseSensitivity sensitivity; 0143 if(ui->ignoreCaseCheckBox->isChecked()) 0144 { 0145 sensitivity= Qt::CaseInsensitive; 0146 } 0147 else 0148 { 0149 sensitivity= Qt::CaseSensitive; 0150 } 0151 Enu::FindMode mode= Enu::Contains; 0152 if(ui->findModeComboBox->currentText() == "Contains") 0153 { 0154 mode= Enu::Contains; 0155 } 0156 else if(ui->findModeComboBox->currentText() == "Starts With") 0157 { 0158 mode= Enu::StartsWith; 0159 } 0160 else if(ui->findModeComboBox->currentText() == "Entire Word") 0161 { 0162 mode= Enu::EntireWord; 0163 } 0164 emit findDiaalogFindReplace(searchString, replaceString, sensitivity, ui->wrapAroundCheckBox->isChecked(), mode); 0165 }