class Pump : public CItem {
public:
+ ///Constructor
Pump();
+ ///Destructor
virtual ~Pump();
+ ///Funciones redefinidas de CItem
virtual bool on_button_press_event(GdkEventButton *event);
virtual void on_menu_popup_rotar();
virtual void on_menu_popup_propiedades();
+ ///Funciones para obtener y setear los atributos
void set_entrega(double _cap);
+ void set_liquid_color(Gdk::Color _color);
double get_entrega();
+ Gdk::Color get_liquid_color();
+ ///El item se guarda en formato xml en el archivo pasado por parametro
virtual void save(FILE *archivo);
+ ///Verifica sus conectores, evaluando si son compatibles con los del item conectado
virtual bool check_connection();
+ ///Pone sus conectores en el valor por defecto
+ virtual void set_default_connector();
+ ///Devuelve el tipo de conector que posee en las coordenadas (_a,_b) segun su orientacion
+ virtual ConnectorType get_connector_type(int _a, int _b);
protected:
+ ///Indica la maxima capacidad de entrega de la bomba
double entrega;
+ /// Indica el color del liquido que entrega
+ Gdk::Color liquid_color;
+ /// Imagenes en sus 2 posiciones
Glib::RefPtr<Gdk::Pixbuf> imageE; // 0
Glib::RefPtr<Gdk::Pixbuf> imageO; // 1
Glib::RefPtr<Gdk::Pixbuf> null;
+ ///Puntero a la ventana de propiedades
PumpPtyWnd *pump_pty_wnd;
};
#endif