vnote/vmainwindow.h
Le Tan 4d9946bfe1 support creating new notebook
Thanks to [benjsperry](https://github.com/driftyco/ionicons) for the
icons.

Signed-off-by: Le Tan <tamlokveer@gmail.com>
2016-10-17 11:28:37 +08:00

64 lines
1.3 KiB
C++

#ifndef VMAINWINDOW_H
#define VMAINWINDOW_H
#include <QMainWindow>
class QLabel;
class QComboBox;
class VDirectoryTree;
class QSplitter;
class QListWidget;
class QTabWidget;
class QToolBar;
class VNote;
class VFileList;
class VTabWidget;
class QAction;
class QPushButton;
class VNotebook;
class VMainWindow : public QMainWindow
{
Q_OBJECT
public:
VMainWindow(QWidget *parent = 0);
~VMainWindow();
private slots:
// Change current notebook index and update the directory tree
void setCurNotebookIndex(int index);
// Create a notebook
void onNewNotebookBtnClicked();
void updateNotebookComboBox(const QVector<VNotebook> &notebooks);
signals:
void curNotebookIndexChanged(const QString &path);
private:
void setupUI();
void initActions();
void initToolBar();
void initMenuBar();
bool isConflictWithExistingNotebooks(const QString &name, const QString &path);
QLabel *notebookLabel;
QLabel *directoryLabel;
QComboBox *notebookComboBox;
QPushButton *newNotebookBtn;
QPushButton *deleteNotebookBtn;
QPushButton *notebookInfoBtn;
VDirectoryTree *directoryTree;
VFileList *fileList;
VTabWidget *tabs;
QSplitter *mainSplitter;
VNote *vnote;
// Actions
QAction *editNoteAct;
QAction *saveNoteAct;
QAction *readNoteAct;
};
#endif // VMAINWINDOW_H