formatting

SVN revision: 75664
This commit is contained in:
Mike Blumenkrantz 2012-08-24 13:57:22 +00:00
parent 2f2764c63a
commit f1c170da5a
6 changed files with 190 additions and 186 deletions

View File

@ -4,13 +4,13 @@ extern const char _e_mixer_Name[];
typedef struct E_Mixer_App_Dialog_Data typedef struct E_Mixer_App_Dialog_Data
{ {
E_Mixer_System *sys; E_Mixer_System *sys;
const char *card; const char *card;
const char *channel_name; const char *channel_name;
int lock_sliders; int lock_sliders;
Eina_List *cards; Eina_List *cards;
Eina_List *channels_infos; Eina_List *channels_infos;
struct channel_info *channel_info; struct channel_info *channel_info;
E_Mixer_Channel_State state; E_Mixer_Channel_State state;
struct e_mixer_app_ui struct e_mixer_app_ui
@ -53,9 +53,9 @@ typedef struct E_Mixer_App_Dialog_Data
struct channel_info struct channel_info
{ {
int has_capture; int has_capture;
const char *name; const char *name;
E_Mixer_Channel *id; E_Mixer_Channel *id;
E_Mixer_App_Dialog_Data *app; E_Mixer_App_Dialog_Data *app;
}; };
@ -68,13 +68,13 @@ _cb_changed_left(void *data, Evas_Object *obj __UNUSED__)
state = &app->state; state = &app->state;
if (app->lock_sliders && (state->left != state->right)) if (app->lock_sliders && (state->left != state->right))
{ {
state->right = state->left; state->right = state->left;
e_widget_slider_value_int_set(app->ui.channel_editor.right, e_widget_slider_value_int_set(app->ui.channel_editor.right,
state->right); state->right);
} }
e_mod_mixer_volume_set(app->sys, app->channel_info->id, e_mod_mixer_volume_set(app->sys, app->channel_info->id,
state->left, state->right); state->left, state->right);
} }
static void static void
@ -86,13 +86,13 @@ _cb_changed_right(void *data, Evas_Object *obj __UNUSED__)
state = &app->state; state = &app->state;
if (app->lock_sliders && (state->right != state->left)) if (app->lock_sliders && (state->right != state->left))
{ {
state->left = state->right; state->left = state->right;
e_widget_slider_value_int_set(app->ui.channel_editor.left, e_widget_slider_value_int_set(app->ui.channel_editor.left,
state->left); state->left);
} }
e_mod_mixer_volume_set(app->sys, app->channel_info->id, e_mod_mixer_volume_set(app->sys, app->channel_info->id,
state->left, state->right); state->left, state->right);
} }
static void static void
@ -121,7 +121,7 @@ _cb_changed_lock_sliders(void *data, Evas_Object *obj __UNUSED__)
e_widget_slider_value_int_set(app->ui.channel_editor.left, state->left); e_widget_slider_value_int_set(app->ui.channel_editor.left, state->left);
e_widget_slider_value_int_set(app->ui.channel_editor.right, state->right); e_widget_slider_value_int_set(app->ui.channel_editor.right, state->right);
e_mod_mixer_volume_set(app->sys, app->channel_info->id, e_mod_mixer_volume_set(app->sys, app->channel_info->id,
state->left, state->right); state->left, state->right);
} }
static void static void
@ -134,13 +134,13 @@ _update_channel_editor_state(E_Mixer_App_Dialog_Data *app, const E_Mixer_Channel
if (e_mod_mixer_mutable_get(app->sys, app->channel_info->id)) if (e_mod_mixer_mutable_get(app->sys, app->channel_info->id))
{ {
e_widget_disabled_set(ui->mute, 0); e_widget_disabled_set(ui->mute, 0);
e_widget_check_checked_set(ui->mute, state.mute); e_widget_check_checked_set(ui->mute, state.mute);
} }
else else
{ {
e_widget_disabled_set(ui->mute, 1); e_widget_disabled_set(ui->mute, 1);
e_widget_check_checked_set(ui->mute, 0); e_widget_check_checked_set(ui->mute, 0);
} }
} }
@ -202,14 +202,14 @@ _channels_info_new(E_Mixer_System *sys)
channels_infos = NULL; channels_infos = NULL;
for (l = channels; l; l = l->next) for (l = channels; l; l = l->next)
{ {
struct channel_info *info; struct channel_info *info;
info = malloc(sizeof(*info)); info = malloc(sizeof(*info));
info->id = l->data; info->id = l->data;
info->name = e_mod_mixer_channel_name_get(sys, info->id); info->name = e_mod_mixer_channel_name_get(sys, info->id);
info->has_capture = e_mod_mixer_capture_get(sys, info->id); info->has_capture = e_mod_mixer_capture_get(sys, info->id);
channels_infos = eina_list_append(channels_infos, info); channels_infos = eina_list_append(channels_infos, info);
} }
e_mod_mixer_channels_free(channels); e_mod_mixer_channels_free(channels);
@ -223,8 +223,8 @@ _channels_info_free(Eina_List *list)
EINA_LIST_FREE(list, info) EINA_LIST_FREE(list, info)
{ {
eina_stringshare_del(info->name); eina_stringshare_del(info->name);
free(info); free(info);
} }
} }
@ -264,7 +264,7 @@ _populate_channels(E_Mixer_App_Dialog_Data *app)
eina_stringshare_del(app->channel_name); eina_stringshare_del(app->channel_name);
app->channel_name = e_mod_mixer_channel_default_name_get(app->sys); app->channel_name = e_mod_mixer_channel_default_name_get(app->sys);
if (app->channels_infos) if (app->channels_infos)
_channels_info_free(app->channels_infos); _channels_info_free(app->channels_infos);
app->channels_infos = _channels_info_new(app->sys); app->channels_infos = _channels_info_new(app->sys);
@ -299,9 +299,9 @@ _populate_channels(E_Mixer_App_Dialog_Data *app)
info->app = app; info->app = app;
e_widget_ilist_append(ilist, NULL, info->name, _cb_channel_selected, e_widget_ilist_append(ilist, NULL, info->name, _cb_channel_selected,
info, info->name); info, info->name);
if (app->channel_name && info->name && if (app->channel_name && info->name &&
(strcmp(app->channel_name, info->name) == 0)) (strcmp(app->channel_name, info->name) == 0))
{ {
e_widget_ilist_selected_set(ilist, i); e_widget_ilist_selected_set(ilist, i);
app->channel_info = info; app->channel_info = info;
@ -343,14 +343,14 @@ _create_cards(E_Dialog *dialog __UNUSED__, Evas *evas, E_Mixer_App_Dialog_Data *
e_widget_ilist_go(ui->list); e_widget_ilist_go(ui->list);
EINA_LIST_FOREACH(app->cards, l, card) EINA_LIST_FOREACH(app->cards, l, card)
{ {
const char *card_name; const char *card_name;
card_name = e_mod_mixer_card_name_get(card); card_name = e_mod_mixer_card_name_get(card);
e_widget_ilist_append(ui->list, NULL, card_name, _cb_card_selected, e_widget_ilist_append(ui->list, NULL, card_name, _cb_card_selected,
app, card); app, card);
eina_stringshare_del(card_name); eina_stringshare_del(card_name);
} }
ui->frame = e_widget_framelist_add(evas, _("Cards"), 0); ui->frame = e_widget_framelist_add(evas, _("Cards"), 0);
@ -496,8 +496,8 @@ e_mixer_app_dialog_new(E_Container *con, void (*func)(E_Dialog *dialog, void *da
app = E_NEW(E_Mixer_App_Dialog_Data, 1); app = E_NEW(E_Mixer_App_Dialog_Data, 1);
if (!app) if (!app)
{ {
e_object_del(E_OBJECT(dialog)); e_object_del(E_OBJECT(dialog));
return NULL; return NULL;
} }
dialog->data = app; dialog->data = app;
@ -547,22 +547,22 @@ _find_channel_by_name(E_Mixer_App_Dialog_Data *app, const char *channel_name)
{ {
info = app->channels_infos->data; info = app->channels_infos->data;
header_input = !!info->has_capture; header_input = !!info->has_capture;
i = 1; i = 1;
} }
EINA_LIST_FOREACH(app->channels_infos, l, info) EINA_LIST_FOREACH(app->channels_infos, l, info)
{ {
if ((!header_input) && info->has_capture) if ((!header_input) && info->has_capture)
{ {
header_input = 1; header_input = 1;
i++; i++;
} }
if (strcmp(channel_name, info->name) == 0) if (strcmp(channel_name, info->name) == 0)
return i; return i;
++i; ++i;
} }
return -1; return -1;
@ -594,3 +594,4 @@ e_mixer_app_dialog_select(E_Dialog *dialog, const char *card_name, const char *c
return 1; return 1;
} }

View File

@ -4,16 +4,16 @@ extern const char _e_mixer_Name[];
struct _E_Config_Dialog_Data struct _E_Config_Dialog_Data
{ {
int lock_sliders; int lock_sliders;
int show_locked; int show_locked;
int keybindings_popup; int keybindings_popup;
int card_num; int card_num;
int channel; int channel;
const char *card; const char *card;
const char *channel_name; const char *channel_name;
Eina_List *cards; Eina_List *cards;
Eina_List *cards_names; Eina_List *cards_names;
Eina_List *channels_names; Eina_List *channels_names;
struct mixer_config_ui struct mixer_config_ui
{ {
Evas_Object *table; Evas_Object *table;
@ -26,16 +26,16 @@ struct _E_Config_Dialog_Data
} general; } general;
struct mixer_config_ui_cards struct mixer_config_ui_cards
{ {
Evas_Object *frame; Evas_Object *frame;
E_Radio_Group *radio; E_Radio_Group *radio;
} cards; } cards;
struct mixer_config_ui_channels struct mixer_config_ui_channels
{ {
Evas_Object *frame; Evas_Object *frame;
Evas_Object *scroll; Evas_Object *scroll;
Evas_Object *list; Evas_Object *list;
E_Radio_Group *radio; E_Radio_Group *radio;
Eina_List *radios; Eina_List *radios;
} channels; } channels;
} ui; } ui;
E_Mixer_Gadget_Config *conf; E_Mixer_Gadget_Config *conf;
@ -54,14 +54,14 @@ _mixer_fill_cards_info(E_Config_Dialog_Data *cfdata)
cfdata->cards_names = NULL; cfdata->cards_names = NULL;
EINA_LIST_FOREACH(cfdata->cards, l, card) EINA_LIST_FOREACH(cfdata->cards, l, card)
{ {
name = e_mod_mixer_card_name_get(card); name = e_mod_mixer_card_name_get(card);
if ((cfdata->card_num < 0) && card && cfdata->card && if ((cfdata->card_num < 0) && card && cfdata->card &&
(strcmp(card, cfdata->card) == 0)) (strcmp(card, cfdata->card) == 0))
cfdata->card_num = i; cfdata->card_num = i;
cfdata->cards_names = eina_list_append(cfdata->cards_names, name); cfdata->cards_names = eina_list_append(cfdata->cards_names, name);
i++; i++;
} }
if (cfdata->card_num < 0) if (cfdata->card_num < 0)
@ -85,15 +85,15 @@ _mixer_fill_channels_info(E_Config_Dialog_Data *cfdata)
cfdata->channels_names = e_mod_mixer_channels_names_get(sys); cfdata->channels_names = e_mod_mixer_channels_names_get(sys);
EINA_LIST_FOREACH(cfdata->channels_names, l, channel) EINA_LIST_FOREACH(cfdata->channels_names, l, channel)
{ {
if (channel && cfdata->channel_name && if (channel && cfdata->channel_name &&
(channel == cfdata->channel_name || (channel == cfdata->channel_name ||
strcmp(channel, cfdata->channel_name) == 0)) strcmp(channel, cfdata->channel_name) == 0))
{ {
cfdata->channel = i; cfdata->channel = i;
break; break;
} }
i++; i++;
} }
e_mod_mixer_del(sys); e_mod_mixer_del(sys);
} }
@ -161,15 +161,15 @@ _basic_apply(E_Config_Dialog *dialog, E_Config_Dialog_Data *cfdata)
card = eina_list_nth(cfdata->cards, cfdata->card_num); card = eina_list_nth(cfdata->cards, cfdata->card_num);
if (card) if (card)
{ {
eina_stringshare_del(conf->card); eina_stringshare_del(conf->card);
conf->card = eina_stringshare_ref(card); conf->card = eina_stringshare_ref(card);
} }
channel = eina_list_nth(cfdata->channels_names, cfdata->channel); channel = eina_list_nth(cfdata->channels_names, cfdata->channel);
if (channel) if (channel)
{ {
eina_stringshare_del(conf->channel_name); eina_stringshare_del(conf->channel_name);
conf->channel_name = eina_stringshare_ref(channel); conf->channel_name = eina_stringshare_ref(channel);
} }
e_mixer_update(conf->instance); e_mixer_update(conf->instance);
@ -191,18 +191,18 @@ _basic_create_general(Evas *evas, E_Config_Dialog_Data *cfdata)
ui->frame = e_widget_framelist_add(evas, _("General Settings"), 0); ui->frame = e_widget_framelist_add(evas, _("General Settings"), 0);
ui->lock_sliders = e_widget_check_add( ui->lock_sliders = e_widget_check_add(
evas, _("Lock Sliders"), &cfdata->lock_sliders); evas, _("Lock Sliders"), &cfdata->lock_sliders);
evas_object_smart_callback_add( evas_object_smart_callback_add(
ui->lock_sliders, "changed", _lock_change, cfdata); ui->lock_sliders, "changed", _lock_change, cfdata);
e_widget_framelist_object_append(ui->frame, ui->lock_sliders); e_widget_framelist_object_append(ui->frame, ui->lock_sliders);
ui->show_locked = e_widget_check_add( ui->show_locked = e_widget_check_add(
evas, _("Show both sliders when locked"), &cfdata->show_locked); evas, _("Show both sliders when locked"), &cfdata->show_locked);
e_widget_disabled_set(ui->show_locked, !cfdata->lock_sliders); e_widget_disabled_set(ui->show_locked, !cfdata->lock_sliders);
e_widget_framelist_object_append(ui->frame, ui->show_locked); e_widget_framelist_object_append(ui->frame, ui->show_locked);
ui->keybindings_popup = e_widget_check_add( ui->keybindings_popup = e_widget_check_add(
evas, _("Show Popup on volume change via keybindings"), &cfdata->keybindings_popup); evas, _("Show Popup on volume change via keybindings"), &cfdata->keybindings_popup);
e_widget_framelist_object_append(ui->frame, ui->keybindings_popup); e_widget_framelist_object_append(ui->frame, ui->keybindings_popup);
} }
@ -228,15 +228,15 @@ _fill_channels(Evas *evas, E_Config_Dialog_Data *cfdata)
ui->radio = e_widget_radio_group_new(&cfdata->channel); ui->radio = e_widget_radio_group_new(&cfdata->channel);
EINA_LIST_FOREACH(cfdata->channels_names, l, name) EINA_LIST_FOREACH(cfdata->channels_names, l, name)
{ {
Evas_Object *ow; Evas_Object *ow;
if (!name) continue; if (!name) continue;
ow = e_widget_radio_add(evas, name, i, ui->radio); ow = e_widget_radio_add(evas, name, i, ui->radio);
ui->radios = eina_list_append(ui->radios, ow); ui->radios = eina_list_append(ui->radios, ow);
e_widget_list_object_append(ui->list, ow, 1, 1, 0.0); e_widget_list_object_append(ui->list, ow, 1, 1, 0.0);
++i; ++i;
} }
e_widget_size_min_get(ui->list, &mw, &mh); e_widget_size_min_get(ui->list, &mw, &mh);
@ -245,13 +245,13 @@ _fill_channels(Evas *evas, E_Config_Dialog_Data *cfdata)
selected = eina_list_nth(ui->radios, cfdata->channel); selected = eina_list_nth(ui->radios, cfdata->channel);
if (selected) if (selected)
{ {
Evas_Coord x, y, w, h, lx, ly; Evas_Coord x, y, w, h, lx, ly;
evas_object_geometry_get(selected, &x, &y, &w, &h); evas_object_geometry_get(selected, &x, &y, &w, &h);
evas_object_geometry_get(ui->list, &lx, &ly, NULL, NULL); evas_object_geometry_get(ui->list, &lx, &ly, NULL, NULL);
x -= lx; x -= lx;
y -= ly - 10; y -= ly - 10;
h += 20; h += 20;
e_widget_scrollframe_child_region_show(ui->scroll, x, y, w, h); e_widget_scrollframe_child_region_show(ui->scroll, x, y, w, h);
} }
} }
@ -317,15 +317,15 @@ _basic_create_cards(Evas *evas, E_Config_Dialog_Data *cfdata)
ui->radio = e_widget_radio_group_new(&cfdata->card_num); ui->radio = e_widget_radio_group_new(&cfdata->card_num);
EINA_LIST_FOREACH(cfdata->cards_names, l, card) EINA_LIST_FOREACH(cfdata->cards_names, l, card)
{ {
Evas_Object *ow; Evas_Object *ow;
if (!card) continue; if (!card) continue;
ow = e_widget_radio_add(evas, card, i, ui->radio); ow = e_widget_radio_add(evas, card, i, ui->radio);
e_widget_framelist_object_append(ui->frame, ow); e_widget_framelist_object_append(ui->frame, ow);
evas_object_smart_callback_add(ow, "changed", _card_change, cfdata); evas_object_smart_callback_add(ow, "changed", _card_change, cfdata);
++i; ++i;
} }
} }
@ -353,7 +353,6 @@ _basic_create(E_Config_Dialog *cfd __UNUSED__, Evas *evas, E_Config_Dialog_Data
void void
e_mixer_config_pulse_toggle(void) e_mixer_config_pulse_toggle(void)
{ {
} }
E_Config_Dialog * E_Config_Dialog *
@ -381,3 +380,4 @@ e_mixer_config_dialog_new(E_Container *con, E_Mixer_Gadget_Config *conf)
return dialog; return dialog;
} }

View File

@ -10,7 +10,7 @@ struct _E_Config_Dialog_Data
Evas_Object *list; Evas_Object *list;
struct mixer_config_ui_general struct mixer_config_ui_general
{ {
Evas_Object *frame; Evas_Object *frame;
E_Radio_Group *radio; E_Radio_Group *radio;
} general; } general;
} ui; } ui;
@ -63,15 +63,15 @@ _basic_apply(E_Config_Dialog *dialog, E_Config_Dialog_Data *cfdata)
cfdata->default_instance); cfdata->default_instance);
if (ctxt->default_instance) if (ctxt->default_instance)
{ {
E_Mixer_Module_Config *conf; E_Mixer_Module_Config *conf;
const char *id; const char *id;
conf = ctxt->conf; conf = ctxt->conf;
if (conf->default_gc_id) if (conf->default_gc_id)
eina_stringshare_del(conf->default_gc_id); eina_stringshare_del(conf->default_gc_id);
id = ctxt->default_instance->gcc->cf->id; id = ctxt->default_instance->gcc->cf->id;
conf->default_gc_id = eina_stringshare_add(id); conf->default_gc_id = eina_stringshare_add(id);
conf->desktop_notification = ctxt->desktop_notification; conf->desktop_notification = ctxt->desktop_notification;
} }
@ -96,24 +96,23 @@ _basic_create_general(E_Config_Dialog *dialog, Evas *evas, E_Config_Dialog_Data
ui->radio = e_widget_radio_group_new(&cfdata->default_instance); ui->radio = e_widget_radio_group_new(&cfdata->default_instance);
for (i = 0, l = ctxt->instances; l; l = l->next, i++) for (i = 0, l = ctxt->instances; l; l = l->next, i++)
{ {
E_Mixer_Instance *inst; E_Mixer_Instance *inst;
E_Mixer_Gadget_Config *conf; E_Mixer_Gadget_Config *conf;
Evas_Object *o; Evas_Object *o;
char name[128]; char name[128];
const char *card_name; const char *card_name;
inst = l->data; inst = l->data;
conf = inst->conf; conf = inst->conf;
card_name = e_mixer_system_get_card_name(conf->card); card_name = e_mixer_system_get_card_name(conf->card);
snprintf(name, sizeof(name), "%s: %s", card_name, conf->channel_name); snprintf(name, sizeof(name), "%s: %s", card_name, conf->channel_name);
eina_stringshare_del(card_name); eina_stringshare_del(card_name);
o = e_widget_radio_add(evas, name, i, ui->radio); o = e_widget_radio_add(evas, name, i, ui->radio);
e_widget_framelist_object_append(ui->frame, o); e_widget_framelist_object_append(ui->frame, o);
} }
e_widget_list_object_append(cfdata->ui.list, ui->frame, 1, 1, 0.5); e_widget_list_object_append(cfdata->ui.list, ui->frame, 1, 1, 0.5);
chk = e_widget_check_add(evas, _("Display desktop notifications on volume change"), &ctxt->desktop_notification); chk = e_widget_check_add(evas, _("Display desktop notifications on volume change"), &ctxt->desktop_notification);
e_widget_check_checked_set(chk, ctxt->conf->desktop_notification); e_widget_check_checked_set(chk, ctxt->conf->desktop_notification);
@ -138,8 +137,8 @@ cb_mixer_call(void *data, void *data2 __UNUSED__)
if (ctxt->mixer_dialog) if (ctxt->mixer_dialog)
{ {
e_dialog_show(ctxt->mixer_dialog); e_dialog_show(ctxt->mixer_dialog);
return; return;
} }
con = e_container_current_get(e_manager_current_get()); con = e_container_current_get(e_manager_current_get());
@ -192,3 +191,4 @@ e_mixer_config_module_dialog_new(E_Container *con, E_Mixer_Module_Context *ctxt)
return dialog; return dialog;
} }

View File

@ -16,7 +16,7 @@ struct e_mixer_callback_desc
static int _mixer_callback_add(E_Mixer_System *self, static int _mixer_callback_add(E_Mixer_System *self,
int (*func)(void *data, E_Mixer_System *self), int (*func)(void *data, E_Mixer_System *self),
void *data); void *data);
static int _mixer_callback_del(E_Mixer_System *self, static int _mixer_callback_del(E_Mixer_System *self,
struct e_mixer_callback_desc *desc); struct e_mixer_callback_desc *desc);
static Eina_Bool static Eina_Bool
@ -37,7 +37,7 @@ _cb_dispatch(void *data)
} }
static Eina_Bool static Eina_Bool
_cb_fd_handler(void *data, _cb_fd_handler(void *data,
Ecore_Fd_Handler *fd_handler) Ecore_Fd_Handler *fd_handler)
{ {
struct e_mixer_callback_desc *desc; struct e_mixer_callback_desc *desc;
@ -115,7 +115,7 @@ _mixer_callback_add(E_Mixer_System *self,
} }
static int static int
_mixer_callback_del(E_Mixer_System *self, _mixer_callback_del(E_Mixer_System *self,
struct e_mixer_callback_desc *desc) struct e_mixer_callback_desc *desc)
{ {
Ecore_Fd_Handler *handler; Ecore_Fd_Handler *handler;
@ -402,7 +402,7 @@ e_mixer_system_get_default_channel_name(E_Mixer_System *self)
E_Mixer_Channel * E_Mixer_Channel *
e_mixer_system_get_channel_by_name(E_Mixer_System *self, e_mixer_system_get_channel_by_name(E_Mixer_System *self,
const char *name) const char *name)
{ {
snd_mixer_elem_t *elem; snd_mixer_elem_t *elem;
snd_mixer_selem_id_t *sid; snd_mixer_selem_id_t *sid;
@ -435,7 +435,7 @@ e_mixer_system_channel_del(E_Mixer_Channel *channel __UNUSED__)
} }
const char * const char *
e_mixer_system_get_channel_name(E_Mixer_System *self, e_mixer_system_get_channel_name(E_Mixer_System *self,
E_Mixer_Channel *channel) E_Mixer_Channel *channel)
{ {
snd_mixer_selem_id_t *sid; snd_mixer_selem_id_t *sid;
@ -452,10 +452,10 @@ e_mixer_system_get_channel_name(E_Mixer_System *self,
} }
int int
e_mixer_system_get_volume(E_Mixer_System *self, e_mixer_system_get_volume(E_Mixer_System *self,
E_Mixer_Channel *channel, E_Mixer_Channel *channel,
int *left, int *left,
int *right) int *right)
{ {
long lvol, rvol, range, min, max; long lvol, rvol, range, min, max;
@ -489,10 +489,10 @@ e_mixer_system_get_volume(E_Mixer_System *self,
} }
int int
e_mixer_system_set_volume(E_Mixer_System *self, e_mixer_system_set_volume(E_Mixer_System *self,
E_Mixer_Channel *channel, E_Mixer_Channel *channel,
int left, int left,
int right) int right)
{ {
long range, min, max, divide; long range, min, max, divide;
int mode; int mode;
@ -541,7 +541,7 @@ e_mixer_system_set_volume(E_Mixer_System *self,
} }
int int
e_mixer_system_can_mute(E_Mixer_System *self, e_mixer_system_can_mute(E_Mixer_System *self,
E_Mixer_Channel *channel) E_Mixer_Channel *channel)
{ {
if ((!self) || (!channel)) if ((!self) || (!channel))
@ -553,9 +553,9 @@ e_mixer_system_can_mute(E_Mixer_System *self,
} }
int int
e_mixer_system_get_mute(E_Mixer_System *self, e_mixer_system_get_mute(E_Mixer_System *self,
E_Mixer_Channel *channel, E_Mixer_Channel *channel,
int *mute) int *mute)
{ {
if ((!self) || (!channel) || (!mute)) if ((!self) || (!channel) || (!mute))
return 0; return 0;
@ -579,9 +579,9 @@ e_mixer_system_get_mute(E_Mixer_System *self,
} }
int int
e_mixer_system_set_mute(E_Mixer_System *self, e_mixer_system_set_mute(E_Mixer_System *self,
E_Mixer_Channel *channel, E_Mixer_Channel *channel,
int mute) int mute)
{ {
if ((!self) || (!channel)) if ((!self) || (!channel))
return 0; return 0;
@ -595,8 +595,8 @@ e_mixer_system_set_mute(E_Mixer_System *self,
} }
int int
e_mixer_system_get_state(E_Mixer_System *self, e_mixer_system_get_state(E_Mixer_System *self,
E_Mixer_Channel *channel, E_Mixer_Channel *channel,
E_Mixer_Channel_State *state) E_Mixer_Channel_State *state)
{ {
int r; int r;
@ -610,8 +610,8 @@ e_mixer_system_get_state(E_Mixer_System *self,
} }
int int
e_mixer_system_set_state(E_Mixer_System *self, e_mixer_system_set_state(E_Mixer_System *self,
E_Mixer_Channel *channel, E_Mixer_Channel *channel,
const E_Mixer_Channel_State *state) const E_Mixer_Channel_State *state)
{ {
int r; int r;
@ -625,7 +625,7 @@ e_mixer_system_set_state(E_Mixer_System *self,
} }
int int
e_mixer_system_has_capture(E_Mixer_System *self, e_mixer_system_has_capture(E_Mixer_System *self,
E_Mixer_Channel *channel) E_Mixer_Channel *channel)
{ {
if ((!self) || (!channel)) if ((!self) || (!channel))

View File

@ -14,9 +14,9 @@ e_mixer_system_new(const char *name)
_e_mixer_dummy_set(); _e_mixer_dummy_set();
if (name == _name || strcmp(name, _name) == 0) if (name == _name || strcmp(name, _name) == 0)
return (E_Mixer_System *)-1; return (E_Mixer_System *)-1;
else else
return NULL; return NULL;
} }
void void
@ -58,9 +58,9 @@ e_mixer_system_get_card_name(const char *card)
_e_mixer_dummy_set(); _e_mixer_dummy_set();
if (card == _name || strcmp(card, _name) == 0) if (card == _name || strcmp(card, _name) == 0)
return eina_stringshare_ref(_name); return eina_stringshare_ref(_name);
else else
return NULL; return NULL;
} }
Eina_List * Eina_List *
@ -103,9 +103,9 @@ e_mixer_system_get_channel_by_name(E_Mixer_System *self __UNUSED__, const char *
_e_mixer_dummy_set(); _e_mixer_dummy_set();
if (name == _name || strcmp(name, _name) == 0) if (name == _name || strcmp(name, _name) == 0)
return (E_Mixer_Channel *)-2; return (E_Mixer_Channel *)-2;
else else
return NULL; return NULL;
} }
void void
@ -117,18 +117,18 @@ const char *
e_mixer_system_get_channel_name(E_Mixer_System *self __UNUSED__, E_Mixer_Channel *channel) e_mixer_system_get_channel_name(E_Mixer_System *self __UNUSED__, E_Mixer_Channel *channel)
{ {
if (channel == (E_Mixer_Channel *)-2) if (channel == (E_Mixer_Channel *)-2)
return eina_stringshare_ref(_name); return eina_stringshare_ref(_name);
else else
return NULL; return NULL;
} }
int int
e_mixer_system_get_volume(E_Mixer_System *self __UNUSED__, E_Mixer_Channel *channel __UNUSED__, int *left, int *right) e_mixer_system_get_volume(E_Mixer_System *self __UNUSED__, E_Mixer_Channel *channel __UNUSED__, int *left, int *right)
{ {
if (left) if (left)
*left = 0; *left = 0;
if (right) if (right)
*right = 0; *right = 0;
return 1; return 1;
} }
@ -149,7 +149,7 @@ int
e_mixer_system_get_mute(E_Mixer_System *self __UNUSED__, E_Mixer_Channel *channel __UNUSED__, int *mute) e_mixer_system_get_mute(E_Mixer_System *self __UNUSED__, E_Mixer_Channel *channel __UNUSED__, int *mute)
{ {
if (mute) if (mute)
*mute = 1; *mute = 1;
return 1; return 1;
} }
@ -166,7 +166,7 @@ e_mixer_system_get_state(E_Mixer_System *self __UNUSED__, E_Mixer_Channel *chann
const E_Mixer_Channel_State def = {1, 0, 0}; const E_Mixer_Channel_State def = {1, 0, 0};
if (state) if (state)
*state = def; *state = def;
return 1; return 1;
} }
@ -182,3 +182,4 @@ e_mixer_system_has_capture(E_Mixer_System *self __UNUSED__, E_Mixer_Channel *cha
{ {
return 0; return 0;
} }

View File

@ -8,8 +8,8 @@
//#define BAD_CH_MAPPING 1 //#define BAD_CH_MAPPING 1
#define PULSE_BUS "org.PulseAudio.Core1" #define PULSE_BUS "org.PulseAudio.Core1"
#define PULSE_PATH "/org/pulseaudio/core1" #define PULSE_PATH "/org/pulseaudio/core1"
#define PULSE_INTERFACE "org.PulseAudio.Core1" #define PULSE_INTERFACE "org.PulseAudio.Core1"
static Pulse *conn = NULL; static Pulse *conn = NULL;
@ -69,7 +69,7 @@ _dbus_poll(void *data __UNUSED__,
static void static void
_dbus_test(void *data __UNUSED__, _dbus_test(void *data __UNUSED__,
DBusMessage *msg __UNUSED__, DBusMessage *msg __UNUSED__,
DBusError *error) DBusError *error)
{ {
if ((error) && (dbus_error_is_set(error))) if ((error) && (dbus_error_is_set(error)))
{ {
@ -115,7 +115,7 @@ _pulse_sinks_get(Pulse *p __UNUSED__, Pulse_Tag_Id id __UNUSED__, Eina_List *ev)
printf("\tavg: %g\n", pulse_sink_avg_get_pct(sink)); printf("\tavg: %g\n", pulse_sink_avg_get_pct(sink));
printf("\tbalance: %f\n", pulse_sink_balance_get(sink)); printf("\tbalance: %f\n", pulse_sink_balance_get(sink));
} }
*/ */
sinks = ev; sinks = ev;
pulse_sinks_watch(conn); pulse_sinks_watch(conn);
e_mod_mixer_pulse_ready(EINA_TRUE); e_mod_mixer_pulse_ready(EINA_TRUE);
@ -140,7 +140,7 @@ _pulse_sources_get(Pulse *p __UNUSED__, Pulse_Tag_Id id __UNUSED__, Eina_List *e
printf("\tavg: %g\n", pulse_sink_avg_get_pct(sink)); printf("\tavg: %g\n", pulse_sink_avg_get_pct(sink));
printf("\tbalance: %f\n", pulse_sink_balance_get(sink)); printf("\tbalance: %f\n", pulse_sink_balance_get(sink));
} }
*/ */
} }
static Eina_Bool static Eina_Bool
@ -313,7 +313,7 @@ e_mixer_pulse_shutdown(void)
E_Mixer_System * E_Mixer_System *
e_mixer_pulse_new(const char *name) e_mixer_pulse_new(const char *name)
{ {
return (E_Mixer_System*)_pulse_sink_find(name); return (E_Mixer_System *)_pulse_sink_find(name);
} }
void void
@ -387,14 +387,15 @@ e_mixer_pulse_get_channels_names(E_Mixer_System *self)
#else #else
(void)self; (void)self;
return eina_list_append(NULL, eina_stringshare_add("Output")); return eina_list_append(NULL, eina_stringshare_add("Output"));
#endif #endif
} }
void void
e_mixer_pulse_free_channels_names(Eina_List *channels_names) e_mixer_pulse_free_channels_names(Eina_List *channels_names)
{ {
const char *str; const char *str;
EINA_LIST_FREE(channels_names, str) eina_stringshare_del(str); EINA_LIST_FREE(channels_names, str)
eina_stringshare_del(str);
} }
const char * const char *
@ -405,7 +406,7 @@ e_mixer_pulse_get_default_channel_name(E_Mixer_System *self)
#else #else
(void)self; (void)self;
return eina_stringshare_add("Output"); return eina_stringshare_add("Output");
#endif #endif
} }
E_Mixer_Channel * E_Mixer_Channel *
@ -419,7 +420,7 @@ e_mixer_pulse_get_channel_by_name(E_Mixer_System *self, const char *name)
#else #else
(void)self, (void)name; (void)self, (void)name;
return (E_Mixer_Channel *)1; return (E_Mixer_Channel *)1;
#endif #endif
} }
void void
@ -432,33 +433,33 @@ e_mixer_pulse_get_channel_name(E_Mixer_System *self, E_Mixer_Channel *channel)
{ {
if (!channel) return NULL; if (!channel) return NULL;
#ifdef BAD_CH_MAPPING #ifdef BAD_CH_MAPPING
return pulse_sink_channel_id_get_name((void *)self, return pulse_sink_channel_id_get_name((void *)self,
((uintptr_t)channel) - 1); ((uintptr_t)channel) - 1);
#else #else
(void)self; (void)self;
return eina_stringshare_add("Output"); return eina_stringshare_add("Output");
#endif #endif
} }
int int
e_mixer_pulse_get_volume(E_Mixer_System *self, E_Mixer_Channel *channel, int *left, int *right) e_mixer_pulse_get_volume(E_Mixer_System *self, E_Mixer_Channel *channel, int *left, int *right)
{ {
double volume; double volume;
#ifdef BAD_CH_MAPPING #ifdef BAD_CH_MAPPING
if (!channel) return 0; if (!channel) return 0;
volume = pulse_sink_channel_volume_get((void *)self, volume = pulse_sink_channel_volume_get((void *)self,
((uintptr_t)channel) - 1); ((uintptr_t)channel) - 1);
if (left) *left = (int)volume; if (left) *left = (int)volume;
if (right) *right = (int)volume; if (right) *right = (int)volume;
#else #else
int x, n; int x, n;
if (!channel) return 0; if (!channel) return 0;
n = pulse_sink_channels_count((void *)self); n = pulse_sink_channels_count((void *)self);
for (x = 0; x < n; x++) for (x = 0; x < n; x++)
{ {
volume = pulse_sink_channel_volume_get((void *)self, volume = pulse_sink_channel_volume_get((void *)self,
((uintptr_t)channel) - 1); ((uintptr_t)channel) - 1);
if (x == 0) if (x == 0)
{ {
@ -469,7 +470,7 @@ e_mixer_pulse_get_volume(E_Mixer_System *self, E_Mixer_Channel *channel, int *le
if (right) *right = (int)volume; if (right) *right = (int)volume;
} }
} }
#endif #endif
return 1; return 1;
} }
@ -480,16 +481,16 @@ e_mixer_pulse_set_volume(E_Mixer_System *self, E_Mixer_Channel *channel, int lef
#ifdef BAD_CH_MAPPING #ifdef BAD_CH_MAPPING
if (!channel) return 0; if (!channel) return 0;
id = pulse_type_channel_volume_set(conn, (void *)self, id = pulse_type_channel_volume_set(conn, (void *)self,
((uintptr_t)channel) - 1, ((uintptr_t)channel) - 1,
(left + right) / 2, source); (left + right) / 2, source);
if (!id) return 0; if (!id) return 0;
pulse_cb_set(conn, id, (Pulse_Cb)_pulse_result_cb); pulse_cb_set(conn, id, (Pulse_Cb)_pulse_result_cb);
#else #else
int x, n; int x, n;
if (!channel) return 0; if (!channel) return 0;
n = pulse_sink_channels_count((void *)self); n = pulse_sink_channels_count((void *)self);
for (x = 0; x < n; x++) for (x = 0; x < n; x++)
{ {
if (x == 0) if (x == 0)
@ -501,7 +502,7 @@ e_mixer_pulse_set_volume(E_Mixer_System *self, E_Mixer_Channel *channel, int lef
id |= pulse_sink_channel_volume_set(conn, (void *)self, x, right); id |= pulse_sink_channel_volume_set(conn, (void *)self, x, right);
} }
} }
#endif #endif
return 1; return 1;
} }
@ -538,7 +539,7 @@ e_mixer_pulse_get_state(E_Mixer_System *self, E_Mixer_Channel *channel, E_Mixer_
double vol; double vol;
if (!state) return 0; if (!state) return 0;
if (!channel) return 0; if (!channel) return 0;
vol = pulse_sink_channel_volume_get((void *)self, vol = pulse_sink_channel_volume_get((void *)self,
((uintptr_t)channel) - 1); ((uintptr_t)channel) - 1);
state->mute = pulse_sink_muted_get((void *)self); state->mute = pulse_sink_muted_get((void *)self);
state->left = state->right = (int)vol; state->left = state->right = (int)vol;
@ -547,7 +548,7 @@ e_mixer_pulse_get_state(E_Mixer_System *self, E_Mixer_Channel *channel, E_Mixer_
if (!channel) return 0; if (!channel) return 0;
e_mixer_pulse_get_mute(self, channel, &(state->mute)); e_mixer_pulse_get_mute(self, channel, &(state->mute));
e_mixer_pulse_get_volume(self, channel, &(state->left), &(state->right)); e_mixer_pulse_get_volume(self, channel, &(state->left), &(state->right));
#endif #endif
return 1; return 1;
} }
@ -559,15 +560,15 @@ e_mixer_pulse_set_state(E_Mixer_System *self, E_Mixer_Channel *channel, const E_
Eina_Bool source = EINA_FALSE; Eina_Bool source = EINA_FALSE;
if (!channel) return 0; if (!channel) return 0;
source = !!eina_list_data_find(sources, self); source = !!eina_list_data_find(sources, self);
id = pulse_type_channel_volume_set(conn, (void *)self, id = pulse_type_channel_volume_set(conn, (void *)self,
((uintptr_t)channel) - 1, ((uintptr_t)channel) - 1,
(state->left + state->right) / 2, source); (state->left + state->right) / 2, source);
if (!id) return 0; if (!id) return 0;
pulse_cb_set(conn, id, (Pulse_Cb)_pulse_result_cb); pulse_cb_set(conn, id, (Pulse_Cb)_pulse_result_cb);
#else #else
e_mixer_pulse_set_volume(self, channel, state->left, state->right); e_mixer_pulse_set_volume(self, channel, state->left, state->right);
e_mixer_pulse_set_mute(self, channel, state->mute); e_mixer_pulse_set_mute(self, channel, state->mute);
#endif #endif
return 1; return 1;
} }
@ -576,3 +577,4 @@ e_mixer_pulse_has_capture(E_Mixer_System *self __UNUSED__, E_Mixer_Channel *chan
{ {
return 0; return 0;
} }