3 Copyright (c) 2012 Jakob Leben & Tim Blechmann
4 http://www.audiosynth.com
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21 #ifndef SCIDE_WIDGETS_POPUP_TEXT_INPUT_HPP_INCLUDED
22 #define SCIDE_WIDGETS_POPUP_TEXT_INPUT_HPP_INCLUDED
24 #include <QInputDialog>
30 class PopupTextInput
: public QInputDialog
35 PopupTextInput(QString
const & labelText
, QWidget
* parent
):
36 QInputDialog(parent
, Qt::Popup
)
38 setOption(QInputDialog::NoButtons
);
39 setInputMode(QInputDialog::TextInput
);
40 setLabelText(labelText
);
44 QRect position
= rect();
45 position
.moveCenter(parent
->rect().center());
46 resize(position
.size());
47 move(parent
->mapToGlobal(position
.topLeft()));
52 void paintEvent( QPaintEvent
* )
54 QPainter
painter(this);
55 painter
.setBrush(Qt::NoBrush
);
56 painter
.setPen(palette().color(QPalette::Dark
));
57 painter
.drawRect(rect().adjusted(0,0,-1,-1));
60 virtual void keyPressEvent(QKeyEvent
* event
)
62 switch (event
->key()) {
72 QInputDialog::keyPressEvent(event
);
79 #endif // SCIDE_WIDGETS_POPUP_TEXT_INPUT_HPP_INCLUDED