-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmainwindow.cpp
More file actions
53 lines (43 loc) · 1.08 KB
/
Copy pathmainwindow.cpp
File metadata and controls
53 lines (43 loc) · 1.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "noteeditor.h"
#include <QDir>
#include <QListWidgetItem>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
connect(ui->btnAddNote, &QPushButton::clicked, this, &MainWindow::onAddNote);
connect(ui->listNotes, &QListWidget::itemClicked, this, &MainWindow::onNoteClicked);
loadNotes();
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::loadNotes()
{
ui->listNotes->clear();
QDir notesDir("notes");
if (!notesDir.exists()) notesDir.mkpath(".");
QStringList files = notesDir.entryList(QStringList() << "*.txt", QDir::Files);
for (const QString &file : files) {
ui->listNotes->addItem(file.left(file.length()-4));
}
}
void MainWindow::onAddNote()
{
NoteEditor editor(this);
editor.exec();
loadNotes();
}
void MainWindow::onNoteClicked(QListWidgetItem* item)
{
NoteEditor editor(this, item->text());
editor.exec();
loadNotes();
}
void MainWindow::on_btnExit_clicked()
{
QApplication::quit();
}