#include <iostream>
#include "item.h"
-
+/**Definicion del DRENAJE.
+*/
class Drain : public CItem {
public:
- Drain();
+ ///Constructor.
+ Drain(int orientacion=0);
+
+ ///Destructor.
virtual ~Drain();
+
+ ///Metodo invocado al presionar un boton del mouse.
virtual bool on_button_press_event(GdkEventButton *event);
+
+ ///Rota la imagen 90 grados en sentido horario.
virtual void on_menu_popup_rotar();
+
+ ///Muestra la ventana de propiedades.
virtual void on_menu_popup_propiedades();
+
+ ///Devuelve el valor del atributo "contenido_inicial".
double get_contenido_inicial();
+
+ ///Devuelve el valor del atributo "capacidad".
double get_capacidad();
+
+ ///El item guarda su estado en el archivo en formato XML.
virtual void save(FILE *archivo);
+
+ ///Verifica su conexion con los items adyacentes.
virtual bool check_connection();
+
+ ///Resetea sus conectores a su estado de desconexion.
virtual void set_default_connector();
+
+ ///Devuelve el tipo de conector que posee en las coordenadas _a,_b, devuelve UNDEF si no es area de conexion.
virtual ConnectorType get_connector_type(int _a, int _b);
protected:
+ ///Imagenes del drenaje en sus 4 posiciones.
Glib::RefPtr<Gdk::Pixbuf> imageE; // 0
Glib::RefPtr<Gdk::Pixbuf> imageO; // 1
Glib::RefPtr<Gdk::Pixbuf> imageN; // 1