Horizon
forced_pool_update_dialog.hpp
1 #pragma once
2 #include <gtkmm.h>
3 #include <mutex>
4 #include <list>
5 
6 namespace horizon {
7 enum class PoolUpdateStatus;
8 
9 class ForcedPoolUpdateDialog : public Gtk::Dialog {
10 public:
11  ForcedPoolUpdateDialog(const std::string &bp, Gtk::Window *parent);
12 
13 private:
14  std::string base_path;
15  Glib::Dispatcher dispatcher;
16  std::mutex pool_update_status_queue_mutex;
17  std::list<std::tuple<PoolUpdateStatus, std::string, std::string>> pool_update_status_queue;
18  Gtk::Label *filename_label = nullptr;
19  Gtk::Spinner *spinner = nullptr;
20  void pool_update_thread();
21  std::string pool_update_last_info;
22 };
23 } // namespace horizon
Definition: forced_pool_update_dialog.hpp:9