]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blob - Client/include/principal.h
f18735cbe942d6125a9e6fc9f02a65d9c18e070f
[z.facultad/75.42/plaqui.git] / Client / include / principal.h
1
2
3 #ifndef _PRINCIPAL_H_
4 #define _PRINCIPAL_H_
5
6 #include <gtkmm.h>
7 #include <libglademm.h>
8 #include "dlg_conectar.h"
9 #include "plaqui/server/controlclient.h"
10 #include <libxml/parser.h>
11 #include <map>
12 #include "item.h"
13
14 class Principal:public Gtk::Window {
15 public:
16         Principal(BaseObjectType *co, const Glib::RefPtr<Gnome::Glade::Xml> &rg);
17         virtual ~Principal();
18
19 protected:
20         PlaQui::Server::ControlClient *conexion;
21         // Utilizo un map para no tener que buscar un item
22         // en una lista cada vez que quiero actualizar su propiedad.
23         // Simplemente lo busco como map["nombre"]
24         std::map<const std::string, ViewItem *> mapItems;
25
26         // Funciones de carga del XML
27         void loadBomba(xmlNodePtr nodo);
28         void loadCodo(xmlNodePtr nodo);
29         void loadConduct(xmlNodePtr nodo);
30         void loadExclusa(xmlNodePtr nodo);
31         void loadTank(xmlNodePtr nodo);
32         void loadUnion(xmlNodePtr nodo);
33         
34         // Archivo XML del Padre
35         Glib::RefPtr<Gnome::Glade::Xml> refXml;
36
37         // Dialogo de Conectar
38         DlgConectar *dlg_conectar;
39         Gtk::Entry *txt_target, *txt_command, *txt_args;
40         Gtk::TextView *txt_view;
41         Gtk::Fixed *work_place;
42
43         // Callbacks del menu y la barra
44         virtual void on_mnu_file_exit();
45         virtual void on_mnu_file_connect();
46         virtual void on_mnu_help_about();
47         virtual void on_dlg_connect_ok();
48         virtual void on_get_clicked();
49         virtual void on_mnu_prop();
50
51         virtual bool on_item_clicked(GdkEventButton *, ViewItem *);
52         
53         // Callbacks para las conexiones
54         void on_conexion_ok();
55         void on_conexion_error(unsigned code);
56 };
57
58 #endif // _PRINCIPAL_H_
59