source: trunk/src/gui/dialogs/qdialogsbinarycompat_win.cpp

Last change on this file was 846, checked in by Dmitry A. Kuminov, 14 years ago

trunk: Merged in qt 4.7.2 sources from branches/vendor/nokia/qt.

File size: 4.7 KB
Line 
1/****************************************************************************
2**
3** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
4** All rights reserved.
5** Contact: Nokia Corporation ([email protected])
6**
7** This file is part of the QtGui module of the Qt Toolkit.
8**
9** $QT_BEGIN_LICENSE:LGPL$
10** Commercial Usage
11** Licensees holding valid Qt Commercial licenses may use this file in
12** accordance with the Qt Commercial License Agreement provided with the
13** Software or, alternatively, in accordance with the terms contained in
14** a written agreement between you and Nokia.
15**
16** GNU Lesser General Public License Usage
17** Alternatively, this file may be used under the terms of the GNU Lesser
18** General Public License version 2.1 as published by the Free Software
19** Foundation and appearing in the file LICENSE.LGPL included in the
20** packaging of this file. Please review the following information to
21** ensure the GNU Lesser General Public License version 2.1 requirements
22** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
23**
24** In addition, as a special exception, Nokia gives you certain additional
25** rights. These rights are described in the Nokia Qt LGPL Exception
26** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
27**
28** GNU General Public License Usage
29** Alternatively, this file may be used under the terms of the GNU
30** General Public License version 3.0 as published by the Free Software
31** Foundation and appearing in the file LICENSE.GPL included in the
32** packaging of this file. Please review the following information to
33** ensure the GNU General Public License version 3.0 requirements will be
34** met: http://www.gnu.org/copyleft/gpl.html.
35**
36** If you have questions regarding the use of this file, please contact
37** Nokia at [email protected].
38** $QT_END_LICENSE$
39**
40****************************************************************************/
41
42#include <qglobal.h>
43
44// ### Qt 5: eliminate this file
45
46/*
47 This is evil. MSVC doesn't let us remove private symbols, nor change their
48 visibility; yet there are some symbols we really needed to make public, e.g.,
49 ~QColorDialog(), and then there were some totally needless symbols in our
50 header files, e.g., setSelectedAlpha(). So we define a new version of
51 QColorDialog & Co. with only the private symbols that we removed from the
52 public header files. The friends are there only to prevent potential compiler
53 warnings.
54
55 It would have been nicer to export the missing symbols as mangled "C" symbols
56 instead but unfortunately MSVC uses out-of-reach characters like @ and . in
57 their mangled C++ symbols.
58*/
59
60#if QT_VERSION < 0x050000 && defined(Q_CC_MSVC)
61
62QT_BEGIN_NAMESPACE
63
64#include <QtGui/QColor>
65#include <QtGui/QFont>
66
67class QColorDialogPrivate;
68class QFontDialogPrivate;
69class QInputDialogPrivate;
70class QWidget;
71
72class Q_GUI_EXPORT QColorDialog
73{
74private:
75 explicit QColorDialog(QWidget *, bool);
76 ~QColorDialog();
77
78 void setColor(const QColor &);
79 QColor color() const;
80 bool selectColor(const QColor &);
81 void setSelectedAlpha(int);
82 int selectedAlpha() const;
83
84 friend class QColorDialogPrivate;
85};
86
87QColorDialog::QColorDialog(QWidget *, bool) {}
88QColorDialog::~QColorDialog() {}
89void QColorDialog::setColor(const QColor &) {}
90QColor QColorDialog::color() const { return QColor(); }
91bool QColorDialog::selectColor(const QColor &) { return false; }
92void QColorDialog::setSelectedAlpha(int) {}
93int QColorDialog::selectedAlpha() const { return 0; }
94
95class Q_GUI_EXPORT QFontDialog
96{
97private:
98 explicit QFontDialog(QWidget *, bool, Qt::WindowFlags);
99 ~QFontDialog();
100
101 QFont font() const;
102 void setFont(const QFont &);
103 void updateFamilies();
104 void updateStyles();
105 void updateSizes();
106
107 static QFont getFont(bool *, const QFont *, QWidget *);
108
109 friend class QFontDialogPrivate;
110};
111
112QFontDialog::QFontDialog(QWidget *, bool, Qt::WindowFlags) {}
113QFontDialog::~QFontDialog() {}
114QFont QFontDialog::font() const { return QFont(); }
115void QFontDialog::setFont(const QFont &) { }
116void QFontDialog::updateFamilies() {}
117void QFontDialog::updateStyles() {}
118void QFontDialog::updateSizes() {}
119QFont QFontDialog::getFont(bool *, const QFont *, QWidget *) { return QFont(); }
120
121class Q_GUI_EXPORT QInputDialog
122{
123private:
124 enum Type { LineEdit, SpinBox, DoubleSpinBox, ComboBox, EditableComboBox };
125
126 QInputDialog(const QString &, QWidget *, Type, Qt::WindowFlags);
127 QInputDialog(const QString &, const QString &, QWidget *, QWidget *, Qt::WindowFlags);
128 ~QInputDialog();
129};
130
131QInputDialog::QInputDialog(const QString &, QWidget *, Type, Qt::WindowFlags) {}
132QInputDialog::QInputDialog(const QString &, const QString &, QWidget *, QWidget *, Qt::WindowFlags) {}
133QInputDialog::~QInputDialog() {}
134
135QT_END_NAMESPACE
136
137#endif
Note: See TracBrowser for help on using the repository browser.