From 7ef19a39a95f1609c62e25c074b6a959d7b5c392 Mon Sep 17 00:00:00 2001 From: vlad Date: Thu, 12 Aug 2010 23:15:43 +0300 Subject: [PATCH] Next step for categories --- applet/src/livewp-settings.c | 136 ++++++++++++------------------------------ 1 file changed, 39 insertions(+), 97 deletions(-) diff --git a/applet/src/livewp-settings.c b/applet/src/livewp-settings.c index 14deb4a..6739b9c 100644 --- a/applet/src/livewp-settings.c +++ b/applet/src/livewp-settings.c @@ -72,12 +72,12 @@ create_category_selector (Animation_WallpaperPrivate *priv){ category_list = g_hash_table_get_keys (result_table); selector = hildon_touch_selector_new_text(); + hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector), _("LiveWallpaper") ); while (category_list){ hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector),category_list->data ); category_list = g_list_next(category_list); } - hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector), "LiveWallpaper" ); return selector; } @@ -225,6 +225,7 @@ fill_theme_button (Animation_WallpaperPrivate *priv, GtkWidget *button, gchar *c if (!selector) selector = hildon_touch_selector_new_text (); + hildon_button_set_value(HILDON_BUTTON(button), NULL); if (!strcmp(category, "LiveWallpaper")){ hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector), _("Berlin")); hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector), _("Modern")); @@ -232,29 +233,29 @@ fill_theme_button (Animation_WallpaperPrivate *priv, GtkWidget *button, gchar *c hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector), _("Accel")); hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector), _("Video")); num = 5; + if (theme){ + if (!strcmp(theme, "Berlin")){ + hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 0); + hildon_button_set_value(HILDON_BUTTON(button), _("Berlin")); + } + if (!strcmp(theme, "Modern")){ + hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 1); + hildon_button_set_value(HILDON_BUTTON(button), _("Modern")); + } + if (!strcmp(theme, "Matrix")){ + hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 2); + hildon_button_set_value(HILDON_BUTTON(button), _("Matrix")); + } + if (!strcmp(theme, "Accel")){ + hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 3); + hildon_button_set_value(HILDON_BUTTON(button), _("Accel")); + } + if (!strcmp(theme, "Video")){ + hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 4); + hildon_button_set_value(HILDON_BUTTON(button), _("Video")); + } + } } - if (theme) - if (!strcmp(theme, "Berlin")){ - hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 0); - hildon_button_set_value(HILDON_BUTTON(button), _("Berlin")); - } - if (!strcmp(theme, "Modern")){ - hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 1); - hildon_button_set_value(HILDON_BUTTON(button), _("Modern")); - } - if (!strcmp(theme, "Matrix")){ - hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 2); - hildon_button_set_value(HILDON_BUTTON(button), _("Matrix")); - } - if (!strcmp(theme, "Accel")){ - hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 3); - hildon_button_set_value(HILDON_BUTTON(button), _("Accel")); - } - if (!strcmp(theme, "Video")){ - hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 4); - hildon_button_set_value(HILDON_BUTTON(button), _("Video")); - } - while (store){ if (!g_hash_table_lookup(store->data, "category")) continue; @@ -268,7 +269,6 @@ fill_theme_button (Animation_WallpaperPrivate *priv, GtkWidget *button, gchar *c } store = g_slist_next(store); } - hildon_picker_button_set_selector (HILDON_PICKER_BUTTON (button), HILDON_TOUCH_SELECTOR (selector)); @@ -300,41 +300,38 @@ create_categories_button (Animation_WallpaperPrivate *priv){ hildon_button_set_title (HILDON_BUTTON (button), _("Category")); hildon_picker_button_set_selector (HILDON_PICKER_BUTTON (button), HILDON_TOUCH_SELECTOR (selector)); -/* if (theme) { if (!strcmp(theme, "Berlin")){ - hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 0); - hildon_button_set_value(HILDON_BUTTON(button), _("Berlin")); + hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 0); + hildon_button_set_value(HILDON_BUTTON(button), _("LiveWallpaper")); } if (!strcmp(theme, "Modern")){ - hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 1); - hildon_button_set_value(HILDON_BUTTON(button), _("Modern")); + hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 0); + hildon_button_set_value(HILDON_BUTTON(button), _("LiveWallpaper")); } if (!strcmp(theme, "Matrix")){ - hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 2); - hildon_button_set_value(HILDON_BUTTON(button), _("Matrix")); + hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 0); + hildon_button_set_value(HILDON_BUTTON(button), _("LiveWallpaper")); } if (!strcmp(theme, "Accel")){ - hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 3); - hildon_button_set_value(HILDON_BUTTON(button), _("Accel")); + hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 0); + hildon_button_set_value(HILDON_BUTTON(button), _("LiveWallpaper")); } if (!strcmp(theme, "Video")){ - hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 4); - hildon_button_set_value(HILDON_BUTTON(button), _("Video")); + hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 0); + hildon_button_set_value(HILDON_BUTTON(button), _("LiveWallpaper")); } - num = 5; GSList *store = priv->extheme_list; while (store){ if (!strcmp(theme, g_hash_table_lookup(store->data, "name"))){ - hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, num); - hildon_button_set_value(HILDON_BUTTON(button), _(g_hash_table_lookup(store->data, "name"))); + if (g_hash_table_lookup(store->data, "category")) + hildon_button_set_value(HILDON_BUTTON(button), _(g_hash_table_lookup(store->data, "category"))); +/* hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, num); */ break; } - num++; store = g_slist_next(store); } } -*/ return button; } @@ -565,7 +562,8 @@ lw_theme_settings(GtkWidget *button, Animation_WallpaperPrivate *priv) { switch(result){ case GTK_RESPONSE_YES: /* Check theme */ - if (hildon_button_get_value(HILDON_BUTTON (theme_button))){ + if (hildon_button_get_value(HILDON_BUTTON (theme_button)) && + strcmp(hildon_button_get_value(HILDON_BUTTON (theme_button)), "")){ /* Check Xsnow program */ if (!strcmp(hildon_button_get_value(HILDON_BUTTON (theme_button)), _("Xsnow"))){ if (access("/usr/bin/xsnow", F_OK) != 0){ @@ -666,26 +664,6 @@ check_applet_state(gint number){ g_free(str); } return result; -#if 0 - FILE *file_in = NULL; - gchar buffer[2048]; - - file_in = fopen("/home/user/.config/hildon-desktop/home.plugins","r"); - if (file_in){ - - fprintf(stderr,"Check applet state\n"); - while (!feof(file_in)) { - memset(buffer, 0, sizeof(buffer)); - fgets(buffer, sizeof(buffer) - 1, file_in); - if (!strcmp(buffer, - "X-Desktop-File=/usr/share/applications/hildon-home/livewp-home-widget.desktop\n")){ - result = TRUE; - break; - } - } - fclose(file_in); - } -#endif } /*******************************************************************************/ void @@ -734,40 +712,4 @@ stop_applet(gint number){ g_free(str); g_object_unref(config_file); -#if 0 - FILE *file_in; - FILE *file_out; - gchar buffer[2048]; - gchar * str = NULL; - - file_in = fopen("/home/user/.config/hildon-desktop/home.plugins","r"); - file_out = fopen("/tmp/livewallpaper.plugins","w"); - if (file_in && file_out){ - while (!feof(file_in)) { - memset(buffer, 0, sizeof(buffer)); - fgets(buffer, sizeof(buffer) - 1, file_in); - str = g_strdup_printf("[livewp-home-widget.desktop-%i]\n", number); - if (strcmp(buffer, str) && - strcmp(buffer, "X-Desktop-File=/usr/share/applications/hildon-home/livewp-home-widget.desktop\n")) - fputs(buffer, file_out); - } - if (str){ - g_free(str); - } - fclose(file_out); - fclose(file_in); - file_in = fopen("/tmp/livewallpaper.plugins","r"); - file_out = fopen("/home/user/.config/hildon-desktop/home.plugins","w"); - if (file_in && file_out){ - while (!feof(file_in)){ - memset(buffer, 0, sizeof(buffer)); - fgets(buffer, sizeof(buffer) - 1, file_in); - fputs(buffer, file_out); - } - fclose(file_out); - fclose(file_in); - unlink ("/tmp/livewallpaper.plugins"); - } - } -#endif } -- 1.7.9.5