gui: Generic toggle button function

Signed-off-by: Anna Schumaker <schumaker.anna@gmail.com>
This commit is contained in:
Anna Schumaker 2014-02-23 20:38:24 -05:00 committed by Anna Schumaker
parent 73c4de13be
commit bfcc94de21
2 changed files with 11 additions and 8 deletions

View File

@ -67,6 +67,14 @@ void Tab :: tab_init_repeat()
&Tab::on_repeat_toggled)); &Tab::on_repeat_toggled));
} }
void Tab :: tab_toggle_button(Gtk::ToggleButton *button, playqueue_flags flag)
{
if (button->get_active())
tab_pq->set_flag(flag);
else
tab_pq->unset_flag(flag);
}
int Tab :: tab_page_num() int Tab :: tab_page_num()
{ {
Gtk::Notebook *notebook = get_widget<Gtk::Notebook>("o_notebook"); Gtk::Notebook *notebook = get_widget<Gtk::Notebook>("o_notebook");
@ -174,18 +182,12 @@ bool Tab :: on_key_press_event(const std::string &key)
void Tab :: on_random_toggled() void Tab :: on_random_toggled()
{ {
if (tab_random->get_active()) tab_toggle_button(tab_random, PQ_RANDOM);
tab_pq->set_flag(PQ_RANDOM);
else
tab_pq->unset_flag(PQ_RANDOM);
} }
void Tab :: on_repeat_toggled() void Tab :: on_repeat_toggled()
{ {
if (tab_repeat->get_active()) tab_toggle_button(tab_repeat, PQ_REPEAT);
tab_pq->set_flag(PQ_REPEAT);
else
tab_pq->unset_flag(PQ_REPEAT);
} }
void Tab :: on_row_activated(const Gtk::TreePath &path, Gtk::TreeViewColumn *col) void Tab :: on_row_activated(const Gtk::TreePath &path, Gtk::TreeViewColumn *col)

View File

@ -38,6 +38,7 @@ protected:
*/ */
void tab_init_random(); void tab_init_random();
void tab_init_repeat(); void tab_init_repeat();
void tab_toggle_button(Gtk::ToggleButton *, playqueue_flags);
bool tab_is_cur(); bool tab_is_cur();
virtual void tab_set_size(); virtual void tab_set_size();
void tab_unmap(); void tab_unmap();