diff --git a/TalkToMeBaby.pro b/TalkToMeBaby.pro index 0b72962..65b595a 100644 --- a/TalkToMeBaby.pro +++ b/TalkToMeBaby.pro @@ -10,15 +10,18 @@ CONFIG += c++11 SOURCES += \ connect.cpp \ + directory.cpp \ main.cpp \ mainwindow.cpp HEADERS += \ connect.h \ + directory.h \ mainwindow.h FORMS += \ connect.ui \ + directory.ui \ mainwindow.ui QMAKE_CXXFLAGS += -std=gnu++11 # Default rules for deployment. diff --git a/TalkToMeBaby.pro.user b/TalkToMeBaby.pro.user index d56e8c2..171af76 100644 --- a/TalkToMeBaby.pro.user +++ b/TalkToMeBaby.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId diff --git a/directory.cpp b/directory.cpp new file mode 100644 index 0000000..d4f01e1 --- /dev/null +++ b/directory.cpp @@ -0,0 +1,34 @@ +#include "directory.h" +#include "ui_directory.h" + +directory::directory(QWidget *parent) : + QDialog(parent), + ui(new Ui::directory) +{ + ui->setupUi(this); + + QString sPath = "T:/"; + dirmodel = new QFileSystemModel(this); + dirmodel->setFilter(QDir::NoDotAndDotDot | QDir::AllDirs); + dirmodel->setRootPath(sPath); + ui->treeView->setModel(dirmodel); + + filemodel = new QFileSystemModel(this); + filemodel->setFilter(QDir::NoDotAndDotDot | QDir::AllDirs); + filemodel->setRootPath(sPath); + + ui->listView->setModel(filemodel); +} + +directory::~directory() +{ + delete ui; +} + + +void directory::on_treeView_clicked(const QModelIndex &index) +{ + QString sPath = dirmodel->fileInfo(index).absoluteFilePath(); + ui->listView->setRootIndex(filemodel->setRootPath(sPath)); + +} diff --git a/directory.h b/directory.h new file mode 100644 index 0000000..d76a7f7 --- /dev/null +++ b/directory.h @@ -0,0 +1,31 @@ + #ifndef DIRECTORY_H +#define DIRECTORY_H + +#include +#include +#include +#include +namespace Ui { +class directory; +} + +class directory : public QDialog +{ + Q_OBJECT + +public: + explicit directory(QWidget *parent = nullptr); + ~directory(); + +private slots: + + void on_treeView_clicked(const QModelIndex &index); + +private: + Ui::directory *ui; + QFileSystemModel *dirmodel; + QFileSystemModel *filemodel; + +}; + +#endif // DIRECTORY_H diff --git a/directory.ui b/directory.ui new file mode 100644 index 0000000..ff556e8 --- /dev/null +++ b/directory.ui @@ -0,0 +1,31 @@ + + + directory + + + + 0 + 0 + 739 + 494 + + + + Dialog + + + + + + + + + + + + + + + + + diff --git a/mainwindow.cpp b/mainwindow.cpp index cca9465..61ebb4e 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -4,6 +4,7 @@ #include #include #include +#include "directory.h" MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), @@ -14,7 +15,7 @@ MainWindow::MainWindow(QWidget *parent): connect(mSocket, &QTcpSocket::readyRead, [&](){ QTextStream T(mSocket); - auto text = T.readAll(); + auto text = T.readAll(); ui->read->append(text); }); @@ -39,7 +40,9 @@ if(C.exec() == QDialog::Rejected) void MainWindow::on_file_clicked() { - +directory d; +d.setModal(true); +d.exec(); } void MainWindow::on_send_clicked()