MateMixerSwitch * gvc_combo_box_get_switch (GvcComboBox *combobox) { g_return_val_if_fail (GVC_IS_COMBO_BOX (combobox), NULL); return combobox->priv->swtch; }
void gvc_combo_box_set_profiles (GvcComboBox *combo_box, const GHashTable* profiles) { g_return_if_fail (GVC_IS_COMBO_BOX (combo_box)); g_return_if_fail (combo_box->priv->set_called == FALSE); const GList *l; const GList *keys; keys = g_hash_table_get_keys (profiles); for (l = keys; l != NULL; l = l->next) { gchar* k; GvcMixerCardProfile *p; k = l->data; p = g_hash_table_lookup (profiles, k); g_debug ("set profiles - key %s \n profile %s \n human profile %s", k, p->profile, p->human_profile); gtk_list_store_insert_with_values (GTK_LIST_STORE (combo_box->priv->model), NULL, G_MAXINT, COL_NAME, p->profile, COL_HUMAN_NAME, p->human_profile, -1); } combo_box->priv->set_called = TRUE; }
void gvc_combo_box_set_size_group (GvcComboBox *combobox, GtkSizeGroup *group, gboolean symmetric) { g_return_if_fail (GVC_IS_COMBO_BOX (combobox)); g_return_if_fail (GTK_IS_SIZE_GROUP (group)); if (group != NULL) { gtk_size_group_add_widget (group, combobox->priv->start_box); if (symmetric == TRUE) gtk_size_group_add_widget (group, combobox->priv->end_box); } gtk_widget_queue_draw (GTK_WIDGET (combobox)); }
static void gvc_combo_box_finalize (GObject *object) { GvcComboBox *combo_box; g_return_if_fail (object != NULL); g_return_if_fail (GVC_IS_COMBO_BOX (object)); combo_box = GVC_COMBO_BOX (object); g_return_if_fail (combo_box->priv != NULL); g_object_unref (combo_box->priv->model); combo_box->priv->model = NULL; G_OBJECT_CLASS (gvc_combo_box_parent_class)->finalize (object); }
void gvc_combo_box_set_size_group (GvcComboBox *combo_box, GtkSizeGroup *group, gboolean symmetric) { g_return_if_fail (GVC_IS_COMBO_BOX (combo_box)); combo_box->priv->size_group = group; combo_box->priv->symmetric = symmetric; if (combo_box->priv->size_group != NULL) { gtk_size_group_add_widget (combo_box->priv->size_group, combo_box->priv->start_box); if (combo_box->priv->symmetric) { gtk_size_group_add_widget (combo_box->priv->size_group, combo_box->priv->end_box); } } gtk_widget_queue_draw (GTK_WIDGET (combo_box)); }
void gvc_combo_box_set_ports (GvcComboBox *combo_box, const GList *ports) { const GList *l; g_return_if_fail (GVC_IS_COMBO_BOX (combo_box)); g_return_if_fail (combo_box->priv->set_called == FALSE); for (l = ports; l != NULL; l = l->next) { GvcMixerStreamPort *p = l->data; gtk_list_store_insert_with_values (GTK_LIST_STORE (combo_box->priv->model), NULL, G_MAXINT, COL_NAME, p->port, COL_HUMAN_NAME, p->human_port, -1); } combo_box->priv->set_called = TRUE; }
static void gvc_combo_box_set_switch (GvcComboBox *combobox, MateMixerSwitch *swtch) { MateMixerSwitchOption *active; const GList *options; g_return_if_fail (GVC_IS_COMBO_BOX (combobox)); g_return_if_fail (MATE_MIXER_IS_SWITCH (swtch)); combobox->priv->swtch = g_object_ref (swtch); active = mate_mixer_switch_get_active_option (swtch); options = mate_mixer_switch_list_options (swtch); while (options != NULL) { GtkTreeIter iter; MateMixerSwitchOption *option = MATE_MIXER_SWITCH_OPTION (options->data); gtk_list_store_insert_with_values (GTK_LIST_STORE (combobox->priv->model), &iter, G_MAXINT, COL_NAME, mate_mixer_switch_option_get_name (option), COL_HUMAN_NAME, mate_mixer_switch_option_get_label (option), -1); /* Select the currently active option of the switch */ if (option == active) { gtk_combo_box_set_active_iter (GTK_COMBO_BOX (combobox->priv->combobox), &iter); } options = options->next; } g_signal_connect (G_OBJECT (swtch), "notify::active-option", G_CALLBACK (on_switch_active_option_notify), combobox); }