Enlightenment CVS committal

Author  : codewarrior
Project : e17
Module  : proto

Dir     : e17/proto/exhibit/src/bin


Modified Files:
        exhibit.h exhibit_image.c exhibit_main.c exhibit_main.h 
        exhibit_menus.c exhibit_options.c exhibit_options.h 


Log Message:
- AUTHORS++
- patch from balony for options dialog
- x will fit / unfit image
- s will start / stop slideshow
- some cleanups and removal of unused stuff
- TODO updates


===================================================================
RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit.h,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -3 -r1.24 -r1.25
--- exhibit.h   3 Aug 2006 13:12:17 -0000       1.24
+++ exhibit.h   10 Aug 2006 04:01:10 -0000      1.25
@@ -47,6 +47,7 @@
 
 typedef struct _Exhibit Exhibit;
 typedef struct _Ex_Options Ex_Options;
+typedef struct _Ex_Options_Dialog Ex_Options_Dialog;
 typedef struct _Ex_Tab Ex_Tab;
 typedef struct _Ex_Thumb Ex_Thumb;
 typedef struct _Ex_Filedialog Ex_Filedialog;
@@ -82,6 +83,16 @@
    int last_h;
 };
 
+struct _Ex_Options_Dialog
+{
+   Etk_Widget *dv_btn_1;
+   Etk_Widget *dv_btn_2;
+
+   Etk_Widget *blur_thresh;
+   Etk_Widget *sharpen_thresh;
+   Etk_Widget *brighten_thresh;
+};
+
 struct _Ex_Tab
 {
    char          *dir;
@@ -157,6 +168,7 @@
    Ex_Tab        *cur_tab;
    
    Ex_Options     *options;
+   Ex_Options_Dialog *opt_dialog;
    Ex_Config_Version *version;   
    
    struct {
===================================================================
RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit_image.c,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -3 -r1.28 -r1.29
--- exhibit_image.c     3 Aug 2006 13:12:17 -0000       1.28
+++ exhibit_image.c     10 Aug 2006 04:01:10 -0000      1.29
@@ -353,15 +353,18 @@
    int           x, y, mx, my, mw, mh, mt, xx, yy;
    int           a, r, g, b;
    int          *as, *rs, *gs, *bs;   
-   int           rad = 2; /* maybe make this configurable later */
+   int           rad = 2; 
    unsigned int *p1, *p2;
    
    if(im->use_edje)
      return;
-   
+
    etk_image_size_get(im, &w, &h);
    data2 = evas_object_image_data_get(im->image_object, ETK_TRUE);
    _ex_image_data_copy(im, data2, w, h); /* for undo */
+
+   rad = e->options->blur_thresh;
+   D(("_ex_image_blur: using rad: %d\n", rad));
    
    if (rad < 1)
      return;
@@ -454,7 +457,7 @@
    int           w, h;
    int           x, y;
    int           a, r, g, b;
-   int           rad = 2; /* maybe make this configurable later */
+   int           rad = 2;
    unsigned int *p1, *p2;
    
    if(im->use_edje)
@@ -465,6 +468,11 @@
    _ex_image_data_copy(im, data2, w, h); /* for undo */
       
    data = malloc(w * h * sizeof(unsigned int));
+
+   /* FIXME I cant see any difference with this changed?? -- Balony */ 
+   rad = e->options->sharpen_thresh;
+   D(("_ex_image_sharpen: using rad: %d\n", rad));
+   
    if (rad == 0)
      return;
    else
===================================================================
RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit_main.c,v
retrieving revision 1.60
retrieving revision 1.61
diff -u -3 -r1.60 -r1.61
--- exhibit_main.c      3 Aug 2006 13:12:17 -0000       1.60
+++ exhibit_main.c      10 Aug 2006 04:01:10 -0000      1.61
@@ -10,12 +10,6 @@
 Exhibit *e;
 Evas_List  *event_handlers;
 
-
-
-static void _ex_main_button_zoom_in_cb(Etk_Object *obj, void *data);
-static void _ex_main_button_zoom_out_cb(Etk_Object *obj, void *data);
-static void _ex_main_button_zoom_one_to_one_cb(Etk_Object *obj, void *data);
-static void _ex_main_button_fit_to_window_cb(Etk_Object *obj, void *data);
 static int _ex_main_dtree_compare_cb(Etk_Tree *tree, Etk_Tree_Row *row1, 
Etk_Tree_Row *row2, Etk_Tree_Col *col, void *data);
 static void _ex_main_goto_dir_clicked_cb(Etk_Object *object, void *data);
 static void _ex_main_entry_dir_key_down_cb(Etk_Object *object, void *event, 
void *data);
@@ -52,46 +46,6 @@
      }      
 }
 
-static void
-_ex_main_button_zoom_in_cb(Etk_Object *obj, void *data)
-{
-   Exhibit *e;
-   
-   e = data;
-
-   _ex_tab_current_zoom_in(e);
-}
-
-static void
-_ex_main_button_zoom_out_cb(Etk_Object *obj, void *data)
-{
-   Exhibit *e;
-   
-   e = data;
-
-   _ex_tab_current_zoom_out(e);
-}
-
-static void
-_ex_main_button_zoom_one_to_one_cb(Etk_Object *obj, void *data)
-{
-   Exhibit *e;
-   
-   e = data;
-
-   _ex_tab_current_zoom_one_to_one(e);
-}
-
-static void
-_ex_main_button_fit_to_window_cb(Etk_Object *obj, void *data)
-{
-   Exhibit *e;
-   
-   e = data;
-   
-   _ex_tab_current_fit_to_window(e);
-}
-
 void
 _ex_main_image_unset()
 {
@@ -149,17 +103,18 @@
    else
      {
        etk_image_set_from_file(ETK_IMAGE(e->cur_tab->image), image);
-
-       if (e->cur_tab->fit_window)
-          {
-           _ex_main_button_fit_to_window_cb(NULL, e);
-            e->options->default_view = EX_IMAGE_FIT_TO_WINDOW;
-          }
-       else
-          {
-           _ex_main_button_zoom_one_to_one_cb(NULL, e);
-            e->options->default_view = EX_IMAGE_ONE_TO_ONE;
-          }                                    
+       
+       if (e->options->default_view == EX_IMAGE_FIT_TO_WINDOW)
+         {
+            _ex_tab_current_fit_to_window(e);
+            D(("Setting EX_IMAGE_FIT_TO_WINDOW loaded and used\n"));
+            
+         }
+       else if (e->options->default_view == EX_IMAGE_ONE_TO_ONE)
+         {
+            _ex_tab_current_zoom_one_to_one(e);
+            D(("Setting EX_IMAGE_ONE_TO_ONE loaded and used\n"));           
+         }     
      }
    
    bytes = ecore_file_size(image);
@@ -456,10 +411,6 @@
          {
             etk_main_quit();
          }
-       else if(!strcmp(ev->key, "s"))
-         {
-            _ex_main_window_slideshow_toggle(e);
-         }             
        else if(!strcmp(ev->key, "d"))
          {
             Etk_Tree_Row *r;
@@ -472,6 +423,17 @@
             _ex_favorites_add(e, icol_string);
          }
      }
+   else if(!strcmp(ev->key, "x"))
+     {
+       if(!e->cur_tab->fit_window)
+         _ex_tab_current_fit_to_window(e);
+       else
+         _ex_tab_current_zoom_one_to_one(e);   
+     }
+   else if(!strcmp(ev->key, "s"))
+     {
+       _ex_main_window_slideshow_toggle(e);
+     }            
 }
 
 static void
@@ -805,7 +767,7 @@
    e->zoom_in[0] = etk_button_new();
    e->zoom_in[1] = 
etk_image_new_from_edje(PACKAGE_DATA_DIR"/images/images.edj", "zoom_in");
    etk_button_image_set(ETK_BUTTON(e->zoom_in[0]), ETK_IMAGE(e->zoom_in[1]));
-   etk_signal_connect("clicked", ETK_OBJECT(e->zoom_in[0]), 
ETK_CALLBACK(_ex_main_button_zoom_in_cb), e);
+   etk_signal_connect_swapped("clicked", ETK_OBJECT(e->zoom_in[0]), 
ETK_CALLBACK(_ex_tab_current_zoom_in), e);
    etk_table_attach(ETK_TABLE(e->table), e->zoom_in[0],
                    0, 0, 1, 1,
                    0, 0, ETK_FILL_POLICY_NONE);
@@ -813,7 +775,7 @@
    e->zoom_out[0] = etk_button_new();
    e->zoom_out[1] = 
etk_image_new_from_edje(PACKAGE_DATA_DIR"/images/images.edj", "zoom_out");
    etk_button_image_set(ETK_BUTTON(e->zoom_out[0]), ETK_IMAGE(e->zoom_out[1]));
-   etk_signal_connect("clicked", ETK_OBJECT(e->zoom_out[0]), 
ETK_CALLBACK(_ex_main_button_zoom_out_cb), e);   
+   etk_signal_connect_swapped("clicked", ETK_OBJECT(e->zoom_out[0]), 
ETK_CALLBACK(_ex_tab_current_zoom_out), e);
    etk_table_attach(ETK_TABLE(e->table), e->zoom_out[0],
                    1, 1, 1, 1,
                    0, 0, ETK_FILL_POLICY_NONE);
@@ -821,7 +783,7 @@
    e->fit[0] = etk_button_new();
    e->fit[1] = etk_image_new_from_edje(PACKAGE_DATA_DIR"/images/images.edj", 
"fit_to_window");
    etk_button_image_set(ETK_BUTTON(e->fit[0]), ETK_IMAGE(e->fit[1]));
-   etk_signal_connect("clicked", ETK_OBJECT(e->fit[0]), 
ETK_CALLBACK(_ex_main_button_fit_to_window_cb), e);   
+   etk_signal_connect_swapped("clicked", ETK_OBJECT(e->fit[0]), 
ETK_CALLBACK(_ex_tab_current_fit_to_window), e);
    etk_table_attach(ETK_TABLE(e->table), e->fit[0],
                    2, 2, 1, 1,
                    0, 0, ETK_FILL_POLICY_NONE);
@@ -829,7 +791,7 @@
    e->original[0] = etk_button_new();
    e->original[1] = 
etk_image_new_from_edje(PACKAGE_DATA_DIR"/images/images.edj", "one_to_one");
    etk_button_image_set(ETK_BUTTON(e->original[0]), ETK_IMAGE(e->original[1]));
-   etk_signal_connect("clicked", ETK_OBJECT(e->original[0]), 
ETK_CALLBACK(_ex_main_button_zoom_one_to_one_cb), e);
+   etk_signal_connect_swapped("clicked", ETK_OBJECT(e->original[0]), 
ETK_CALLBACK(_ex_tab_current_zoom_one_to_one), e);
    etk_table_attach(ETK_TABLE(e->table), e->original[0],
                    3, 3, 1, 1,
                    0, 0, ETK_FILL_POLICY_NONE);
@@ -902,8 +864,12 @@
 
    e->statusbar[2] = etk_statusbar_new();
    etk_statusbar_has_resize_grip_set(ETK_STATUSBAR(e->statusbar[2]), 
ETK_FALSE);   
-   etk_box_pack_start(ETK_BOX(e->hbox), e->statusbar[2], ETK_TRUE, ETK_TRUE, 
0);   
-   etk_statusbar_push(ETK_STATUSBAR(e->statusbar[2]), "1:1", 0);
+   etk_box_pack_start(ETK_BOX(e->hbox), e->statusbar[2], ETK_TRUE, ETK_TRUE, 
0);
+   
+   if (e->options->default_view == EX_IMAGE_ONE_TO_ONE) 
+      etk_statusbar_push(ETK_STATUSBAR(e->statusbar[2]), "1:1", 0);
+   else if (e->options->default_view == EX_IMAGE_FIT_TO_WINDOW)
+      etk_statusbar_push(ETK_STATUSBAR(e->statusbar[2]), "Fit to window", 0);
    
    e->statusbar[3] = etk_statusbar_new();
    etk_box_pack_start(ETK_BOX(e->hbox), e->statusbar[3], ETK_TRUE, ETK_TRUE, 
0);
===================================================================
RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit_main.h,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -3 -r1.11 -r1.12
--- exhibit_main.h      3 Aug 2006 13:12:17 -0000       1.11
+++ exhibit_main.h      10 Aug 2006 04:01:10 -0000      1.12
@@ -14,6 +14,8 @@
 void         _ex_main_window_show(char *dir);
 void         _ex_main_image_unset();
 void         _ex_main_image_set(Exhibit *e, char *image);
+void         _ex_main_button_fit_to_window_cb(Etk_Object *obj, void *data);
+void         _ex_main_button_zoom_one_to_one_cb(Etk_Object *obj, void *data);
    
    
 
===================================================================
RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit_menus.c,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -3 -r1.24 -r1.25
--- exhibit_menus.c     3 Aug 2006 13:12:17 -0000       1.24
+++ exhibit_menus.c     10 Aug 2006 04:01:10 -0000      1.25
@@ -302,10 +302,16 @@
    
    if (!e->cur_tab->image_loaded)
      return;
+
+   e->brightness = e->options->brighten_thresh;
+   
+   /* What is this for? FIXME -- Balony */
+   e->brightness += 10; 
    
-   e->brightness += 10;
    if(e->brightness > 255)
      e->brightness = 255;
+
+   D(("Using brightness %d\n", e->brightness));
    _ex_image_brightness(ETK_IMAGE(e->cur_tab->image), e->brightness);
 }
 
===================================================================
RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit_options.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- exhibit_options.c   2 Aug 2006 19:23:22 -0000       1.6
+++ exhibit_options.c   10 Aug 2006 04:01:10 -0000      1.7
@@ -1,3 +1,6 @@
+/*
+ * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
+ */
 #include "exhibit.h"
 
 #define NEWD(str, typ) \
@@ -21,9 +24,17 @@
 
 #define VER_NEWI(str, it, type) 
EET_DATA_DESCRIPTOR_ADD_BASIC(_ex_config_version_edd, Ex_Config_Version, str, 
it, type)
 
+#define IS_SELECTED(w) etk_toggle_button_active_get(ETK_TOGGLE_BUTTON(w))
+
 static Eet_Data_Descriptor *_ex_config_options_edd = NULL;
 static Eet_Data_Descriptor *_ex_config_version_edd = NULL;
 
+static void _ex_options_set();
+static void _ex_options_set_cancel_cb(Etk_Object *object, void *data);
+static void _ex_options_set_apply_cb(Etk_Object *object, void *data);
+static void _ex_options_set_ok_cb(Etk_Object *object, void *data);
+static Etk_Bool _ex_options_window_delete_cb(void *data);
+
 
 int
 _ex_options_init()
@@ -278,49 +289,265 @@
    e->options = eet_data_read(ef, _ex_config_options_edd, "config/options");
    
    D(("Config: Loaded saved options (%s)\n", e->options->fav_path));
+
+   D(("Default view: %d\n", e->options->default_view));
    
    
    eet_close(ef);
    return 1;
 }
 
+static void
+_ex_options_set_cancel_cb(Etk_Object *object, void *data)
+{
+   etk_object_destroy(ETK_OBJECT(object));
+   E_FREE(e->opt_dialog);
+}
+
+static void
+_ex_options_set_apply_cb(Etk_Object *object, void *data)
+{
+   _ex_options_set();
+   _ex_options_save(e);
+}
+
+static void
+_ex_options_set_ok_cb(Etk_Object *object, void *data)
+{
+   _ex_options_set();
+   _ex_options_save(e);
+   etk_object_destroy(ETK_OBJECT(object));
+
+   E_FREE(e->opt_dialog);
+}
+
+static Etk_Bool 
+_ex_options_window_delete_cb(void *data)
+{
+   etk_object_destroy(ETK_OBJECT(data));
+   E_FREE(e->opt_dialog);
+   return ETK_TRUE;
+}
+
+static void
+_ex_options_set()
+{
+   Ex_Options_Dialog *dialog = e->opt_dialog;
+   const char *string;
+   
+   
+   /* STANDARD VIEW */
+   if (IS_SELECTED(dialog->dv_btn_1))
+     {
+       D(("Zoom 1:1 is checked\n"));
+       e->options->default_view = EX_IMAGE_ONE_TO_ONE;
+       _ex_tab_current_zoom_one_to_one(e);
+     } 
+   else if (IS_SELECTED(dialog->dv_btn_2))
+     {
+       D(("Fit to window is checked\n"));
+       e->options->default_view = EX_IMAGE_FIT_TO_WINDOW;
+       _ex_tab_current_fit_to_window(e);
+     }
+   
+   /* BLUR */
+   string = etk_entry_text_get(ETK_ENTRY(dialog->blur_thresh));
+   if (string)
+   {
+       D(("Setting blur thresh: %f\n", atof(string)));
+       e->options->blur_thresh = atof(string);
+
+       if (e->options->blur_thresh <= 1)
+          _ex_main_dialog_show("One, Zero or negative value for blur tresh " \
+                "is not recommended! ", ETK_MESSAGE_DIALOG_WARNING);
+     }
+   else 
+     {
+       _ex_main_dialog_show("Missing value for blur thresh, but still " \
+             "saving the other options!", ETK_MESSAGE_DIALOG_WARNING);
+     }
+
+   /* SHARPEN */
+   string = etk_entry_text_get(ETK_ENTRY(dialog->sharpen_thresh));
+   if (string)
+     {
+       D(("Setting sharpen thresh: %f\n", atof(string)));
+       e->options->sharpen_thresh = atof(string);
+
+       if (e->options->sharpen_thresh <= 0)
+          _ex_main_dialog_show("Zero or negative value for sharpen tresh " \
+                "is not recommended! ", ETK_MESSAGE_DIALOG_WARNING);
+     }
+   else 
+     {
+       _ex_main_dialog_show("Missing value for sharpen thresh, but still " \
+             "saving the other options!", ETK_MESSAGE_DIALOG_WARNING);
+     }
+
+   /* BRIGHTEN */
+   string = etk_entry_text_get(ETK_ENTRY(dialog->brighten_thresh));
+   if (string)
+     {
+       D(("Setting brighten thresh: %f\n", atof(string)));
+       e->options->brighten_thresh = atof(string);
+
+       if (e->options->brighten_thresh <= 0)
+          _ex_main_dialog_show("Zero or negative value for brighten tresh " \
+                "is not recommended! ", ETK_MESSAGE_DIALOG_WARNING);
+       else if (e->options->brighten_thresh > 255)
+          _ex_main_dialog_show("Bigger then 255 value for brighten tresh " \
+                "is not recommended! ", ETK_MESSAGE_DIALOG_WARNING);
+     } 
+   else
+     {
+       _ex_main_dialog_show("Missing value for brighten thresh, but still " \
+             "saving the other options!", ETK_MESSAGE_DIALOG_WARNING);
+     }
+
+
+}
+
+static Etk_Widget *
+_ex_options_page_1_create()
+{
+   Etk_Widget *vbox;
+   Etk_Widget *vbox2;
+   Etk_Widget *frame;
+   Etk_Widget *table;
+   Etk_Widget *label;
+   char string[256];
+   
+   Ex_Options_Dialog *dialog = e->opt_dialog;
+   vbox = etk_vbox_new(ETK_FALSE, 3);
+   
+   frame = etk_frame_new("Choose standard view");
+   etk_box_pack_start(ETK_BOX(vbox), frame, ETK_FALSE, ETK_FALSE, 5);
+   
+   vbox2 = etk_vbox_new(ETK_FALSE, 0);
+   etk_container_add(ETK_CONTAINER(frame), vbox2);
+   
+   dialog->dv_btn_1 = etk_radio_button_new_with_label("Zoom 1:1", NULL);
+   etk_box_pack_start(ETK_BOX(vbox2), dialog->dv_btn_1, ETK_FALSE, ETK_FALSE, 
0);
+   
+   dialog->dv_btn_2 = etk_radio_button_new_with_label_from_widget("Fit to 
window", 
+        ETK_RADIO_BUTTON(dialog->dv_btn_1));
+   etk_box_pack_start(ETK_BOX(vbox2), dialog->dv_btn_2, ETK_FALSE, ETK_FALSE, 
0);
+
+   frame = etk_frame_new("Effect thresh");
+   etk_box_pack_start(ETK_BOX(vbox), frame, ETK_FALSE, ETK_FALSE, 5);
+   vbox2 = etk_vbox_new(ETK_FALSE, 0);
+   etk_container_add(ETK_CONTAINER(frame), vbox2);
+
+   table = etk_table_new(2, 3, ETK_FALSE);
+   etk_box_pack_start(ETK_BOX(vbox2), table, ETK_FALSE, ETK_FALSE, 0);
+   
+   label = etk_label_new("Blur thresh"); 
+   etk_table_attach(ETK_TABLE(table), label, 0, 0, 0, 0, 0, 0, 
+        ETK_FILL_POLICY_NONE);
+   dialog->blur_thresh = etk_entry_new();
+   etk_table_attach(ETK_TABLE(table), dialog->blur_thresh, 1, 1, 0, 0, 0, 0, 
+        ETK_FILL_POLICY_NONE);
+   
+   label = etk_label_new("Sharpen thresh"); 
+   etk_table_attach(ETK_TABLE(table), label, 0, 0, 1, 1, 0, 0, 
+        ETK_FILL_POLICY_NONE);
+   dialog->sharpen_thresh = etk_entry_new();
+   etk_table_attach(ETK_TABLE(table), dialog->sharpen_thresh, 1, 1, 1, 1, 0, 
0, 
+        ETK_FILL_POLICY_NONE);
+
+   label = etk_label_new("Brighten thresh"); 
+   etk_table_attach(ETK_TABLE(table), label, 0, 0, 2, 2, 0, 0, 
+        ETK_FILL_POLICY_NONE);
+   dialog->brighten_thresh = etk_entry_new();
+   etk_table_attach(ETK_TABLE(table), dialog->brighten_thresh, 1, 1, 2, 2, 0, 
0, 
+        ETK_FILL_POLICY_NONE);
+   /* 
+    * Start toggling the correct values from loaded options 
+    */
+   if (e->options->default_view == EX_IMAGE_ONE_TO_ONE)
+      etk_toggle_button_toggle(ETK_TOGGLE_BUTTON(dialog->dv_btn_1));
+   else if (e->options->default_view == EX_IMAGE_FIT_TO_WINDOW)
+      etk_toggle_button_toggle(ETK_TOGGLE_BUTTON(dialog->dv_btn_2));
+   
+   sprintf(string, "%.2f", e->options->blur_thresh);
+   D(("Entry gets texts for blur tresh: %s\n", string));
+   etk_entry_text_set(ETK_ENTRY(dialog->blur_thresh), string);
+   
+   sprintf(string, "%.2f", e->options->sharpen_thresh);
+   D(("Entry gets texts for sharpen tresh: %s\n", string));
+   etk_entry_text_set(ETK_ENTRY(dialog->sharpen_thresh), string);
+   
+   sprintf(string, "%.2f", e->options->brighten_thresh);
+   D(("Entry gets texts for brighten tresh: %s\n", string));
+   etk_entry_text_set(ETK_ENTRY(dialog->brighten_thresh), string);
+   
+   return vbox;
+}
+
+static Etk_Widget *
+_ex_options_page_2_create()
+{
+   Etk_Widget *vbox;
+   
+   vbox = etk_vbox_new(ETK_FALSE, 3);
+   
+   return vbox;
+}
+
 void
 _ex_options_window_show(Exhibit *e)
 {
    Etk_Widget *win;
-   Etk_Widget *vbox, *vbox2;
-   Etk_Widget *btn, *btn2;
-   Etk_Widget *frame;
+   Etk_Widget *vbox;
+   Etk_Widget *hbox;
+   Etk_Widget *notebook;
+   Etk_Widget *page;
+   Etk_Widget *button;
+   
+   if(e->opt_dialog)
+     return;
+   
+   e->opt_dialog = calloc(1, sizeof(Ex_Options_Dialog));   
    
    win = etk_window_new();
    etk_window_title_set(ETK_WINDOW(win), "Exhibit options");
-   etk_window_resize(ETK_WINDOW(win), 200, 150);
-   etk_container_border_width_set(ETK_CONTAINER(win), 10);
+   etk_container_border_width_set(ETK_CONTAINER(win), 5);
    etk_signal_connect("delete_event", ETK_OBJECT(win),
                      ETK_CALLBACK(_ex_options_window_delete_cb), win);
    
-   vbox = etk_vbox_new(ETK_FALSE, 0);
+   vbox = etk_vbox_new(ETK_FALSE, 3);
    etk_container_add(ETK_CONTAINER(win), vbox);
    
-   frame = etk_frame_new("Choose standard view");
-   etk_box_pack_start(ETK_BOX(vbox), frame, ETK_TRUE, ETK_FALSE, 0);
-   
-   vbox2 = etk_vbox_new(ETK_FALSE, 0);
-   etk_container_add(ETK_CONTAINER(frame), vbox2);
-   
-   btn = etk_radio_button_new_with_label("Zoom 1:1", NULL);
-   etk_box_pack_start(ETK_BOX(vbox2), btn, ETK_TRUE, ETK_FALSE, 0);
+   notebook = etk_notebook_new();
+   etk_box_pack_start(ETK_BOX(vbox), notebook, ETK_TRUE, ETK_TRUE, 0);
    
-   btn2 = etk_radio_button_new_with_label_from_widget("Fit to window", 
-                                                     ETK_RADIO_BUTTON(btn));
-   etk_box_pack_start(ETK_BOX(vbox2), btn2, ETK_TRUE, ETK_FALSE, 0);
-      
+   page = _ex_options_page_1_create();
+   etk_notebook_page_append(ETK_NOTEBOOK(notebook), "General", page);
+   page = _ex_options_page_2_create();
+   etk_notebook_page_append(ETK_NOTEBOOK(notebook), "Slideshow", page);
+
+   etk_box_pack_start(ETK_BOX(vbox), etk_hseparator_new(), 
+                     ETK_FALSE, ETK_FALSE, 5);
+
+   hbox = etk_hbox_new(ETK_FALSE, 3);
+   etk_box_pack_start(ETK_BOX(vbox), hbox, ETK_FALSE, ETK_FALSE, 0);
+   
+   button = etk_button_new_from_stock(ETK_STOCK_DIALOG_OK);
+   etk_box_pack_start(ETK_BOX(hbox), button, ETK_FALSE, ETK_FALSE, 0);
+   etk_signal_connect_swapped("clicked", ETK_OBJECT(button),
+                             ETK_CALLBACK(_ex_options_set_ok_cb), win);
+   
+   button = etk_button_new_from_stock(ETK_STOCK_DOCUMENT_SAVE);
+   etk_button_label_set(ETK_BUTTON(button), "Apply");
+   etk_box_pack_start(ETK_BOX(hbox), button, ETK_FALSE, ETK_FALSE, 0);
+   etk_signal_connect("clicked", ETK_OBJECT(button),
+                     ETK_CALLBACK(_ex_options_set_apply_cb), NULL);
+   
+   button = etk_button_new_from_stock(ETK_STOCK_DIALOG_CANCEL);
+   etk_box_pack_start(ETK_BOX(hbox), button, ETK_FALSE, ETK_FALSE, 0);
+   etk_signal_connect_swapped("clicked", ETK_OBJECT(button),
+                             ETK_CALLBACK(_ex_options_set_cancel_cb), win);
+
    etk_widget_show_all(ETK_WIDGET(win));
 }
 
-Etk_Bool 
-_ex_options_window_delete_cb(void *data)
-{
-   etk_object_destroy(ETK_OBJECT(data));
-  return ETK_TRUE;
-}
===================================================================
RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit_options.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- exhibit_options.h   29 Jul 2006 19:50:04 -0000      1.3
+++ exhibit_options.h   10 Aug 2006 04:01:10 -0000      1.4
@@ -1,3 +1,6 @@
+/*
+ * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
+ */
 #ifndef _EX_OPTIONS_H
 #define _EX_OPTIONS_H
 
@@ -9,6 +12,5 @@
 int             _ex_options_save(Exhibit *e);
 int             _ex_options_load(Exhibit *e);
 void            _ex_options_window_show(Exhibit *e);
-Etk_Bool        _ex_options_window_delete_cb(void *data);
-  
+
 #endif



-------------------------------------------------------------------------
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

Reply via email to