forked from enlightenment/enlightenment
parent
df5b523477
commit
a1ea5be1f4
1
TODO
1
TODO
|
@ -110,7 +110,6 @@ These are in no particular order:
|
||||||
* maybe add systray module/support?
|
* maybe add systray module/support?
|
||||||
* allow object paranoia to be a runtime option too
|
* allow object paranoia to be a runtime option too
|
||||||
* add sliders, radio and check buttons for clientinfo pane
|
* add sliders, radio and check buttons for clientinfo pane
|
||||||
* display coords while moving
|
|
||||||
* add separate app menu bars at top of screen support
|
* add separate app menu bars at top of screen support
|
||||||
* add "osd" subsystem for things like volume controls on keybboards, etc. that overlay the screen
|
* add "osd" subsystem for things like volume controls on keybboards, etc. that overlay the screen
|
||||||
* add really nice "about" box with theme, authors credits list etc etc.
|
* add really nice "about" box with theme, authors credits list etc etc.
|
||||||
|
|
|
@ -23,6 +23,7 @@ default_ibar.edc \
|
||||||
default_menu.edc \
|
default_menu.edc \
|
||||||
default_pager.edc \
|
default_pager.edc \
|
||||||
default_resize.edc \
|
default_resize.edc \
|
||||||
|
default_move.edc \
|
||||||
default_temperature.edc \
|
default_temperature.edc \
|
||||||
default_error.edc
|
default_error.edc
|
||||||
|
|
||||||
|
|
|
@ -32,6 +32,7 @@ collections {
|
||||||
#include "default_menu.edc"
|
#include "default_menu.edc"
|
||||||
#include "default_pager.edc"
|
#include "default_pager.edc"
|
||||||
#include "default_resize.edc"
|
#include "default_resize.edc"
|
||||||
|
#include "default_move.edc"
|
||||||
#include "default_temperature.edc"
|
#include "default_temperature.edc"
|
||||||
#include "default_error.edc"
|
#include "default_error.edc"
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,99 @@
|
||||||
|
images {
|
||||||
|
image: "e17_menu_bg.png" COMP;
|
||||||
|
}
|
||||||
|
group {
|
||||||
|
name: "widgets/border/default/move";
|
||||||
|
parts {
|
||||||
|
part {
|
||||||
|
name: "base";
|
||||||
|
mouse_events: 0;
|
||||||
|
type: RECT;
|
||||||
|
description {
|
||||||
|
state: "default" 0.0;
|
||||||
|
rel1 {
|
||||||
|
relative: 0.0 1.0;
|
||||||
|
offset: 1 0;
|
||||||
|
to_y: "base2";
|
||||||
|
}
|
||||||
|
rel2 {
|
||||||
|
relative: 1.0 1.0;
|
||||||
|
offset: -2 -2;
|
||||||
|
}
|
||||||
|
color: 221 221 221 255;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
part {
|
||||||
|
name: "base2";
|
||||||
|
mouse_events: 0;
|
||||||
|
description {
|
||||||
|
state: "default" 0.0;
|
||||||
|
max: 99999 48;
|
||||||
|
align: 0.5 0.0;
|
||||||
|
rel1 {
|
||||||
|
relative: 0.0 0.0;
|
||||||
|
offset: 1 1;
|
||||||
|
}
|
||||||
|
rel2 {
|
||||||
|
relative: 1.0 1.0;
|
||||||
|
offset: -2 -2;
|
||||||
|
}
|
||||||
|
image {
|
||||||
|
normal: "e17_menu_bg.png";
|
||||||
|
}
|
||||||
|
fill {
|
||||||
|
smooth: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
part {
|
||||||
|
name: "base3";
|
||||||
|
mouse_events: 0;
|
||||||
|
description {
|
||||||
|
state: "default" 0.0;
|
||||||
|
rel1 {
|
||||||
|
relative: 0.0 0.0;
|
||||||
|
offset: 0 0;
|
||||||
|
}
|
||||||
|
rel2 {
|
||||||
|
relative: 1.0 1.0;
|
||||||
|
offset: -1 -1;
|
||||||
|
}
|
||||||
|
image {
|
||||||
|
normal: "e17_menu_bg_border.png";
|
||||||
|
border: 1 1 1 1;
|
||||||
|
middle: 0;
|
||||||
|
}
|
||||||
|
fill {
|
||||||
|
smooth: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
part {
|
||||||
|
name: "text";
|
||||||
|
type: TEXT;
|
||||||
|
effect: SHADOW;
|
||||||
|
description {
|
||||||
|
state: "default" 0.0;
|
||||||
|
color: 0 0 0 255;
|
||||||
|
rel1 {
|
||||||
|
relative: 0.0 0.0;
|
||||||
|
offset: 4 4;
|
||||||
|
}
|
||||||
|
rel2 {
|
||||||
|
relative: 1.0 1.0;
|
||||||
|
offset: -5 -5;
|
||||||
|
}
|
||||||
|
color: 0 0 0 255;
|
||||||
|
color3: 255 255 255 128;
|
||||||
|
text {
|
||||||
|
text: "WIDTHxHEIGHT";
|
||||||
|
font: "Edje Vera";
|
||||||
|
size: 10;
|
||||||
|
align: 0.5 0.5;
|
||||||
|
min: 1 1;
|
||||||
|
text_class: "move_text";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -95,6 +95,10 @@ static void _e_border_resize_begin(E_Border *bd);
|
||||||
static void _e_border_resize_end(E_Border *bd);
|
static void _e_border_resize_end(E_Border *bd);
|
||||||
static void _e_border_resize_update(E_Border *bd);
|
static void _e_border_resize_update(E_Border *bd);
|
||||||
|
|
||||||
|
static void _e_border_move_begin(E_Border *bd);
|
||||||
|
static void _e_border_move_end(E_Border *bd);
|
||||||
|
static void _e_border_move_update(E_Border *bd);
|
||||||
|
|
||||||
static void _e_border_reorder_after(E_Border *bd, E_Border *after);
|
static void _e_border_reorder_after(E_Border *bd, E_Border *after);
|
||||||
static void _e_border_reorder_before(E_Border *bd, E_Border *before);
|
static void _e_border_reorder_before(E_Border *bd, E_Border *before);
|
||||||
|
|
||||||
|
@ -107,6 +111,9 @@ static E_Border *resize = NULL;
|
||||||
static Ecore_Evas *resize_ee = NULL;
|
static Ecore_Evas *resize_ee = NULL;
|
||||||
static Evas_Object *resize_obj = NULL;
|
static Evas_Object *resize_obj = NULL;
|
||||||
|
|
||||||
|
static Ecore_Evas *move_ee = NULL;
|
||||||
|
static Evas_Object *move_obj = NULL;
|
||||||
|
|
||||||
int E_EVENT_BORDER_ADD = 0;
|
int E_EVENT_BORDER_ADD = 0;
|
||||||
int E_EVENT_BORDER_REMOVE = 0;
|
int E_EVENT_BORDER_REMOVE = 0;
|
||||||
int E_EVENT_BORDER_ZONE_SET = 0;
|
int E_EVENT_BORDER_ZONE_SET = 0;
|
||||||
|
@ -479,6 +486,7 @@ e_border_move(E_Border *bd, int x, int y)
|
||||||
bd->y + bd->client_inset.t,
|
bd->y + bd->client_inset.t,
|
||||||
bd->client.w,
|
bd->client.w,
|
||||||
bd->client.h);
|
bd->client.h);
|
||||||
|
_e_border_move_update(bd);
|
||||||
_e_border_zone_update(bd);
|
_e_border_zone_update(bd);
|
||||||
ev = calloc(1, sizeof(E_Event_Border_Move));
|
ev = calloc(1, sizeof(E_Event_Border_Move));
|
||||||
ev->border = bd;
|
ev->border = bd;
|
||||||
|
@ -599,6 +607,7 @@ e_border_raise(E_Border *bd)
|
||||||
ev->above = NULL;
|
ev->above = NULL;
|
||||||
ecore_event_add(E_EVENT_BORDER_RAISE, ev, _e_border_event_border_raise_free, NULL);
|
ecore_event_add(E_EVENT_BORDER_RAISE, ev, _e_border_event_border_raise_free, NULL);
|
||||||
}
|
}
|
||||||
|
if (move_ee) ecore_evas_raise(move_ee);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1666,6 +1675,7 @@ _e_border_cb_signal_move_start(void *data, Evas_Object *obj, const char *emissio
|
||||||
bd = data;
|
bd = data;
|
||||||
bd->moving = 1;
|
bd->moving = 1;
|
||||||
_e_border_moveinfo_gather(bd, source);
|
_e_border_moveinfo_gather(bd, source);
|
||||||
|
_e_border_move_begin(bd);
|
||||||
e_border_raise(bd);
|
e_border_raise(bd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1676,6 +1686,7 @@ _e_border_cb_signal_move_stop(void *data, Evas_Object *obj, const char *emission
|
||||||
|
|
||||||
bd = data;
|
bd = data;
|
||||||
bd->moving = 0;
|
bd->moving = 0;
|
||||||
|
_e_border_move_end(bd);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -3591,6 +3602,62 @@ _e_border_resize_update(E_Border *bd)
|
||||||
edje_object_part_text_set(resize_obj, "text", buf);
|
edje_object_part_text_set(resize_obj, "text", buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_e_border_move_begin(E_Border *bd)
|
||||||
|
{
|
||||||
|
Evas_Coord w, h;
|
||||||
|
char buf[40];
|
||||||
|
|
||||||
|
if (move_ee) ecore_evas_free(move_ee);
|
||||||
|
move_ee = ecore_evas_software_x11_new(NULL, bd->zone->container->manager->win,
|
||||||
|
0, 0, 10, 10);
|
||||||
|
ecore_evas_override_set(move_ee, 1);
|
||||||
|
ecore_evas_software_x11_direct_resize_set(move_ee, 1);
|
||||||
|
e_canvas_add(move_ee);
|
||||||
|
ecore_evas_borderless_set(move_ee, 1);
|
||||||
|
ecore_evas_layer_set(move_ee, 999);
|
||||||
|
ecore_evas_show(move_ee);
|
||||||
|
|
||||||
|
move_obj = edje_object_add(ecore_evas_get(move_ee));
|
||||||
|
edje_object_file_set(move_obj, e_path_find(path_themes, "default.edj"),
|
||||||
|
"widgets/border/default/move");
|
||||||
|
snprintf(buf, sizeof(buf), "9999x9999");
|
||||||
|
edje_object_part_text_set(move_obj, "text", buf);
|
||||||
|
|
||||||
|
edje_object_size_min_calc(move_obj, &w, &h);
|
||||||
|
evas_object_move(move_obj, 0, 0);
|
||||||
|
evas_object_resize(move_obj, w, h);
|
||||||
|
evas_object_show(move_obj);
|
||||||
|
|
||||||
|
snprintf(buf, sizeof(buf), "%ix%i", bd->x, bd->y);
|
||||||
|
edje_object_part_text_set(move_obj, "text", buf);
|
||||||
|
|
||||||
|
ecore_evas_move(move_ee, (bd->zone->w - w) / 2, (bd->zone->h - h) / 2);
|
||||||
|
ecore_evas_resize(move_ee, w, h);
|
||||||
|
|
||||||
|
ecore_evas_show(move_ee);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_e_border_move_end(E_Border *bd)
|
||||||
|
{
|
||||||
|
evas_object_del(move_obj);
|
||||||
|
if (move_ee)
|
||||||
|
{
|
||||||
|
ecore_evas_free(move_ee);
|
||||||
|
move_ee = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_e_border_move_update(E_Border *bd)
|
||||||
|
{
|
||||||
|
char buf[40];
|
||||||
|
|
||||||
|
snprintf(buf, sizeof(buf) - 1, "%ix%i", bd->x, bd->y);
|
||||||
|
edje_object_part_text_set(move_obj, "text", buf);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_border_reorder_after(E_Border *bd, E_Border *after)
|
_e_border_reorder_after(E_Border *bd, E_Border *after)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue