Clouseau: Remove some client specific stuff from the lib.
SVN revision: 83475
This commit is contained in:
parent
3d4fd428a0
commit
f8fb1f73f5
|
@ -10,6 +10,9 @@
|
||||||
#define TAKE_SCREENSHOT "/images/take-screenshot.png"
|
#define TAKE_SCREENSHOT "/images/take-screenshot.png"
|
||||||
#define SCREENSHOT_MISSING "/images/screenshot-missing.png"
|
#define SCREENSHOT_MISSING "/images/screenshot-missing.png"
|
||||||
|
|
||||||
|
static Evas_Object *prop_list = NULL;
|
||||||
|
static Elm_Genlist_Item_Class _obj_info_itc;
|
||||||
|
|
||||||
struct _app_data_st
|
struct _app_data_st
|
||||||
{
|
{
|
||||||
app_info_st *app;
|
app_info_st *app;
|
||||||
|
@ -64,6 +67,57 @@ static Eina_Bool _add_callback_called = EINA_FALSE;
|
||||||
static void _cancel_bt_clicked(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED);
|
static void _cancel_bt_clicked(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED);
|
||||||
static void _ofl_bt_clicked(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED);
|
static void _ofl_bt_clicked(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED);
|
||||||
|
|
||||||
|
static void
|
||||||
|
_clouseau_object_dbg_string_build(Clouseau_Eo_Dbg_Info *eo,
|
||||||
|
char *buf, int buf_size)
|
||||||
|
{ /* Build a string from dbg-info in buffer, or return empty buffer */
|
||||||
|
int i;
|
||||||
|
*buf = '\0';
|
||||||
|
if (eo->type == EINA_VALUE_TYPE_STRING)
|
||||||
|
{ /* First set flags to say if got info from eo */
|
||||||
|
snprintf(buf, buf_size, "%s",
|
||||||
|
eo->un_dbg_info.text.s);
|
||||||
|
|
||||||
|
for(i = 0; buf[i]; i++)
|
||||||
|
buf[i] = tolower(buf[i]);
|
||||||
|
|
||||||
|
snprintf(buf, buf_size, "%s: %s",
|
||||||
|
eo->name, eo->un_dbg_info.text.s);
|
||||||
|
}
|
||||||
|
else if (eo->type == EINA_VALUE_TYPE_INT)
|
||||||
|
{
|
||||||
|
snprintf(buf, buf_size, "%s: %d",
|
||||||
|
eo->name, eo->un_dbg_info.intg.i);
|
||||||
|
}
|
||||||
|
else if (eo->type == EINA_VALUE_TYPE_CHAR)
|
||||||
|
{
|
||||||
|
|
||||||
|
snprintf(buf, buf_size, "%s: %s",
|
||||||
|
eo->name, (eo->un_dbg_info.bl.b) ?
|
||||||
|
"TRUE" : "FALSE");
|
||||||
|
}
|
||||||
|
else if (eo->type == EINA_VALUE_TYPE_UINT64)
|
||||||
|
|
||||||
|
{
|
||||||
|
snprintf(buf, buf_size, "%s: %llx",
|
||||||
|
eo->name, eo->un_dbg_info.ptr.p);
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (eo->type == EINA_VALUE_TYPE_DOUBLE)
|
||||||
|
{
|
||||||
|
snprintf(buf, buf_size, "%s: %.2f",
|
||||||
|
eo->name, eo->un_dbg_info.dbl.d);
|
||||||
|
}
|
||||||
|
else if (eo->type == EINA_VALUE_TYPE_LIST)
|
||||||
|
{
|
||||||
|
snprintf(buf, buf_size, "%s", eo->name);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_titlebar_string_set(gui_elements *g, Eina_Bool online)
|
_titlebar_string_set(gui_elements *g, Eina_Bool online)
|
||||||
{
|
{
|
||||||
|
@ -1219,8 +1273,29 @@ _gl_selected(void *data, Evas_Object *pobj EINA_UNUSED, void *event_info)
|
||||||
/* Populate object information, then do highlight */
|
/* Populate object information, then do highlight */
|
||||||
if (g->gl_it != event_info)
|
if (g->gl_it != event_info)
|
||||||
{
|
{
|
||||||
|
elm_genlist_clear(prop_list);
|
||||||
clouseau_object_information_list_populate(treeit, g->lb);
|
clouseau_object_information_list_populate(treeit, g->lb);
|
||||||
g->gl_it = event_info;
|
g->gl_it = event_info;
|
||||||
|
|
||||||
|
{
|
||||||
|
/* Fetch properties of eo object */
|
||||||
|
Clouseau_Eo_Dbg_Info *eo;
|
||||||
|
Eina_List *expand_list = NULL, *l, *l_prev;
|
||||||
|
Elm_Object_Item *eo_it;
|
||||||
|
EINA_LIST_FOREACH(treeit->eo_info,l, eo)
|
||||||
|
{
|
||||||
|
Elm_Genlist_Item_Type iflag = (eo->type == EINA_VALUE_TYPE_LIST) ?
|
||||||
|
ELM_GENLIST_ITEM_TREE : ELM_GENLIST_ITEM_NONE;
|
||||||
|
eo_it = elm_genlist_item_append(prop_list, &_obj_info_itc, eo, NULL,
|
||||||
|
iflag, _gl_selected, NULL);
|
||||||
|
expand_list = eina_list_append(expand_list, eo_it);
|
||||||
|
}
|
||||||
|
EINA_LIST_REVERSE_FOREACH_SAFE(expand_list, l, l_prev, eo_it)
|
||||||
|
{
|
||||||
|
elm_genlist_item_expanded_set(eo_it, EINA_TRUE);
|
||||||
|
expand_list = eina_list_remove_list(expand_list, l);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!do_highlight)
|
if (!do_highlight)
|
||||||
|
@ -1692,11 +1767,99 @@ _main_list_create(Evas_Object *panes)
|
||||||
"selected", _gl_selected, gui);
|
"selected", _gl_selected, gui);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_clouseau_object_dbg_string_build(Clouseau_Eo_Dbg_Info *eo,
|
||||||
|
char *buf, int buf_size);
|
||||||
|
|
||||||
|
static void
|
||||||
|
_obj_info_gl_selected(void *data EINA_UNUSED, Evas_Object *pobj EINA_UNUSED,
|
||||||
|
void *event_info EINA_UNUSED)
|
||||||
|
{
|
||||||
|
/* Currently do nothing */
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_obj_info_gl_exp(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
|
||||||
|
{
|
||||||
|
Elm_Object_Item *glit = event_info;
|
||||||
|
Eina_List *itr;
|
||||||
|
|
||||||
|
Clouseau_Eo_Dbg_Info *eo = elm_object_item_data_get(glit);
|
||||||
|
Clouseau_Eo_Dbg_Info *child;
|
||||||
|
EINA_LIST_FOREACH(eo->un_dbg_info.dbg.list, itr, child)
|
||||||
|
{
|
||||||
|
Elm_Genlist_Item_Type iflag = (child->type == EINA_VALUE_TYPE_LIST) ?
|
||||||
|
ELM_GENLIST_ITEM_TREE : ELM_GENLIST_ITEM_NONE;
|
||||||
|
elm_genlist_item_append(prop_list, &_obj_info_itc, child, glit,
|
||||||
|
iflag, _obj_info_gl_selected, NULL);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_obj_info_gl_con(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
|
||||||
|
{
|
||||||
|
Elm_Object_Item *glit = event_info;
|
||||||
|
elm_genlist_item_subitems_clear(glit);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_obj_info_gl_exp_req(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
|
||||||
|
{
|
||||||
|
Elm_Object_Item *glit = event_info;
|
||||||
|
elm_genlist_item_expanded_set(glit, EINA_TRUE);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_obj_info_gl_con_req(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
|
||||||
|
{
|
||||||
|
Elm_Object_Item *glit = event_info;
|
||||||
|
elm_genlist_item_expanded_set(glit, EINA_FALSE);
|
||||||
|
}
|
||||||
|
|
||||||
|
static Evas_Object *
|
||||||
|
_obj_info_gl_item_icon_get(void *data EINA_UNUSED, Evas_Object *parent EINA_UNUSED,
|
||||||
|
const char *part EINA_UNUSED)
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
static char *
|
||||||
|
_obj_info_gl_item_text_get(void *data, Evas_Object *obj EINA_UNUSED,
|
||||||
|
const char *part EINA_UNUSED)
|
||||||
|
{
|
||||||
|
Clouseau_Eo_Dbg_Info *eo = data;
|
||||||
|
char buf[1024];
|
||||||
|
_clouseau_object_dbg_string_build(eo, (char*)buf, 1024);
|
||||||
|
return strdup(buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
static Evas_Object *
|
||||||
|
_clouseau_object_information_list_add(Evas_Object *parent)
|
||||||
|
{
|
||||||
|
prop_list = elm_genlist_add(parent);
|
||||||
|
_obj_info_itc.item_style = "default";
|
||||||
|
_obj_info_itc.func.text_get = _obj_info_gl_item_text_get;
|
||||||
|
_obj_info_itc.func.content_get = _obj_info_gl_item_icon_get;
|
||||||
|
_obj_info_itc.func.state_get = NULL;
|
||||||
|
_obj_info_itc.func.del = NULL;
|
||||||
|
|
||||||
|
evas_object_smart_callback_add(prop_list, "expand,request", _obj_info_gl_exp_req,
|
||||||
|
prop_list);
|
||||||
|
evas_object_smart_callback_add(prop_list, "contract,request", _obj_info_gl_con_req,
|
||||||
|
prop_list);
|
||||||
|
evas_object_smart_callback_add(prop_list, "expanded", _obj_info_gl_exp, prop_list);
|
||||||
|
evas_object_smart_callback_add(prop_list, "contracted", _obj_info_gl_con, prop_list);
|
||||||
|
evas_object_smart_callback_add(prop_list, "selected", _obj_info_gl_selected, NULL);
|
||||||
|
|
||||||
|
return prop_list;
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_property_list_create(Evas_Object *panes)
|
_property_list_create(Evas_Object *panes)
|
||||||
{
|
{
|
||||||
Evas_Object *o= NULL;
|
Evas_Object *o= NULL;
|
||||||
gui->prop_list = o = clouseau_object_information_list_add(panes);
|
gui->prop_list = o = _clouseau_object_information_list_add(panes);
|
||||||
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
||||||
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||||
|
|
||||||
|
|
|
@ -153,9 +153,7 @@ struct _Clouseau_Tree_Item
|
||||||
|
|
||||||
Eet_Data_Descriptor *clouseau_object_desc_make(void);
|
Eet_Data_Descriptor *clouseau_object_desc_make(void);
|
||||||
void clouseau_object_desc_shutdown(void);
|
void clouseau_object_desc_shutdown(void);
|
||||||
void clouseau_object_information_list_clear(void);
|
|
||||||
|
|
||||||
/* Public */
|
/* Public */
|
||||||
EAPI Evas_Object *clouseau_object_information_list_add(Evas_Object *parent);
|
|
||||||
EAPI void clouseau_object_information_list_populate(Clouseau_Tree_Item *treeit, Evas_Object *lb);
|
EAPI void clouseau_object_information_list_populate(Clouseau_Tree_Item *treeit, Evas_Object *lb);
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1,98 +1,5 @@
|
||||||
#include "Clouseau.h"
|
#include "Clouseau.h"
|
||||||
#include "clouseau_private.h"
|
#include "clouseau_private.h"
|
||||||
#define ELM_INTERNAL_API_ARGESFSDFEFC
|
|
||||||
#include <elm_widget.h>
|
|
||||||
|
|
||||||
static Evas_Object *prop_list = NULL;
|
|
||||||
static Elm_Genlist_Item_Class itc;
|
|
||||||
|
|
||||||
static void
|
|
||||||
_clouseau_object_dbg_string_build(Clouseau_Eo_Dbg_Info *eo,
|
|
||||||
char *buf, int buf_size);
|
|
||||||
|
|
||||||
static void
|
|
||||||
_gl_selected(void *data EINA_UNUSED, Evas_Object *pobj EINA_UNUSED,
|
|
||||||
void *event_info EINA_UNUSED)
|
|
||||||
{
|
|
||||||
/* Currently do nothing */
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
gl_exp(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
|
|
||||||
{
|
|
||||||
Elm_Object_Item *glit = event_info;
|
|
||||||
Eina_List *itr;
|
|
||||||
|
|
||||||
Clouseau_Eo_Dbg_Info *eo = elm_object_item_data_get(glit);
|
|
||||||
Clouseau_Eo_Dbg_Info *child;
|
|
||||||
EINA_LIST_FOREACH(eo->un_dbg_info.dbg.list, itr, child)
|
|
||||||
{
|
|
||||||
Elm_Genlist_Item_Type iflag = (child->type == EINA_VALUE_TYPE_LIST) ?
|
|
||||||
ELM_GENLIST_ITEM_TREE : ELM_GENLIST_ITEM_NONE;
|
|
||||||
elm_genlist_item_append(prop_list, &itc, child, glit,
|
|
||||||
iflag, _gl_selected, NULL);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
gl_con(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
|
|
||||||
{
|
|
||||||
Elm_Object_Item *glit = event_info;
|
|
||||||
elm_genlist_item_subitems_clear(glit);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
gl_exp_req(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
|
|
||||||
{
|
|
||||||
Elm_Object_Item *glit = event_info;
|
|
||||||
elm_genlist_item_expanded_set(glit, EINA_TRUE);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
gl_con_req(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
|
|
||||||
{
|
|
||||||
Elm_Object_Item *glit = event_info;
|
|
||||||
elm_genlist_item_expanded_set(glit, EINA_FALSE);
|
|
||||||
}
|
|
||||||
|
|
||||||
static Evas_Object *
|
|
||||||
item_icon_get(void *data EINA_UNUSED, Evas_Object *parent EINA_UNUSED,
|
|
||||||
const char *part EINA_UNUSED)
|
|
||||||
{
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
static char *
|
|
||||||
item_text_get(void *data, Evas_Object *obj EINA_UNUSED,
|
|
||||||
const char *part EINA_UNUSED)
|
|
||||||
{
|
|
||||||
Clouseau_Eo_Dbg_Info *eo = data;
|
|
||||||
char buf[1024];
|
|
||||||
_clouseau_object_dbg_string_build(eo, (char*)buf, 1024);
|
|
||||||
return strdup(buf);
|
|
||||||
}
|
|
||||||
|
|
||||||
EAPI Evas_Object *
|
|
||||||
clouseau_object_information_list_add(Evas_Object *parent)
|
|
||||||
{
|
|
||||||
prop_list = elm_genlist_add(parent);
|
|
||||||
itc.item_style = "default";
|
|
||||||
itc.func.text_get = item_text_get;
|
|
||||||
itc.func.content_get = item_icon_get;
|
|
||||||
itc.func.state_get = NULL;
|
|
||||||
itc.func.del = NULL;
|
|
||||||
|
|
||||||
evas_object_smart_callback_add(prop_list, "expand,request", gl_exp_req,
|
|
||||||
prop_list);
|
|
||||||
evas_object_smart_callback_add(prop_list, "contract,request", gl_con_req,
|
|
||||||
prop_list);
|
|
||||||
evas_object_smart_callback_add(prop_list, "expanded", gl_exp, prop_list);
|
|
||||||
evas_object_smart_callback_add(prop_list, "contracted", gl_con, prop_list);
|
|
||||||
evas_object_smart_callback_add(prop_list, "selected", _gl_selected, NULL);
|
|
||||||
|
|
||||||
return prop_list;
|
|
||||||
}
|
|
||||||
|
|
||||||
EAPI void
|
EAPI void
|
||||||
clouseau_object_information_free(Clouseau_Object *oinfo)
|
clouseau_object_information_free(Clouseau_Object *oinfo)
|
||||||
|
@ -244,56 +151,6 @@ static const struct {
|
||||||
{ CLOUSEAU_OBJ_TYPE_TEXTBLOCK, "Textblock" }
|
{ CLOUSEAU_OBJ_TYPE_TEXTBLOCK, "Textblock" }
|
||||||
};
|
};
|
||||||
|
|
||||||
static void
|
|
||||||
_clouseau_object_dbg_string_build(Clouseau_Eo_Dbg_Info *eo,
|
|
||||||
char *buf, int buf_size)
|
|
||||||
{ /* Build a string from dbg-info in buffer, or return empty buffer */
|
|
||||||
int i;
|
|
||||||
*buf = '\0';
|
|
||||||
if (eo->type == EINA_VALUE_TYPE_STRING)
|
|
||||||
{ /* First set flags to say if got info from eo */
|
|
||||||
snprintf(buf, buf_size, "%s",
|
|
||||||
eo->un_dbg_info.text.s);
|
|
||||||
|
|
||||||
for(i = 0; buf[i]; i++)
|
|
||||||
buf[i] = tolower(buf[i]);
|
|
||||||
|
|
||||||
snprintf(buf, buf_size, "%s: %s",
|
|
||||||
eo->name, eo->un_dbg_info.text.s);
|
|
||||||
}
|
|
||||||
else if (eo->type == EINA_VALUE_TYPE_INT)
|
|
||||||
{
|
|
||||||
snprintf(buf, buf_size, "%s: %d",
|
|
||||||
eo->name, eo->un_dbg_info.intg.i);
|
|
||||||
}
|
|
||||||
else if (eo->type == EINA_VALUE_TYPE_CHAR)
|
|
||||||
{
|
|
||||||
|
|
||||||
snprintf(buf, buf_size, "%s: %s",
|
|
||||||
eo->name, (eo->un_dbg_info.bl.b) ?
|
|
||||||
"TRUE" : "FALSE");
|
|
||||||
}
|
|
||||||
else if (eo->type == EINA_VALUE_TYPE_UINT64)
|
|
||||||
|
|
||||||
{
|
|
||||||
snprintf(buf, buf_size, "%s: %llx",
|
|
||||||
eo->name, eo->un_dbg_info.ptr.p);
|
|
||||||
}
|
|
||||||
|
|
||||||
else if (eo->type == EINA_VALUE_TYPE_DOUBLE)
|
|
||||||
{
|
|
||||||
snprintf(buf, buf_size, "%s: %.2f",
|
|
||||||
eo->name, eo->un_dbg_info.dbl.d);
|
|
||||||
}
|
|
||||||
else if (eo->type == EINA_VALUE_TYPE_LIST)
|
|
||||||
{
|
|
||||||
snprintf(buf, buf_size, "%s", eo->name);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
EAPI void
|
EAPI void
|
||||||
clouseau_object_information_list_populate(Clouseau_Tree_Item *treeit, Evas_Object *lb)
|
clouseau_object_information_list_populate(Clouseau_Tree_Item *treeit, Evas_Object *lb)
|
||||||
{
|
{
|
||||||
|
@ -302,8 +159,6 @@ clouseau_object_information_list_populate(Clouseau_Tree_Item *treeit, Evas_Objec
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
Eo_Dbg_Info *root = EO_DBG_INFO_LIST_APPEND(NULL, "");
|
Eo_Dbg_Info *root = EO_DBG_INFO_LIST_APPEND(NULL, "");
|
||||||
|
|
||||||
clouseau_object_information_list_clear();
|
|
||||||
|
|
||||||
if (!treeit->is_obj)
|
if (!treeit->is_obj)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -468,30 +323,5 @@ clouseau_object_information_list_populate(Clouseau_Tree_Item *treeit, Evas_Objec
|
||||||
treeit->eo_info = _clouseau_eo_list_convert(root);
|
treeit->eo_info = _clouseau_eo_list_convert(root);
|
||||||
eo_dbg_info_free(root);
|
eo_dbg_info_free(root);
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
|
||||||
/* Fetch properties of eo object */
|
|
||||||
Clouseau_Eo_Dbg_Info *eo;
|
|
||||||
Eina_List *expand_list = NULL, *l, *l_prev;
|
|
||||||
Elm_Object_Item *eo_it;
|
|
||||||
EINA_LIST_FOREACH(treeit->eo_info,l, eo)
|
|
||||||
{
|
|
||||||
Elm_Genlist_Item_Type iflag = (eo->type == EINA_VALUE_TYPE_LIST) ?
|
|
||||||
ELM_GENLIST_ITEM_TREE : ELM_GENLIST_ITEM_NONE;
|
|
||||||
eo_it = elm_genlist_item_append(prop_list, &itc, eo, NULL,
|
|
||||||
iflag, _gl_selected, NULL);
|
|
||||||
expand_list = eina_list_append(expand_list, eo_it);
|
|
||||||
}
|
|
||||||
EINA_LIST_REVERSE_FOREACH_SAFE(expand_list, l, l_prev, eo_it)
|
|
||||||
{
|
|
||||||
elm_genlist_item_expanded_set(eo_it, EINA_TRUE);
|
|
||||||
expand_list = eina_list_remove_list(expand_list, l);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
EAPI void
|
|
||||||
clouseau_object_information_list_clear(void)
|
|
||||||
{
|
|
||||||
elm_genlist_clear(prop_list);
|
|
||||||
}
|
|
||||||
|
|
Loading…
Reference in New Issue