- Slightly increased size of font
- Added visualization of arrival time git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@1131 3ecf2c5c-341e-0410-92b4-d18e462d057c
This commit is contained in:
parent
5632540530
commit
8b07ffa8e4
|
@ -290,7 +290,7 @@ ResourcesWidget::_on_cell_name_data(Gtk::CellRenderer* cr,
|
||||||
|
|
||||||
const Environment::SubRequestQueue& queue = env.get_request_queue(key);
|
const Environment::SubRequestQueue& queue = env.get_request_queue(key);
|
||||||
|
|
||||||
oss << "<small><b>" << resource.get_name() << "</b>";
|
oss << "<span size=\"8500\"><b>" << resource.get_name() << "</b>";
|
||||||
oss << " (" << queue.size() << "/" << resource.get_places() << ")\n";
|
oss << " (" << queue.size() << "/" << resource.get_places() << ")\n";
|
||||||
|
|
||||||
for(Iseq<Environment::SubRequestQueue::const_iterator> it = iseq(queue); it; ++it)
|
for(Iseq<Environment::SubRequestQueue::const_iterator> it = iseq(queue); it; ++it)
|
||||||
|
@ -305,7 +305,7 @@ ResourcesWidget::_on_cell_name_data(Gtk::CellRenderer* cr,
|
||||||
<< "/" << sr.get_length() << ")";
|
<< "/" << sr.get_length() << ")";
|
||||||
}
|
}
|
||||||
|
|
||||||
oss << "</small>";
|
oss << "</span>";
|
||||||
|
|
||||||
crtm.property_markup() = oss.str();
|
crtm.property_markup() = oss.str();
|
||||||
}
|
}
|
||||||
|
|
|
@ -62,9 +62,13 @@ SchedulablesTreeWidget::SchedulablesTreeWidget()
|
||||||
|
|
||||||
set_model(_model);
|
set_model(_model);
|
||||||
|
|
||||||
int idx = append_column(_("Entities"), _cell_renderer) - 1;
|
int idx = append_column(_("Arrival"), _cell_renderer) - 1;
|
||||||
Gtk::TreeViewColumn* tvc = get_column(idx);
|
Gtk::TreeViewColumn* tvc = get_column(idx);
|
||||||
tvc->set_cell_data_func(_cell_renderer, sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_entities_column_data));
|
tvc->set_cell_data_func(_cell_renderer, sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_arrival_column_data));
|
||||||
|
|
||||||
|
idx = append_column(_("Entity"), _cell_renderer) - 1;
|
||||||
|
tvc = get_column(idx);
|
||||||
|
tvc->set_cell_data_func(_cell_renderer, sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_entity_column_data));
|
||||||
|
|
||||||
idx = append_column(_("State"), _cell_renderer) - 1;
|
idx = append_column(_("State"), _cell_renderer) - 1;
|
||||||
tvc = get_column(idx);
|
tvc = get_column(idx);
|
||||||
|
@ -584,8 +588,41 @@ SchedulablesTreeWidget::_on_remove_request()
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
SchedulablesTreeWidget::_on_entities_column_data(Gtk::CellRenderer* cr,
|
SchedulablesTreeWidget::_on_arrival_column_data(Gtk::CellRenderer* cr,
|
||||||
const Gtk::TreeModel::iterator& it)
|
const Gtk::TreeModel::iterator& it)
|
||||||
|
{
|
||||||
|
CellRendererTextMarkup& crtm = static_cast<CellRendererTextMarkup&>(*cr);
|
||||||
|
|
||||||
|
std::ostringstream oss;
|
||||||
|
|
||||||
|
oss << "<span size=\"8500\">";
|
||||||
|
|
||||||
|
switch(get_row_type(it))
|
||||||
|
{
|
||||||
|
case htype_process:
|
||||||
|
oss << get_row_handle_as<Process>(it)->get_arrival_time();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case htype_thread:
|
||||||
|
oss << get_row_handle_as<Thread>(it)->get_arrival_time();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case htype_request:
|
||||||
|
oss << get_row_handle_as<Request>(it)->get_instant();
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
oss << _("<b>ERROR<b>");
|
||||||
|
}
|
||||||
|
|
||||||
|
oss << "</span>";
|
||||||
|
|
||||||
|
crtm.property_markup() = oss.str();
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
SchedulablesTreeWidget::_on_entity_column_data(Gtk::CellRenderer* cr,
|
||||||
|
const Gtk::TreeModel::iterator& it)
|
||||||
{
|
{
|
||||||
CellRendererTextMarkup& crtm = static_cast<CellRendererTextMarkup&>(*cr);
|
CellRendererTextMarkup& crtm = static_cast<CellRendererTextMarkup&>(*cr);
|
||||||
|
|
||||||
|
@ -600,14 +637,13 @@ SchedulablesTreeWidget::_on_entities_column_data(Gtk::CellRenderer* cr,
|
||||||
case htype_thread:
|
case htype_thread:
|
||||||
marked_up = markup_schedulable(*get_row_handle_as<Thread>(it));
|
marked_up = markup_schedulable(*get_row_handle_as<Thread>(it));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case htype_request:
|
case htype_request:
|
||||||
marked_up = markup_request(*get_row_handle_as<Request>(it));
|
marked_up = markup_request(*get_row_handle_as<Request>(it));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
marked_up = "<small>";
|
marked_up = _("<big><b>ERROR<b></big>");
|
||||||
marked_up += Markup::escape_text(it->get_value(_main_column));
|
|
||||||
marked_up += "</small>";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
crtm.property_markup() = marked_up;
|
crtm.property_markup() = marked_up;
|
||||||
|
@ -616,20 +652,19 @@ SchedulablesTreeWidget::_on_entities_column_data(Gtk::CellRenderer* cr,
|
||||||
ustring
|
ustring
|
||||||
SchedulablesTreeWidget::markup_schedulable(const Schedulable& s)
|
SchedulablesTreeWidget::markup_schedulable(const Schedulable& s)
|
||||||
{
|
{
|
||||||
using std::ostringstream;
|
|
||||||
using std::endl;
|
using std::endl;
|
||||||
|
|
||||||
ostringstream oss;
|
std::ostringstream oss;
|
||||||
|
|
||||||
// TODO : add note for the translator to use HTML-escaped text
|
// TODO : add note for the translator to use HTML-escaped text
|
||||||
// See the gettext manual.
|
// See the gettext manual.
|
||||||
oss << "<small><span foreground=\""
|
oss << "<span size=\"8500\"><span foreground=\""
|
||||||
<< GlobalPreferences::get_instance().get_schedulable_color(s.get_state())
|
<< GlobalPreferences::get_instance().get_schedulable_color(s.get_state())
|
||||||
<< "\"><b>" << Markup::escape_text(s.get_name()) << "</b></span>"
|
<< "\"><b>" << Markup::escape_text(s.get_name()) << "</b></span>"
|
||||||
<< _(" (") << s.get_elapsed_time()
|
<< _(" (") << s.get_elapsed_time()
|
||||||
<< _("/") << s.get_total_cpu_time() << ")"
|
<< _("/") << s.get_total_cpu_time() << ")"
|
||||||
<< _(", current priority: ") << s.get_current_priority()
|
<< _(", current priority: ") << s.get_current_priority()
|
||||||
<< "</small>";
|
<< "</span>";
|
||||||
|
|
||||||
return oss.str();
|
return oss.str();
|
||||||
}
|
}
|
||||||
|
@ -637,14 +672,13 @@ SchedulablesTreeWidget::markup_schedulable(const Schedulable& s)
|
||||||
ustring
|
ustring
|
||||||
SchedulablesTreeWidget::markup_request(Request& r)
|
SchedulablesTreeWidget::markup_request(Request& r)
|
||||||
{
|
{
|
||||||
using std::ostringstream;
|
|
||||||
using std::endl;
|
using std::endl;
|
||||||
|
|
||||||
ostringstream oss;
|
std::ostringstream oss;
|
||||||
|
|
||||||
oss << "<small><span foreground=\""
|
oss << "<span size=\"8500\"><span foreground=\""
|
||||||
<< GlobalPreferences::get_instance().get_request_color(r.get_state())
|
<< GlobalPreferences::get_instance().get_request_color(r.get_state())
|
||||||
<< "\"><b>" << _("at ") << r.get_instant() << ":</b></span>";
|
<< "\"><b>" << _("request:") << "</b></span>";
|
||||||
|
|
||||||
const Environment& env = Simulation::get_instance().get_history().get_last_environment();
|
const Environment& env = Simulation::get_instance().get_history().get_last_environment();
|
||||||
const Environment::Resources& resources = env.get_resources();
|
const Environment::Resources& resources = env.get_resources();
|
||||||
|
@ -662,7 +696,7 @@ SchedulablesTreeWidget::markup_request(Request& r)
|
||||||
<< "/" << sr.get_length() << ")";
|
<< "/" << sr.get_length() << ")";
|
||||||
}
|
}
|
||||||
|
|
||||||
oss << "</small>";
|
oss << "</span>";
|
||||||
|
|
||||||
return oss.str();
|
return oss.str();
|
||||||
}
|
}
|
||||||
|
@ -673,30 +707,30 @@ SchedulablesTreeWidget::_on_state_column_data(Gtk::CellRenderer* cr,
|
||||||
{
|
{
|
||||||
CellRendererTextMarkup& crtm = static_cast<CellRendererTextMarkup&>(*cr);
|
CellRendererTextMarkup& crtm = static_cast<CellRendererTextMarkup&>(*cr);
|
||||||
|
|
||||||
ustring marked_up;
|
ustring marked_up = "<span size=\"8500\">";
|
||||||
|
|
||||||
switch(get_row_type(it))
|
switch(get_row_type(it))
|
||||||
{
|
{
|
||||||
case htype_process:
|
case htype_process:
|
||||||
marked_up = markup_state(get_row_handle_as<Process>(it)->get_state());
|
marked_up += state_text(get_row_handle_as<Process>(it)->get_state());
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case htype_thread:
|
case htype_thread:
|
||||||
marked_up = markup_state(get_row_handle_as<Thread>(it)->get_state());
|
marked_up += state_text(get_row_handle_as<Thread>(it)->get_state());
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case htype_request:
|
case htype_request:
|
||||||
marked_up = markup_state(get_row_handle_as<Request>(it)->get_state());
|
marked_up += state_text(get_row_handle_as<Request>(it)->get_state());
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
marked_up = "<small>NO STATE</small>";
|
marked_up += "<b>NO STATE</b>";
|
||||||
}
|
}
|
||||||
|
|
||||||
crtm.property_markup() = marked_up;
|
crtm.property_markup() = marked_up + "</span>";
|
||||||
}
|
}
|
||||||
|
|
||||||
ustring
|
ustring
|
||||||
SchedulablesTreeWidget::markup_state(Schedulable::state state)
|
SchedulablesTreeWidget::state_text(Schedulable::state state)
|
||||||
{
|
{
|
||||||
ustring text;
|
ustring text;
|
||||||
|
|
||||||
|
@ -721,11 +755,11 @@ SchedulablesTreeWidget::markup_state(Schedulable::state state)
|
||||||
text = _("@@@ ERROR @@@");
|
text = _("@@@ ERROR @@@");
|
||||||
}
|
}
|
||||||
|
|
||||||
return ustring("<small>") + Markup::escape_text(text) + "</small>";
|
return Markup::escape_text(text);
|
||||||
}
|
}
|
||||||
|
|
||||||
ustring
|
ustring
|
||||||
SchedulablesTreeWidget::markup_state(Request::state state)
|
SchedulablesTreeWidget::state_text(Request::state state)
|
||||||
{
|
{
|
||||||
ustring text;
|
ustring text;
|
||||||
|
|
||||||
|
@ -750,7 +784,7 @@ SchedulablesTreeWidget::markup_state(Request::state state)
|
||||||
text = _("@@@ ERROR @@@");
|
text = _("@@@ ERROR @@@");
|
||||||
}
|
}
|
||||||
|
|
||||||
return ustring("<small>") + Markup::escape_text(text) + "</small>";
|
return Markup::escape_text(text);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -104,10 +104,12 @@ namespace sgpem
|
||||||
void _on_remove_process();
|
void _on_remove_process();
|
||||||
void _on_remove_thread();
|
void _on_remove_thread();
|
||||||
void _on_remove_request();
|
void _on_remove_request();
|
||||||
// void _on_remove_subrequest();
|
|
||||||
|
|
||||||
void _on_entities_column_data(Gtk::CellRenderer* cr,
|
void _on_arrival_column_data(Gtk::CellRenderer* cr,
|
||||||
const Gtk::TreeModel::iterator& it);
|
const Gtk::TreeModel::iterator& it);
|
||||||
|
|
||||||
|
void _on_entity_column_data(Gtk::CellRenderer* cr,
|
||||||
|
const Gtk::TreeModel::iterator& it);
|
||||||
|
|
||||||
void _on_state_column_data(Gtk::CellRenderer* cr,
|
void _on_state_column_data(Gtk::CellRenderer* cr,
|
||||||
const Gtk::TreeModel::iterator& it);
|
const Gtk::TreeModel::iterator& it);
|
||||||
|
@ -115,8 +117,8 @@ namespace sgpem
|
||||||
Glib::ustring markup_schedulable(const Schedulable& s);
|
Glib::ustring markup_schedulable(const Schedulable& s);
|
||||||
Glib::ustring markup_request(Request& s);
|
Glib::ustring markup_request(Request& s);
|
||||||
|
|
||||||
Glib::ustring markup_state(Schedulable::state state);
|
Glib::ustring state_text(Schedulable::state state);
|
||||||
Glib::ustring markup_state(Request::state state);
|
Glib::ustring state_text(Request::state state);
|
||||||
|
|
||||||
Glib::RefPtr<Gtk::TreeStore> _model;
|
Glib::RefPtr<Gtk::TreeStore> _model;
|
||||||
Gtk::TreeModelColumnRecord _columns;
|
Gtk::TreeModelColumnRecord _columns;
|
||||||
|
|
Loading…
Reference in New Issue