summaryrefslogtreecommitdiff
path: root/qmake/include/private/qtitlebar_p.h
Unidiff
Diffstat (limited to 'qmake/include/private/qtitlebar_p.h') (more/less context) (ignore whitespace changes)
-rw-r--r--qmake/include/private/qtitlebar_p.h136
1 files changed, 136 insertions, 0 deletions
diff --git a/qmake/include/private/qtitlebar_p.h b/qmake/include/private/qtitlebar_p.h
new file mode 100644
index 0000000..dabb6bf
--- a/dev/null
+++ b/qmake/include/private/qtitlebar_p.h
@@ -0,0 +1,136 @@
1/****************************************************************************
2** $Id$
3**
4** Definition of some Qt private functions.
5**
6** Created : 2000-01-01
7**
8** Copyright (C) 2000-2002 Trolltech AS. All rights reserved.
9**
10** This file is part of the widgets module of the Qt GUI Toolkit.
11**
12** This file may be distributed under the terms of the Q Public License
13** as defined by Trolltech AS of Norway and appearing in the file
14** LICENSE.QPL included in the packaging of this file.
15**
16** This file may be distributed and/or modified under the terms of the
17** GNU General Public License version 2 as published by the Free Software
18** Foundation and appearing in the file LICENSE.GPL included in the
19** packaging of this file.
20**
21** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
22** licenses may use this file in accordance with the Qt Commercial License
23** Agreement provided with the Software.
24**
25** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
26** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
27**
28** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
29** information about Qt Commercial License Agreements.
30** See http://www.trolltech.com/qpl/ for QPL licensing information.
31** See http://www.trolltech.com/gpl/ for GPL licensing information.
32**
33** Contact info@trolltech.com if any conditions of this licensing are
34** not clear to you.
35**
36**********************************************************************/
37
38#ifndef QTITLEBAR_P_H
39#define QTITLEBAR_P_H
40
41
42//
43// W A R N I N G
44// -------------
45//
46// This file is not part of the Qt API. It exists for the convenience
47// of qworkspace.cpp and qdockwindow.cpp. This header file may change
48// from version to version without notice, or even be removed.
49//
50// We mean it.
51//
52//
53
54
55#ifndef QT_H
56#include "qbutton.h"
57#include "qlabel.h"
58#endif // QT_H
59
60#if !defined(QT_NO_TITLEBAR)
61
62class QToolTip;
63class QTitleBarPrivate;
64class QPixmap;
65
66class Q_EXPORT QTitleBar : public QWidget
67{
68 Q_OBJECT
69 Q_PROPERTY( bool autoRaise READ autoRaise WRITE setAutoRaise )
70 Q_PROPERTY( bool movable READ isMovable WRITE setMovable )
71
72public:
73 QTitleBar (QWidget* w, QWidget* parent, const char* name=0);
74 ~QTitleBar();
75
76 bool isActive() const;
77 bool usesActiveColor() const;
78 virtual QString visibleText() const;
79
80 bool isMovable() const;
81 void setMovable(bool);
82
83 bool autoRaise() const;
84 void setAutoRaise(bool);
85
86 QWidget *window() const;
87
88 QSize sizeHint() const;
89
90#ifdef QT_NO_WIDGET_TOPEXTRA
91 // We provide one, since titlebar is useless otherwise.
92 QString caption() const;
93#endif
94
95public slots:
96 void setActive( bool );
97 void setCaption( const QString& title );
98 void setIcon( const QPixmap& icon );
99
100signals:
101 void doActivate();
102 void doNormal();
103 void doClose();
104 void doMaximize();
105 void doMinimize();
106 void doShade();
107 void showOperationMenu();
108 void popupOperationMenu( const QPoint& );
109 void doubleClicked();
110
111protected:
112 bool event( QEvent *);
113 void resizeEvent( QResizeEvent *);
114 void contextMenuEvent( QContextMenuEvent * );
115 void mousePressEvent( QMouseEvent * );
116 void mouseDoubleClickEvent( QMouseEvent * );
117 void mouseReleaseEvent( QMouseEvent * );
118 void mouseMoveEvent( QMouseEvent * );
119 void enterEvent( QEvent *e );
120 void leaveEvent( QEvent *e );
121 void paintEvent( QPaintEvent *p );
122
123 virtual void cutText();
124
125private:
126 void readColors();
127
128 QTitleBarPrivate *d;
129#if defined(Q_DISABLE_COPY) // Disabled copy constructor and operator=
130 QTitleBar( const QTitleBar & );
131 QTitleBar &operator=( const QTitleBar & );
132#endif
133};
134
135#endif
136#endif //QTITLEBAR_P_H