Enlightenment CVS committal Author : lok Project : e17 Module : proto
Dir : e17/proto/emphasis/src/bin Modified Files: emphasis.c emphasis_callbacks.c emphasis_config.c emphasis_config.h emphasis_gui.c Log Message: the config keep the last width of playlist's columns. textblock fixed. =================================================================== RCS file: /cvs/e/e17/proto/emphasis/src/bin/emphasis.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- emphasis.c 8 Jul 2006 03:53:40 -0000 1.3 +++ emphasis.c 9 Jul 2006 18:27:39 -0000 1.4 @@ -42,7 +42,14 @@ gui = data; config = config_load(); + /* Set the last size of the window */ etk_window_resize(ETK_WINDOW(gui->window), config->geometry.w, config->geometry.h); + /* Set the last width of the playlist's columns */ + etk_tree_col_width_set(etk_tree_nth_col_get(ETK_TREE(gui->tree_pls), 0), config->colwidth.title); + etk_tree_col_width_set(etk_tree_nth_col_get(ETK_TREE(gui->tree_pls), 1), config->colwidth.time); + etk_tree_col_width_set(etk_tree_nth_col_get(ETK_TREE(gui->tree_pls), 2), config->colwidth.artist); + etk_tree_col_width_set(etk_tree_nth_col_get(ETK_TREE(gui->tree_pls), 3), config->colwidth.album); + emphasis_player_info_set(NULL, "Not connected to MPD", gui); config_free(config); =================================================================== RCS file: /cvs/e/e17/proto/emphasis/src/bin/emphasis_callbacks.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- emphasis_callbacks.c 8 Jul 2006 03:53:40 -0000 1.5 +++ emphasis_callbacks.c 9 Jul 2006 18:27:39 -0000 1.6 @@ -10,14 +10,22 @@ void cb_quit(Etk_Object *object, void *data) { + Emphasis_Gui *gui; Etk_Widget *window; Emphasis_Config *config; + gui = data; window = ETK_WIDGET(object); config = config_load(); + etk_widget_geometry_get(ETK_WIDGET(window), &(config->geometry.x), &(config->geometry.y), &(config->geometry.w), &(config->geometry.h)); + config->colwidth.title = etk_tree_col_width_get(etk_tree_nth_col_get(ETK_TREE(gui->tree_pls), 0)); + config->colwidth.time = etk_tree_col_width_get(etk_tree_nth_col_get(ETK_TREE(gui->tree_pls), 1)); + config->colwidth.artist = etk_tree_col_width_get(etk_tree_nth_col_get(ETK_TREE(gui->tree_pls), 2)); + config->colwidth.album = etk_tree_col_width_get(etk_tree_nth_col_get(ETK_TREE(gui->tree_pls), 3)); + config_save(config); config_free(config); @@ -198,7 +206,7 @@ types = calloc(1, sizeof(char)); num_types = 1; - types[0] = strdup("Evas_List"); + types[0] = strdup("Emphasis_Playlist"); etk_drag_types_set(drag, types, num_types); etk_drag_data_set(drag, playlist, 1); @@ -256,7 +264,7 @@ types = calloc(1, sizeof(char)); num_types = 1; - types[0] = strdup("Evas_List"); + types[0] = strdup("Emphasis_Playlist"); etk_drag_types_set(drag, types, num_types); etk_drag_data_set(drag, playlist, 1); @@ -302,7 +310,7 @@ types = calloc(1, sizeof(char)); num_types = 1; - types[0] = strdup("Evas_List"); + types[0] = strdup("Emphasis_Playlist"); etk_drag_types_set(drag, types, num_types); etk_drag_data_set(drag, playlist, 1); @@ -331,6 +339,13 @@ tree = ETK_TREE(object); drag = ETK_DRAG((ETK_WIDGET(data))->drag); + if (drag == NULL || + drag->types == NULL || + drag->types[0] == NULL || + strcmp("Emphasis_Playlist", drag->types[0])) + { + return; + } list = drag->data; mpc_playlist_add(list); =================================================================== RCS file: /cvs/e/e17/proto/emphasis/src/bin/emphasis_config.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- emphasis_config.c 8 Jul 2006 03:53:40 -0000 1.2 +++ emphasis_config.c 9 Jul 2006 18:27:39 -0000 1.3 @@ -11,10 +11,15 @@ ecore_config_int_default(EMP_GEOMETRY_X_KEY, 0); ecore_config_int_default(EMP_GEOMETRY_Y_KEY, 0); - ecore_config_int_default(EMP_GEOMETRY_W_KEY, 500); - ecore_config_int_default(EMP_GEOMETRY_H_KEY, 400); + ecore_config_int_default(EMP_GEOMETRY_W_KEY, 700); + ecore_config_int_default(EMP_GEOMETRY_H_KEY, 600); ecore_config_int_default(EMP_MODE_KEY, EMPHASIS_FULL); + + ecore_config_int_default(EMP_COLWIDTH_TITLE_KEY, 220); + ecore_config_int_default(EMP_COLWIDTH_TIME_KEY, 50); + ecore_config_int_default(EMP_COLWIDTH_ARTIST_KEY, 100); + ecore_config_int_default(EMP_COLWIDTH_ALBUM_KEY, 100); } Emphasis_Config * @@ -38,6 +43,11 @@ config->mode = ecore_config_int_get(EMP_MODE_KEY); + config->colwidth.title = ecore_config_int_get(EMP_COLWIDTH_TITLE_KEY); + config->colwidth.time = ecore_config_int_get(EMP_COLWIDTH_TIME_KEY); + config->colwidth.artist = ecore_config_int_get(EMP_COLWIDTH_ARTIST_KEY); + config->colwidth.album = ecore_config_int_get(EMP_COLWIDTH_ALBUM_KEY); + return config; } @@ -55,6 +65,11 @@ ecore_config_int_set(EMP_GEOMETRY_H_KEY, config->geometry.h); ecore_config_int_set(EMP_MODE_KEY, config->mode); + + ecore_config_int_set(EMP_COLWIDTH_TITLE_KEY, config->colwidth.title); + ecore_config_int_set(EMP_COLWIDTH_TIME_KEY, config->colwidth.time); + ecore_config_int_set(EMP_COLWIDTH_ARTIST_KEY, config->colwidth.artist); + ecore_config_int_set(EMP_COLWIDTH_ALBUM_KEY, config->colwidth.album); ecore_config_save(); } =================================================================== RCS file: /cvs/e/e17/proto/emphasis/src/bin/emphasis_config.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- emphasis_config.h 8 Jul 2006 03:53:40 -0000 1.2 +++ emphasis_config.h 9 Jul 2006 18:27:39 -0000 1.3 @@ -16,7 +16,12 @@ #define EMP_GEOMETRY_Y_KEY "/geometry/y" #define EMP_GEOMETRY_W_KEY "/geometry/w" #define EMP_GEOMETRY_H_KEY "/geometry/h" -#define EMP_MODE_KEY "/emphasis/mode" +#define EMP_MODE_KEY "/emphasis/mode" + +#define EMP_COLWIDTH_TITLE_KEY "/emphasis/colwidth/title" +#define EMP_COLWIDTH_TIME_KEY "/emphasis/colwidth/time" +#define EMP_COLWIDTH_ARTIST_KEY "/emphasis/colwidth/artist" +#define EMP_COLWIDTH_ALBUM_KEY "/emphasis/colwidth/album" typedef enum { @@ -37,6 +42,13 @@ int w; int h; } geometry; + + struct { + int title; + int time; + int artist; + int album; + } colwidth; Emphasis_Mode mode; } Emphasis_Config; =================================================================== RCS file: /cvs/e/e17/proto/emphasis/src/bin/emphasis_gui.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- emphasis_gui.c 8 Jul 2006 03:53:40 -0000 1.5 +++ emphasis_gui.c 9 Jul 2006 18:27:39 -0000 1.6 @@ -236,12 +236,18 @@ radio_item = etk_menu_item_radio_new_with_label_from_widget("small", ETK_MENU_ITEM_RADIO(radio_item)); etk_menu_shell_append(ETK_MENU_SHELL(gui->menu), ETK_MENU_ITEM(radio_item)); etk_signal_connect("activated", ETK_OBJECT(radio_item), ETK_CALLBACK(cb_switch_small), gui); - + + /* Do we need all this connect ? */ etk_signal_connect("mouse_down", ETK_OBJECT(gui->window), ETK_CALLBACK(cb_pls_contextual_menu), gui); etk_signal_connect("mouse_down", ETK_OBJECT(gui->tree_pls), ETK_CALLBACK(cb_pls_contextual_menu), gui); - + etk_signal_connect("mouse_down", ETK_OBJECT(gui->tree_artist), + ETK_CALLBACK(cb_pls_contextual_menu), gui); + etk_signal_connect("mouse_down", ETK_OBJECT(gui->tree_album), + ETK_CALLBACK(cb_pls_contextual_menu), gui); + etk_signal_connect("mouse_down", ETK_OBJECT(gui->tree_track), + ETK_CALLBACK(cb_pls_contextual_menu), gui); // etk_signal_connect("key_down", ETK_OBJECT(gui->window), // ETK_CALLBACK(cb_emphasis_bindings_key), gui); @@ -508,15 +514,14 @@ { char *info; - etk_textblock_clear(ETK_TEXT_VIEW(gui->song_info)->textblock); if (song) { char **table[] = {&(song->artist), &(song->title), &(song->album), NULL}; emphasis_unknow_if_null(table); - asprintf(&info, "<b><font size=12>%s</font></b>\n \n" + asprintf(&info, "\n<b><font size=12>%s</font></b> \n \n" "<i>by</i> <font size=11>%s</font> " - "<i>in</i> <font size=11>%s</font> ", + "<i>in</i> <font size=11>%s</font> \n \n", song->title, song->artist, song->album); if (msg) { @@ -524,6 +529,7 @@ } etk_textblock_text_set(ETK_TEXT_VIEW(gui->song_info)->textblock, info, ETK_TRUE); + free(info); } else ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs