summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorJan-Marek Glogowski <glogow@fbihome.de>2014-02-06 16:05:37 +0000
committerJan-Marek Glogowski <glogow@fbihome.de>2014-08-20 09:44:38 +0200
commita51b25a7931d8f389aa5893d883dabb0dafb8e55 (patch)
tree41e2cdc3a9aaa7c48ef1c0a75c16929333389074 /vcl
parent28c27928687616b81ce70852d9a2bd64301b0445 (diff)
fdo#72187 Implement KDE4 picker notifications
This notifies the XFilePickerListener of filter changes and file selection changes. (cherry picked from commit a8d102c2406b8c027afb32d61271e0a2c301f133) Conflicts: vcl/unx/kde4/KDE4FilePicker.cxx Change-Id: I749c5f7420f020a3a2fbb764acb5c45d40972cf1
Diffstat (limited to 'vcl')
-rw-r--r--vcl/unx/kde4/KDE4FilePicker.cxx21
-rw-r--r--vcl/unx/kde4/KDE4FilePicker.hxx4
2 files changed, 25 insertions, 0 deletions
diff --git a/vcl/unx/kde4/KDE4FilePicker.cxx b/vcl/unx/kde4/KDE4FilePicker.cxx
index 33d6ac74d96c..c36b9ccdb2f4 100644
--- a/vcl/unx/kde4/KDE4FilePicker.cxx
+++ b/vcl/unx/kde4/KDE4FilePicker.cxx
@@ -167,6 +167,10 @@ KDE4FilePicker::KDE4FilePicker( const uno::Reference<uno::XComponentContext>& )
// Destructor proxy
connect( this, SIGNAL( cleanupProxySignal() ), this, SLOT( cleanupProxy() ), Qt::BlockingQueuedConnection );
+
+ // XFilePickerListener notifications
+ connect( _dialog, SIGNAL( filterChanged(const QString&) ), this, SLOT( filterChanged(const QString&) ));
+ connect( _dialog, SIGNAL( selectionChanged() ), this, SLOT( selectionChanged() ));
}
KDE4FilePicker::~KDE4FilePicker()
@@ -777,6 +781,23 @@ uno::Sequence< OUString > SAL_CALL KDE4FilePicker::getSupportedServiceNames()
return FilePicker_getSupportedServiceNames();
}
+void KDE4FilePicker::filterChanged(const QString &)
+{
+ FilePickerEvent aEvent;
+ aEvent.ElementId = LISTBOX_FILTER;
+ OSL_TRACE( "filter changed" );
+ if (m_xListener.is())
+ m_xListener->controlStateChanged( aEvent );
+}
+
+void KDE4FilePicker::selectionChanged()
+{
+ FilePickerEvent aEvent;
+ OSL_TRACE( "file selection changed" );
+ if (m_xListener.is())
+ m_xListener->fileSelectionChanged( aEvent );
+}
+
#include "KDE4FilePicker.moc"
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/unx/kde4/KDE4FilePicker.hxx b/vcl/unx/kde4/KDE4FilePicker.hxx
index af2564af6978..8b7b53ed87dc 100644
--- a/vcl/unx/kde4/KDE4FilePicker.hxx
+++ b/vcl/unx/kde4/KDE4FilePicker.hxx
@@ -224,6 +224,10 @@ private:
private Q_SLOTS:
void cleanupProxy();
+ // emit XFilePickerListener controlStateChanged event
+ void filterChanged(const QString &filter);
+ // emit XFilePickerListener fileSelectionChanged event
+ void selectionChanged();
};
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */