]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - Constructor/src/constructor.cpp
-Se arregla lo del id cuando se carga una planta
[z.facultad/75.42/plaqui.git] / Constructor / src / constructor.cpp
index 212057390590a412b4726dd63fefbcc1ab4c0393..3447a2eb441ec2118dbfe303654fdfe1f8257bdf 100644 (file)
@@ -108,13 +108,7 @@ Constructor::Constructor(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glad
 
 Constructor::~Constructor()
 {
 
 Constructor::~Constructor()
 {
-       std::list<CItem *>::iterator i = listaItems.begin();
-       while ( i != listaItems.end() ){
-               CItem *temp = *i;
-               listaItems.erase(i);
-               delete temp;
-               i = listaItems.begin();
-       }
+       Constructor::on_edit_menu_delete_all();
 }
 
 void Constructor::on_btn_canio_drag_get(const Glib::RefPtr<Gdk::DragContext>& context, GtkSelectionData* selection_data, guint info, guint time)
 }
 
 void Constructor::on_btn_canio_drag_get(const Glib::RefPtr<Gdk::DragContext>& context, GtkSelectionData* selection_data, guint info, guint time)
@@ -188,22 +182,28 @@ void Constructor::on_main_menu_save()
 }
 
 void Constructor::on_edit_menu_del()
 }
 
 void Constructor::on_edit_menu_del()
-{  // OJO que borra al primero que encuentra con el mismo nombre!!!
+{ 
+       workplace->delete_item(WorkPlace::pointed);
+}
+
+void Constructor::on_edit_menu_delete_all()
+{
        std::list<CItem *>::iterator i = listaItems.begin();
        std::list<CItem *>::iterator i = listaItems.begin();
-       Glib::ustring pointed = combo_entry->get_text();
-       while ( i != listaItems.end() ){
-               CItem *temp = *i;
-               if ( temp->get_name() == pointed ){ 
-                       workplace->delete_item(temp->get_id());
-                       break;
-               }
-       i++;
+       while ( i != listaItems.end() ) {
+               (*i)->workplace->delete_item((*i)->get_id());
+               i = listaItems.begin();
+       }
+       i = lista_logic_Items.begin();
+       while ( i != lista_logic_Items.end() ) {
+               (*i)->workplace->delete_item((*i)->get_id());
+               i=lista_logic_Items.begin();
        }
 }
 
 void Constructor::on_chk_btn_clicked()
 {
        logica = !logica;
        }
 }
 
 void Constructor::on_chk_btn_clicked()
 {
        logica = !logica;
+       CItem::logic_connect = !CItem::logic_connect;
 }
 
 void Constructor::on_load_from_xml()
 }
 
 void Constructor::on_load_from_xml()
@@ -272,6 +272,7 @@ void Constructor::on_load_from_xml()
        }
        std::cout << "CARGA COMPLETA" << std::endl;
        file_open_selection->hide();
        }
        std::cout << "CARGA COMPLETA" << std::endl;
        file_open_selection->hide();
+       id = listaItems.size()+lista_logic_Items.size()+1;
 }
 void Constructor::on_btn_file_ok_clicked()
 {
 }
 void Constructor::on_btn_file_ok_clicked()
 {
@@ -727,4 +728,3 @@ Splitter *Constructor::loadCodo(xmlNodePtr nodo)
 
        return p;
 }
 
        return p;
 }
-