- Temporary workaround for the "Second Bug", caused by a reset in the middle of a request editing operation which should be atomic. Though I think it should be fixed in the backend...
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@1003 3ecf2c5c-341e-0410-92b4-d18e462d057c
This commit is contained in:
parent
c10ed2f4fb
commit
5242b37e13
|
@ -515,6 +515,8 @@ SchedulablesTreeWidget::_on_add_request()
|
||||||
void
|
void
|
||||||
SchedulablesTreeWidget::_on_edit_request()
|
SchedulablesTreeWidget::_on_edit_request()
|
||||||
{
|
{
|
||||||
|
using std::vector;
|
||||||
|
|
||||||
RefPtr<Xml> glade(Xml::create(GLADEDIR "/add-request-dialog.glade"));
|
RefPtr<Xml> glade(Xml::create(GLADEDIR "/add-request-dialog.glade"));
|
||||||
AddRequestDialog* add_request_dialog;
|
AddRequestDialog* add_request_dialog;
|
||||||
|
|
||||||
|
@ -525,6 +527,27 @@ SchedulablesTreeWidget::_on_edit_request()
|
||||||
Request* r = get_selected<Request>();
|
Request* r = get_selected<Request>();
|
||||||
assert(r != NULL);
|
assert(r != NULL);
|
||||||
|
|
||||||
|
// FIXME: write more polite code for doing this, and probably using the same logic
|
||||||
|
// for all other editing operations may be useful for making the app more robust
|
||||||
|
|
||||||
|
const Environment::Processes& processes =
|
||||||
|
Simulation::get_instance().get_history().get_environment_at(0).get_processes();
|
||||||
|
|
||||||
|
for(Iseq<Environment::Processes::const_iterator> pit = const_iseq(processes); pit; ++pit)
|
||||||
|
{
|
||||||
|
vector<Thread*> threads = (*pit)->get_threads();
|
||||||
|
|
||||||
|
for(Iseq<vector<Thread*>::iterator> tit = iseq(threads); tit; ++tit)
|
||||||
|
{
|
||||||
|
vector<Request*> requests = (*tit)->get_requests();
|
||||||
|
for(Iseq<vector<Request*>::iterator> rit = iseq(requests); rit; ++rit)
|
||||||
|
{
|
||||||
|
if(*(*rit) == *r)
|
||||||
|
r = *rit;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
add_request_dialog->run_edit(*r);
|
add_request_dialog->run_edit(*r);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue