textfinder.cpp 2.75 KB
Newer Older
1
/**************************************************************************
con's avatar
con committed
2 3 4
**
** This file is part of Qt Creator
**
hjk's avatar
hjk committed
5
** Copyright (c) 2012 Nokia Corporation and/or its subsidiary(-ies).
con's avatar
con committed
6
**
7
** Contact: Nokia Corporation (qt-info@nokia.com)
con's avatar
con committed
8
**
9
** You may use this file under the terms of the BSD license as follows:
10
**
11 12 13 14 15 16 17 18 19 20 21 22 23
** "Redistribution and use in source and binary forms, with or without
** modification, are permitted provided that the following conditions are
** met:
**   * Redistributions of source code must retain the above copyright
**     notice, this list of conditions and the following disclaimer.
**   * Redistributions in binary form must reproduce the above copyright
**     notice, this list of conditions and the following disclaimer in
**     the documentation and/or other materials provided with the
**     distribution.
**   * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
**     the names of its contributors may be used to endorse or promote
**     products derived from this software without specific prior written
**     permission.
24
**
25 26 27 28 29 30 31 32 33 34 35
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
con's avatar
con committed
36
**
37
**************************************************************************/
38 39 40

#include "textfinder.h"

41
//! [1]
42 43
#include <QFile>
#include <QTextStream>
44
//! [1]
45
#include <QMessageBox>
con's avatar
con committed
46

47
//! [3]
hjk's avatar
hjk committed
48 49
TextFinder::TextFinder(QWidget *parent)
    : QWidget(parent), ui(new Ui::TextFinder)
con's avatar
con committed
50
{
hjk's avatar
hjk committed
51
    ui->setupUi(this);
con's avatar
con committed
52 53
    loadTextFile();
}
54
//! [3]
con's avatar
con committed
55 56 57

TextFinder::~TextFinder()
{
hjk's avatar
hjk committed
58
    delete ui;
con's avatar
con committed
59 60
}

61
//! [0]
con's avatar
con committed
62 63 64 65 66 67 68 69 70
void TextFinder::loadTextFile()
{
    QFile inputFile(":/input.txt");
    inputFile.open(QIODevice::ReadOnly);

    QTextStream in(&inputFile);
    QString line = in.readAll();
    inputFile.close();

hjk's avatar
hjk committed
71 72
    ui->textEdit->setPlainText(line);
    QTextCursor cursor = ui->textEdit->textCursor();
con's avatar
con committed
73 74
    cursor.movePosition(QTextCursor::Start, QTextCursor::MoveAnchor, 1);
}
75
//! [0]
con's avatar
con committed
76

77
//! [2]
con's avatar
con committed
78 79
void TextFinder::on_findButton_clicked()
{
hjk's avatar
hjk committed
80 81
    QString searchString = ui->lineEdit->text();
    ui->textEdit->find(searchString, QTextDocument::FindWholeWords);
con's avatar
con committed
82
}
83
//! [2]