From 86b12fc8cbc2cbbc949bc883276bd281bae9cbc3 Mon Sep 17 00:00:00 2001 From: "Aaron J. Seigo" Date: Wed, 18 Nov 2009 23:26:28 +0000 Subject: [PATCH] add an accepted signal, differentiate between accepted and finished; more qdialog-like and lets the widget react to a failed file dialog svn path=/trunk/KDE/kdebase/runtime/; revision=1051186 --- .../javascript/simplebindings/filedialogproxy.cpp | 7 +++++-- scriptengines/javascript/simplebindings/filedialogproxy.h | 1 + 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/scriptengines/javascript/simplebindings/filedialogproxy.cpp b/scriptengines/javascript/simplebindings/filedialogproxy.cpp index dc000750e..4eb6ab090 100644 --- a/scriptengines/javascript/simplebindings/filedialogproxy.cpp +++ b/scriptengines/javascript/simplebindings/filedialogproxy.cpp @@ -28,12 +28,12 @@ FileDialogProxy::FileDialogProxy(KFileDialog::OperationMode mode, QObject *paren { kDebug() << "hello beautiful"; m_dialog->setOperationMode(mode); - connect(m_dialog, SIGNAL(okClicked()), this, SLOT(dialogFinished())); + connect(m_dialog, SIGNAL(finished()), this, SLOT(dialogFinished())); } FileDialogProxy::~FileDialogProxy() { - kDebug() << "bye bye"; + kDebug() << this << "bye bye"; delete m_dialog; } @@ -126,6 +126,9 @@ void FileDialogProxy::show() void FileDialogProxy::dialogFinished() { + if (m_dialog->result() == QDialog::Accepted) { + emit accepted(this); + } emit finished(this); } diff --git a/scriptengines/javascript/simplebindings/filedialogproxy.h b/scriptengines/javascript/simplebindings/filedialogproxy.h index 8ec5a27e9..bfce066d1 100644 --- a/scriptengines/javascript/simplebindings/filedialogproxy.h +++ b/scriptengines/javascript/simplebindings/filedialogproxy.h @@ -72,6 +72,7 @@ public Q_SLOTS: void show(); Q_SIGNALS: + void accepted(FileDialogProxy *); void finished(FileDialogProxy *); private Q_SLOTS: