summaryrefslogtreecommitdiff
path: root/library/qpemenubar.h
Unidiff
Diffstat (limited to 'library/qpemenubar.h') (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpemenubar.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/library/qpemenubar.h b/library/qpemenubar.h
new file mode 100644
index 0000000..736b12b
--- a/dev/null
+++ b/library/qpemenubar.h
@@ -0,0 +1,71 @@
1/**********************************************************************
2** Copyright (C) 2001 Trolltech AS. All rights reserved.
3**
4** This file is part of Qtopia Environment.
5**
6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file.
10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15**
16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you.
18**
19**********************************************************************/
20
21#ifndef QPEMENUBAR_H
22#define QPEMENUBAR_H
23
24#include <qmenubar.h>
25#include <qguardedptr.h>
26#include <qvaluelist.h>
27
28class QPEMenuToolFocusManager : public QObject
29{
30 Q_OBJECT
31public:
32 QPEMenuToolFocusManager();
33
34 void addWidget( QWidget *w );
35 void removeWidget( QWidget *w );
36 void setActive( bool a );
37 bool isActive() const;
38 void moveFocus( bool next );
39
40 static QPEMenuToolFocusManager *manager();
41 static void initialize();
42
43protected:
44 void setFocus( QWidget *w, bool next=TRUE );
45 bool eventFilter( QObject *object, QEvent *event );
46
47private slots:
48 void deactivate();
49
50private:
51 typedef QGuardedPtr<QWidget> GuardedWidget;
52 QValueList<GuardedWidget> list;
53 GuardedWidget inFocus;
54 GuardedWidget oldFocus;
55 static QPEMenuToolFocusManager *me;
56};
57
58
59class QPEMenuBar : public QMenuBar
60{
61 Q_OBJECT
62public:
63 QPEMenuBar( QWidget *parent=0, const char* name=0 );
64 ~QPEMenuBar();
65
66protected:
67 virtual void keyPressEvent( QKeyEvent *e );
68};
69
70#endif
71