add more spacing
[personal-kdebase.git] / workspace / krunner / interfaces / quicksand / qs_completionbox.h
blobf0deae1e6b0f3703db2366968ddcf1918bafe781
1 /*
2 * Copyright (C) 2007-2008 Ryan P. Bitanga <ryan.bitanga@gmail.com>
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the
16 * Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA .
20 #ifndef QS_COMPLETIONBOX_H
21 #define QS_COMPLETIONBOX_H
23 #include <KCompletionBox>
25 class QKeyEvent;
27 namespace QuickSand {
29 class QsStatusBar;
31 /**
32 * A completion box with configurable offset
33 * and a label that shows the current position.
35 class QsCompletionBox : public KCompletionBox
37 Q_OBJECT
38 public:
39 QsCompletionBox(QWidget *parent = 0);
41 /**
42 * Set the offset of the completion box
44 // void setOffset(int x, int y);
46 QSize minimumSizeHint() const;
48 QSize sizeHint() const;
50 /**
51 * @internal
53 void updateGeometries();
54 public Q_SLOTS:
55 void popup();
57 protected Q_SLOTS:
58 void slotRowsChanged(const QModelIndex & parent, int start, int end);
60 protected:
61 QPoint globalPositionHint() const;
62 // void resizeEvent(QResizeEvent *e);
64 QRect calculateGeometry() const;
66 private:
67 QsStatusBar *m_status;
68 QPoint m_offset;
72 #endif