23 #ifndef __FIREVISION_FVWIDGETS_FUSE_IMAGE_LIST_WIDGET_H_ 24 #define __FIREVISION_FVWIDGETS_FUSE_IMAGE_LIST_WIDGET_H_ 26 #include <fvutils/net/fuse_client_handler.h> 27 #include <fvutils/net/fuse_client.h> 29 #include <core/utils/lock_queue.h> 30 #include <core/utils/lock_list.h> 31 #include <core/threading/mutex.h> 47 const char* host_name,
60 std::string& image_id,
bool& compression );
64 uint32_t remote_version )
throw();
71 class ImageRecord :
public Gtk::TreeModelColumnRecord
87 Gtk::TreeModelColumn<Glib::ustring> display_text;
88 Gtk::TreeModelColumn<Glib::ustring> service_name;
89 Gtk::TreeModelColumn<Glib::ustring> host_name;
90 Gtk::TreeModelColumn<unsigned int> port;
91 Gtk::TreeModelColumn<Glib::ustring> image_id;
92 Gtk::TreeModelColumn<unsigned int> colorspace;
93 Gtk::TreeModelColumn<unsigned int> width;
94 Gtk::TreeModelColumn<unsigned int> height;
95 Gtk::TreeModelColumn<unsigned int> buffer_size;
101 std::string service_name;
102 std::string host_name;
108 bool on_image_event(GdkEvent *event);
109 void on_add_host_manually();
110 void on_image_selected();
111 void on_auto_update_toggled();
112 void on_compression_toggled();
113 void get_image_list();
114 void delete_clients();
115 void update_image_list();
116 bool on_update_timeout();
121 ClientData m_cur_client;
123 #if GTK_VERSION_LT(3,0) 124 Gtk::Menu* m_popup_menu;
126 Gtk::CheckButton* m_chk_auto_update;
127 Gtk::CheckButton* m_chk_compression;
128 Gtk::TreeView* m_trv_image_list;
129 Glib::RefPtr<Gtk::TreeStore> m_image_list;
132 ImageRecord m_image_record;
134 Glib::Dispatcher m_signal_get_image_list;
135 Glib::Dispatcher m_signal_delete_clients;
136 Glib::Dispatcher m_signal_image_selected;
137 Glib::Dispatcher m_signal_update_image_l;
140 unsigned int m_interval_sec;
141 sigc::connection m_timeout_conn;
143 Glib::ustring m_cur_image_id;
Mutex mutual exclusion lock.