Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "mainwindow.h"
- #include "ui_mainwindow.h"
- textEdit::textEdit(QTextEdit *parent) : QTextEdit(parent) {
- }
- void textEdit::clickedOnRecipe(const QModelIndex& index) {
- QDir recepieDirectory("D:/RECIPES");
- QStringList recipeName = recepieDirectory.entryList(QStringList("*txt"));
- //qDebug() << recipeName;
- QFile file("D:/RECIPES/" + recipeName[index.row()]);
- file.open(QIODevice::ReadOnly);
- //qDebug() << "D:/RECIPES/" + strlst[index.row()];
- QByteArray fileData = file.readAll();
- setText(fileData);
- file.close();
- }
- culinaryGuide::culinaryGuide(QWidget* parent) : QWidget(parent){
- text1 = new QLabel("Choose one of recipes : ");
- text2 = new QLabel("Recipes : ");
- findButton = new QPushButton("Find");
- findButton->setFixedSize(40,40);
- clearButton = new QPushButton("Clear");
- clearButton->setFixedSize(40,40);
- searchLine = new QLineEdit;
- searchLine->setFixedSize(100,40);
- recipe = new textEdit;
- recipe->setFixedSize(1000,750);
- recepieDirectory = new QDir("D:/RECIPES");
- recipeName = recepieDirectory->entryList(QStringList("*.txt"));
- listView = new QListView;
- model = new QFileSystemModel;
- model->setRootPath("D:/RECIPES");
- listView->setModel(model);
- listView->setRootIndex(model->index("D:/RECIPES"));
- QHBoxLayout *horL = new QHBoxLayout;
- QVBoxLayout *verL = new QVBoxLayout;
- QSplitter *splitter = new QSplitter(Qt::Horizontal);
- splitter->addWidget(listView);
- splitter->addWidget(recipe);
- horL->addWidget(text1);
- horL->addWidget(text2);
- horL->addWidget(searchLine);
- horL->addWidget(findButton);
- horL->addWidget(clearButton);
- verL->addLayout(horL);
- verL->addWidget(splitter);
- setLayout(verL);
- resize(1600,750);
- connect(listView,SIGNAL(clicked(const QModelIndex&)),recipe,SLOT(clickedOnRecipe(const QModelIndex&)));
- connect(findButton,SIGNAL(clicked()),SLOT(find()));
- connect(clearButton,SIGNAL(clicked()),SLOT(clearButtonClicked()));
- }
- void culinaryGuide::find(){
- foreach(QString temp,recipeName) {
- if(temp == (searchLine->text() + ".txt")) {
- model->setNameFilters(QStringList(searchLine->text() + ".txt"));
- }
- }
- }
- void culinaryGuide::clearButtonClicked() {
- searchLine->setText("");
- model->setNameFilters(QStringList("*.txt"));
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement