From 3fbd088bb9ffca1bd46204b4cd2b0782caefbc90 Mon Sep 17 00:00:00 2001 From: Thomas Hartmann <Thomas.Hartmann@nokia.com> Date: Fri, 8 Oct 2010 13:29:44 +0200 Subject: [PATCH] QuickToolBars: bugfix for FileWidget The document path is now taken into account when opening a document. Also we use released() instead of pressed() Task-number: QTCREATORBUG-2621 Reviewed-by: Kai Koehne --- src/libs/qmleditorwidgets/filewidget.cpp | 10 +++------- src/libs/qmleditorwidgets/filewidget.h | 3 +-- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/src/libs/qmleditorwidgets/filewidget.cpp b/src/libs/qmleditorwidgets/filewidget.cpp index 47a0020a871..5a405d64b4c 100644 --- a/src/libs/qmleditorwidgets/filewidget.cpp +++ b/src/libs/qmleditorwidgets/filewidget.cpp @@ -53,9 +53,8 @@ FileWidget::FileWidget(QWidget *parent) : QWidget(parent), m_filter("(*.*)"), m_ layout->addWidget(m_pushButton); m_pushButton->setText("..."); connect(m_lineEdit, SIGNAL(editingFinished()), this, SLOT(lineEditChanged())); - connect(m_pushButton, SIGNAL(pressed()), this, SLOT(buttonPressed())); + connect(m_pushButton, SIGNAL(released()), this, SLOT(onButtonReleased())); connect(m_comboBox, SIGNAL(editTextChanged(const QString &)), this, SLOT(comboBoxChanged())); - m_currentPath = QDir::currentPath(); } FileWidget::~FileWidget() @@ -83,14 +82,11 @@ void FileWidget::comboBoxChanged() setFileNameStr(m_comboBox->currentText()); } -void FileWidget::buttonPressed() +void FileWidget::onButtonReleased() { - QString path = m_currentPath; - QString newFile = QFileDialog::getOpenFileName(0, tr("Open File"), path, m_filter); + QString newFile = QFileDialog::getOpenFileName(0, tr("Open File"), m_path.toLocalFile(), m_filter); if (!newFile.isEmpty()) setFileNameStr(newFile); - - m_currentPath = QFileInfo(newFile).absolutePath(); } void FileWidget::setFileNameStr(const QString &fileName) diff --git a/src/libs/qmleditorwidgets/filewidget.h b/src/libs/qmleditorwidgets/filewidget.h index a1c1e37bec2..971a28f5c76 100644 --- a/src/libs/qmleditorwidgets/filewidget.h +++ b/src/libs/qmleditorwidgets/filewidget.h @@ -91,7 +91,7 @@ public: public slots: void setFileName(const QUrl &fileName); void setFileNameStr(const QString &fileName); - void buttonPressed(); + void onButtonReleased(); void lineEditChanged(); void comboBoxChanged(); @@ -113,7 +113,6 @@ private: QString m_filter; bool m_showComboBox; bool m_lock; - QString m_currentPath; }; -- GitLab