Use native separators for path button and free space label tooltips. Improve path button dialog initial directory/file selection.
This commit is contained in:
parent
829cbffaf7
commit
5ada708756
|
@ -7,6 +7,8 @@
|
||||||
* $Id$
|
* $Id$
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <QDir>
|
||||||
|
|
||||||
#include <libtransmission/transmission.h>
|
#include <libtransmission/transmission.h>
|
||||||
#include <libtransmission/variant.h>
|
#include <libtransmission/variant.h>
|
||||||
|
|
||||||
|
@ -98,7 +100,7 @@ FreespaceLabel::onSessionExecuted (int64_t tag, const QString& result, tr_varian
|
||||||
const char * path = 0;
|
const char * path = 0;
|
||||||
tr_variantDictFindStr (arguments, TR_KEY_path, &path, &len);
|
tr_variantDictFindStr (arguments, TR_KEY_path, &path, &len);
|
||||||
str = QString::fromUtf8 (path, len);
|
str = QString::fromUtf8 (path, len);
|
||||||
setToolTip (str);
|
setToolTip (QDir::toNativeSeparators (str));
|
||||||
|
|
||||||
myTimer.start ();
|
myTimer.start ();
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,6 +8,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <QApplication>
|
#include <QApplication>
|
||||||
|
#include <QDir>
|
||||||
#include <QFileDialog>
|
#include <QFileDialog>
|
||||||
#include <QFileIconProvider>
|
#include <QFileIconProvider>
|
||||||
#include <QFileInfo>
|
#include <QFileInfo>
|
||||||
|
@ -63,7 +64,7 @@ TrPathButton::setPath (const QString& path)
|
||||||
if (myPath == path)
|
if (myPath == path)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
myPath = Utils::removeTrailingDirSeparator (path);
|
myPath = QDir::toNativeSeparators (Utils::removeTrailingDirSeparator (path));
|
||||||
|
|
||||||
updateAppearance ();
|
updateAppearance ();
|
||||||
|
|
||||||
|
@ -114,7 +115,20 @@ TrPathButton::onClicked ()
|
||||||
dialog->setOption (QFileDialog::ShowDirsOnly);
|
dialog->setOption (QFileDialog::ShowDirsOnly);
|
||||||
if (!myNameFilter.isEmpty ())
|
if (!myNameFilter.isEmpty ())
|
||||||
dialog->setNameFilter (myNameFilter);
|
dialog->setNameFilter (myNameFilter);
|
||||||
dialog->selectFile (myPath);
|
|
||||||
|
const QFileInfo pathInfo (myPath);
|
||||||
|
if (!myPath.isEmpty () && pathInfo.exists ())
|
||||||
|
{
|
||||||
|
if (pathInfo.isDir ())
|
||||||
|
{
|
||||||
|
dialog->setDirectory (pathInfo.absoluteFilePath ());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dialog->setDirectory (pathInfo.absolutePath ());
|
||||||
|
dialog->selectFile (pathInfo.fileName ());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
connect (dialog, SIGNAL (fileSelected (QString)), this, SLOT (onFileSelected (QString)));
|
connect (dialog, SIGNAL (fileSelected (QString)), this, SLOT (onFileSelected (QString)));
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue