]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - Constructor/include/exclusa.h
Se agrega como crear un cuadradito de color para indicar donde esta la entrada y...
[z.facultad/75.42/plaqui.git] / Constructor / include / exclusa.h
index a34704a5f9eaff3cd756ffdad543eea13487d49c..34e2fe93371c144b771fe723b67ec3b975825e73 100644 (file)
@@ -9,7 +9,7 @@ class Exclusa : public CItem {
        public:
                /**Constructor
                */
        public:
                /**Constructor
                */
-               Exclusa();
+               Exclusa(int orientacion=0);
                /**Destructor
                */
                virtual ~Exclusa();
                /**Destructor
                */
                virtual ~Exclusa();
@@ -30,11 +30,31 @@ class Exclusa : public CItem {
                /**Devuelve el tipo de conector que posee en las coordenadas (_a, _b) segun su orientacion
                */
                virtual ConnectorType get_connector_type(int _a, int _b);
                /**Devuelve el tipo de conector que posee en las coordenadas (_a, _b) segun su orientacion
                */
                virtual ConnectorType get_connector_type(int _a, int _b);
+               
+               /**Setea las coordenadas _a, _b en la posicion donde se deben conectar los cables logicos a la entrada.
+               */
+               virtual void get_in_logic_connect_position(int& _a, int& _b);
+
+               /**Setea las coordenadas _a, _b en la posicion donde se deben conectar los cables logicos a la salida.
+               */              
+               virtual void get_out_logic_connect_position(int& _a, int& _b);
+
+               /**Actualiza la posicion de los conectores logicos ante un movimiento.
+               */
+               virtual void update_logic_position();
+
+               /**Detecta si el click fue en el area de entrada o salida logica, devuelve UNDEF si no fue ninguna de las dos
+               */
+               ConnectorType detect_click_position(int _a, int _b);
+
                /**Funciones para obtener y setear sus propiedades
                */
                void set_estado(bool _state);
                bool get_estado();
                /**Funciones para obtener y setear sus propiedades
                */
                void set_estado(bool _state);
                bool get_estado();
-       private:
+       protected:
+               /**Coordenadas de las entrada y salida logica.
+               */
+               int in_x, in_y, out_x, out_y;
                /**Imagenes en sus 2 posiciones
                */
                Glib::RefPtr<Gdk::Pixbuf> imageN; // 0 
                /**Imagenes en sus 2 posiciones
                */
                Glib::RefPtr<Gdk::Pixbuf> imageN; // 0