+ std::list<t_line>::iterator i = lista_lineas_in.begin();
+ while ( i != lista_lineas_in.end() ){
+ if (get_item( (*i).store_id ) != NULL)
+ if ( get_item( (*i).store_id )->get_id() == _id ) {
+ lista_lineas_in.erase(i);
+ i = lista_lineas_in.begin();
+ }
+ i++;
+ }
+
+ i = lista_lineas_in.begin();
+ while ( i != lista_lineas_in.end() ){
+ if ( get_logic_item((*i).logic_id) != NULL)
+ if ( get_logic_item((*i).logic_id)->get_id() == _id) {
+ lista_lineas_in.erase(i);
+ i = lista_lineas_in.begin();
+ }
+ i++;
+ }
+
+ std::list<t_line>::iterator j = lista_lineas_out.begin();
+ while ( j != lista_lineas_out.end() ){
+ if ( get_item((*j).store_id) != NULL )
+ if ( get_item((*j).store_id)->get_id() == _id ) {
+ lista_lineas_out.erase(j);
+ j = lista_lineas_out.begin();
+ }
+ j++;
+ }
+
+ j = lista_lineas_out.begin();
+ while ( j != lista_lineas_out.end() ){
+ if ( get_logic_item((*j).logic_id) != NULL )
+ if ( get_logic_item((*j).logic_id)->get_id() == _id ) {
+ lista_lineas_out.erase(j);
+ j = lista_lineas_out.begin();
+ }
+ j++;
+ }
+}
+
+void WorkPlace::update_logic_position()
+{
+ std::list<CItem*>::iterator i = listaItems->begin();
+ while ( i != listaItems->end() ){
+ (*i)->update_logic_position();
+ i++;
+ }
+ i = lista_logic_Items->begin();
+ while ( i != lista_logic_Items->end() ){
+ (*i)->update_logic_position();