GLtk::Button *button = dynamic_cast<GLtk::Button *>(get_item(widgets, "btn_rate"));
button->signal_clicked.connect(sigc::mem_fun(this, &ClockDialog::set_rate));
ent_rate = dynamic_cast<GLtk::Entry *>(get_item(widgets, "ent_rate"));
+ ent_rate->set_text(lexical_cast<string>(clock.get_rate()));
button = dynamic_cast<GLtk::Button *>(get_item(widgets, "btn_stop"));
button->signal_clicked.connect(sigc::mem_fun(this, &ClockDialog::stop_clicked));
stack.arrange(*get_item(widgets, "placeholder"));
add(*(new ClockWidget(clock)));
- clock.signal_minute.connect(sigc::mem_fun(this, &ClockDialog::minute_changed));
+ clock.signal_minute.connect(sigc::mem_fun(this, &ClockDialog::update_time));
+ clock.signal_discontinuity.connect(sigc::mem_fun(this, &ClockDialog::update_time));
+ update_time();
}
-void ClockDialog::minute_changed()
+void ClockDialog::update_time()
{
Time::TimeDelta time = clock.get_current_time();
unsigned hour = time/Time::hour;