Kaydet (Commit) 29e5096f authored tarafından Katarina Behrens's avatar Katarina Behrens

Add 2 more file/dir methods, signal+slot

Change-Id: I0152e4e0fa72e27a144ca96f83fe6a282b272cbe
üst 024f054e
...@@ -46,11 +46,7 @@ KDE5FilePicker::~KDE5FilePicker() ...@@ -46,11 +46,7 @@ KDE5FilePicker::~KDE5FilePicker()
delete _dialog; delete _dialog;
} }
/*void KDE5FilePicker::setDefaultName(const QString& name) { _dialog->selectUrl(QUrl(name)); } /*bool KDE5FilePicker::getValue(sal_Int16 controlId, sal_Int16 nControlAction) const
QString KDE5FilePicker::getDisplayDirectory() const { return _dialog->directoryUrl().url(); }
bool KDE5FilePicker::getValue(sal_Int16 controlId, sal_Int16 nControlAction) const
{ {
bool ret = false; bool ret = false;
if (_customWidgets.contains(controlId)) if (_customWidgets.contains(controlId))
......
...@@ -173,7 +173,9 @@ protected: ...@@ -173,7 +173,9 @@ protected:
Q_SIGNALS: Q_SIGNALS:
void setTitleSignal(const OUString& rTitle); void setTitleSignal(const OUString& rTitle);
void setDefaultNameSignal(const OUString& rName);
void setDisplayDirectorySignal(const OUString& rDir); void setDisplayDirectorySignal(const OUString& rDir);
OUString getDisplayDirectorySignal();
void setValueSignal(sal_Int16 nControlId, sal_Int16 nControlAction, void setValueSignal(sal_Int16 nControlId, sal_Int16 nControlAction,
const css::uno::Any& rValue); const css::uno::Any& rValue);
void appendFilterSignal(const OUString& rTitle, const OUString& rFilter); void appendFilterSignal(const OUString& rTitle, const OUString& rFilter);
...@@ -186,7 +188,9 @@ Q_SIGNALS: ...@@ -186,7 +188,9 @@ Q_SIGNALS:
private Q_SLOTS: private Q_SLOTS:
void setTitleSlot(const OUString& rTitle) { return setTitle(rTitle); } void setTitleSlot(const OUString& rTitle) { return setTitle(rTitle); }
void setDefaultNameSlot(const OUString& rName) { return setDefaultName(rName); }
void setDisplayDirectorySlot(const OUString& rDir) { return setDisplayDirectory(rDir); } void setDisplayDirectorySlot(const OUString& rDir) { return setDisplayDirectory(rDir); }
OUString getDisplayDirectorySlot() { return getDisplayDirectory(); }
void setValueSlot(sal_Int16 nControlId, sal_Int16 nControlAction, const css::uno::Any& rValue) void setValueSlot(sal_Int16 nControlId, sal_Int16 nControlAction, const css::uno::Any& rValue)
{ {
return setValue(nControlAction, nControlAction, rValue); return setValue(nControlAction, nControlAction, rValue);
......
...@@ -102,9 +102,13 @@ KDE5FilePicker::KDE5FilePicker(QFileDialog::FileMode eMode) ...@@ -102,9 +102,13 @@ KDE5FilePicker::KDE5FilePicker(QFileDialog::FileMode eMode)
connect(_dialog, &QFileDialog::fileSelected, this, &KDE5FilePicker::selectionChanged); connect(_dialog, &QFileDialog::fileSelected, this, &KDE5FilePicker::selectionChanged);
connect(this, &KDE5FilePicker::setTitleSignal /*(const OUString&)*/, this, connect(this, &KDE5FilePicker::setTitleSignal /*(const OUString&)*/, this,
&KDE5FilePicker::setTitleSlot /*(const OUString&)*/, Qt::BlockingQueuedConnection); &KDE5FilePicker::setTitleSlot /*(const OUString&)*/, Qt::BlockingQueuedConnection);
connect(this, &KDE5FilePicker::setDefaultNameSignal, this, &KDE5FilePicker::setDefaultNameSlot,
Qt::BlockingQueuedConnection);
connect(this, &KDE5FilePicker::setDisplayDirectorySignal /*(const OUString&)*/, this, connect(this, &KDE5FilePicker::setDisplayDirectorySignal /*(const OUString&)*/, this,
&KDE5FilePicker::setDisplayDirectorySlot /*(const OUString&)*/, &KDE5FilePicker::setDisplayDirectorySlot /*(const OUString&)*/,
Qt::BlockingQueuedConnection); Qt::BlockingQueuedConnection);
connect(this, &KDE5FilePicker::getDisplayDirectorySignal, this,
&KDE5FilePicker::getDisplayDirectorySlot, Qt::BlockingQueuedConnection);
connect(this, &KDE5FilePicker::setMultiSelectionSignal, this, connect(this, &KDE5FilePicker::setMultiSelectionSignal, this,
&KDE5FilePicker::setMultiSelectionSlot, Qt::BlockingQueuedConnection); &KDE5FilePicker::setMultiSelectionSlot, Qt::BlockingQueuedConnection);
connect(this, &KDE5FilePicker::setValueSignal, this, &KDE5FilePicker::setValueSlot, connect(this, &KDE5FilePicker::setValueSignal, this, &KDE5FilePicker::setValueSlot,
...@@ -170,7 +174,16 @@ void SAL_CALL KDE5FilePicker::setMultiSelectionMode(sal_Bool multiSelect) ...@@ -170,7 +174,16 @@ void SAL_CALL KDE5FilePicker::setMultiSelectionMode(sal_Bool multiSelect)
_dialog->setFileMode(multiSelect ? QFileDialog::ExistingFiles : QFileDialog::ExistingFile); _dialog->setFileMode(multiSelect ? QFileDialog::ExistingFiles : QFileDialog::ExistingFile);
} }
void SAL_CALL KDE5FilePicker::setDefaultName(const OUString& name) {} void SAL_CALL KDE5FilePicker::setDefaultName(const OUString& name)
{
if (qApp->thread() != QThread::currentThread())
{
SolarMutexReleaser aReleaser;
return Q_EMIT setDefaultNameSignal(name);
}
_dialog->selectUrl(QUrl(toQString(name)));
}
void SAL_CALL KDE5FilePicker::setDisplayDirectory(const OUString& dir) void SAL_CALL KDE5FilePicker::setDisplayDirectory(const OUString& dir)
{ {
...@@ -185,7 +198,13 @@ void SAL_CALL KDE5FilePicker::setDisplayDirectory(const OUString& dir) ...@@ -185,7 +198,13 @@ void SAL_CALL KDE5FilePicker::setDisplayDirectory(const OUString& dir)
OUString SAL_CALL KDE5FilePicker::getDisplayDirectory() OUString SAL_CALL KDE5FilePicker::getDisplayDirectory()
{ {
OUString dir; if (qApp->thread() != QThread::currentThread())
{
SolarMutexReleaser aReleaser;
return Q_EMIT getDisplayDirectorySignal();
}
OUString dir = toOUString(_dialog->directoryUrl().url());
return dir; return dir;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment