source: trunk/include/qdesktopwidget.h@ 203

Last change on this file since 203 was 2, checked in by dmik, 20 years ago

Imported xplatform parts of the official release 3.3.1 from Trolltech

  • Property svn:keywords set to Id
File size: 3.2 KB
Line 
1/****************************************************************************
2** $Id: qdesktopwidget.h 2 2005-11-16 15:49:26Z dmik $
3**
4** Definition of QDesktopWidget class.
5**
6** Copyright (C) 1992-2001 Trolltech AS. All rights reserved.
7**
8** This file is part of the kernel module of the Qt GUI Toolkit.
9**
10** This file may be distributed under the terms of the Q Public License
11** as defined by Trolltech AS of Norway and appearing in the file
12** LICENSE.QPL included in the packaging of this file.
13**
14** This file may be distributed and/or modified under the terms of the
15** GNU General Public License version 2 as published by the Free Software
16** Foundation and appearing in the file LICENSE.GPL included in the
17** packaging of this file.
18**
19** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
20** licenses for Unix/X11 may use this file in accordance with the Qt Commercial
21** License Agreement provided with the Software.
22**
23** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
24** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
25**
26** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
27** information about Qt Commercial License Agreements.
28** See http://www.trolltech.com/qpl/ for QPL licensing information.
29** See http://www.trolltech.com/gpl/ for GPL licensing information.
30**
31** Contact info@trolltech.com if any conditions of this licensing are
32** not clear to you.
33**
34**********************************************************************/
35
36#ifndef QDESKTOPWIDGET_H
37#define QDESKTOPWIDGET_H
38
39#ifndef QT_H
40#include "qwidget.h"
41#endif // QT_H
42
43class QApplication;
44class QDesktopWidgetPrivate; /* Don't touch! */
45
46class Q_EXPORT QDesktopWidget : public QWidget
47{
48 Q_OBJECT
49public:
50 QDesktopWidget();
51 ~QDesktopWidget();
52
53 bool isVirtualDesktop() const;
54
55 int numScreens() const;
56 int primaryScreen() const;
57
58 int screenNumber( QWidget *widget = 0 ) const; // ### 4.0: const QWidget*
59 int screenNumber( const QPoint & ) const;
60
61 QWidget *screen( int screen = -1 );
62
63 const QRect& screenGeometry( int screen = -1 ) const;
64 const QRect& screenGeometry( QWidget *widget ) const
65 { return screenGeometry( screenNumber( widget ) ); }
66 const QRect& screenGeometry( const QPoint &point ) const
67 { return screenGeometry( screenNumber( point ) ); }
68
69 const QRect& availableGeometry( int screen = -1 ) const;
70 const QRect& availableGeometry( QWidget *widget ) const
71 { return availableGeometry( screenNumber( widget ) ); }
72 const QRect& availableGeometry( const QPoint &point ) const
73 { return availableGeometry( screenNumber( point ) ); }
74
75 void insertChild( QObject * );
76
77signals:
78 void resized( int );
79 void workAreaResized( int );
80
81protected:
82 void resizeEvent( QResizeEvent *e );
83
84private:
85 QDesktopWidgetPrivate *d;
86
87#if defined(Q_DISABLE_COPY) // Disabled copy constructor and operator=
88 QDesktopWidget( const QDesktopWidget & );
89 QDesktopWidget &operator=( const QDesktopWidget & );
90#endif
91
92 friend class QApplication;
93#ifdef Q_WS_QWS
94 friend class QWSDisplay;
95#endif
96};
97
98#endif //QDESKTOPWIDGET_H
Note: See TracBrowser for help on using the repository browser.