X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/88a2de0cf5c428010ead213c009309f9311abcbc..4511b619c83ef3f3589e7a76fd812561950eef99:/Client/include/principal.h?ds=sidebyside diff --git a/Client/include/principal.h b/Client/include/principal.h index 80dd691..c3f2d32 100644 --- a/Client/include/principal.h +++ b/Client/include/principal.h @@ -7,6 +7,9 @@ #include #include "dlg_conectar.h" #include "plaqui/server/controlclient.h" +#include +#include +#include "item.h" class Principal:public Gtk::Window { public: @@ -15,6 +18,27 @@ public: protected: PlaQui::Server::ControlClient *conexion; + // Utilizo un map para no tener que buscar un item + // en una lista cada vez que quiero actualizar su propiedad. + // Simplemente lo busco como map["nombre"] + std::map mapItems; + + // Actualiza el estado de una planta + void read_status_xml(const std::string &frame); + float get_float_from_xml(xmlNodePtr nodo); + // Funciones de carga del XML + bool is_xml_loaded; + void loadXML(); + void loadBomba(xmlNodePtr nodo); + void loadCodo(xmlNodePtr nodo); + void loadConduct(xmlNodePtr nodo); + void loadExclusa(xmlNodePtr nodo); + void loadTank(xmlNodePtr nodo); + void loadUnion(xmlNodePtr nodo); + void loadDrain(xmlNodePtr nodo); + + Glib::Dispatcher load_xml_dispatch; + std::string xml_body; // Archivo XML del Padre Glib::RefPtr refXml; @@ -23,16 +47,26 @@ protected: DlgConectar *dlg_conectar; Gtk::Entry *txt_target, *txt_command, *txt_args; Gtk::TextView *txt_view; + Gtk::Fixed *work_place; + Gtk::Label *lbl_nombre, *lbl_color, *lbl_flujo; + Gtk::Image *ico_conected; // Callbacks del menu y la barra virtual void on_mnu_file_exit(); virtual void on_mnu_file_connect(); + virtual void on_mnu_file_disconnect(); virtual void on_mnu_help_about(); virtual void on_dlg_connect_ok(); virtual void on_get_clicked(); + + virtual bool on_item_clicked(GdkEventButton *, ViewItem *); + // Callbacks para las conexiones - void on_conexion_ok(); + void on_conexion_connected(); + void on_conexion_finished(); + void on_conexion_ok(const std::string &body); void on_conexion_error(unsigned code); + void on_conexion_frame(const std::string &frame); }; #endif // _PRINCIPAL_H_