git repos / SagoImageBrowser

blame: src/mainwindow.h

normal view · raw

032aa1e1 Poul Sander 2026-02-19 18:55 1
#pragma once
032aa1e1 Poul Sander 2026-02-19 18:55 2
032aa1e1 Poul Sander 2026-02-19 18:55 3
#include <QMainWindow>
032aa1e1 Poul Sander 2026-02-19 18:55 4
032aa1e1 Poul Sander 2026-02-19 18:55 5
class QTreeView;
032aa1e1 Poul Sander 2026-02-19 18:55 6
class QListView;
032aa1e1 Poul Sander 2026-02-19 18:55 7
class QLabel;
61136b77 Poul Sander 2026-02-20 22:45 8
class QStackedWidget;
032aa1e1 Poul Sander 2026-02-19 18:55 9
class QFileSystemModel;
fc5f2e27 Poul Sander 2026-02-22 22:06 10
class QComboBox;
032aa1e1 Poul Sander 2026-02-19 18:55 11
class ImageModel;
61136b77 Poul Sander 2026-02-20 22:45 12
class ImageViewWidget;
f61bf886 Poul Sander 2026-02-23 19:27 13
class PreferencesDialog;
032aa1e1 Poul Sander 2026-02-19 18:55 14
032aa1e1 Poul Sander 2026-02-19 18:55 15
class MainWindow : public QMainWindow
032aa1e1 Poul Sander 2026-02-19 18:55 16
{
032aa1e1 Poul Sander 2026-02-19 18:55 17
    Q_OBJECT
032aa1e1 Poul Sander 2026-02-19 18:55 18
032aa1e1 Poul Sander 2026-02-19 18:55 19
public:
032aa1e1 Poul Sander 2026-02-19 18:55 20
    explicit MainWindow(QWidget *parent = nullptr);
032aa1e1 Poul Sander 2026-02-19 18:55 21
032aa1e1 Poul Sander 2026-02-19 18:55 22
private:
032aa1e1 Poul Sander 2026-02-19 18:55 23
    void setupUi();
032aa1e1 Poul Sander 2026-02-19 18:55 24
    void setupConnections();
f61bf886 Poul Sander 2026-02-23 19:27 25
    void setupMenuBar();
f61bf886 Poul Sander 2026-02-23 19:27 26
    void loadPreferences();
f61bf886 Poul Sander 2026-02-23 19:27 27
    void savePreferences();
f61bf886 Poul Sander 2026-02-23 19:27 28
    void onPreferencesTriggered();
665ac308 Poul Sander 2026-02-23 19:34 29
    void navigateToFolder(const QString &path);
665ac308 Poul Sander 2026-02-23 19:34 30
    void selectPreviousFolderIfExists();
6fcd6c90 Poul Sander 2026-02-19 21:12 31
    void loadVisibleThumbnails();
cfe4a67b Poul Sander 2026-02-19 23:06 32
    void showPreview(const QModelIndex &index);
61136b77 Poul Sander 2026-02-20 22:45 33
    void enterSingleImageMode(const QModelIndex &index);
61136b77 Poul Sander 2026-02-20 22:45 34
    void leaveSingleImageMode();
6fcd6c90 Poul Sander 2026-02-19 21:12 35
61136b77 Poul Sander 2026-02-20 22:45 36
    void keyPressEvent(QKeyEvent *event) override;
6fcd6c90 Poul Sander 2026-02-19 21:12 37
    bool eventFilter(QObject *obj, QEvent *event) override;
c9e5684a Poul Sander 2026-02-23 19:18 38
    void closeEvent(QCloseEvent *event) override;
032aa1e1 Poul Sander 2026-02-19 18:55 39
032aa1e1 Poul Sander 2026-02-19 18:55 40
    QFileSystemModel *m_dirModel;
032aa1e1 Poul Sander 2026-02-19 18:55 41
    ImageModel *m_imageModel;
032aa1e1 Poul Sander 2026-02-19 18:55 42
032aa1e1 Poul Sander 2026-02-19 18:55 43
    QTreeView *m_treeView;
fc5f2e27 Poul Sander 2026-02-22 22:06 44
    QComboBox *m_rootCombo;
032aa1e1 Poul Sander 2026-02-19 18:55 45
    QListView *m_listView;
032aa1e1 Poul Sander 2026-02-19 18:55 46
    QLabel *m_previewLabel;
61136b77 Poul Sander 2026-02-20 22:45 47
61136b77 Poul Sander 2026-02-20 22:45 48
    QStackedWidget *m_stack;
f61bf886 Poul Sander 2026-02-23 19:27 49
    QString m_backgroundColorPreference = "black";
61136b77 Poul Sander 2026-02-20 22:45 50
    QWidget *m_browserPage;
61136b77 Poul Sander 2026-02-20 22:45 51
    ImageViewWidget *m_imageView;
61136b77 Poul Sander 2026-02-20 22:45 52
    bool m_wasFullScreen = false;
3968465e Poul Sander 2026-02-23 19:13 53
    bool m_wasMaximized = false;
665ac308 Poul Sander 2026-02-23 19:34 54
    QString m_previousFolderPath;
032aa1e1 Poul Sander 2026-02-19 18:55 55
};
1970-01-01 00:00 56