netstar pushed a commit to branch master.

http://git.enlightenment.org/apps/ecrire.git/commit/?id=60129da3e14dcead6b770151466b2c2e091e70c9

commit 60129da3e14dcead6b770151466b2c2e091e70c9
Author: Alastair Poole <nets...@gmail.com>
Date:   Sat Feb 27 10:44:38 2021 +0000

    ecrire: small tidy
---
 src/bin/main.c            | 332 +++++++++++++++++++++++-----------------------
 src/bin/ui/file_related.c |  28 +++-
 src/bin/ui/ui.h           |   2 +-
 3 files changed, 185 insertions(+), 177 deletions(-)

diff --git a/src/bin/main.c b/src/bin/main.c
index 9097b9f..16052e3 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -8,22 +8,21 @@
 #include "ui/ui.h"
 
 static Eina_Unicode plain_utf8 = EINA_TRUE;
-static Ecrire_Entry *inst;
 
 static void print_usage(const char *bin);
-static void editor_font_set(Ecrire_Entry *ent, const char *font, int 
font_size);
+static void editor_font_set(Ecrire_Entry *inst, const char *font, int 
font_size);
 
 /* specific log domain to help debug only ecrire */
 int _ecrire_log_dom = -1;
 
 static void
-_init_entry(Ecrire_Entry *ent)
+_init_entry(Ecrire_Entry *inst)
 {
    Elm_Entry_Change_Info *inf;
-   editor_font_set(ent, _ent_cfg->font.name, _ent_cfg->font.size);
+   editor_font_set(inst, _ent_cfg->font.name, _ent_cfg->font.size);
 
    /* Init the undo stack */
-   EINA_LIST_FREE(ent->undo_stack, inf)
+   EINA_LIST_FREE(inst->undo_stack, inf)
      {
         if (inf)
           {
@@ -38,25 +37,25 @@ _init_entry(Ecrire_Entry *ent)
              free(inf);
           }
      }
-   ent->undo_stack = ent->undo_stack_ptr =
-      eina_list_append(ent->undo_stack, NULL);
-   ent->last_saved_stack_ptr = ent->undo_stack_ptr;
-   ent->undo_stack_can_merge = EINA_FALSE;
+   inst->undo_stack = inst->undo_stack_ptr =
+      eina_list_append(inst->undo_stack, NULL);
+   inst->last_saved_stack_ptr = inst->undo_stack_ptr;
+   inst->undo_stack_can_merge = EINA_FALSE;
 
-   elm_object_item_disabled_set(ent->undo_item, EINA_TRUE);
-   elm_object_item_disabled_set(ent->redo_item, EINA_TRUE);
+   elm_object_item_disabled_set(inst->undo_item, EINA_TRUE);
+   elm_object_item_disabled_set(inst->redo_item, EINA_TRUE);
 }
 
 static void
-_alert_if_need_saving(void (*done)(void *data), Ecrire_Entry *ent)
+_alert_if_need_saving(void (*done)(void *data), Ecrire_Entry *inst)
 {
-   if (!elm_object_item_disabled_get(ent->save_item))
+   if (!elm_object_item_disabled_get(inst->save_item))
      {
-        ui_alert_need_saving(ent->entry, done, ent);
+        ui_alert_need_saving(inst->entry, done, inst);
      }
    else
      {
-        done(ent);
+        done(inst);
      }
 }
 
@@ -64,40 +63,40 @@ static void
 _cb_sel_start(void *data, Evas_Object *obj EINA_UNUSED,
               void *event_info EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   elm_object_item_disabled_set(ent->copy_item, EINA_FALSE);
-   elm_object_item_disabled_set(ent->cut_item, EINA_FALSE);
+   Ecrire_Entry *inst = data;
+   elm_object_item_disabled_set(inst->copy_item, EINA_FALSE);
+   elm_object_item_disabled_set(inst->cut_item, EINA_FALSE);
 }
 
 static void
 _cb_sel_clear(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
               void *event_info EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   elm_object_item_disabled_set(ent->copy_item, EINA_TRUE);
-   elm_object_item_disabled_set(ent->cut_item, EINA_TRUE);
+   Ecrire_Entry *inst = data;
+   elm_object_item_disabled_set(inst->copy_item, EINA_TRUE);
+   elm_object_item_disabled_set(inst->cut_item, EINA_TRUE);
 }
 
 static void
-_update_cur_file(const char *file, Ecrire_Entry *ent)
+_update_cur_file(const char *file, Ecrire_Entry *inst)
 {
-   const char *saving = (!elm_object_item_disabled_get(ent->save_item)) ?
+   const char *saving = (!elm_object_item_disabled_get(inst->save_item)) ?
       "*" : "";
-   eina_stringshare_replace(&ent->filename, file);
+   eina_stringshare_replace(&inst->filename, file);
      {
         char buf[1024];
-        if (ent->filename)
-           snprintf(buf, sizeof(buf), _("%s%s - %s"), saving, ent->filename,
-                 PACKAGE_NAME);
+        if (inst->filename)
+           snprintf(buf, sizeof(buf), _("%s%s - %s"), saving, inst->filename,
+                    PACKAGE_NAME);
         else
            snprintf(buf, sizeof(buf), _("%sUntitled %d - %s"), saving,
-                 ent->unsaved, PACKAGE_NAME);
+                    inst->unsaved, PACKAGE_NAME);
 
-        if (ent->filename)
-          elm_object_text_set(ent->frame, ent->filename);
+        if (inst->filename)
+          elm_object_text_set(inst->frame, inst->filename);
         else
-          elm_object_text_set(ent->frame, buf);
-        elm_win_title_set(ent->win, buf);
+          elm_object_text_set(inst->frame, buf);
+        elm_win_title_set(inst->win, buf);
      }
 }
 
@@ -125,40 +124,39 @@ _cb_cur_changed(void *data, Evas_Object *obj, void 
*event_info EINA_UNUSED)
 static void
 _cb_cur_changed_manual(void *data, Evas_Object *obj EINA_UNUSED, void 
*event_info EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   ent->undo_stack_can_merge = EINA_FALSE;
+   Ecrire_Entry *inst = data;
+   inst->undo_stack_can_merge = EINA_FALSE;
 }
 
 static void
-_update_undo_redo_items(Ecrire_Entry *ent)
+_update_undo_redo_items(Ecrire_Entry *inst)
 {
-   elm_object_item_disabled_set(ent->undo_item,
-         !eina_list_next(ent->undo_stack_ptr));
-   elm_object_item_disabled_set(ent->redo_item,
-         !eina_list_prev(ent->undo_stack_ptr));
+   elm_object_item_disabled_set(inst->undo_item,
+         !eina_list_next(inst->undo_stack_ptr));
+   elm_object_item_disabled_set(inst->redo_item,
+         !eina_list_prev(inst->undo_stack_ptr));
 
-   if (ent->undo_stack_ptr == ent->last_saved_stack_ptr)
+   if (inst->undo_stack_ptr == inst->last_saved_stack_ptr)
      {
-        elm_object_item_disabled_set(ent->save_item, EINA_TRUE);
-        _update_cur_file(ent->filename, ent);
+        elm_object_item_disabled_set(inst->save_item, EINA_TRUE);
+        _update_cur_file(inst->filename, inst);
      }
-   else if (elm_object_item_disabled_get(ent->save_item))
+   else if (elm_object_item_disabled_get(inst->save_item))
      {
-        elm_object_item_disabled_set(ent->save_item, EINA_FALSE);
-        _update_cur_file(ent->filename, ent);
+        elm_object_item_disabled_set(inst->save_item, EINA_FALSE);
+        _update_cur_file(inst->filename, inst);
      }
-
 }
 
 static void
-_undo_stack_add(Ecrire_Entry *ent, Elm_Entry_Change_Info *_info)
+_undo_stack_add(Ecrire_Entry *inst, Elm_Entry_Change_Info *_info)
 {
    Elm_Entry_Change_Info *inf;
 
-   ent->undo_stack = eina_list_split_list(ent->undo_stack, 
eina_list_prev(ent->undo_stack_ptr),
-         &ent->undo_stack_ptr);
+   inst->undo_stack = eina_list_split_list(inst->undo_stack, 
eina_list_prev(inst->undo_stack_ptr),
+         &inst->undo_stack_ptr);
 
-   EINA_LIST_FREE(ent->undo_stack, inf)
+   EINA_LIST_FREE(inst->undo_stack, inf)
      {
         if (inf->insert)
           {
@@ -182,7 +180,7 @@ _undo_stack_add(Ecrire_Entry *ent, Elm_Entry_Change_Info 
*_info)
    else
 #endif
      {
-        Elm_Entry_Change_Info *head_inf = 
eina_list_data_get(ent->undo_stack_ptr);
+        Elm_Entry_Change_Info *head_inf = 
eina_list_data_get(inst->undo_stack_ptr);
 
         inf = calloc(1, sizeof(*inf));
         memcpy(inf, _info, sizeof(*inf));
@@ -195,54 +193,54 @@ _undo_stack_add(Ecrire_Entry *ent, Elm_Entry_Change_Info 
*_info)
              eina_stringshare_ref(inf->change.del.content);
           }
 
-        if (ent->undo_stack_can_merge && (inf->insert == head_inf->insert))
+        if (inst->undo_stack_can_merge && (inf->insert == head_inf->insert))
            inf->merge = EINA_TRUE;
 
-        ent->undo_stack_ptr = eina_list_prepend(ent->undo_stack_ptr, inf);
+        inst->undo_stack_ptr = eina_list_prepend(inst->undo_stack_ptr, inf);
      }
 
-   ent->undo_stack = ent->undo_stack_ptr;
+   inst->undo_stack = inst->undo_stack_ptr;
 
-   ent->undo_stack_can_merge = EINA_TRUE;
+   inst->undo_stack_can_merge = EINA_TRUE;
 
-   _update_undo_redo_items(ent);
+   _update_undo_redo_items(inst);
 }
 
 static void
-_undo_redo_do(Ecrire_Entry *ent, Elm_Entry_Change_Info *inf, Eina_Bool undo)
+_undo_redo_do(Ecrire_Entry *inst, Elm_Entry_Change_Info *inf, Eina_Bool undo)
 {
    DBG("%s: %s", (undo) ? "Undo" : "Redo",
          inf->change.insert.content);
 
    if ((inf->insert && undo) || (!inf->insert && !undo))
      {
-        const Evas_Object *tb = elm_entry_textblock_get(ent->entry);
+        const Evas_Object *tb = elm_entry_textblock_get(inst->entry);
         Evas_Textblock_Cursor *mcur, *end;
         mcur = (Evas_Textblock_Cursor *) evas_object_textblock_cursor_get(tb);
         end = evas_object_textblock_cursor_new(tb);
 
         if (inf->insert)
           {
-             elm_entry_cursor_pos_set(ent->entry, inf->change.insert.pos);
+             elm_entry_cursor_pos_set(inst->entry, inf->change.insert.pos);
              evas_textblock_cursor_pos_set(end, inf->change.insert.pos +
                    inf->change.insert.plain_length);
           }
         else
           {
-             elm_entry_cursor_pos_set(ent->entry, inf->change.del.start);
+             elm_entry_cursor_pos_set(inst->entry, inf->change.del.start);
              evas_textblock_cursor_pos_set(end, inf->change.del.end);
           }
 
         evas_textblock_cursor_range_delete(mcur, end);
         evas_textblock_cursor_free(end);
-        elm_entry_calc_force(ent->entry);
+        elm_entry_calc_force(inst->entry);
      }
    else
      {
         if (inf->insert)
           {
-             elm_entry_cursor_pos_set(ent->entry, inf->change.insert.pos);
-             elm_entry_entry_insert(ent->entry, inf->change.insert.content);
+             elm_entry_cursor_pos_set(inst->entry, inf->change.insert.pos);
+             elm_entry_entry_insert(inst->entry, inf->change.insert.content);
           }
         else
           {
@@ -250,35 +248,35 @@ _undo_redo_do(Ecrire_Entry *ent, Elm_Entry_Change_Info 
*inf, Eina_Bool undo)
              start = (inf->change.del.start < inf->change.del.end) ?
                 inf->change.del.start : inf->change.del.end;
 
-             elm_entry_cursor_pos_set(ent->entry, start);
-             elm_entry_entry_insert(ent->entry, inf->change.insert.content);
-             elm_entry_cursor_pos_set(ent->entry, inf->change.del.end);
+             elm_entry_cursor_pos_set(inst->entry, start);
+             elm_entry_entry_insert(inst->entry, inf->change.insert.content);
+             elm_entry_cursor_pos_set(inst->entry, inf->change.del.end);
           }
      }
 
    /* No matter what, once we did an undo/redo we don't want to merge,
     * even if we got backt to the top of the stack. */
-   ent->undo_stack_can_merge = EINA_FALSE;
+   inst->undo_stack_can_merge = EINA_FALSE;
 }
 
 static void
 _cb_undo(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
    /* In undo we care about the current item */
-   Ecrire_Entry *ent = data;
+   Ecrire_Entry *inst = data;
    Elm_Entry_Change_Info *inf = NULL;
-   if (!eina_list_next(ent->undo_stack_ptr))
+   if (!eina_list_next(inst->undo_stack_ptr))
       return;
 
    do
      {
-        inf = eina_list_data_get(ent->undo_stack_ptr);
+        inf = eina_list_data_get(inst->undo_stack_ptr);
 
-        _undo_redo_do(ent, inf, EINA_TRUE);
+        _undo_redo_do(inst, inf, EINA_TRUE);
 
-        if (eina_list_next(ent->undo_stack_ptr))
+        if (eina_list_next(inst->undo_stack_ptr))
           {
-             ent->undo_stack_ptr = eina_list_next(ent->undo_stack_ptr);
+             inst->undo_stack_ptr = eina_list_next(inst->undo_stack_ptr);
           }
         else
           {
@@ -287,25 +285,25 @@ _cb_undo(void *data, Evas_Object *obj EINA_UNUSED, void 
*event_info EINA_UNUSED)
      }
    while (inf && inf->merge);
 
-   _update_undo_redo_items(ent);
+   _update_undo_redo_items(inst);
 }
 
 static void
 _cb_redo(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
+   Ecrire_Entry *inst = data;
    Elm_Entry_Change_Info *inf = NULL;
-   if (!eina_list_prev(ent->undo_stack_ptr))
+   if (!eina_list_prev(inst->undo_stack_ptr))
       return;
 
    do
      {
-        if (eina_list_prev(ent->undo_stack_ptr))
+        if (eina_list_prev(inst->undo_stack_ptr))
           {
-             ent->undo_stack_ptr = eina_list_prev(ent->undo_stack_ptr);
+             inst->undo_stack_ptr = eina_list_prev(inst->undo_stack_ptr);
              /* In redo we care about the NEW item */
-             inf = eina_list_data_get(ent->undo_stack_ptr);
-             _undo_redo_do(ent, inf, EINA_FALSE);
+             inf = eina_list_data_get(inst->undo_stack_ptr);
+             _undo_redo_do(inst, inf, EINA_FALSE);
           }
         else
           {
@@ -313,31 +311,33 @@ _cb_redo(void *data, Evas_Object *obj EINA_UNUSED, void 
*event_info EINA_UNUSED)
           }
 
         /* Update inf to next for the condition. */
-        if (eina_list_prev(ent->undo_stack_ptr))
+        if (eina_list_prev(inst->undo_stack_ptr))
           {
-             inf = eina_list_data_get(eina_list_prev(ent->undo_stack_ptr));
+             inf = eina_list_data_get(eina_list_prev(inst->undo_stack_ptr));
           }
      }
    while (inf && inf->merge);
 
-   _update_undo_redo_items(ent);
+   _update_undo_redo_items(inst);
 }
 
 static void
 _cb_ent_changed(void *data, Evas_Object *obj EINA_UNUSED, void *event_info)
 {
-   Ecrire_Entry *ent = data;
-   elm_object_item_disabled_set(ent->save_item, EINA_FALSE);
-   _update_cur_file(ent->filename, ent);
+   Ecrire_Entry *inst = data;
+   elm_object_item_disabled_set(inst->save_item, EINA_FALSE);
+   _update_cur_file(inst->filename, inst);
 
    /* Undo/redo */
-   _undo_stack_add(ent, event_info);
+   _undo_stack_add(inst, event_info);
 }
 
 static void
-_load_to_entry(Ecrire_Entry *ent, const char *file)
+_load_to_entry(Ecrire_Entry *inst, const char *file)
 {
-   if (file)
+   if (!file)
+     _init_entry(inst);
+   else
      {
         char *buf;
 
@@ -346,27 +346,25 @@ _load_to_entry(Ecrire_Entry *ent, const char *file)
         else
            buf = file_load(file);
 
-        elm_object_text_set(ent->entry, "");
-        _init_entry(ent);
-        elm_entry_entry_append(ent->entry, buf);
-        elm_object_item_disabled_set(ent->save_item, EINA_TRUE);
+        elm_object_text_set(inst->entry, "");
+        _init_entry(inst);
+        elm_entry_entry_append(inst->entry, buf);
+        elm_object_item_disabled_set(inst->save_item, EINA_TRUE);
         free(buf);
      }
-   else
-     {
-        _init_entry(ent);
-     }
 
-   _update_cur_file(file, ent);
+   _update_cur_file(file, inst);
 }
 
 static void
-_fs_open_done(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
-              void *event_info)
+_cb_fs_open_done(void *data, Evas_Object *obj EINA_UNUSED,
+                 void *event_info)
 {
+   Ecrire_Entry *inst;
    const char *selected = event_info;
 
    if (!selected) return;
+   inst = data;
 
    if (ecore_file_app_installed("ecrire"))
      ecore_exe_run(eina_slstr_printf("ecrire %s", selected), NULL);
@@ -375,76 +373,71 @@ _fs_open_done(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED,
 }
 
 void
-save_do(const char *file, Ecrire_Entry *ent)
+save_do(const char *file, Ecrire_Entry *inst)
 {
    if (plain_utf8)
-      file_plain_save(file, elm_object_text_get(ent->entry));
+      file_plain_save(file, elm_object_text_get(inst->entry));
    else
-      file_save(file, elm_object_text_get(ent->entry));
+      file_save(file, elm_object_text_get(inst->entry));
 
-   elm_object_item_disabled_set(ent->save_item, EINA_TRUE);
-   ent->last_saved_stack_ptr = ent->undo_stack_ptr;
-   _update_cur_file(file, ent);
+   elm_object_item_disabled_set(inst->save_item, EINA_TRUE);
+   inst->last_saved_stack_ptr = inst->undo_stack_ptr;
+   _update_cur_file(file, inst);
 }
 
 static void
-_fs_save_done(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
-      void *event_info)
+_cb_fs_save_done(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
+                 void *event_info)
 {
+   Ecrire_Entry *inst = data;
    const char *selected = event_info;
 
    if (selected)
-     {
-        save_do(selected, inst);
-     }
+     save_do(selected, inst);
 }
 
 static void
 _open_do(void *data)
 {
-   Ecrire_Entry *ent = data;
-   ui_file_open_save_dialog_open(ent->win, _fs_open_done, EINA_FALSE);
+   Ecrire_Entry *inst = data;
+   ui_file_open_save_dialog_open(inst->win, EINA_FALSE, _cb_fs_open_done, 
inst);
 }
 
 static void
 _cb_goto_line(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   ui_goto_dialog_open(ent->win, ent);
+   Ecrire_Entry *inst = data;
+   ui_goto_dialog_open(inst->win, inst);
 }
 
 static void
 _cb_open(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   _alert_if_need_saving(_open_do, ent);
+   Ecrire_Entry *inst = data;
+   _alert_if_need_saving(_open_do, inst);
 }
 
 void
-editor_save(Ecrire_Entry *ent, void *callback_func)
+editor_save(Ecrire_Entry *inst, void *callback_func)
 {
-   if (ent->filename)
-     {
-        save_do(ent->filename, ent);
-     }
+   if (inst->filename)
+     save_do(inst->filename, inst);
    else
-     {
-        ui_file_open_save_dialog_open(ent->win, callback_func, EINA_TRUE);
-     }
+     ui_file_open_save_dialog_open(inst->win, EINA_TRUE, callback_func, inst);
 }
 
 static void
 _cb_save(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   editor_save(ent, _fs_save_done);
+   Ecrire_Entry *inst = data;
+   editor_save(inst, _cb_fs_save_done);
 }
 
 static void
 _cb_save_as(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   ui_file_open_save_dialog_open(ent->win, _fs_save_done, EINA_TRUE);
+   Ecrire_Entry *inst = data;
+   ui_file_open_save_dialog_open(inst->win, EINA_TRUE, _cb_fs_save_done, inst);
 }
 
 static void
@@ -456,83 +449,83 @@ _win_del_do(void *data EINA_UNUSED)
 static void
 _new_do(void *data)
 {
-   Ecrire_Entry *ent = data;
+   Ecrire_Entry *inst = data;
 
    if (ecore_file_app_installed("ecrire"))
      ecore_exe_run("ecrire", NULL);
    else
      {
-        elm_object_text_set(ent->entry, "");
-        _init_entry(ent);
-        elm_object_item_disabled_set(ent->save_item, EINA_TRUE);
-        _update_cur_file(NULL, ent);
+        elm_object_text_set(inst->entry, "");
+        _init_entry(inst);
+        elm_object_item_disabled_set(inst->save_item, EINA_TRUE);
+        _update_cur_file(NULL, inst);
      }
 }
 
 static void
 _cb_new(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   _alert_if_need_saving(_new_do, ent);
+   Ecrire_Entry *inst = data;
+   _alert_if_need_saving(_new_do, inst);
 }
 
 static void
 _app_exit(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   _alert_if_need_saving(_win_del_do, ent);
+   Ecrire_Entry *inst = data;
+   _alert_if_need_saving(_win_del_do, inst);
 }
 
 static void
 _cb_cut(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   elm_entry_selection_cut(ent->entry);
+   Ecrire_Entry *inst = data;
+   elm_entry_selection_cut(inst->entry);
 }
 
 static void
 _cb_copy(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   elm_entry_selection_copy(ent->entry);
+   Ecrire_Entry *inst = data;
+   elm_entry_selection_copy(inst->entry);
 }
 
 static void
 _cb_paste(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   elm_entry_selection_paste(ent->entry);
+   Ecrire_Entry *inst = data;
+   elm_entry_selection_paste(inst->entry);
 }
 
 static void
 _cb_find(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   ui_find_dialog_open(ent->win, ent);
+   Ecrire_Entry *inst = data;
+   ui_find_dialog_open(inst->win, inst);
 }
 
 static void
 _cb_font_settings(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
-   Ecrire_Entry *ent = data;
-   ui_font_dialog_open(elm_object_top_widget_get(ent->win), ent, 
_ent_cfg->font.name, _ent_cfg->font.size);
+   Ecrire_Entry *inst = data;
+   ui_font_dialog_open(elm_object_top_widget_get(inst->win), inst, 
_ent_cfg->font.name, _ent_cfg->font.size);
 }
 
 
 static void
 _cb_win_del(void *data, Evas_Object *obj, void *event_info)
 {
-   Ecrire_Entry *ent = data;
+   Ecrire_Entry *inst = data;
    (void) data;
    (void) obj;
    (void) event_info;
-   _alert_if_need_saving(_win_del_do, ent);
+   _alert_if_need_saving(_win_del_do, inst);
 }
 
 static void
 _cb_win_focused(void *data, Evas_Object *obj, void *event_info)
 {
-//   Ecrire_Entry *ent = data;
+   Ecrire_Entry *inst = data;
    (void) data;
    (void) obj;
    (void) event_info;
@@ -542,7 +535,7 @@ _cb_win_focused(void *data, Evas_Object *obj, void 
*event_info)
 static void
 _cb_key_down(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void *event)
 {
-   Ecrire_Entry *ent = data;
+   Ecrire_Entry *inst = data;
    Eina_Bool ctrl, alt, shift;
    Evas_Event_Key_Down *ev = event;
 
@@ -551,7 +544,7 @@ _cb_key_down(void *data, Evas *e EINA_UNUSED, Evas_Object 
*obj, void *event)
    shift = evas_key_modifier_is_set(ev->modifiers, "Shift");
    if ((ctrl) && (!alt) && (!shift))
      {
-        if      (!strcmp(ev->keyname, "a")) elm_entry_select_all(ent->entry);
+        if      (!strcmp(ev->keyname, "a")) elm_entry_select_all(inst->entry);
         else if (!strcmp(ev->keyname, "f")) _cb_find(data, obj, event);
         else if (!strcmp(ev->keyname, "g")) _cb_goto_line(data, obj, event);
         else if (!strcmp(ev->keyname, "n")) _cb_new(data, obj, event);
@@ -560,9 +553,9 @@ _cb_key_down(void *data, Evas *e EINA_UNUSED, Evas_Object 
*obj, void *event)
 }
 
 static void
-editor_font_set(Ecrire_Entry *ent, const char *font, int font_size)
+editor_font_set(Ecrire_Entry *inst, const char *font, int font_size)
 {
-   const Evas_Object *tb = elm_entry_textblock_get(ent->entry);
+   const Evas_Object *tb = elm_entry_textblock_get(inst->entry);
    Eina_Strbuf *sbuf;
 
    eina_stringshare_replace(&_ent_cfg->font.name, font);
@@ -596,21 +589,20 @@ editor_font_set(Ecrire_Entry *ent, const char *font, int 
font_size)
         evas_object_textblock_style_user_pop((Evas_Object *) tb);
      }
 
-   elm_entry_calc_force(ent->entry);
+   elm_entry_calc_force(inst->entry);
 
    eina_strbuf_free(sbuf);
 }
 
 void
-editor_font_choose(Ecrire_Entry *ent, const char *font, int size)
+editor_font_choose(Ecrire_Entry *inst, const char *font, int size)
 {
-   editor_font_set(ent, font, size);
+   editor_font_set(inst, font, size);
 
    /* Save the font for future runs */
    ecrire_cfg_save();
 }
 
-
 static void
 _ecrire_menu_add(Ecrire_Entry *inst)
 {
@@ -654,7 +646,7 @@ _ecrire_menu_add(Ecrire_Entry *inst)
 EAPI_MAIN int
 elm_main(int argc, char **argv)
 {
-   Evas_Object *win, *pad, *fr, *bx, *entry, *cur_info, *bx2;
+   Evas_Object *win, *pad, *fr, *bx, *entry, *cur_info;
    Evas_Coord w = 600, h = 600;
    int c;
 
@@ -704,7 +696,7 @@ elm_main(int argc, char **argv)
    ecrire_cfg_init(PACKAGE_NAME);
    ecrire_cfg_load();
 
-   inst = calloc(1, sizeof(Ecrire_Entry));
+   Ecrire_Entry *inst = calloc(1, sizeof(Ecrire_Entry));
    inst->unsaved = 1;
    inst->filename = NULL;
    inst->last_saved_stack_ptr = NULL;
@@ -738,7 +730,7 @@ elm_main(int argc, char **argv)
    evas_object_size_hint_weight_set(entry, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    elm_object_content_set(fr, entry);
    elm_box_pack_end(bx, fr);
-   evas_object_show(inst->entry);
+   evas_object_show(entry);
 
    pad = elm_frame_add(win);
    elm_object_style_set(pad, "pad_medium");
@@ -747,18 +739,18 @@ elm_main(int argc, char **argv)
    elm_box_pack_end(bx, pad);
    evas_object_show(pad);
 
-   bx2 = elm_box_add(win);
-   elm_box_horizontal_set(bx2, EINA_TRUE);
-   evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, 0.5);
-   evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   elm_object_content_set(pad, bx2);
-   evas_object_show(bx2);
+   bx = elm_box_add(win);
+   elm_box_horizontal_set(bx, 1);
+   evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, 0.5);
+   evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   elm_object_content_set(pad, bx);
+   evas_object_show(bx);
 
    cur_info = elm_label_add(win);
    _cb_cur_changed(cur_info, entry, NULL);
    evas_object_size_hint_align_set(cur_info, 1.0, 0.5);
    evas_object_size_hint_weight_set(cur_info, EVAS_HINT_EXPAND, 0.0);
-   elm_box_pack_end(bx2, cur_info);
+   elm_box_pack_end(bx, cur_info);
    evas_object_show(cur_info);
 
    evas_object_smart_callback_add(entry, "cursor,changed", _cb_cur_changed, 
cur_info);
@@ -783,6 +775,8 @@ elm_main(int argc, char **argv)
 
    elm_run();
 
+   free(inst);
+
    ecrire_cfg_shutdown();
    eina_log_domain_unregister(_ecrire_log_dom);
    _ecrire_log_dom = -1;
diff --git a/src/bin/ui/file_related.c b/src/bin/ui/file_related.c
index 89bc031..6c33a4d 100644
--- a/src/bin/ui/file_related.c
+++ b/src/bin/ui/file_related.c
@@ -1,21 +1,30 @@
 #include "config.h"
 #include <Elementary.h>
 
-Evas_Object *inwin;
+typedef struct _File_Selector_Data
+{
+   Evas_Object *inwin;
+   void (*func)(void *, Evas_Object *, void *);
+   void *data;
+} File_Selector_Data;
 
 static void
 _cleaning_cb(void *data, Evas_Object *obj, void *event_info)
 {
-   void (*func) (void *, Evas_Object *, void *) = data;
-   func(NULL, obj, event_info);
-   evas_object_del(inwin);  /* delete the test window */
+   File_Selector_Data *fsdata = data;
+   fsdata->func(fsdata->data, obj, event_info);
+   evas_object_del(fsdata->inwin);
+   free(fsdata);
 }
 
 void
-ui_file_open_save_dialog_open(Evas_Object *parent, Evas_Smart_Cb func,
-      Eina_Bool save)
+ui_file_open_save_dialog_open(Evas_Object *parent, Eina_Bool save,
+                              Evas_Smart_Cb func, void *data)
 {
    Evas_Object *fs;
+   Evas_Object *inwin;
+   File_Selector_Data *fsdata;
+
    inwin = elm_win_inwin_add(parent);
    evas_object_show(inwin);
 
@@ -26,5 +35,10 @@ ui_file_open_save_dialog_open(Evas_Object *parent, 
Evas_Smart_Cb func,
    elm_win_inwin_content_set(inwin, fs);
    evas_object_show(fs);
 
-   evas_object_smart_callback_add(fs, "done", _cleaning_cb, func);
+   fsdata = malloc(sizeof(File_Selector_Data));
+   fsdata->inwin = inwin;
+   fsdata->func  = func;
+   fsdata->data  = data;
+
+   evas_object_smart_callback_add(fs, "done", _cleaning_cb, fsdata);
 }
diff --git a/src/bin/ui/ui.h b/src/bin/ui/ui.h
index 0b77348..db041b4 100644
--- a/src/bin/ui/ui.h
+++ b/src/bin/ui/ui.h
@@ -3,7 +3,7 @@
 
 #include "../mess_header.h"
 
-void ui_file_open_save_dialog_open(Evas_Object *parent, Evas_Smart_Cb func, 
Eina_Bool save);
+void ui_file_open_save_dialog_open(Evas_Object *parent, Eina_Bool save, 
Evas_Smart_Cb func, void *data);
 
 Evas_Object *ui_find_dialog_open(Evas_Object *parent, Ecrire_Entry *ent);
 Evas_Object *ui_goto_dialog_open(Evas_Object *parent, Ecrire_Entry *ent);

-- 


Reply via email to