X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/6fcc8fcf6b98f413f813904fe0f078d2782fb9d5..20f30a0ae955fb71428ab382aeaf025a5f93b7e1:/Constructor/src/and.cpp diff --git a/Constructor/src/and.cpp b/Constructor/src/and.cpp index 927aa61..504747b 100644 --- a/Constructor/src/and.cpp +++ b/Constructor/src/and.cpp @@ -76,6 +76,11 @@ bool And::on_button_press_event(GdkEventButton *event) combo_entry->set_popdown_strings(*list_pointed); combo_entry->get_entry()->set_text (name); workplace->queue_draw(); + char f[20]; + Glib::ustring text; + sprintf(f," Conector OUT = %d",out_connected); + text = name+f; + status_bar->push ( text, 0); } if ((event->type == GDK_BUTTON_PRESS) && ( event->button == 2)){ @@ -117,7 +122,7 @@ bool And::on_button_press_event(GdkEventButton *event) } if ((event->type == GDK_BUTTON_PRESS) && ( event->button == 3)){ menu_popup.popup(event->button, event->time); - return true; //It has been handled. + return true; //It has been handled. } workplace->queue_draw(); return true; @@ -161,29 +166,47 @@ void And::save(FILE *archivo) bool And::check_connection() { - int cant_in = 0, cant_out =0; t_logic_connector temp; std::list::iterator i = workplace->lista_lineas_in.begin(); while ( i != workplace->lista_lineas_in.end() ) { - if ( workplace->get_logic_item((*i).logic_id)->get_id() == ID ) { + if ( (*i).logic_id== ID ) { temp.type = OUT; temp.name_dest = workplace->get_item((*i).store_id)->get_name(); vec_connector.push_back(temp); - cant_out++; } i++; } i = workplace->lista_lineas_out.begin(); while ( i != workplace->lista_lineas_out.end() ) { - if ( workplace->get_logic_item((*i).logic_id)->get_id() == ID ) { + if ( (*i).logic_id== ID ) { temp.type = IN; temp.name_dest = workplace->get_item((*i).store_id)->get_name(); vec_connector.push_back(temp); - cant_in++; } i++; } + + i = workplace->lista_lineas_logic.begin(); + while ( i != workplace->lista_lineas_logic.end() ) { + if ( (*i).logic_id == ID ) { + temp.type = OUT; + temp.name_dest = workplace->get_logic_item((*i).store_id)->get_name(); + vec_connector.push_back(temp); + } + i++; + } + + i = workplace->lista_lineas_logic.begin(); + while ( i != workplace->lista_lineas_logic.end() ) { + if ( (*i).store_id == ID ) { + temp.type = IN; + temp.name_dest = workplace->get_logic_item((*i).logic_id)->get_name(); + vec_connector.push_back(temp); + } + i++; + } + return true; //out_connected; }