/**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();
- private:
+ protected:
/**Imagenes en sus 2 posiciones
*/
Glib::RefPtr<Gdk::Pixbuf> imageN; // 0