summaryrefslogtreecommitdiffstats
path: root/src/dialogs
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-10-06 13:29:55 -0500
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-10-06 13:29:55 -0500
commitd71a83ef0d306b8e23b2be5baa3e347116ba8253 (patch)
tree7e97f8f0eaf491f1700e537a9c87b03863e2a8fa /src/dialogs
parentb1444fa097ab72348e6b86526d2d7d7ab673529e (diff)
downloadqt3-3.5.13.tar.gz
qt3-3.5.13.zip
Apply qtkdeintegration patches to Qt3v3.5.13
This partially resolves Bug #528
Diffstat (limited to 'src/dialogs')
-rw-r--r--src/dialogs/qcolordialog.cpp16
-rw-r--r--src/dialogs/qfiledialog.cpp33
-rw-r--r--src/dialogs/qfontdialog.cpp10
-rw-r--r--src/dialogs/qmessagebox.cpp42
4 files changed, 96 insertions, 5 deletions
diff --git a/src/dialogs/qcolordialog.cpp b/src/dialogs/qcolordialog.cpp
index 44bf70e..4ce83bb 100644
--- a/src/dialogs/qcolordialog.cpp
+++ b/src/dialogs/qcolordialog.cpp
@@ -63,6 +63,10 @@ QRgb macGetRgba( QRgb initial, bool *ok, QWidget *parent, const char* name );
QColor macGetColor( const QColor& initial, QWidget *parent, const char *name );
#endif
+#ifdef Q_WS_X11
+#include "private/qtkdeintegration_x11_p.h"
+#endif
+
//////////// QWellArray BEGIN
struct QWellArrayData;
@@ -1481,7 +1485,10 @@ QColorDialog::QColorDialog(QWidget* parent, const char* name, bool modal) :
QColor QColorDialog::getColor( const QColor& initial, QWidget *parent,
const char *name )
{
-#if defined(Q_WS_MAC)
+#if defined(Q_WS_X11)
+ if( QKDEIntegration::enabled())
+ return QKDEIntegration::getColor( initial, parent, name );
+#elif defined(Q_WS_MAC)
return macGetColor(initial, parent, name);
#endif
@@ -1519,6 +1526,13 @@ QRgb QColorDialog::getRgba( QRgb initial, bool *ok,
QWidget *parent, const char* name )
{
#if defined(Q_WS_MAC)
+ if( QKDEIntegration::enabled()) {
+ QColor color = QKDEIntegration::getColor( QColor( initial ), parent, name );
+ if( ok )
+ *ok = color.isValid();
+ return color.rgba();
+ }
+#elif defined(Q_WS_MAC)
return macGetRgba(initial, ok, parent, name);
#endif
diff --git a/src/dialogs/qfiledialog.cpp b/src/dialogs/qfiledialog.cpp
index d696204..7d08986 100644
--- a/src/dialogs/qfiledialog.cpp
+++ b/src/dialogs/qfiledialog.cpp
@@ -95,6 +95,10 @@
#include "qvbox.h"
#include "qwidgetstack.h"
+#ifdef Q_WS_X11
+#include "private/qtkdeintegration_x11_p.h"
+#endif
+
#ifdef Q_WS_WIN
#ifdef QT_THREAD_SUPPORT
# include <private/qmutexpool_p.h>
@@ -3489,7 +3493,11 @@ QString QFileDialog::getOpenFileName( const QString & startWith,
if ( workingDirectory->isNull() )
*workingDirectory = ::toRootIfNotExists( QDir::currentDirPath() );
-#if defined(Q_WS_WIN)
+#if defined(Q_WS_X11)
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::getOpenFileNames( filter, workingDirectory, parent, name,
+ caption, selectedFilter, false ).first();
+#elif defined(Q_WS_WIN)
if ( qt_use_native_dialogs && qApp->style().styleHint( QStyle::SH_GUIStyle ) == WindowsStyle )
return winGetOpenFileName( initialSelection, filter, workingDirectory,
parent, name, caption, selectedFilter );
@@ -3610,7 +3618,11 @@ QString QFileDialog::getSaveFileName( const QString & startWith,
if ( workingDirectory->isNull() )
*workingDirectory = ::toRootIfNotExists( QDir::currentDirPath() );
-#if defined(Q_WS_WIN)
+#if defined(Q_WS_X11)
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::getSaveFileName( initialSelection, filter, workingDirectory,
+ parent, name, caption, selectedFilter );
+#elif defined(Q_WS_WIN)
if ( qt_use_native_dialogs && qApp->style().styleHint( QStyle::SH_GUIStyle ) == WindowsStyle )
return winGetSaveFileName( initialSelection, filter, workingDirectory,
parent, name, caption, selectedFilter );
@@ -4500,7 +4512,17 @@ QString QFileDialog::getExistingDirectory( const QString & dir,
if ( workingDirectory )
wd = *workingDirectory;
-#if defined(Q_WS_WIN)
+#if defined(Q_WS_X11)
+ QString initialDir;
+ if ( !dir.isEmpty() ) {
+ QUrlOperator u( dir );
+ if ( QFileInfo( u.path() ).isDir() )
+ initialDir = dir;
+ } else
+ initialDir = QString::null;
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::getExistingDirectory( initialDir, parent, name, caption );
+#elif defined(Q_WS_WIN)
QString initialDir;
if ( !dir.isEmpty() ) {
QUrlOperator u( dir );
@@ -5664,7 +5686,10 @@ QStringList QFileDialog::getOpenFileNames( const QString & filter,
}
}
-#if defined(Q_WS_WIN)
+#if defined(Q_WS_X11)
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::getOpenFileNames( filter, workingDirectory, parent, name, caption, selectedFilter, true );
+#elif defined(Q_WS_WIN)
if ( qt_use_native_dialogs && qApp->style().styleHint( QStyle::SH_GUIStyle ) == WindowsStyle )
return winGetOpenFileNames( filter, workingDirectory, parent, name, caption, selectedFilter );
#elif defined(Q_WS_MAC)
diff --git a/src/dialogs/qfontdialog.cpp b/src/dialogs/qfontdialog.cpp
index 1deec00..d1c31fa 100644
--- a/src/dialogs/qfontdialog.cpp
+++ b/src/dialogs/qfontdialog.cpp
@@ -59,6 +59,10 @@
#include <private/qfontdata_p.h>
#include <qvalidator.h>
+#ifdef Q_WS_X11
+#include "private/qtkdeintegration_x11_p.h"
+#endif
+
/*!
\class QFontDialog qfontdialog.h
\ingroup dialogs
@@ -387,9 +391,15 @@ QFont QFontDialog::getFont( bool *ok, QWidget *parent,const char* name)
return getFont( ok, 0, parent, name );
}
+extern bool qt_use_native_dialogs;
+
QFont QFontDialog::getFont( bool *ok, const QFont *def,
QWidget *parent, const char* name)
{
+#if defined(Q_WS_X11)
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::getFont( ok, def, parent, name );
+#endif
QFont result;
if ( def )
result = *def;
diff --git a/src/dialogs/qmessagebox.cpp b/src/dialogs/qmessagebox.cpp
index 848c008..37407b0 100644
--- a/src/dialogs/qmessagebox.cpp
+++ b/src/dialogs/qmessagebox.cpp
@@ -57,6 +57,12 @@
#endif
+#ifdef Q_WS_X11
+#include "private/qtkdeintegration_x11_p.h"
+#endif
+
+extern bool qt_use_native_dialogs;
+
// Internal class - don't touch
class QMessageBoxLabel : public QLabel
@@ -1114,6 +1120,10 @@ int QMessageBox::information( QWidget *parent,
const QString& caption, const QString& text,
int button0, int button1, int button2 )
{
+#if defined(Q_WS_X11)
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::information( parent, caption, text, button0, button1, button2 );
+#endif
QMessageBox *mb = new QMessageBox( caption, text, Information,
button0, button1, button2,
parent, "qt_msgbox_information", TRUE,
@@ -1161,6 +1171,10 @@ int QMessageBox::question( QWidget *parent,
const QString& caption, const QString& text,
int button0, int button1, int button2 )
{
+#if defined(Q_WS_X11)
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::question( parent, caption, text, button0, button1, button2 );
+#endif
QMessageBox *mb = new QMessageBox( caption, text, Question,
button0, button1, button2,
parent, "qt_msgbox_information", TRUE,
@@ -1209,6 +1223,10 @@ int QMessageBox::warning( QWidget *parent,
const QString& caption, const QString& text,
int button0, int button1, int button2 )
{
+#if defined(Q_WS_X11)
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::warning( parent, caption, text, button0, button1, button2 );
+#endif
QMessageBox *mb = new QMessageBox( caption, text, Warning,
button0, button1, button2,
parent, "qt_msgbox_warning", TRUE,
@@ -1257,6 +1275,10 @@ int QMessageBox::critical( QWidget *parent,
const QString& caption, const QString& text,
int button0, int button1, int button2 )
{
+#if defined(Q_WS_X11)
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::critical( parent, caption, text, button0, button1, button2 );
+#endif
QMessageBox *mb = new QMessageBox( caption, text, Critical,
button0, button1, button2,
parent, "qt_msgbox_critical", TRUE,
@@ -1404,6 +1426,11 @@ int QMessageBox::information( QWidget *parent, const QString &caption,
int defaultButtonNumber,
int escapeButtonNumber )
{
+#if defined(Q_WS_X11)
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::information( parent, caption, text,
+ button0Text, button1Text, button2Text, defaultButtonNumber, escapeButtonNumber );
+#endif
return textBox( parent, Information, caption, text,
button0Text, button1Text, button2Text,
defaultButtonNumber, escapeButtonNumber );
@@ -1446,6 +1473,11 @@ int QMessageBox::question( QWidget *parent, const QString &caption,
int defaultButtonNumber,
int escapeButtonNumber )
{
+#if defined(Q_WS_X11)
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::question( parent, caption, text,
+ button0Text, button1Text, button2Text, defaultButtonNumber, escapeButtonNumber );
+#endif
return textBox( parent, Question, caption, text,
button0Text, button1Text, button2Text,
defaultButtonNumber, escapeButtonNumber );
@@ -1490,6 +1522,11 @@ int QMessageBox::warning( QWidget *parent, const QString &caption,
int defaultButtonNumber,
int escapeButtonNumber )
{
+#if defined(Q_WS_X11)
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::warning( parent, caption, text,
+ button0Text, button1Text, button2Text, defaultButtonNumber, escapeButtonNumber );
+#endif
return textBox( parent, Warning, caption, text,
button0Text, button1Text, button2Text,
defaultButtonNumber, escapeButtonNumber );
@@ -1530,6 +1567,11 @@ int QMessageBox::critical( QWidget *parent, const QString &caption,
int defaultButtonNumber,
int escapeButtonNumber )
{
+#if defined(Q_WS_X11)
+ if ( qt_use_native_dialogs && QKDEIntegration::enabled())
+ return QKDEIntegration::critical( parent, caption, text,
+ button0Text, button1Text, button2Text, defaultButtonNumber, escapeButtonNumber );
+#endif
return textBox( parent, Critical, caption, text,
button0Text, button1Text, button2Text,
defaultButtonNumber, escapeButtonNumber );