int *value
);
+/**Get external parameter of type BOOL*/
+EAPI Eina_Bool
+edje_edit_state_external_param_bool_get( ///@return True if succesful, False if not found or is of different type
+ Evas_Object *obj, ///< The edje object
+ const char *part, ///< The name of the part
+ const char *state, ///< The name of the 'part state' (ex. "default 0.00")
+ const char *param, ///< The name of the parameter
+ Eina_Bool *value
+);
+
/**Get external parameter of type DOUBLE*/
EAPI Eina_Bool
edje_edit_state_external_param_double_get( ///@return True if succesful, False if not found or is of different type
const char **value
);
+/**Get external parameter of type CHOICE*/
+EAPI Eina_Bool
+edje_edit_state_external_param_choice_get( ///@return True if succesful, False if not found or is of different type
+ Evas_Object *obj, ///< The edje object
+ const char *part, ///< The name of the part
+ const char *state, ///< The name of the 'part state' (ex. "default 0.00")
+ const char *param, ///< The name of the parameter
+ const char **value
+);
+
/**Set the external parameter type and value, adding it if it didn't exist before*/
EAPI Eina_Bool
edje_edit_state_external_param_set( ///@return True if it was set
int value
);
+/**Set external parameter of type BOOL*/
+EAPI Eina_Bool
+edje_edit_state_external_param_bool_set( ///@return True if it was set
+ Evas_Object *obj, ///< The edje object
+ const char *part, ///< The name of the part
+ const char *state, ///< The name of the 'part state' (ex. "default 0.00")
+ const char *param, ///< The name of the parameter
+ Eina_Bool value
+);
+
/**Set external parameter of type DOUBLE*/
EAPI Eina_Bool
edje_edit_state_external_param_double_set( ///@return True if it was set
const char *value
);
+/**Set external parameter of type CHOICE*/
+EAPI Eina_Bool
+edje_edit_state_external_param_choice_set( ///@return True if it was set
+ Evas_Object *obj, ///< The edje object
+ const char *part, ///< The name of the part
+ const char *state, ///< The name of the 'part state' (ex. "default 0.00")
+ const char *param, ///< The name of the parameter
+ const char *value
+);
+
//@}
/******************************************************************************/
{
case EDJE_EXTERNAL_PARAM_TYPE_INT:
case EDJE_EXTERNAL_PARAM_TYPE_BOOL:
- p->i = pi->info.i.def;
+ if (pi->info.i.def != EDJE_EXTERNAL_INT_UNSET)
+ p->i = pi->info.i.def;
break;
case EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
- p->d = pi->info.d.def;
+ if (pi->info.d.def != EDJE_EXTERNAL_DOUBLE_UNSET)
+ p->d = pi->info.d.def;
break;
case EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
if (pi->info.c.def)
}
EAPI Eina_Bool
+edje_edit_state_external_param_bool_get(Evas_Object *obj, const char *part, const char *state, const char *param, Eina_Bool *value)
+{
+ Eina_List *l;
+ Edje_External_Param *p;
+ GET_PD_OR_RETURN(EINA_FALSE);
+
+ EINA_LIST_FOREACH(pd->external_params, l, p)
+ if (!strcmp(p->name, param))
+ {
+ if (p->type != EDJE_EXTERNAL_PARAM_TYPE_INT)
+ return EINA_FALSE;
+ if (value)
+ *value = p->i;
+ return EINA_TRUE;
+ }
+
+ return EINA_FALSE;
+}
+
+EAPI Eina_Bool
edje_edit_state_external_param_double_get(Evas_Object *obj, const char *part, const char *state, const char *param, double *value)
{
Eina_List *l;
}
EAPI Eina_Bool
+edje_edit_state_external_param_bool_set(Evas_Object *obj, const char *part, const char *state, const char *param, Eina_Bool value)
+{
+ return edje_edit_state_external_param_set(obj, part, state, param, EDJE_EXTERNAL_PARAM_TYPE_BOOL, (int)value);
+}
+
+EAPI Eina_Bool
edje_edit_state_external_param_double_set(Evas_Object *obj, const char *part, const char *state, const char *param, double value)
{
return edje_edit_state_external_param_set(obj, part, state, param, EDJE_EXTERNAL_PARAM_TYPE_DOUBLE, value);