e17/evry/gadget: show aggregator by default, move window next to gadget.

SVN revision: 62815
This commit is contained in:
Hannes Janetzek 2011-08-25 12:58:35 +00:00
parent 8bf1f59674
commit ae90270846
1 changed files with 73 additions and 77 deletions

View File

@ -41,7 +41,6 @@ static const E_Gadcon_Client_Class _gadcon_class =
static int uuid = 0;
static E_Gadcon_Client *
_gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style)
{
@ -140,7 +139,7 @@ _conf_item_get(const char *id)
}
ci = E_NEW(Gadget_Config, 1);
ci->id = eina_stringshare_add(id);
ci->plugin = eina_stringshare_add("Start");
/* ci->plugin = eina_stringshare_add("Start"); */
evry_conf->gadgets = eina_list_append(evry_conf->gadgets, ci);
@ -199,8 +198,8 @@ _button_cb_mouse_down(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED_
ev = event_info;
if (ev->button == 1)
{
/* Evas_Coord x, y, w, h; */
/* int cx, cy, pw, ph; */
Evas_Coord x, y, w, h;
int cx, cy, pw, ph;
Evry_Window *win;
if (inst->win)
@ -225,64 +224,61 @@ _button_cb_mouse_down(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED_
0, inst->cfg->plugin, EINA_FALSE);
if (!win) return;
e_win_show(win->ewin);
e_border_focus_set(win->ewin->border, 1, 1);
/* evas_object_geometry_get(inst->o_button, &x, &y, &w, &h);
* e_gadcon_canvas_zone_geometry_get(inst->gcc->gadcon,
* &cx, &cy, NULL, NULL);
* x += cx;
* y += cy; */
evas_object_geometry_get(inst->o_button, &x, &y, &w, &h);
e_gadcon_canvas_zone_geometry_get(inst->gcc->gadcon,
&cx, &cy, NULL, NULL);
x += cx;
y += cy;
/* evas_object_resize(win->o_main,
* evry_conf->edge_width,
* evry_conf->edge_height);
*
* e_popup_resize(win->popup,
* evry_conf->edge_width,
* evry_conf->edge_height); */
* evry_conf->edge_height); */
/* pw = win->ewin->w;
* ph = win->ewin->h;
*
* switch (inst->gcc->gadcon->orient)
* {
*
* case E_GADCON_ORIENT_TOP:
* case E_GADCON_ORIENT_CORNER_TL:
* case E_GADCON_ORIENT_CORNER_TR:
* e_win_move(win->ewin, x, y + h);
* break;
* case E_GADCON_ORIENT_BOTTOM:
* case E_GADCON_ORIENT_CORNER_BR:
* case E_GADCON_ORIENT_CORNER_BL:
* e_win_move(win->ewin, x, y - ph);
* break;
* case E_GADCON_ORIENT_LEFT:
* case E_GADCON_ORIENT_CORNER_LT:
* case E_GADCON_ORIENT_CORNER_LB:
* e_win_move(win->ewin, x + w, y);
* break;
* case E_GADCON_ORIENT_RIGHT:
* case E_GADCON_ORIENT_CORNER_RT:
* case E_GADCON_ORIENT_CORNER_RB:
* e_win_move(win->ewin, x - pw, y);
* break;
* case E_GADCON_ORIENT_FLOAT:
* case E_GADCON_ORIENT_HORIZ:
* case E_GADCON_ORIENT_VERT:
* default:
* break;
* } */
pw = win->ewin->w;
ph = win->ewin->h;
switch (inst->gcc->gadcon->orient)
{
case E_GADCON_ORIENT_TOP:
case E_GADCON_ORIENT_CORNER_TL:
case E_GADCON_ORIENT_CORNER_TR:
e_win_move(win->ewin, x, y + h);
break;
case E_GADCON_ORIENT_BOTTOM:
case E_GADCON_ORIENT_CORNER_BR:
case E_GADCON_ORIENT_CORNER_BL:
e_win_move(win->ewin, x, y - ph);
break;
case E_GADCON_ORIENT_LEFT:
case E_GADCON_ORIENT_CORNER_LT:
case E_GADCON_ORIENT_CORNER_LB:
e_win_move(win->ewin, x + w, y);
break;
case E_GADCON_ORIENT_RIGHT:
case E_GADCON_ORIENT_CORNER_RT:
case E_GADCON_ORIENT_CORNER_RB:
e_win_move(win->ewin, x - pw, y);
break;
case E_GADCON_ORIENT_FLOAT:
case E_GADCON_ORIENT_HORIZ:
case E_GADCON_ORIENT_VERT:
default:
break;
}
if (win->ewin->x + pw > win->zone->w)
e_win_move(win->ewin, win->zone->w - pw, win->ewin->y);
if (win->ewin->y + ph > win->zone->h)
e_win_move(win->ewin, win->ewin->x, win->zone->h - ph);
e_win_show(win->ewin);
e_border_focus_set(win->ewin->border, 1, 1);
inst->win = win;
/* if (win->ewin->x + pw > win->zone->w)
* e_win_move(win->ewin, win->zone->w - pw, win->ewin->y);
*
* if (win->ewin->y + ph > win->zone->h)
* e_win_move(win->ewin, win->ewin->x, win->zone->h - ph); */
e_gadcon_locked_set(inst->gcc->gadcon, 1);
inst->del_fn = e_object_delfn_add(E_OBJECT(win->ewin), _del_func, inst);
@ -379,7 +375,7 @@ _create_data(E_Config_Dialog *cfd)
cfdata = E_NEW(E_Config_Dialog_Data, 1);
#define CP(_name) cfdata->_name = strdup(gc->_name);
#define CP(_name) cfdata->_name = (gc->_name ? strdup(gc->_name) : NULL);
#define C(_name) cfdata->_name = gc->_name;
CP(plugin);
C(hide_after_action);