forked from enlightenment/enventor
panes - refactoring.
it's now singleton style. only base gui access this panes internally.
This commit is contained in:
parent
13d1a9f2c8
commit
29e4aa94c6
|
@ -5,7 +5,6 @@ struct base_s
|
|||
{
|
||||
Evas_Object *win;
|
||||
Evas_Object *layout;
|
||||
Evas_Object *panes;
|
||||
};
|
||||
|
||||
static base_data *g_bd = NULL;
|
||||
|
@ -37,7 +36,6 @@ base_statusbar_toggle()
|
|||
elm_object_signal_emit(bd->layout, "elm,state,statusbar,hide", "");
|
||||
}
|
||||
|
||||
//This function is used in panes. Maybe layout should be separated from main.
|
||||
void
|
||||
base_hotkey_toggle()
|
||||
{
|
||||
|
@ -82,34 +80,35 @@ void
|
|||
base_full_view_left()
|
||||
{
|
||||
base_data *bd = g_bd;
|
||||
panes_full_view_left(bd->panes);
|
||||
panes_full_view_left();
|
||||
}
|
||||
|
||||
void
|
||||
base_full_view_right()
|
||||
{
|
||||
base_data *bd = g_bd;
|
||||
panes_full_view_right(bd->panes);
|
||||
panes_full_view_right();
|
||||
}
|
||||
|
||||
void
|
||||
base_right_view_set(Evas_Object *right)
|
||||
{
|
||||
base_data *bd = g_bd;
|
||||
elm_object_part_content_set(bd->panes, "right", right);
|
||||
panes_content_set("right", right);
|
||||
}
|
||||
|
||||
void
|
||||
base_left_view_set(Evas_Object *left)
|
||||
{
|
||||
base_data *bd = g_bd;
|
||||
elm_object_part_content_set(bd->panes, "left", left);
|
||||
panes_content_set("left", left);
|
||||
}
|
||||
|
||||
void
|
||||
base_gui_term()
|
||||
{
|
||||
base_data *bd = g_bd;
|
||||
panes_term();
|
||||
free(bd);
|
||||
}
|
||||
|
||||
|
@ -145,12 +144,11 @@ base_gui_init()
|
|||
evas_object_show(layout);
|
||||
|
||||
//Panes
|
||||
Evas_Object *panes = panes_create(layout);
|
||||
Evas_Object *panes = panes_init(layout);
|
||||
elm_object_part_content_set(layout, "elm.swallow.panes", panes);
|
||||
|
||||
bd->win = win;
|
||||
bd->layout = layout;
|
||||
bd->panes = panes;
|
||||
|
||||
return EINA_TRUE;
|
||||
}
|
||||
|
|
|
@ -156,19 +156,34 @@ panes_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
|
|||
void
|
||||
panes_full_view_right(Evas_Object *panes)
|
||||
{
|
||||
panes_data *pd = evas_object_data_get(panes, PANES_DATA);
|
||||
panes_data *pd = g_pd;
|
||||
right_clicked_cb(pd, pd->right_arrow, NULL);
|
||||
}
|
||||
|
||||
void
|
||||
panes_full_view_left(Evas_Object *panes)
|
||||
{
|
||||
panes_data *pd = evas_object_data_get(panes, PANES_DATA);
|
||||
panes_data *pd = g_pd;
|
||||
left_clicked_cb(pd, pd->left_arrow, NULL);
|
||||
}
|
||||
|
||||
void
|
||||
panes_content_set(const char *part, Evas_Object *content)
|
||||
{
|
||||
panes_data *pd = g_pd;
|
||||
elm_object_part_content_set(pd->panes, part, content);
|
||||
}
|
||||
|
||||
void
|
||||
panes_term()
|
||||
{
|
||||
panes_data *pd = g_pd;
|
||||
evas_object_del(pd->panes);
|
||||
free(pd);
|
||||
}
|
||||
|
||||
Evas_Object *
|
||||
panes_create(Evas_Object *parent)
|
||||
panes_init(Evas_Object *parent)
|
||||
{
|
||||
Evas_Object *img;
|
||||
|
||||
|
@ -238,6 +253,4 @@ panes_create(Evas_Object *parent)
|
|||
pd->state = PANES_SPLIT_VIEW;
|
||||
|
||||
evas_object_data_set(panes, PANES_DATA, pd);
|
||||
|
||||
return panes;
|
||||
}
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
#include "panes.h"
|
||||
|
||||
Eina_Bool base_gui_init();
|
||||
Evas_Object *base_win_get();
|
||||
Evas_Object *base_layout_get();
|
||||
|
|
|
@ -22,7 +22,6 @@ typedef struct base_s base_data;
|
|||
#include "syntax_color.h"
|
||||
#include "config_data.h"
|
||||
#include "edc_parser.h"
|
||||
#include "panes.h"
|
||||
#include "dummy_obj.h"
|
||||
#include "ctxpopup.h"
|
||||
#include "indent.h"
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
Evas_Object *panes_create(Evas_Object *parent);
|
||||
void panes_full_view_right(Evas_Object *panes);
|
||||
void panes_full_view_left(Evas_Object *panes);
|
||||
Evas_Object *panes_init(Evas_Object *parent);
|
||||
void panes_term();
|
||||
void panes_full_view_right();
|
||||
void panes_full_view_left();
|
||||
void panes_content_set(const char *part, Evas_Object *content);
|
||||
|
|
Loading…
Reference in New Issue