summaryrefslogtreecommitdiff
path: root/rbutil/rbutilqt/installtalkwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil/rbutilqt/installtalkwindow.cpp')
-rw-r--r--rbutil/rbutilqt/installtalkwindow.cpp78
1 files changed, 48 insertions, 30 deletions
diff --git a/rbutil/rbutilqt/installtalkwindow.cpp b/rbutil/rbutilqt/installtalkwindow.cpp
index 4d1cdb1491..82efa20a88 100644
--- a/rbutil/rbutilqt/installtalkwindow.cpp
+++ b/rbutil/rbutilqt/installtalkwindow.cpp
@@ -20,6 +20,8 @@
20#include "installtalkwindow.h" 20#include "installtalkwindow.h"
21#include "ui_installtalkfrm.h" 21#include "ui_installtalkfrm.h"
22 22
23#include "browsedirtree.h"
24
23InstallTalkWindow::InstallTalkWindow(QWidget *parent) : QDialog(parent) 25InstallTalkWindow::InstallTalkWindow(QWidget *parent) : QDialog(parent)
24{ 26{
25 ui.setupUi(this); 27 ui.setupUi(this);
@@ -43,18 +45,23 @@ InstallTalkWindow::InstallTalkWindow(QWidget *parent) : QDialog(parent)
43 45
44void InstallTalkWindow::browseFolder() 46void InstallTalkWindow::browseFolder()
45{ 47{
46 QFileDialog browser(this); 48 BrowseDirtree browser(this);
49 browser.setFilter(QDir::AllDirs | QDir::NoDotAndDotDot | QDir::NoSymLinks);
50
47 if(QFileInfo(ui.lineTalkFolder->text()).isDir()) 51 if(QFileInfo(ui.lineTalkFolder->text()).isDir())
48 browser.setDirectory(ui.lineTalkFolder->text()); 52 {
53 QDir d(ui.lineTalkFolder->text());
54 browser.setDir(d);
55 }
49 else 56 else
50 browser.setDirectory("/media"); 57 {
51 browser.setReadOnly(true); 58 QDir d("/media");
52 browser.setFileMode(QFileDialog::DirectoryOnly); 59 browser.setDir(d);
53 browser.setAcceptMode(QFileDialog::AcceptOpen); 60 }
54 if(browser.exec()) { 61 if(browser.exec() == QDialog::Accepted)
55 qDebug() << browser.directory(); 62 {
56 QStringList files = browser.selectedFiles(); 63 qDebug() << browser.getSelected();
57 setTalkFolder(files.at(0)); 64 setTalkFolder(browser.getSelected());
58 } 65 }
59} 66}
60 67
@@ -66,19 +73,25 @@ void InstallTalkWindow::setTalkFolder(QString folder)
66 73
67void InstallTalkWindow::browseTTS() 74void InstallTalkWindow::browseTTS()
68{ 75{
69 QFileDialog browser(this); 76 BrowseDirtree browser(this);
77 browser.setFilter(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot);
78
70 if(QFileInfo(ui.TTSpath->text()).isDir()) 79 if(QFileInfo(ui.TTSpath->text()).isDir())
71 browser.setDirectory(ui.TTSpath->text()); 80 {
81 QDir d(ui.TTSpath->text());
82 browser.setDir(d);
83 }
72 else 84 else
73 browser.setDirectory("/media"); 85 {
74 browser.setReadOnly(true); 86 QDir d("/media");
75 browser.setFileMode(QFileDialog::ExistingFile); 87 browser.setDir(d);
76 browser.setAcceptMode(QFileDialog::AcceptOpen); 88 }
77 if(browser.exec()) { 89 if(browser.exec() == QDialog::Accepted)
78 qDebug() << browser.directory(); 90 {
79 QStringList files = browser.selectedFiles(); 91 qDebug() << browser.getSelected();
80 setTTSExec(files.at(0)); 92 setTTSExec(browser.getSelected());
81 } 93 }
94
82} 95}
83 96
84void InstallTalkWindow::setTTSExec(QString path) 97void InstallTalkWindow::setTTSExec(QString path)
@@ -89,18 +102,23 @@ void InstallTalkWindow::setTTSExec(QString path)
89 102
90void InstallTalkWindow::browseEncoder() 103void InstallTalkWindow::browseEncoder()
91{ 104{
92 QFileDialog browser(this); 105 BrowseDirtree browser(this);
106 browser.setFilter(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot);
107
93 if(QFileInfo(ui.Encoderpath->text()).isDir()) 108 if(QFileInfo(ui.Encoderpath->text()).isDir())
94 browser.setDirectory(ui.Encoderpath->text()); 109 {
110 QDir d(ui.Encoderpath->text());
111 browser.setDir(d);
112 }
95 else 113 else
96 browser.setDirectory("/media"); 114 {
97 browser.setReadOnly(true); 115 QDir d("/media");
98 browser.setFileMode(QFileDialog::ExistingFile); 116 browser.setDir(d);
99 browser.setAcceptMode(QFileDialog::AcceptOpen); 117 }
100 if(browser.exec()) { 118 if(browser.exec() == QDialog::Accepted)
101 qDebug() << browser.directory(); 119 {
102 QStringList files = browser.selectedFiles(); 120 qDebug() << browser.getSelected();
103 setEncoderExec(files.at(0)); 121 setEncoderExec(browser.getSelected());
104 } 122 }
105} 123}
106 124