summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlliver Schinagl <o.schinagl@ultimaker.com>2015-06-19 13:47:48 (GMT)
committerOlliver Schinagl <o.schinagl@ultimaker.com>2015-06-19 13:47:48 (GMT)
commit770d58557ace288848733a33f6b3ef5ec18fc6f3 (patch)
treea7c703dcd4192db202e555aed3375f3490737524
parent04f8133db5387e73fda7a98c56f184af9afa96ef (diff)
downloadeulogium-770d58557ace288848733a33f6b3ef5ec18fc6f3.zip
eulogium-770d58557ace288848733a33f6b3ef5ec18fc6f3.tar.gz
eulogium-770d58557ace288848733a33f6b3ef5ec18fc6f3.tar.bz2
add set*Power calls, replace in future with generic networking call
Signed-off-by: Olliver Schinagl <o.schinagl@ultimaker.com>
-rw-r--r--src/eulogium.c57
1 files changed, 44 insertions, 13 deletions
diff --git a/src/eulogium.c b/src/eulogium.c
index 618b995..7f921a1 100644
--- a/src/eulogium.c
+++ b/src/eulogium.c
@@ -38,6 +38,9 @@ static void _cb_content_prev_set(void *data, Evas_Object *obj EINA_UNUSED, void
static void _print_abort_confirm_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED);
static void _print_abort_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED);
static void _print_ignore_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED);
+static void _set_ethernet_power_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED);
+static void _set_wifi_power_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED);
+static void _set_hotspot_power_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED);
static void _but_material_change_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED);
static void _but_material_settings_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED);
static void _but_system_maintenance_cb(void *data, Evas_Object *object EINA_UNUSED, void *event_info EINA_UNUSED);
@@ -492,42 +495,47 @@ static struct menu_def menu_settings_network = {
.data = NULL,
}, {
.icon = NULL,
- .label = "WiFi",
+ .label = "Ethernet",
.item = {
.type = LIST_ITEM_CHECK,
.state = EINA_FALSE,
._widget = NULL,
},
.dbus = {
- .signal = "WifiPowerChanged",
+ /* .proxy = NULL; TODO keep a link to the proxy that is responsible for this item. */
+ .signal = "EthernetPowerChanged",
.sig_cb = on_signal_network_power_changed_ret,
- .method = "isWifiPowered",
- .met_cb = on_method_is_network_powered_ret,
+ .get = "isEthernetPowered",
+ .get_cb = on_method_is_network_powered_ret,
+ .set = "setEthernetPower",
+ .set_cb = on_method_generic_ret,
},
.end = NULL,
.footer = NULL,
.footer_alt = NULL,
- .func = NULL,
+ .func = _set_ethernet_power_cb, /* TODO _set_network_power can be possible */
.toggle_timer = NULL,
.data = NULL,
}, {
.icon = NULL,
- .label = "Ethernet",
+ .label = "WiFi",
.item = {
.type = LIST_ITEM_CHECK,
.state = EINA_FALSE,
._widget = NULL,
},
.dbus = {
- .signal = "EthernetPowerChanged",
+ .signal = "WifiPowerChanged",
.sig_cb = on_signal_network_power_changed_ret,
- .method = "isEthernetPowered",
- .met_cb = on_method_is_network_powered_ret,
+ .get = "isWifiPowered",
+ .get_cb = on_method_is_network_powered_ret,
+ .set = "setWifiPower",
+ .set_cb = on_method_generic_ret,
},
.end = NULL,
.footer = NULL,
.footer_alt = NULL,
- .func = NULL,
+ .func = _set_wifi_power_cb,
.toggle_timer = NULL,
.data = NULL,
}, {
@@ -541,13 +549,15 @@ static struct menu_def menu_settings_network = {
.dbus = {
.signal = "HotspotPowerChanged",
.sig_cb = on_signal_network_power_changed_ret,
- .method = "isHotspotPowered",
- .met_cb = on_method_is_network_powered_ret,
+ .get = "isHotspotPowered",
+ .get_cb = on_method_is_network_powered_ret,
+ .set = "setHotspotPower",
+ .set_cb = on_method_generic_ret,
},
.footer = NULL,
.footer_alt = NULL,
.end = NULL,
- .func = NULL,
+ .func = _set_hotspot_power_cb,
.toggle_timer = NULL,
.data = NULL,
}, { NULL }, /* sentinel */
@@ -2362,6 +2372,27 @@ static void _update_menu_footer_focus_cb(void *data, Evas_Object *obj EINA_UNUSE
}
+static void _set_ethernet_power_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
+{
+ struct eulogium_data *eulogium = data;
+
+ eldbus_proxy_call(eulogium->dbus.proxy[NETWORK], "setEthernetPower", on_method_generic_ret, NULL, -1, "b", elm_check_state_get(obj));
+}
+
+static void _set_wifi_power_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
+{
+ struct eulogium_data *eulogium = data;
+
+ eldbus_proxy_call(eulogium->dbus.proxy[NETWORK], "setWifiPower", on_method_generic_ret, NULL, -1, "b", elm_check_state_get(obj));
+}
+
+static void _set_hotspot_power_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
+{
+ struct eulogium_data *eulogium = data;
+
+ eldbus_proxy_call(eulogium->dbus.proxy[NETWORK], "setHotspotPower", on_method_generic_ret, NULL, -1, "b", elm_check_state_get(obj));
+}
+
static void _menu_generate_filelist(struct eulogium_data *eulogium, Evas_Object *list, struct dir_entry_def *dir)
{
Evas_Object *icon;