#pragma once #include #include "settings.h" #include "uploadclient.h" class QDateEdit; class QLabel; class QLineEdit; class QPushButton; class QStackedWidget; class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = nullptr); private: QWidget *buildSettingsPage(); QWidget *buildPostPage(); void showSettings(); void showPost(); void saveAndTest(); void chooseImage(); void submit(); Settings m_settings; QStackedWidget *m_stack = nullptr; // Settings page QLineEdit *m_baseUrl = nullptr; QLineEdit *m_username = nullptr; QLineEdit *m_password = nullptr; QPushButton *m_saveButton = nullptr; QPushButton *m_settingsBack = nullptr; QLabel *m_settingsStatus = nullptr; // Post page QLabel *m_preview = nullptr; QLineEdit *m_caption = nullptr; QDateEdit *m_date = nullptr; QPushButton *m_chooseButton = nullptr; QPushButton *m_postButton = nullptr; QLabel *m_postStatus = nullptr; QLabel *m_lastPost = nullptr; QString m_imagePath; // currently selected source image };