- Added markup for threads, improved support for translation of hard-coded strings
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@963 3ecf2c5c-341e-0410-92b4-d18e462d057c
This commit is contained in:
parent
cb59a30e06
commit
9d541e2751
|
@ -65,11 +65,7 @@ SchedulablesTreeWidget::SchedulablesTreeWidget() :
|
||||||
|
|
||||||
set_model(_model);
|
set_model(_model);
|
||||||
|
|
||||||
//append_column("schedulables", _main_column);
|
int idx = append_column(_("schedulables"), _cell_renderer) - 1;
|
||||||
//invisible
|
|
||||||
// append_column("handles", _types_column);
|
|
||||||
// append_column("handles", _handles_column);
|
|
||||||
int idx = append_column("schedulables", _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_cell_name_data));
|
tvc->set_cell_data_func(_cell_renderer, sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_cell_name_data));
|
||||||
|
|
||||||
|
@ -180,34 +176,34 @@ SchedulablesTreeWidget::on_button_press_event(GdkEventButton* event)
|
||||||
{
|
{
|
||||||
RefPtr<ActionGroup> action_group = Gtk::ActionGroup::create();
|
RefPtr<ActionGroup> action_group = Gtk::ActionGroup::create();
|
||||||
|
|
||||||
action_group->add( Gtk::Action::create("AddProcess", "Add Process"),
|
action_group->add( Gtk::Action::create("AddProcess", _("Add Process")),
|
||||||
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_add_process) );
|
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_add_process) );
|
||||||
|
|
||||||
action_group->add( Gtk::Action::create("AddThread", "Add Thread"),
|
action_group->add( Gtk::Action::create("AddThread", _("Add Thread")),
|
||||||
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_add_thread) );
|
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_add_thread) );
|
||||||
|
|
||||||
action_group->add( Gtk::Action::create("AddRequest", "Add Request"),
|
action_group->add( Gtk::Action::create("AddRequest", _("Add Request")),
|
||||||
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_add_request) );
|
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_add_request) );
|
||||||
|
|
||||||
action_group->add( Gtk::Action::create("EditProcess", "Edit Process"),
|
action_group->add( Gtk::Action::create("EditProcess", _("Edit Process")),
|
||||||
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_edit_process) );
|
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_edit_process) );
|
||||||
|
|
||||||
action_group->add( Gtk::Action::create("EditThread", "Edit Thread"),
|
action_group->add( Gtk::Action::create("EditThread", _("Edit Thread")),
|
||||||
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_edit_thread) );
|
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_edit_thread) );
|
||||||
|
|
||||||
action_group->add( Gtk::Action::create("EditRequest", "Edit Request"),
|
action_group->add( Gtk::Action::create("EditRequest", _("Edit Request")),
|
||||||
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_edit_request) );
|
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_edit_request) );
|
||||||
|
|
||||||
action_group->add( Gtk::Action::create("RemoveProcess", "Remove Process"),
|
action_group->add( Gtk::Action::create("RemoveProcess", _("Remove Process")),
|
||||||
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_remove_process) );
|
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_remove_process) );
|
||||||
|
|
||||||
action_group->add( Gtk::Action::create("RemoveThread", "Remove Thread"),
|
action_group->add( Gtk::Action::create("RemoveThread", _("Remove Thread")),
|
||||||
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_remove_thread) );
|
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_remove_thread) );
|
||||||
|
|
||||||
action_group->add( Gtk::Action::create("RemoveRequest", "Remove Request"),
|
action_group->add( Gtk::Action::create("RemoveRequest", _("Remove Request")),
|
||||||
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_remove_request) );
|
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_remove_request) );
|
||||||
|
|
||||||
action_group->add( Gtk::Action::create("RemoveSubrequest", "Remove Subrequest"),
|
action_group->add( Gtk::Action::create("RemoveSubrequest", _("Remove Subrequest")),
|
||||||
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_remove_subrequest) );
|
sigc::mem_fun(*this, &SchedulablesTreeWidget::_on_remove_subrequest) );
|
||||||
|
|
||||||
RefPtr<UIManager> UIManager = Gtk::UIManager::create();
|
RefPtr<UIManager> UIManager = Gtk::UIManager::create();
|
||||||
|
@ -274,7 +270,6 @@ SchedulablesTreeWidget::_update_expanded_vector(Gtk::TreeView*, const Gtk::TreeM
|
||||||
_expanded_rows.push_back(path.to_string());
|
_expanded_rows.push_back(path.to_string());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
SchedulablesTreeWidget::update(const History& history)
|
SchedulablesTreeWidget::update(const History& history)
|
||||||
{
|
{
|
||||||
|
@ -323,7 +318,7 @@ SchedulablesTreeWidget::update(const History& history)
|
||||||
TreeModel::Row rrow = *(_model->append(trow.children()));
|
TreeModel::Row rrow = *(_model->append(trow.children()));
|
||||||
|
|
||||||
std::ostringstream oss;
|
std::ostringstream oss;
|
||||||
oss << "request " << ri + 1;
|
oss << _("request ") << ri + 1;
|
||||||
|
|
||||||
rrow[_main_column] = oss.str();
|
rrow[_main_column] = oss.str();
|
||||||
rrow[_types_column] = htype_request;
|
rrow[_types_column] = htype_request;
|
||||||
|
@ -572,8 +567,13 @@ SchedulablesTreeWidget::_on_cell_name_data(Gtk::CellRenderer* cr,
|
||||||
switch(get_row_type(it))
|
switch(get_row_type(it))
|
||||||
{
|
{
|
||||||
case htype_process:
|
case htype_process:
|
||||||
marked_up = markup_process(*get_row_handle_as<Process>(it));
|
marked_up = markup_schedulable(*get_row_handle_as<Process>(it));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case htype_thread:
|
||||||
|
marked_up = markup_schedulable(*get_row_handle_as<Thread>(it));
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
marked_up = "<small>";
|
marked_up = "<small>";
|
||||||
marked_up += Markup::escape_text(it->get_value(_main_column));
|
marked_up += Markup::escape_text(it->get_value(_main_column));
|
||||||
|
@ -583,7 +583,6 @@ SchedulablesTreeWidget::_on_cell_name_data(Gtk::CellRenderer* cr,
|
||||||
crtm.property_markup() = marked_up;
|
crtm.property_markup() = marked_up;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static Glib::ustring
|
static Glib::ustring
|
||||||
schedulable_map_color(const Schedulable::state st)
|
schedulable_map_color(const Schedulable::state st)
|
||||||
{
|
{
|
||||||
|
@ -606,7 +605,7 @@ schedulable_map_color(const Schedulable::state st)
|
||||||
|
|
||||||
|
|
||||||
ustring
|
ustring
|
||||||
SchedulablesTreeWidget::markup_process(const Process& p)
|
SchedulablesTreeWidget::markup_schedulable(const Schedulable& s)
|
||||||
{
|
{
|
||||||
using std::ostringstream;
|
using std::ostringstream;
|
||||||
using std::endl;
|
using std::endl;
|
||||||
|
@ -615,15 +614,14 @@ SchedulablesTreeWidget::markup_process(const Process& p)
|
||||||
|
|
||||||
// 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 << "<span foreground=\"" << schedulable_map_color(p.get_state()) << "\"><b>"
|
oss << "<small><span foreground=\"" << schedulable_map_color(s.get_state()) << "\"><b>"
|
||||||
<< Markup::escape_text(p.get_name()) << "</b></span>"
|
<< Markup::escape_text(s.get_name()) << "</b></span>"
|
||||||
<< _(", arrived at: ") << p.get_arrival_time()
|
<< _(", arrived at: ") << s.get_arrival_time()
|
||||||
<< _(", base priority: ") << p.get_base_priority() << endl
|
<< _(", base priority: ") << s.get_base_priority()
|
||||||
<< "<small>" << _("Elapsed time: ") << p.get_elapsed_time()
|
<< _(", elapsed time: ") << s.get_elapsed_time()
|
||||||
<< _(", current priority: ") << p.get_current_priority()
|
<< _(", current priority: ") << s.get_current_priority()
|
||||||
<< "</small>";
|
<< "</small>";
|
||||||
|
|
||||||
// TODO I'm unable to set foreground color, why?
|
|
||||||
return oss.str();
|
return oss.str();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
|
|
||||||
namespace sgpem
|
namespace sgpem
|
||||||
{
|
{
|
||||||
|
class Schedulable;
|
||||||
class Process;
|
class Process;
|
||||||
class Thread;
|
class Thread;
|
||||||
class AddRequestDialog;
|
class AddRequestDialog;
|
||||||
|
@ -105,7 +106,7 @@ namespace sgpem
|
||||||
void _on_cell_name_data(Gtk::CellRenderer* cr,
|
void _on_cell_name_data(Gtk::CellRenderer* cr,
|
||||||
const Gtk::TreeModel::iterator& it);
|
const Gtk::TreeModel::iterator& it);
|
||||||
|
|
||||||
Glib::ustring markup_process(const Process& p);
|
Glib::ustring markup_schedulable(const Schedulable& s);
|
||||||
|
|
||||||
Glib::RefPtr<Gtk::TreeStore> _model;
|
Glib::RefPtr<Gtk::TreeStore> _model;
|
||||||
Gtk::TreeModelColumnRecord _columns;
|
Gtk::TreeModelColumnRecord _columns;
|
||||||
|
|
Loading…
Reference in New Issue