You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
120 lines
5.3 KiB
120 lines
5.3 KiB
3 years ago
|
/* DrewTechs
|
||
|
* Note Binder
|
||
|
* @Version 1.0
|
||
|
*/
|
||
|
|
||
|
#ifndef MAINWINDOW_H
|
||
|
#define MAINWINDOW_H
|
||
|
|
||
|
#include <QMainWindow>
|
||
|
#include <QFileDialog>
|
||
|
#include <QVector>
|
||
|
#include <QFileInfo>
|
||
|
#include <QDebug>
|
||
|
#include <QDirIterator>
|
||
|
#include <QComboBox>
|
||
|
#include <QTreeWidgetItem>
|
||
|
#include <QProcess>
|
||
|
#include <QCloseEvent>
|
||
|
#include "notebook.h"
|
||
|
#include "notebooklist.h"
|
||
|
#include "notebookmanager.h"
|
||
|
#include "unfiledNotes.h"
|
||
|
#include "newNotebookDialog.h"
|
||
|
#include "newSectionDialog.h"
|
||
|
#include "newSectionGroupDialog.h"
|
||
|
#include "copyItemDialog.h"
|
||
|
#include "itemProperties.h"
|
||
|
#include "importSection.h"
|
||
|
#include "settings.h"
|
||
|
#include "applicationlaunchers.h"
|
||
|
|
||
|
QT_BEGIN_NAMESPACE
|
||
|
namespace Ui { class MainWindow; }
|
||
|
QT_END_NAMESPACE
|
||
|
|
||
|
class MainWindow : public QMainWindow
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
|
||
|
public:
|
||
|
MainWindow(QWidget *parent = nullptr);
|
||
|
NotebookList notebookList; // List of Notebooks Opened
|
||
|
Settings* uiSettings; // Settings Ui (though kept invisible)
|
||
|
void init(); // Initialization of Program
|
||
|
void NewSection(); // Create New Section
|
||
|
void runNewSectionApplication(QString fileLocation);
|
||
|
void runOpenSectionApplication(QString fileLocation);
|
||
|
void NewSectionGroup(); // Create New Section Group
|
||
|
Notebook* OpenNotebook(QString fileName); // Open Existing Notebook
|
||
|
void OpenSection(); // Open Highlighted Section in Notebook
|
||
|
void OpenAtPageSection(unsigned int pageNum); // Opwn Highlighted Section at Page # (works in some applications only)
|
||
|
void CloseNotebook(); // Close Notebook Already Opened
|
||
|
void CloseAllNotebooks(); // Close All Opened Notebooks
|
||
|
void DeleteSelectedItem(QTreeWidgetItem* selectedItem); // Deletes Selected Item
|
||
|
void UpdateNotebookList(); // Refresh Notebok List on Menu
|
||
|
void ExitProgram(); // Exit Program
|
||
|
void closeEvent (QCloseEvent *event); // Exit Program Event
|
||
|
void runUnfiledNotesApplication(QString extension); // Run Unfiled Notes Application
|
||
|
void messageBox(QString title, QString message); // Print Message Dialog
|
||
|
~MainWindow();
|
||
|
|
||
|
private slots:
|
||
|
void on_openNotebook_Button_clicked();
|
||
|
void on_openSection_Button_clicked();
|
||
|
void on_newSection_Button_clicked();
|
||
|
void on_newSectionGroup_Button_clicked();
|
||
|
void on_newNotebook_Button_clicked();
|
||
|
void on_closeNotebook_Button_clicked();
|
||
|
void on_closeAllNotebooksButton_clicked();
|
||
|
void on_deleteSelectedItem_Button_clicked();
|
||
|
void on_generalSettings_Button_clicked();
|
||
|
void on_iconSizeSlider_valueChanged(int value);
|
||
|
void on_refreshNotebookListButton_clicked();
|
||
|
void on_itemPropertiesButton_clicked();
|
||
|
void on_hideDirectory_Check_stateChanged(int arg1);
|
||
|
void on_hideSize_Check_stateChanged(int arg1);
|
||
|
void on_unfiledNotes_Button_clicked();
|
||
|
void on_moveItem_Button_clicked();
|
||
|
void on_copyItem_Button_clicked();
|
||
|
void on_importSection_Button_clicked();
|
||
|
void on_exportSection_Button_clicked();
|
||
|
|
||
|
|
||
|
void newSectionDirSequence_fileToSectGr(SectionGroup* sectionGroup, QString fullFileName);
|
||
|
void openNotebookDirSequence_treeWidget(SectionGroup* sectionGroup, QTreeWidgetItem* sectionGroupItem);
|
||
|
void newSectionDirSequence_toSectToDirDialog(SectionGroup* sectionGroup, SectionGroup* subSectionGroup);
|
||
|
int newSectionDirSequence_toSectToDirDialog(SectionGroup* sectionGroup, QStringList* notebookColorList, QStringList* list, int item_level, int tab_count);
|
||
|
void openSectionDirSequence_findFile(SectionGroup* sectionGroup, QString selectedItemStr);
|
||
|
void newSectionGroupDirSequence_treeWidget(SectionGroup* sectionGroup, SectionGroup* newSectionGroup, QTreeWidgetItem* sectionGroupItem);
|
||
|
void updateNotebookDirSequence_fileToSecGr(SectionGroup* sectionGroup);
|
||
|
void updateNotebookDirSequence_treeWidget(SectionGroup* sectionGroup, QTreeWidgetItem* sectionChildItem);
|
||
|
void deleteNotebookDirSequence_findFile(SectionGroup* sectionGroup, QString selectedItem);
|
||
|
|
||
|
void on_actionNew_Section_triggered();
|
||
|
void on_actionNew_Section_Group_triggered();
|
||
|
void on_actionNew_Notebook_triggered();
|
||
|
void on_actionOpen_Notebook_triggered();
|
||
|
void on_actionOpen_Section_triggered();
|
||
|
void on_actionUnfiled_Notes_triggered();
|
||
|
void on_actionClose_Notebook_triggered();
|
||
|
void on_actionClose_All_Notebooks_triggered();
|
||
|
void on_actionExit_triggered();
|
||
|
void on_actionDeleteItem_triggered();
|
||
|
void on_actionImport_Section_triggered();
|
||
|
void on_actionExport_Section_triggered();
|
||
|
void on_actionSettings_triggered();
|
||
|
void on_actionApplication_Launchers_triggered();
|
||
|
void on_actionHelp_triggered();
|
||
|
void on_actionAbout_triggered();
|
||
|
void on_actionItem_Properties_triggered();
|
||
|
void on_actionRefresh_Notebook_List_triggered();
|
||
|
void on_actionExpand_All_Notebooks_triggered();
|
||
|
void on_actionExpand_All_Items_triggered();
|
||
|
void on_actionCollapse_All_Notebooks_triggered();
|
||
|
|
||
|
private:
|
||
|
Ui::MainWindow *ui;
|
||
|
};
|
||
|
#endif // MAINWINDOW_H
|