diff --git a/src/citron/updater/updater_dialog.h b/src/citron/updater/updater_dialog.h index fa517e345..8a44fffec 100644 --- a/src/citron/updater/updater_dialog.h +++ b/src/citron/updater/updater_dialog.h @@ -7,59 +7,60 @@ #include #include "citron/updater/updater_service.h" -// Forward declare QString for the helper function. class QString; namespace Ui { -class UpdaterDialog; + class UpdaterDialog; } namespace Updater { -// Add the declaration for the date formatting helper function. -QString FormatDateTimeString(const std::string& iso_string); + // Declarations for helper functions + QString FormatDateTimeString(const std::string& iso_string); -class UpdaterDialog : public QDialog { - Q_OBJECT + QString FormatChangelog(const std::string& raw_changelog); -public: - explicit UpdaterDialog(QWidget* parent = nullptr); - ~UpdaterDialog() override; + class UpdaterDialog : public QDialog { + Q_OBJECT - void CheckForUpdates(const std::string& update_url); + public: + explicit UpdaterDialog(QWidget* parent = nullptr); + ~UpdaterDialog() override; -private slots: - void OnUpdateCheckCompleted(bool has_update, const Updater::UpdateInfo& update_info); - void OnUpdateDownloadProgress(int percentage, qint64 bytes_received, qint64 bytes_total); - void OnUpdateInstallProgress(int percentage, const QString& current_file); - void OnUpdateCompleted(Updater::UpdaterService::UpdateResult result, const QString& message); - void OnUpdateError(const QString& error_message); - void OnDownloadButtonClicked(); - void OnCancelButtonClicked(); - void OnCloseButtonClicked(); - void OnRestartButtonClicked(); + void CheckForUpdates(const std::string& update_url); -private: - enum class State { Checking, NoUpdate, UpdateAvailable, Downloading, Installing, Completed, Error }; + private slots: + void OnUpdateCheckCompleted(bool has_update, const Updater::UpdateInfo& update_info); + void OnUpdateDownloadProgress(int percentage, qint64 bytes_received, qint64 bytes_total); + void OnUpdateInstallProgress(int percentage, const QString& current_file); + void OnUpdateCompleted(Updater::UpdaterService::UpdateResult result, const QString& message); + void OnUpdateError(const QString& error_message); + void OnDownloadButtonClicked(); + void OnCancelButtonClicked(); + void OnCloseButtonClicked(); + void OnRestartButtonClicked(); - void SetupUI(); - void ShowCheckingState(); - void ShowNoUpdateState(const Updater::UpdateInfo& update_info); - void ShowUpdateAvailableState(); - void ShowDownloadingState(); - void ShowInstallingState(); - void ShowCompletedState(); - void ShowErrorState(); - QString FormatBytes(qint64 bytes) const; - QString GetUpdateMessage(Updater::UpdaterService::UpdateResult result) const; + private: + enum class State { Checking, NoUpdate, UpdateAvailable, Downloading, Installing, Completed, Error }; - std::unique_ptr ui; - std::unique_ptr updater_service; - UpdateInfo current_update_info; - State current_state; - qint64 total_download_size; - qint64 downloaded_bytes; - QTimer* progress_timer; -}; + void SetupUI(); + void ShowCheckingState(); + void ShowNoUpdateState(const Updater::UpdateInfo& update_info); + void ShowUpdateAvailableState(); + void ShowDownloadingState(); + void ShowInstallingState(); + void ShowCompletedState(); + void ShowErrorState(); + QString FormatBytes(qint64 bytes) const; + QString GetUpdateMessage(Updater::UpdaterService::UpdateResult result) const; + + std::unique_ptr ui; + std::unique_ptr updater_service; + UpdateInfo current_update_info; + State current_state; + qint64 total_download_size; + qint64 downloaded_bytes; + QTimer* progress_timer; + }; } // namespace Updater