]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - Constructor/include/item.h
no se pueden repetir los nombres de los items
[z.facultad/75.42/plaqui.git] / Constructor / include / item.h
index 83aa0b2d57459854ef99683b907aa120ec417284..b1778b28d3346b3740bdec671e8bc181743d7600 100644 (file)
@@ -25,6 +25,7 @@ typedef enum { UNDEF, IN, OUT } ConnectorType;
 typedef struct {
        ConnectorType type;
        Glib::ustring name_dest;
+       int cistern_connector;
 }t_logic_connector;
 
 ///Clase que define un conector del item
@@ -68,9 +69,6 @@ public:
        
        ///Elimina el Item al seleccionarse la opcion en el menu flotante
        virtual void on_menu_popup_eliminar();
-       
-       ///TODO: conectar los items con lineas!!!
-       virtual void on_menu_popup_conectar();
                
        ///Retorna un puntero a la imagen actual.
        Glib::RefPtr<Gdk::Pixbuf> get_image() { return image; }
@@ -119,7 +117,15 @@ public:
        */
        virtual void update_logic_position();
        
-       /**Dibuja los conectores logicos del Item, AZUL == ENTRADA, ROJO == SALIDA.
+       /**Funciones para no permitir mas de una conexion a la salida de las compuertas.
+         *En el caso de la compuerta NOT, tampoco puede tener mas de una conexion 
+         *a la entrada.          
+       */
+       virtual void set_out_connected(bool _o);
+       virtual void set_in_connected(bool _o);
+       
+       virtual bool get_out_logic_connect();
+       /**Dibuja los conectores logicos del Item, AZUL == SALIDA, ROJO == ENTRADA.
        */
        virtual void draw_connectors();
        
@@ -127,7 +133,10 @@ public:
        WorkPlace *workplace;
        
        ///Puntero al cuadro de texto de la ventana principal
-       Gtk::Entry *combo_entry;
+       Gtk::Combo *combo_entry;
+       
+       ///Puntero a la barra de estado
+       Gtk::Statusbar *status_bar;
        
        ///Puntero a la lista de items
        std::list<CItem *> *listaItems;
@@ -163,6 +172,9 @@ public:
        std::vector<Connector> connect_vec;
 
        void set_img_actual(int i) { imgActual = i; }
+       
+       ///Puntero al cuadro de texo de la ventana principal.
+       std::list<Glib::ustring> *list_pointed;
 protected:
        ///Indica el numero que le corresponde a la imagen actual del item.
        int imgActual;
@@ -172,6 +184,8 @@ protected:
 
        Glib::RefPtr<Gdk::GC> gc;
 
+       Gdk::Color blue, red;
+
        ///Nombre del item
        Glib::ustring name;
        
@@ -193,8 +207,6 @@ protected:
        ///Puntero a la ventana de propiedades del item
        ItemPtyWnd *property_wnd;
 
-       Gdk::Color blue, red;
-
        ///Posicion del item en el area de trabajo
        int x, y;