| 12345678910111213141516171819202122232425262728293031323334353637 |
- #pragma once
- #include <gtkmm.h>
- #include <string>
- class MainWindow : public Gtk::Window {
- public:
- MainWindow();
- virtual ~MainWindow();
- private:
- // Core Layout
- Gtk::HeaderBar m_HeaderBar;
- Gtk::Box m_MainLayout;
- Gtk::Notebook m_Notebook;
- Gtk::Label m_StatusLabel;
- // --- Backup Page Elements ---
- Gtk::Box m_VBoxBackup;
- Gtk::Label m_LabelBackupInstruction;
- Gtk::CheckButton m_CheckThemesBackup;
- Gtk::CheckButton m_CheckIconsBackup;
- Gtk::CheckButton m_CheckDconfBackup;
- Gtk::Button m_ButtonBackup;
- // --- Restore Page Elements ---
- Gtk::Box m_VBoxRestore;
- Gtk::Label m_LabelRestoreInstruction;
- Gtk::CheckButton m_CheckThemesRestore;
- Gtk::CheckButton m_CheckIconsRestore;
- Gtk::CheckButton m_CheckDconfRestore;
- Gtk::Button m_ButtonRestore;
- // --- Signal Handlers and Logic ---
- void on_button_backup_clicked();
- void on_button_restore_clicked();
- bool create_tar_archive(const std::string& source_dir, const std::string& out_filename);
- };
|