2 * Copyright (C) 2006 Aaron Seigo <aseigo@kde.org>
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU Library General Public License version 2 as
6 * published by the Free Software Foundation
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details
13 * You should have received a copy of the GNU Library General Public
14 * License along with this program; if not, write to the
15 * Free Software Foundation, Inc.,
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
19 #ifndef KRUNNERDIALOG_H
20 #define KRUNNERDIALOG_H
32 class KRunnerConfigDialog
;
34 class KRunnerDialog
: public KDialog
39 explicit KRunnerDialog(Plasma::RunnerManager
*manager
, QWidget
*parent
= 0,
40 Qt::WindowFlags f
= Qt::Dialog
| Qt::FramelessWindowHint
);
41 virtual ~KRunnerDialog();
44 virtual void display(const QString
& term
= QString()) = 0;
45 virtual void clearHistory() = 0;
50 void paintEvent(QPaintEvent
*event
);
51 void resizeEvent(QResizeEvent
*event
);
52 void mousePressEvent(QMouseEvent
*event
);
53 bool event(QEvent
*event
);
55 virtual void setStaticQueryMode(bool staticQuery
);
58 void showConfigDialog();
62 * React to theme changes
67 * React to configuration changes
69 void configCompleted();
72 Plasma::Svg
*m_iconSvg
;
73 Plasma::RunnerManager
*m_runnerManager
;
76 void paintBackground(QPainter
* painter
, const QRect
&exposedRect
);
78 KRunnerConfigDialog
*m_configDialog
;
79 Plasma::FrameSvg
*m_background
;
80 QPixmap
*m_cachedBackground
;