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 75 76 77 78
| #include "textfinder.h"
#include "ui_textfinder.h"
#include <QFile>
#include <QTextStream>
#include <iostream>
#include <QFileDialog>
#include <QSyntaxHighlighter>
#include <QMessageBox>
#include <QMimeData>
textfinder::textfinder(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::textfinder)
{
ui->setupUi(this);
setAcceptDrops(true);
}
textfinder::~textfinder()
{
delete ui;
}
void textfinder::on_findbutton_clicked()
{
//on vérifie que le text edit contient bien du text
if(ui->textEdit->toPlainText().isEmpty()){
QMessageBox::critical(this, "Erreur", "Veuillez s'il vous plaît charger un texte à l'aide avec le menu en haut à gauche.");
}
//on vérifier qu'un mot à bien était entré
if(ui->lineEdit->text().isEmpty()){
QMessageBox::critical(this, "Erreur", "Veuillez saisir un mot à rechercher s'il vous plaît.");
}
QPalette palette = ui->textEdit->palette();
palette.setColor(QPalette::Highlight, Qt::green);
QString searchString = ui->lineEdit->text();
if(ui->radioButton->isChecked()){
ui->textEdit->find(searchString,QTextDocument::FindWholeWords);
}else{
ui->textEdit->find(searchString,QTextDocument::FindBackward);
}
}
void textfinder::dropEvent(QDropEvent *event)
{
QFile file(event->mimeData()->text());
if(file.open(QIODevice::ReadOnly))
ui->textEdit->setPlainText(QString(file.readAll()));
else
qDebug(qPrintable(file.errorString()));
event->acceptProposedAction();
}
void textfinder::loadTextFile()
{ QString cheminfichier;
cheminfichier = QFileDialog::getOpenFileName(this,tr("Open file"),"C:/Users/kevin/Documents", tr(" File (*.txt;*.cpp;*.java;)"));
QFile inputFile;
inputFile.setFileName (cheminfichier);
inputFile.open(QIODevice::ReadOnly);
QTextStream in(&inputFile);
QString line = in.readAll();
inputFile.close();
ui->textEdit->setPlainText(line);
QTextCursor cursor = ui->textEdit->textCursor();
cursor.movePosition(QTextCursor::Start, QTextCursor::MoveAnchor, 0);
}
void textfinder::on_actionOuvrir_triggered()
{ loadTextFile();
} |
Partager