Enlightenment CVS committal Author : titan Project : e17 Module : proto
Dir : e17/proto/ephoto/src Modified Files: ephoto.c ephoto_callbacks.c Log Message: More databasing work. =================================================================== RCS file: /cvs/e/e17/proto/ephoto/src/ephoto.c,v retrieving revision 1.63 retrieving revision 1.64 diff -u -3 -r1.63 -r1.64 --- ephoto.c 20 Jul 2006 09:11:09 -0000 1.63 +++ ephoto.c 21 Jul 2006 07:02:45 -0000 1.64 @@ -51,8 +51,7 @@ "slideshows_id INTEGER, images_id INTEGER);", NULL, 0, 0); sqlite3_exec(db, "CREATE TABLE s_settings(id INTEGER PRIMARY KEY AUTOINCREMENT," "name VARCHAR(255));", NULL, NULL, NULL); - sqlite3_exec(db, "CREATE TABLE slideshows_settings_full(id INTEGER PRIMARY KEY AUTOINCREMENT," - "slideshows_id INTEGER, settings_id INTEGER);", NULL, NULL, NULL); + sqlite3_exec(db, "CREATE TABLE slideshows_settings_full(id INTEGER PRIMARY KEY AUTOINCREMENT," "slideshows_id INTEGER, settings_id INTEGER);", NULL, NULL, NULL); sqlite3_close(db); } =================================================================== RCS file: /cvs/e/e17/proto/ephoto/src/ephoto_callbacks.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- ephoto_callbacks.c 20 Jul 2006 07:30:31 -0000 1.5 +++ ephoto_callbacks.c 21 Jul 2006 07:02:45 -0000 1.6 @@ -19,85 +19,52 @@ char *home; char *entry_text; char database[PATH_MAX]; + char command[PATH_MAX]; + sqlite3 *db; Ewl_Widget *win; - Ewl_Widget *vbox; - Ewl_Widget *icon; + Ewl_Widget *parent; + Ewl_Widget *next; + Ewl_Widget *entry; Ewl_Widget *text; - Ewl_Widget *button; - sqlite3 *db; - - home = getenv("HOME"); - entry_text = ewl_text_text_get(EWL_TEXT(data)); + entry = data; + + entry_text = ewl_text_text_get(EWL_TEXT(entry)); + home = getenv("HOME"); snprintf(database, PATH_MAX, "%s/.ephoto/ephoto_database", home); - - if (strcmp(entry_text, " ") != 0) + + ewl_container_child_iterate_begin(EWL_CONTAINER(m->albums)); + + while ((next = ewl_container_child_next(EWL_CONTAINER(m->albums))) != NULL) { - if (entry_text) - { - sqlite3_open(database, &db); - sqlite3_exec(db, "INSERT OR IGNORE INTO albums (name) VALUES ('hello');", NULL, NULL, NULL); - sqlite3_close(db); - - m->icon = ewl_icon_new(); - ewl_icon_label_set(EWL_ICON(m->icon), entry_text); - ewl_object_alignment_set(EWL_OBJECT(m->icon), EWL_FLAG_ALIGN_CENTER); - ewl_callback_append(m->icon, EWL_CALLBACK_CLICKED, album_clicked_cb, NULL); - ewl_container_child_append(EWL_CONTAINER(m->albums), m->icon); - ewl_widget_show(m->icon); - } - - else + if (!strcmp(entry_text, ewl_icon_label_get(EWL_ICON(next)))) { - win = ewl_window_new(); - ewl_window_title_set(EWL_WINDOW(win), "Whoops"); - ewl_window_name_set(EWL_WINDOW(win), "Whoops"); - ewl_object_size_request(EWL_OBJECT(win), 243, 50); - ewl_callback_append(win, EWL_CALLBACK_DELETE_WINDOW, cancel, win); - ewl_widget_show(win); - - vbox = ewl_vbox_new(); - ewl_object_fill_policy_set(EWL_OBJECT(vbox), EWL_FLAG_FILL_ALL); - ewl_container_child_append(EWL_CONTAINER(win), vbox); - ewl_widget_show(vbox); - - text = ewl_text_new(); - ewl_text_text_set(EWL_TEXT(text), "Whoops! This album already exists!"); - ewl_container_child_append(EWL_CONTAINER(vbox), text); - ewl_widget_show(text); - - button = ewl_button_new(); - ewl_button_label_set(EWL_BUTTON(button), "Ok"); - ewl_container_child_append(EWL_CONTAINER(vbox), button); - ewl_callback_append(button, EWL_CALLBACK_CLICKED, cancel, win); - ewl_widget_show(button); + parent = entry->parent; + text = ewl_container_child_get(EWL_CONTAINER(parent), 0); + ewl_text_text_set(EWL_TEXT(text), "Whoops! This album exists!\n Please try again!"); + w = NULL; + event = NULL; + data = NULL; + return; } } - else - { - win = ewl_window_new(); - ewl_window_title_set(EWL_WINDOW(win), "Whoops"); - ewl_window_name_set(EWL_WINDOW(win), "Whoops"); - ewl_object_size_request(EWL_OBJECT(win), 243, 50); - ewl_callback_append(win, EWL_CALLBACK_DELETE_WINDOW, cancel, win); - ewl_widget_show(win); - - vbox = ewl_vbox_new(); - ewl_object_fill_policy_set(EWL_OBJECT(vbox), EWL_FLAG_FILL_ALL); - ewl_container_child_append(EWL_CONTAINER(win), vbox); - ewl_widget_show(vbox); - - text = ewl_text_new(); - ewl_text_text_set(EWL_TEXT(text), "Whoops! Bad album name!!"); - ewl_container_child_append(EWL_CONTAINER(vbox), text); - ewl_widget_show(text); + + snprintf(command, PATH_MAX, "INSERT OR IGNORE INTO albums (name) VALUES ('%s');", entry_text); + + sqlite3_open(database, &db); + sqlite3_exec(db, command, NULL, NULL, NULL); + sqlite3_close(db); + + m->icon = ewl_icon_new(); + ewl_icon_label_set(EWL_ICON(m->icon), entry_text); + ewl_object_alignment_set(EWL_OBJECT(m->icon), EWL_FLAG_ALIGN_CENTER); + ewl_callback_append(m->icon, EWL_CALLBACK_CLICKED, album_clicked_cb, NULL); + ewl_container_child_append(EWL_CONTAINER(m->albums), m->icon); + ewl_widget_show(m->icon); - button = ewl_button_new(); - ewl_button_label_set(EWL_BUTTON(button), "Ok"); - ewl_container_child_append(EWL_CONTAINER(vbox), button); - ewl_callback_append(button, EWL_CALLBACK_CLICKED, cancel, win); - ewl_widget_show(button); - } + parent = entry->parent; + win = parent->parent; + ewl_widget_destroy(win); w = NULL; event = NULL; @@ -110,86 +77,52 @@ char *home; char *entry_text; char database[PATH_MAX]; + char command[PATH_MAX]; + sqlite3 *db; Ewl_Widget *win; - Ewl_Widget *vbox; - Ewl_Widget *icon; + Ewl_Widget *parent; + Ewl_Widget *next; + Ewl_Widget *entry; Ewl_Widget *text; - Ewl_Widget *button; - sqlite3 *db; - home = getenv("HOME"); - entry_text = ewl_text_text_get(EWL_TEXT(data)); + entry = data; + entry_text = ewl_text_text_get(EWL_TEXT(entry)); + home = getenv("HOME"); snprintf(database, PATH_MAX, "%s/.ephoto/ephoto_database", home); - if (strcmp(entry_text, " ") != 0) - { - - if (entry_text) - { - sqlite3_open(database, &db); - sqlite3_exec(db, "INSERT OR IGNORE INTO albums (name) VALUES ('hello');", NULL, NULL, NULL); - sqlite3_close(db); - - m->icon = ewl_icon_new(); - ewl_icon_label_set(EWL_ICON(m->icon), entry_text); - ewl_object_alignment_set(EWL_OBJECT(m->icon), EWL_FLAG_ALIGN_CENTER); - ewl_callback_append(m->icon, EWL_CALLBACK_CLICKED, slideshow_clicked_cb, NULL); - ewl_container_child_append(EWL_CONTAINER(m->slideshows), m->icon); - ewl_widget_show(m->icon); - } + ewl_container_child_iterate_begin(EWL_CONTAINER(m->slideshows)); - else + while ((next = ewl_container_child_next(EWL_CONTAINER(m->slideshows))) != NULL) + { + if (!strcmp(entry_text, ewl_icon_label_get(EWL_ICON(next)))) { - win = ewl_window_new(); - ewl_window_title_set(EWL_WINDOW(win), "Whoops"); - ewl_window_name_set(EWL_WINDOW(win), "Whoops"); - ewl_object_size_request(EWL_OBJECT(win), 243, 50); - ewl_callback_append(win, EWL_CALLBACK_DELETE_WINDOW, cancel, win); - ewl_widget_show(win); - - vbox = ewl_vbox_new(); - ewl_object_fill_policy_set(EWL_OBJECT(vbox), EWL_FLAG_FILL_ALL); - ewl_container_child_append(EWL_CONTAINER(win), vbox); - ewl_widget_show(vbox); - - text = ewl_text_new(); - ewl_text_text_set(EWL_TEXT(text), "Whoops! This slideshow already exists!"); - ewl_container_child_append(EWL_CONTAINER(vbox), text); - ewl_widget_show(text); - - button = ewl_button_new(); - ewl_button_label_set(EWL_BUTTON(button), "Ok"); - ewl_container_child_append(EWL_CONTAINER(vbox), button); - ewl_callback_append(button, EWL_CALLBACK_CLICKED, cancel, win); - ewl_widget_show(button); + parent = entry->parent; + text = ewl_container_child_get(EWL_CONTAINER(parent), 0); + ewl_text_text_set(EWL_TEXT(text), "Whoops! This slideshow exists!\n Please try again!"); + w = NULL; + event = NULL; + data = NULL; + return; } } - else - { - win = ewl_window_new(); - ewl_window_title_set(EWL_WINDOW(win), "Whoops"); - ewl_window_name_set(EWL_WINDOW(win), "Whoops"); - ewl_object_size_request(EWL_OBJECT(win), 243, 50); - ewl_callback_append(win, EWL_CALLBACK_DELETE_WINDOW, cancel, win); - ewl_widget_show(win); - - vbox = ewl_vbox_new(); - ewl_object_fill_policy_set(EWL_OBJECT(vbox), EWL_FLAG_FILL_ALL); - ewl_container_child_append(EWL_CONTAINER(win), vbox); - ewl_widget_show(vbox); - - text = ewl_text_new(); - ewl_text_text_set(EWL_TEXT(text), "Whoops! Bad slideshow name!!"); - ewl_container_child_append(EWL_CONTAINER(vbox), text); - ewl_widget_show(text); - - button = ewl_button_new(); - ewl_button_label_set(EWL_BUTTON(button), "Ok"); - ewl_container_child_append(EWL_CONTAINER(vbox), button); - ewl_callback_append(button, EWL_CALLBACK_CLICKED, cancel, win); - ewl_widget_show(button); - } + + snprintf(command, PATH_MAX, "INSERT OR IGNORE INTO slideshows (name) VALUES ('%s');", entry_text); + + sqlite3_open(database, &db); + sqlite3_exec(db, command, NULL, NULL, NULL); + sqlite3_close(db); + + m->icon = ewl_icon_new(); + ewl_icon_label_set(EWL_ICON(m->icon), entry_text); + ewl_object_alignment_set(EWL_OBJECT(m->icon), EWL_FLAG_ALIGN_CENTER); + ewl_callback_append(m->icon, EWL_CALLBACK_CLICKED, slideshow_clicked_cb, NULL); + ewl_container_child_append(EWL_CONTAINER(m->slideshows), m->icon); + ewl_widget_show(m->icon); + + parent = entry->parent; + win = parent->parent; + ewl_widget_destroy(win); w = NULL; event = NULL; ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs