Oops! ecore must not depend on ecore-evas!

move helper function inside ecore-evas.



SVN revision: 38250
This commit is contained in:
Gustavo Sverzut Barbieri 2008-12-20 15:19:48 +00:00
parent e66e9cc905
commit 02ced33a33
4 changed files with 43 additions and 41 deletions

View File

@ -381,8 +381,6 @@ extern "C" {
EAPI Eina_List *ecore_getopt_list_free(Eina_List *list);
/* helper functions to be used with ECORE_GETOPT_CALLBACK_*() */
EAPI unsigned char ecore_getopt_callback_ecore_evas_list_engines(const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage);
EAPI unsigned char ecore_getopt_callback_geometry_parse(const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage);

View File

@ -1640,45 +1640,6 @@ ecore_getopt_list_free(Eina_List *list)
return NULL;
}
/**
* Helper ecore_getopt callback to list available Ecore_Evas engines.
*
* This will list all available engines except buffer, this is useful
* for applications to let user choose how they should create windows
* with ecore_evas_new().
*
* @c callback_data value is used as @c FILE* and says where to output
* messages, by default it is @c stdout. You can specify this value
* with ECORE_GETOPT_CALLBACK_FULL() or ECORE_GETOPT_CALLBACK_ARGS().
*
* If there is a boolean storage provided, then it is marked with 1
* when this option is executed.
*/
unsigned char
ecore_getopt_callback_ecore_evas_list_engines(const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage)
{
Eina_List *lst, *n;
const char *engine;
FILE *fp = data;
if (!fp)
fp = stdout;
lst = ecore_evas_engines_get();
fputs("supported engines:\n", fp);
EINA_LIST_FOREACH(lst, n, engine)
if (strcmp(engine, "buffer") != 0)
fprintf(fp, "\t%s\n", engine);
ecore_evas_engines_free(lst);
if (storage->boolp)
*storage->boolp = 1;
return 1;
}
/**
* Helper ecore_getopt callback to parse geometry (x:y:w:h).
*

View File

@ -49,6 +49,7 @@
*/
#include <Evas.h>
#include <Ecore_Getopt.h>
#ifdef __cplusplus
extern "C" {
@ -318,6 +319,9 @@ EAPI int ecore_evas_object_associate(Ecore_Evas *ee, Evas_Object *obj,
EAPI int ecore_evas_object_dissociate(Ecore_Evas *ee, Evas_Object *obj);
EAPI Evas_Object *ecore_evas_object_associate_get(const Ecore_Evas *ee);
/* helper function to be used with ECORE_GETOPT_CALLBACK_*() */
EAPI unsigned char ecore_getopt_callback_ecore_evas_list_engines(const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage);
#ifdef __cplusplus
}
#endif

View File

@ -431,3 +431,42 @@ _ecore_evas_object_dissociate(Ecore_Evas *ee, Evas_Object *obj)
_evas_object_associate_del(obj);
}
/**
* Helper ecore_getopt callback to list available Ecore_Evas engines.
*
* This will list all available engines except buffer, this is useful
* for applications to let user choose how they should create windows
* with ecore_evas_new().
*
* @c callback_data value is used as @c FILE* and says where to output
* messages, by default it is @c stdout. You can specify this value
* with ECORE_GETOPT_CALLBACK_FULL() or ECORE_GETOPT_CALLBACK_ARGS().
*
* If there is a boolean storage provided, then it is marked with 1
* when this option is executed.
*/
unsigned char
ecore_getopt_callback_ecore_evas_list_engines(const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage)
{
Eina_List *lst, *n;
const char *engine;
FILE *fp = data;
if (!fp)
fp = stdout;
lst = ecore_evas_engines_get();
fputs("supported engines:\n", fp);
EINA_LIST_FOREACH(lst, n, engine)
if (strcmp(engine, "buffer") != 0)
fprintf(fp, "\t%s\n", engine);
ecore_evas_engines_free(lst);
if (storage->boolp)
*storage->boolp = 1;
return 1;
}