]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blob - Constructor/include/drain.h
no se pueden repetir los nombres de los items
[z.facultad/75.42/plaqui.git] / Constructor / include / drain.h
1 #ifndef _DRAIN_H_
2 #define _DRAIN_H_
3
4 #include <iostream>
5 #include "item.h"
6 /**Definicion del DRENAJE.
7 */
8
9 class Drain : public CItem {
10         public:
11                 ///Constructor.
12                 Drain(int orientacion=0);
13         
14                 ///Destructor.
15                 virtual ~Drain();
16         
17                 ///Metodo invocado al presionar un boton del mouse.
18                 virtual bool on_button_press_event(GdkEventButton *event);
19         
20                 ///Rota la imagen 90 grados en sentido horario.
21                 virtual void on_menu_popup_rotar();
22         
23                 ///Muestra la ventana de propiedades.
24                 virtual void on_menu_popup_propiedades();
25         
26                 ///Devuelve el valor del atributo "contenido_inicial".
27                 double get_contenido_inicial();
28                 
29                 ///Devuelve el valor del atributo "capacidad".
30                 double get_capacidad();
31                 
32                 ///El item guarda su estado en el archivo en formato XML.
33                 virtual void save(FILE *archivo);
34                 
35                 ///Verifica su conexion con los items adyacentes.
36                 virtual bool check_connection();
37                 
38                 ///Resetea sus conectores a su estado de desconexion.
39                 virtual void set_default_connector();
40                 
41                 ///Devuelve el tipo de conector que posee en las coordenadas _a,_b, devuelve UNDEF si no es area de conexion.
42                 virtual ConnectorType get_connector_type(int _a, int _b);
43         protected:
44                 ///Imagenes del drenaje en sus 4 posiciones.    
45                 Glib::RefPtr<Gdk::Pixbuf> imageE; // 0 
46                 Glib::RefPtr<Gdk::Pixbuf> imageO; // 1
47                 Glib::RefPtr<Gdk::Pixbuf> imageN; // 1
48                 Glib::RefPtr<Gdk::Pixbuf> imageS; // 1
49                 Glib::RefPtr<Gdk::Pixbuf> null; 
50 };
51 #endif