ui: Start from correct directory for relative paths in project setup location pickers

This commit is contained in:
Eberhard Graether
2017-11-07 00:33:33 +01:00
parent 6fad9eea84
commit 28fe1533b7
2 changed files with 16 additions and 3 deletions
@@ -75,7 +75,14 @@ void QtListItemWidget::setFocus()
void QtListItemWidget::handleButtonPress()
{
QStringList list = QtFileDialog::getFileNamesAndDirectories(this, m_data->text());
FilePath path(m_data->text().toStdString());
FilePath relativeRoot = m_list->getRelativeRootDirectory();
if (!relativeRoot.empty())
{
path = relativeRoot.concat(path);
}
QStringList list = QtFileDialog::getFileNamesAndDirectories(this, QString::fromStdString(path.str()));
for (int i = 0; i < list.size(); i++)
{
setText(list.at(i));
+8 -2
View File
@@ -98,14 +98,20 @@ void QtLocationPicker::changeEvent(QEvent *event)
void QtLocationPicker::handleButtonPress()
{
FilePath path(m_data->text().toStdString());
if (!m_relativeRootDirectory.empty())
{
path = m_relativeRootDirectory.concat(path);
}
QString fileName;
if (m_pickDirectory)
{
fileName = QtFileDialog::getExistingDirectory(this, tr("Select Directory"), m_data->text());
fileName = QtFileDialog::getExistingDirectory(this, tr("Select Directory"), QString::fromStdString(path.str()));
}
else
{
fileName = QtFileDialog::getOpenFileName(this, tr("Open File"), m_data->text(), m_fileFilter);
fileName = QtFileDialog::getOpenFileName(this, tr("Open File"), QString::fromStdString(path.str()), m_fileFilter);
}
if (!fileName.isEmpty())