subsurface/desktop-widgets/groupedlineedit.h
Berthold Stoeger df156a56c0 Cleanup: replace virtual by override where appropriate
The keyword "virtual" signalizes that the function is virtual,
i.e. the function of the derived class is called, even if the
call is on the parent class.

It is not necessary to repeat the "virtual" keyword in derived
classes. To highlight derived virtual functions, the keyword
"override" should be used instead. It results in a hard compile-
error, if no function is overridden, thus avoiding subtle bugs.

Replace "virtual" by "override" where appropriate. Moreover,
replace Q_DECL_OVERRIDE by override, since we require reasonably
recent compilers anyway. Likewise, replace /* reimp */ by
"override" for consistency and compiler support.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-07-31 11:02:34 +02:00

72 lines
2 KiB
C++

// SPDX-License-Identifier: GPL-2.0
/*
* Copyright (c) 2013 Maximilian Güntner <maximilian.guentner@gmail.com>
*
* This file is subject to the terms and conditions of version 2 of
* the GNU General Public License. See the file gpl-2.0.txt in the main
* directory of this archive for more details.
*
* Original License:
*
* This file is part of the Nepomuk widgets collection
* Copyright (c) 2013 Denis Steckelmacher <steckdenis@yahoo.fr>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License version 2.1 as published by the Free Software Foundation,
* or any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public License
* along with this library; see the file COPYING.LIB. If not, write to
*
* the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02110-1301, USA.
*/
#ifndef GROUPEDLINEEDIT_H
#define GROUPEDLINEEDIT_H
#include <QPlainTextEdit>
#include <QStringList>
class GroupedLineEdit : public QPlainTextEdit {
Q_OBJECT
public:
explicit GroupedLineEdit(QWidget *parent = 0);
~GroupedLineEdit();
QString text() const;
int cursorPosition() const;
void setCursorPosition(int position);
void setText(const QString &text);
void clear();
void selectAll();
void removeAllBlocks();
void addBlock(int start, int end);
QStringList getBlockStringList();
void addColor(QColor color);
QSize sizeHint() const override;
QSize minimumSizeHint() const override;
signals:
void editingFinished();
protected:
void paintEvent(QPaintEvent *e) override;
void keyPressEvent(QKeyEvent *e) override;
private:
struct Private;
Private *d;
};
#endif // GROUPEDLINEEDIT_H