Tulip 5.7.1
Large graphs analysis and drawing
Loading...
Searching...
No Matches
ClearableLineEdit.h
1/*
2 *
3 * This file is part of Tulip (https://tulip.labri.fr)
4 *
5 * Authors: David Auber and the Tulip development Team
6 * from LaBRI, University of Bordeaux
7 *
8 * Tulip is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU Lesser General Public License
10 * as published by the Free Software Foundation, either version 3
11 * of the License, or (at your option) any later version.
12 *
13 * Tulip is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16 * See the GNU General Public License for more details.
17 *
18 */
19///@cond DOXYGEN_HIDDEN
20
21#ifndef CLEARABLELINEEDIT_H
22#define CLEARABLELINEEDIT_H
23
24#include <QLineEdit>
25
26#include <tulip/tulipconf.h>
27
28class TLP_QT_SCOPE ClearableLineEdit : public QLineEdit {
29 static QPixmap *CLEAR_PIXMAP;
30
31 bool _clearButtonHovered;
32 static void initPixmap();
33 QRect pixmapRect();
34
35public:
36 explicit ClearableLineEdit(QWidget *parent = nullptr);
37
38protected:
39 void paintEvent(QPaintEvent *) override;
40 void mouseMoveEvent(QMouseEvent *) override;
41 void mousePressEvent(QMouseEvent *) override;
42};
43
44#endif // CLEARABLELINEEDIT_H
45///@endcond