X-Git-Url: https://git.sur5r.net/?p=fstl;a=blobdiff_plain;f=src%2Fwindow.h;fp=src%2Fwindow.h;h=8619b4d96d323a1deaeda786636279c602b04884;hp=fd0a77001e4eac827951c8fa9344c6c268d2a10e;hb=9e9c2e84ac7826bfcaf00c5c0c770f64e16c4abf;hpb=1f2ac8b235365a672fad76a404ca8a2b6e79915b diff --git a/src/window.h b/src/window.h index fd0a770..8619b4d 100644 --- a/src/window.h +++ b/src/window.h @@ -4,6 +4,7 @@ #include #include #include +#include class Canvas; @@ -13,10 +14,13 @@ class Window : public QMainWindow public: explicit Window(QWidget* parent=0); bool load_stl(const QString& filename, bool is_reload=false); + bool load_prev(void); + bool load_next(void); protected: - void dragEnterEvent(QDragEnterEvent* event); - void dropEvent(QDropEvent* event); + void dragEnterEvent(QDragEnterEvent* event) override; + void dropEvent(QDropEvent* event) override; + void keyPressEvent(QKeyEvent* event) override; public slots: void on_open(); @@ -33,28 +37,40 @@ public slots: private slots: void on_projection(QAction* proj); + void on_drawMode(QAction* mode); void on_watched_change(const QString& filename); void on_reload(); void on_autoreload_triggered(bool r); void on_clear_recent(); void on_load_recent(QAction* a); - + void on_loaded(const QString& filename); + void on_save_screenshot(); + private: void rebuild_recent_files(); + void sorted_insert(QStringList& list, const QCollator& collator, const QString& value); + void build_folder_file_list(); + QPair get_file_neighbors(); QAction* const open_action; QAction* const about_action; QAction* const quit_action; QAction* const perspective_action; QAction* const orthogonal_action; + QAction* const shaded_action; + QAction* const wireframe_action; QAction* const reload_action; QAction* const autoreload_action; + QAction* const save_screenshot_action; QMenu* const recent_files; QActionGroup* const recent_files_group; QAction* const recent_files_clear_action; const static int MAX_RECENT_FILES=8; const static QString RECENT_FILE_KEY; + QString current_file; + QString lookup_folder; + QStringList lookup_folder_files; QFileSystemWatcher* watcher;