REVERT! broke edje.
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 27 Oct 2009 00:27:50 +0000 (00:27 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 27 Oct 2009 00:27:50 +0000 (00:27 +0000)
try again and dont forget to add edje_external.c! (and any others needing
adding)

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/edje@43304 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/bin/edje_cc_handlers.c
src/lib/Edje.h
src/lib/Makefile.am
src/lib/edje_calc.c
src/lib/edje_data.c
src/lib/edje_load.c
src/lib/edje_main.c
src/lib/edje_private.h
src/lib/edje_program.c

index 216c63e..168a768 100644 (file)
@@ -200,15 +200,10 @@ static void st_collections_group_parts_part_description_table_homogeneous(void);
 static void st_collections_group_parts_part_description_table_align(void);
 static void st_collections_group_parts_part_description_table_padding(void);
 
-/* external part parameters */
-static void st_collections_group_parts_part_description_params_int(void);
 static void ob_collections_group_programs_program(void);
-static void st_collections_group_parts_part_description_params_double(void);
-
 static void st_collections_group_programs_program_name(void);
-static void st_collections_group_parts_part_description_params_string(void);
 static void st_collections_group_programs_program_signal(void);
- static void st_collections_group_programs_program_source(void);
+static void st_collections_group_programs_program_source(void);
 static void st_collections_group_programs_program_in(void);
 static void st_collections_group_programs_program_action(void);
 static void st_collections_group_programs_program_transition(void);
@@ -404,9 +399,6 @@ New_Statement_Handler statement_handlers[] =
      {"collections.group.parts.part.description.table.homogeneous", st_collections_group_parts_part_description_table_homogeneous},
      {"collections.group.parts.part.description.table.align", st_collections_group_parts_part_description_table_align},
      {"collections.group.parts.part.description.table.padding", st_collections_group_parts_part_description_table_padding},
-     {"collections.group.parts.part.description.params.int", st_collections_group_parts_part_description_params_int},
-     {"collections.group.parts.part.description.params.double", st_collections_group_parts_part_description_params_double},
-     {"collections.group.parts.part.description.params.string", st_collections_group_parts_part_description_params_string},
      {"collections.group.parts.part.description.images.image", st_images_image}, /* dup */
      {"collections.group.parts.part.description.font", st_fonts_font}, /* dup */
      {"collections.group.parts.part.description.fonts.font", st_fonts_font}, /* dup */
@@ -567,7 +559,6 @@ New_Object_Handler object_handlers[] =
      {"collections.group.parts.part.description.gradient.rel2", NULL},
      {"collections.group.parts.part.description.box", NULL},
      {"collections.group.parts.part.description.table", NULL},
-     {"collections.group.parts.part.description.params", NULL},
      {"collections.group.parts.part.description.color_classes", NULL}, /* dup */
      {"collections.group.parts.part.description.color_classes.color_class", ob_color_class}, /* dup */
      {"collections.group.parts.part.description.program", ob_collections_group_programs_program}, /* dup */
@@ -1702,7 +1693,6 @@ st_collections_group_parts_part_name(void)
             @li GROUP
             @li BOX
             @li TABLE
-            @li EXTERNAL
     @endproperty
 */
 static void
@@ -1726,7 +1716,6 @@ st_collections_group_parts_part_type(void)
                         "GROUP", EDJE_PART_TYPE_GROUP,
                         "BOX", EDJE_PART_TYPE_BOX,
                         "TABLE", EDJE_PART_TYPE_TABLE,
-                        "EXTERNAL", EDJE_PART_TYPE_EXTERNAL,
                         NULL);
 }
 
@@ -2986,7 +2975,6 @@ ob_collections_group_parts_part_description(void)
    ed->table.align.y = 0.5;
    ed->table.padding.x = 0;
    ed->table.padding.y = 0;
-   ed->external_params = NULL;
 }
 
 /**
@@ -3121,20 +3109,6 @@ st_collections_group_parts_part_description_inherit(void)
 
    data_queue_part_slave_lookup(&(parent->text.id_source), &(ed->text.id_source));
    data_queue_part_slave_lookup(&(parent->text.id_text_source), &(ed->text.id_text_source));
-
-   if (parent->external_params)
-     {
-       Eina_List *l;
-       Edje_External_Param *param, *new_param;
-
-       ed->external_params = NULL;
-       EINA_LIST_FOREACH(parent->external_params, l, param)
-         {
-            new_param = mem_alloc(SZ(Edje_External_Param));
-            *new_param = *param;
-            ed->external_params = eina_list_append(ed->external_params, new_param);
-         }
-     }
 }
 
 /**
@@ -5506,121 +5480,6 @@ static void st_collections_group_parts_part_description_table_padding(void)
    ed->table.padding.y = parse_int_range(1, 0, 0x7fffffff);
 }
 
-static void
-_st_collections_group_parts_part_description_params(Edje_External_Param_Type type)
-{
-   Edje_Part_Collection *pc;
-   Edje_Part *ep;
-   Edje_Part_Description *ed;
-   Edje_External_Param *param;
-   Eina_List *l;
-   const char *name;
-   int found = 0;
-
-   check_arg_count(2);
-
-   pc = eina_list_data_get(eina_list_last(edje_collections));
-   ep = eina_list_data_get(eina_list_last(pc->parts));
-
-   if (ep->type != EDJE_PART_TYPE_EXTERNAL)
-     {
-       fprintf(stderr, "%s: Error. parse error %s:%i. "
-               "params in non-EXTERNAL part.\n",
-               progname, file_in, line - 1);
-       exit(-1);
-     }
-
-   ed = ep->default_desc;
-   if (ep->other_desc) ed = eina_list_data_get(eina_list_last(ep->other_desc));
-
-   name = parse_str(0);
-
-   /* if a param with this name already exists, overwrite it */
-   EINA_LIST_FOREACH(ed->external_params, l, param)
-     {
-       if (!strcmp(param->name, name))
-         {
-            found = 1;
-            break;
-         }
-     }
-
-   if (!found)
-     {
-       param = mem_alloc(SZ(Edje_External_Param));
-       param->name = name;
-     }
-
-   param->type = type;
-   param->i = 0;
-   param->d = 0;
-   param->s = NULL;
-
-   switch (type)
-     {
-      case EDJE_EXTERNAL_PARAM_TYPE_INT:
-        param->i = parse_int(1);
-        break;
-      case EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
-        param->d = parse_float(1);
-        break;
-      case EDJE_EXTERNAL_PARAM_TYPE_STRING:
-        param->s = parse_str(1);
-        break;
-     }
-
-   if (!found)
-     ed->external_params = eina_list_append(ed->external_params, param);
-}
-
-/**
-    @page edcref
-    @property
-        inherit
-    @parameters
-        [param_name] [int_value]
-    @effect
-       Adds an integer parameter for an external object
-    @endproperty
-*/
-static void
-st_collections_group_parts_part_description_params_int(void)
-{
-   _st_collections_group_parts_part_description_params(EDJE_EXTERNAL_PARAM_TYPE_INT);
-}
-
-/**
-    @page edcref
-    @property
-        inherit
-    @parameters
-        [param_name] [double_value]
-    @effect
-       Adds a double parameter for an external object
-    @endproperty
-*/
-static void
-st_collections_group_parts_part_description_params_double(void)
-{
-   _st_collections_group_parts_part_description_params(EDJE_EXTERNAL_PARAM_TYPE_DOUBLE);
-}
-
-/**
-    @page edcref
-    @property
-        inherit
-    @parameters
-        [param_name] [string_value]
-    @effect
-       Adds a string parameter for an external object
-    @endproperty
-*/
-static void
-st_collections_group_parts_part_description_params_string(void)
-{
-   _st_collections_group_parts_part_description_params(EDJE_EXTERNAL_PARAM_TYPE_STRING);
-}
-
 /**
     @page edcref
     @block
index b6f9fc1..7eb0bf2 100644 (file)
@@ -90,8 +90,7 @@ typedef enum _Edje_Part_Type
    EDJE_PART_TYPE_GROUP     = 7,
    EDJE_PART_TYPE_BOX       = 8,
    EDJE_PART_TYPE_TABLE     = 9,
-   EDJE_PART_TYPE_EXTERNAL  = 10,
-   EDJE_PART_TYPE_LAST      = 11
+   EDJE_PART_TYPE_LAST      = 10
 } Edje_Part_Type;
 
 typedef enum _Edje_Text_Effect
@@ -227,37 +226,6 @@ enum
      EDJE_LOAD_ERROR_RECURSIVE_REFERENCE = 9
 };
 
-enum _Edje_External_Param_Type
-{
-  EDJE_EXTERNAL_PARAM_TYPE_INT,
-  EDJE_EXTERNAL_PARAM_TYPE_DOUBLE,
-  EDJE_EXTERNAL_PARAM_TYPE_STRING,
-  EDJE_EXTERNAL_PARAM_TYPE_MAX
-};
-typedef enum _Edje_External_Param_Type Edje_External_Param_Type;
-
-struct _Edje_External_Param
-{
-  const char *name;
-  Edje_External_Param_Type type;
-  // XXX these could be in a union, but eet doesn't support them (or does it?)
-  int i;
-  double d;
-  const char *s;
-};
-typedef struct _Edje_External_Param Edje_External_Param;
-
-struct _Edje_External_Type
-{
-  Evas_Object *(*add) (void *data, Evas *evas, Evas_Object *parent, const Eina_List *params);
-  void (*state_set) (void *data, Evas_Object *obj, const Eina_List *from_params, const Eina_List *to_params, float pos);
-  void (*signal_emit) (void *data, Evas_Object *obj, const char *emission, const char *source);
-
-  void *data;
-};
-typedef struct _Edje_External_Type Edje_External_Type;
-
-
 typedef void (*Edje_Signal_Cb) (void *data, Evas_Object *obj, const char *emission, const char *source);
 typedef void (*Edje_Text_Change_Cb) (void *data, Evas_Object *obj, const char *part);
 typedef void (*Edje_Message_Handler_Cb) (void *data, Evas_Object *obj, Edje_Message_Type type, int id, void *msg);
@@ -397,11 +365,6 @@ extern "C" {
 
    EAPI void         edje_message_signal_process        (void);
 
-   /* edje_external.c */
-  EAPI Eina_Bool edje_external_type_register(const char *type_name, Edje_External_Type *type_info);
-  EAPI Eina_Bool edje_external_type_unregister(const char *type_name);
-  EAPI Edje_External_Param *edje_external_param_find(const Eina_List *params, const char *key);
-
 #ifdef __cplusplus
 }
 #endif
index 62a5bd7..6a4c7d5 100644 (file)
@@ -42,8 +42,7 @@ edje_textblock_styles.c \
 edje_edit.c \
 edje_script_only.c \
 edje_lua_script_only.c \
-edje_entry.c \
-edje_external.c
+edje_entry.c
 
 libedje_la_LIBADD = @EDJE_LIBS@ @ECORE_IMF_LIBS@ -lm
 libedje_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -version-info @version_info@ @release_info@
index c4b447f..2d2cc86 100644 (file)
@@ -1874,7 +1874,6 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags)
              /* move and resize are needed for all previous object => no break here. */
           case EDJE_PART_TYPE_SWALLOW:
           case EDJE_PART_TYPE_GROUP:
-          case EDJE_PART_TYPE_EXTERNAL:
              /* visibility and color have no meaning on SWALLOW and GROUP part. */
              evas_object_move(ep->object, ed->x + pf->x, ed->y + pf->y);
              evas_object_resize(ep->object, pf->w, pf->h);
@@ -1904,9 +1903,6 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags)
           case EDJE_PART_TYPE_TABLE:
              _edje_table_recalc_apply(ed, ep, pf, chosen_desc);
              break;
-          case EDJE_PART_TYPE_EXTERNAL:
-             _edje_external_recalc_apply(ed, ep, pf, chosen_desc);
-             break;
           case EDJE_PART_TYPE_RECTANGLE:
           case EDJE_PART_TYPE_SWALLOW:
           case EDJE_PART_TYPE_GROUP:
index c33c0b4..c913d60 100644 (file)
@@ -26,7 +26,6 @@ EAPI Eet_Data_Descriptor *_edje_edd_edje_part_collection = NULL;
 EAPI Eet_Data_Descriptor *_edje_edd_edje_part = NULL;
 EAPI Eet_Data_Descriptor *_edje_edd_edje_part_description = NULL;
 EAPI Eet_Data_Descriptor *_edje_edd_edje_part_image_id = NULL;
-EAPI Eet_Data_Descriptor *_edje_edd_edje_external_param = NULL;
 
 #define FREED(eed) \
    if (eed) \
@@ -60,7 +59,6 @@ _edje_edd_shutdown(void)
    FREED(_edje_edd_edje_part);
    FREED(_edje_edd_edje_part_description);
    FREED(_edje_edd_edje_part_image_id);
-   FREED(_edje_edd_edje_external_param);
 }
 
 void
@@ -215,15 +213,6 @@ _edje_edd_init(void)
      eet_data_descriptor_file_new(&eddc);
    EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_image_id, Edje_Part_Image_Id, "id", id, EET_T_INT);
 
-   EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Edje_External_Param);
-   _edje_edd_edje_external_param =
-     eet_data_descriptor_file_new(&eddc);
-   EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_external_param, Edje_External_Param, "name", name, EET_T_STRING);
-   EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_external_param, Edje_External_Param, "type", type, EET_T_INT);
-   EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_external_param, Edje_External_Param, "i", i, EET_T_INT);
-   EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_external_param, Edje_External_Param, "d", d, EET_T_DOUBLE);
-   EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_external_param, Edje_External_Param, "s", s, EET_T_STRING);
-
    EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Edje_Part_Description);
    _edje_edd_edje_part_description =
      eet_data_descriptor_file_new(&eddc);
@@ -329,7 +318,6 @@ _edje_edd_init(void)
    EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_description, Edje_Part_Description, "table.align.y", table.align.y, EET_T_DOUBLE);
    EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_description, Edje_Part_Description, "table.padding.x", table.padding.x, EET_T_INT);
    EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_description, Edje_Part_Description, "table.padding.y", table.padding.y, EET_T_INT);
-   EET_DATA_DESCRIPTOR_ADD_LIST(_edje_edd_edje_part_description, Edje_Part_Description, "external_params", external_params, _edje_edd_edje_external_param);
 
    EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Edje_Pack_Element);
    _edje_edd_edje_pack_element =
index 4f0a08b..53e7a23 100644 (file)
@@ -399,7 +399,6 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
                        break;
                     case EDJE_PART_TYPE_SWALLOW:
                     case EDJE_PART_TYPE_GROUP:
-                    case EDJE_PART_TYPE_EXTERNAL:
                        rp->object = evas_object_rectangle_add(ed->evas);
                        evas_object_color_set(rp->object, 0, 0, 0, 0);
                        evas_object_pass_events_set(rp->object, 1);
@@ -596,13 +595,6 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
                             source = pack_it->source;
                          }
                        break;
-                    case EDJE_PART_TYPE_EXTERNAL:
-                         {
-                            Evas_Object *child_obj;
-                            child_obj = _edje_external_type_add(rp->part->source, evas_object_evas_get(ed->obj), ed->obj, rp->part->default_desc->external_params);
-                            if (child_obj) _edje_real_part_swallow(rp, child_obj);
-                         }
-                       continue;
                     default:
                        continue;
                    }
@@ -847,7 +839,7 @@ _edje_file_del(Edje *ed)
 
                   /* Objects swallowed by the app do not get deleted,
                    but those internally swallowed (GROUP type) do. */
-                 if (rp->part->type == EDJE_PART_TYPE_GROUP || rp->part->type == EDJE_PART_TYPE_EXTERNAL)
+                 if (rp->part->type == EDJE_PART_TYPE_GROUP)
                    evas_object_del(rp->swallowed_object);
 
                  rp->swallowed_object = NULL;
@@ -1146,8 +1138,6 @@ _edje_collection_free_part_description_free(Edje_Part_Description *desc, unsigne
 
    EINA_LIST_FREE(desc->image.tween_list, pi)
      free(pi);
-   if (desc->external_params)
-     _edje_external_params_free(desc->external_params, free_strings);
    if (free_strings)
      {
        if (desc->color_class)     eina_stringshare_del(desc->color_class);
index 33faf50..aeeffef 100644 (file)
@@ -96,7 +96,6 @@ edje_init(void)
    _edje_edd_init();
    _edje_text_init();
    _edje_box_init();
-   _edje_external_init();
    _edje_lua_init();
    _edje_message_init();
 
@@ -127,7 +126,6 @@ edje_init(void)
    _edje_real_part_mp = NULL;
    _edje_message_shutdown();
    _edje_lua_shutdown();
-   _edje_external_shutdown();
    _edje_box_shutdown();
    _edje_text_class_members_free();
    _edje_text_class_hash_free();
@@ -185,7 +183,6 @@ edje_shutdown(void)
 
    _edje_message_shutdown();
    _edje_lua_shutdown();
-   _edje_external_shutdown();
    _edje_box_shutdown();
    _edje_text_class_members_free();
    _edje_text_class_hash_free();
index 4643300..9892068 100644 (file)
@@ -567,7 +567,6 @@ struct _Edje_Part_Description
    } table;
 
    Edje_Color color, color2, color3;  /* color for rect or text, shadow etc. */
-   Eina_List *external_params; /* parameters for external objects */
 
    unsigned char     visible; /* is it shown */
 };
@@ -1339,11 +1338,4 @@ void _edje_entry_cursor_geometry_get(Edje_Real_Part *rp, Evas_Coord *cx, Evas_Co
 void _edje_entry_select_allow_set(Edje_Real_Part *rp, Eina_Bool allow);
 void _edje_entry_select_abort(Edje_Real_Part *rp);
 
-void _edje_external_init();
-void _edje_external_shutdown();
-Evas_Object *_edje_external_type_add(const char *type_name, Evas *evas, Evas_Object *parent, const Eina_List *params);
-void _edje_external_signal_emit(Evas_Object *obj, const char *emission, const char *source);
-void _edje_external_params_free(Eina_List *params, unsigned int free_strings);
-void _edje_external_recalc_apply(Edje *ed, Edje_Real_Part *ep, Edje_Calc_Params *params, Edje_Part_Description *chosen_desc);
-
 #endif
index 066603e..b804992 100644 (file)
@@ -944,8 +944,8 @@ _edje_emit(Edje *ed, const char *sig, const char *src)
      {
         size_t length;
         char *part;
-       /* the signal contains a colon, split the signal into "part:signal",
-       * and deliver it to "part" (if there is a GROUP or EXTERNAL part named "part")
+       /* the signal contains a colon, split the signal into "group:signal",
+       * and deliver it to "group"
        */
        length = strlen(sig) + 1;
        part = alloca(length);
@@ -962,25 +962,17 @@ _edje_emit(Edje *ed, const char *sig, const char *src)
             for (i = 0; i < ed->table_parts_size; i++)
               {
                  Edje_Real_Part *rp = ed->table_parts[i];
-                 if ((rp->part->type == EDJE_PART_TYPE_GROUP || rp->part->type == EDJE_PART_TYPE_EXTERNAL) &&
+                 if ((rp->part->type == EDJE_PART_TYPE_GROUP) &&
                      (rp->swallowed_object) &&
                      (rp->part) && (rp->part->name) &&
                      (strcmp(rp->part->name, part) == 0))
                    {
-                     if (rp->part->type == EDJE_PART_TYPE_GROUP)
-                       {
-                          Edje *ed2 = _edje_fetch(rp->swallowed_object);
-                          if (ed2) _edje_emit(ed2, newsig, src);
-                          return; /* stop processing.
-                                   * XXX maybe let signal be processed anyway?
-                                   * XXX in this case, just comment this line
-                                   */
-                       }
-                     else if (rp->part->type == EDJE_PART_TYPE_EXTERNAL)
-                       {
-                          _edje_external_signal_emit(rp->swallowed_object, newsig, src);
-                          return;
-                       }
+                      Edje *ed2 = _edje_fetch(rp->swallowed_object);
+                      if (ed2) _edje_emit(ed2, newsig, src);
+                      return; /* stop processing.
+                              * XXX maybe let signal be processed anyway?
+                              * XXX in this case, just comment this line
+                              */
                    }
               }
          }