#include #include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow), _notebooks(new NotebookModel(this)), _manager(new SmartpenManager(this)) { ui->setupUi(this); ui->notebookTree->setModel(_notebooks); ui->notebookTree->header()->setResizeMode(0, QHeaderView::Stretch); ui->notebookTree->header()->setResizeMode(1, QHeaderView::Fixed); ui->notebookTree->header()->setResizeMode(2, QHeaderView::Fixed); ui->notebookTree->expandAll(); } MainWindow::~MainWindow() { delete ui; } void MainWindow::closeNotebook() { _curPenName.clear(); _curNotebookName.clear(); ui->notebookView->setNotebook(QString()); } void MainWindow::openNotebook(const QString &pen, const QString ¬ebook) { if (_curPenName == pen && _curNotebookName == notebook) return; _curPenName = pen; _curNotebookName = notebook; QString nbDir = _notebooks->notebookDirectory(_curPenName, _curNotebookName); qDebug() << "Opening notebook" << _curPenName << _curNotebookName << nbDir; ui->notebookView->setNotebook(nbDir); } void MainWindow::handleNotebookSelected(const QModelIndex &index) { if (!index.isValid()) { closeNotebook(); return; } QModelIndex parent = index.parent(); if (!parent.isValid()) { closeNotebook(); return; } QModelIndex child = parent.child(index.row(), 0); openNotebook(_notebooks->data(parent, Qt::DisplayRole).toString(), _notebooks->data(child, Qt::DisplayRole).toString()); } void MainWindow::handleCurPageChanged() { ui->pageEdit->setText(QString::number(ui->notebookView->curPage() + 1)); }