Enlightenment CVS committal Author : davemds Project : e17 Module : proto/edje_editor
Dir : e17/proto/edje_editor/src/bin Modified Files: edje_editor_canvas.c edje_editor_canvas.h edje_editor_dialogs.c edje_editor_images.c edje_editor_position.c edje_editor_state.c edje_editor_text.c edje_editor_toolbar.c edje_editor_tree.c edje_editor_window.c main.h Log Message: * cleans & renames of edje_editor_canvas.c =================================================================== RCS file: /cvs/e/e17/proto/edje_editor/src/bin/edje_editor_canvas.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- edje_editor_canvas.c 2 Jul 2008 01:07:02 -0000 1.1 +++ edje_editor_canvas.c 2 Jul 2008 02:26:31 -0000 1.2 @@ -1,13 +1,19 @@ -#include "config.h" #include <Etk.h> #include <Edje.h> #include <Edje_Edit.h> #include "main.h" + +/*** Locals ***/ static Evas_Coord dx, dy, dx2, dy2; +static void _canvas_draw_focus(void); +static void _canvas_resize_fake(int w, int h); +static void _canvas_move_fake(int x, int y); + +/*** Callbacks ***/ void -on_Drag(void *data, Evas *e, Evas_Object *obj, void *event_info) +_canvas_drag_cb(void *data, Evas *e, Evas_Object *obj, void *event_info) { //printf("ON DRAG\n"); Evas_Coord parentx,parenty,parentw,parenth; @@ -19,7 +25,7 @@ { evas_pointer_output_xy_get(ecore_evas_get(UI_ecore_MainWin), &mouse_x, &mouse_y); - ev_move_fake(mouse_x - dx, mouse_y + 16 - dy); + _canvas_move_fake(mouse_x - dx, mouse_y + 16 - dy); } // Resize fake win @@ -28,7 +34,7 @@ edje_object_part_geometry_get(EV_fakewin,"miniarrow", &x, &y, NULL, NULL); if (x < 0) x = 0; if (y < 0) y = 0; - ev_resize_fake((int)x,(int)y); + _canvas_resize_fake((int)x,(int)y); } // Move Rel1 Point @@ -38,12 +44,12 @@ &mouse_x, &mouse_y); //Calc the rel1_relative_x value - evas_object_geometry_get(rel1X_parent_handler, &parentx, + evas_object_geometry_get(EV_rel1X_parent_handler, &parentx, &parenty, &parentw, &parenth); edje_edit_state_rel1_relative_x_set(edje_o, Cur.part->string, Cur.state->string, (float)(mouse_x - parentx)/(float)parentw); //Calc the rel1_relative_y value - evas_object_geometry_get(rel1Y_parent_handler, &parentx, + evas_object_geometry_get(EV_rel1Y_parent_handler, &parentx, &parenty, &parentw, &parenth); edje_edit_state_rel1_relative_y_set(edje_o, Cur.part->string, @@ -58,12 +64,12 @@ &mouse_x, &mouse_y); //Calc the rel2_relative_x value - evas_object_geometry_get(rel2X_parent_handler, + evas_object_geometry_get(EV_rel2X_parent_handler, &parentx, &parenty, &parentw, &parenth); edje_edit_state_rel2_relative_x_set(edje_o, Cur.part->string, Cur.state->string, (float)(mouse_x - parentx)/(float)parentw); //Calc the rel2_relative_y value - evas_object_geometry_get(rel2Y_parent_handler, &parentx, + evas_object_geometry_get(EV_rel2Y_parent_handler, &parentx, &parenty, &parentw, &parenth); edje_edit_state_rel2_relative_y_set(edje_o, Cur.part->string, Cur.state->string, (float)(mouse_y - parenty)/(float)parenth); @@ -76,25 +82,25 @@ evas_pointer_output_xy_get(ecore_evas_get(UI_ecore_MainWin), &mouse_x, &mouse_y); //Calc the rel1_relative_x value - evas_object_geometry_get(rel1X_parent_handler, &parentx, + evas_object_geometry_get(EV_rel1X_parent_handler, &parentx, &parenty, &parentw, &parenth); edje_edit_state_rel1_relative_x_set(edje_o, Cur.part->string, Cur.state->string, (float)(mouse_x - parentx - dx)/(float)parentw); //Calc the rel1_relative_y value - evas_object_geometry_get(rel1Y_parent_handler, &parentx, + evas_object_geometry_get(EV_rel1Y_parent_handler, &parentx, &parenty, &parentw, &parenth); edje_edit_state_rel1_relative_y_set(edje_o, Cur.part->string, Cur.state->string, (float)(mouse_y - parenty - dy)/(float)parenth); //Calc the rel2_relative_x value - evas_object_geometry_get(rel2X_parent_handler, + evas_object_geometry_get(EV_rel2X_parent_handler, &parentx, &parenty, &parentw, &parenth); edje_edit_state_rel2_relative_x_set(edje_o, Cur.part->string, Cur.state->string, (float)(mouse_x - parentx - dx + dx2)/(float)parentw); //Calc the rel2_relative_y value - evas_object_geometry_get(rel2Y_parent_handler, &parentx, + evas_object_geometry_get(EV_rel2Y_parent_handler, &parentx, &parenty, &parentw, &parenth); edje_edit_state_rel2_relative_y_set(edje_o, Cur.part->string, Cur.state->string, @@ -103,63 +109,61 @@ UpdatePositionFrame(); } - ev_redraw(); + canvas_redraw(); //printf("Drag %s - ",source); //printf("Position %i, %i\n", x, y); } - - void -on_StartDrag(void *data, Evas_Object *o, const char *em, const char *src) +_canvas_drag_start_cb(void *data, Evas_Object *o, const char *em, const char *src) { Evas_Coord x, y, mx, my; //printf("Start Drag\n"); if ((int)data == DRAG_REL1) { - evas_object_event_callback_add(rel1_handler, EVAS_CALLBACK_MOUSE_MOVE, - on_Drag,(void*)DRAG_REL1); - evas_object_show(rel1X_align_guide); - evas_object_raise(rel1X_align_guide); - evas_object_show(rel1Y_align_guide); - evas_object_raise(rel1Y_align_guide); + evas_object_event_callback_add(EV_rel1_handler, EVAS_CALLBACK_MOUSE_MOVE, + _canvas_drag_cb,(void*)DRAG_REL1); + evas_object_show(EV_rel1X_align_guide); + evas_object_raise(EV_rel1X_align_guide); + evas_object_show(EV_rel1Y_align_guide); + evas_object_raise(EV_rel1Y_align_guide); } if ((int)data == DRAG_REL2) { - evas_object_event_callback_add(rel2_handler, EVAS_CALLBACK_MOUSE_MOVE, - on_Drag,(void*)DRAG_REL2); - evas_object_show(rel2X_align_guide); - evas_object_raise(rel2X_align_guide); - evas_object_show(rel2Y_align_guide); - evas_object_raise(rel2Y_align_guide); + evas_object_event_callback_add(EV_rel2_handler, EVAS_CALLBACK_MOUSE_MOVE, + _canvas_drag_cb,(void*)DRAG_REL2); + evas_object_show(EV_rel2X_align_guide); + evas_object_raise(EV_rel2X_align_guide); + evas_object_show(EV_rel2Y_align_guide); + evas_object_raise(EV_rel2Y_align_guide); } if ((int)data == DRAG_MOVE) { - evas_object_event_callback_add(move_handler, EVAS_CALLBACK_MOUSE_MOVE, - on_Drag,(void*)DRAG_MOVE); - evas_object_geometry_get(rel1_handler, &x, &y, NULL, NULL); + evas_object_event_callback_add(EV_move_handler, EVAS_CALLBACK_MOUSE_MOVE, + _canvas_drag_cb,(void*)DRAG_MOVE); + evas_object_geometry_get(EV_rel1_handler, &x, &y, NULL, NULL); evas_pointer_output_xy_get(ecore_evas_get(UI_ecore_MainWin), &mx, &my); dx = mx - x - 3; dy = my - y - 3; edje_object_part_geometry_get(edje_o, Cur.part->string, NULL, NULL, &dx2, &dy2); - evas_object_show(rel1X_align_guide); - evas_object_raise(rel1X_align_guide); - evas_object_show(rel1Y_align_guide); - evas_object_raise(rel1Y_align_guide); - evas_object_show(rel2X_align_guide); - evas_object_raise(rel2X_align_guide); - evas_object_show(rel2Y_align_guide); - evas_object_raise(rel2Y_align_guide); + evas_object_show(EV_rel1X_align_guide); + evas_object_raise(EV_rel1X_align_guide); + evas_object_show(EV_rel1Y_align_guide); + evas_object_raise(EV_rel1Y_align_guide); + evas_object_show(EV_rel2X_align_guide); + evas_object_raise(EV_rel2X_align_guide); + evas_object_show(EV_rel2Y_align_guide); + evas_object_raise(EV_rel2Y_align_guide); } if ((int)data == DRAG_MOVEBOX) { evas_object_event_callback_add(EV_movebox, EVAS_CALLBACK_MOUSE_MOVE, - on_Drag, (void*)DRAG_MOVEBOX); + _canvas_drag_cb, (void*)DRAG_MOVEBOX); evas_object_geometry_get(EV_movebox, &x, &y, NULL, NULL); evas_pointer_output_xy_get(ecore_evas_get(UI_ecore_MainWin), &mx, &my); dx = mx - x; @@ -169,125 +173,55 @@ } void -on_EndDrag(void *data, Evas_Object *o, const char *emission, const char *source) +_canvas_drag_end_cb(void *data, Evas_Object *o, const char *emission, const char *source) { //printf("End Drag\n"); if ((int)data == DRAG_REL1) { - evas_object_event_callback_del(rel1_handler,EVAS_CALLBACK_MOUSE_MOVE,on_Drag); - evas_object_hide(rel1X_align_guide); - evas_object_hide(rel1Y_align_guide); - evas_object_line_xy_set(rel1X_align_guide, 0, 0, 0, 0); - evas_object_line_xy_set(rel1Y_align_guide, 0, 0, 0, 0); + evas_object_event_callback_del(EV_rel1_handler,EVAS_CALLBACK_MOUSE_MOVE, + _canvas_drag_cb); + evas_object_hide(EV_rel1X_align_guide); + evas_object_hide(EV_rel1Y_align_guide); + evas_object_line_xy_set(EV_rel1X_align_guide, 0, 0, 0, 0); + evas_object_line_xy_set(EV_rel1Y_align_guide, 0, 0, 0, 0); } if ((int)data == DRAG_REL2) { - evas_object_event_callback_del(rel2_handler,EVAS_CALLBACK_MOUSE_MOVE,on_Drag); - evas_object_hide(rel2X_align_guide); - evas_object_hide(rel2Y_align_guide); - evas_object_line_xy_set(rel2X_align_guide, 0, 0, 0, 0); - evas_object_line_xy_set(rel2Y_align_guide, 0, 0, 0, 0); + evas_object_event_callback_del(EV_rel2_handler,EVAS_CALLBACK_MOUSE_MOVE, + _canvas_drag_cb); + evas_object_hide(EV_rel2X_align_guide); + evas_object_hide(EV_rel2Y_align_guide); + evas_object_line_xy_set(EV_rel2X_align_guide, 0, 0, 0, 0); + evas_object_line_xy_set(EV_rel2Y_align_guide, 0, 0, 0, 0); } if ((int)data == DRAG_MOVE) { - evas_object_event_callback_del(move_handler,EVAS_CALLBACK_MOUSE_MOVE,on_Drag); - evas_object_hide(rel1X_align_guide); - evas_object_hide(rel1Y_align_guide); - evas_object_line_xy_set(rel1X_align_guide, 0, 0, 0, 0); - evas_object_line_xy_set(rel1Y_align_guide, 0, 0, 0, 0); - evas_object_hide(rel2X_align_guide); - evas_object_hide(rel2Y_align_guide); - evas_object_line_xy_set(rel2X_align_guide, 0, 0, 0, 0); - evas_object_line_xy_set(rel2Y_align_guide, 0, 0, 0, 0); + evas_object_event_callback_del(EV_move_handler,EVAS_CALLBACK_MOUSE_MOVE, + _canvas_drag_cb); + evas_object_hide(EV_rel1X_align_guide); + evas_object_hide(EV_rel1Y_align_guide); + evas_object_line_xy_set(EV_rel1X_align_guide, 0, 0, 0, 0); + evas_object_line_xy_set(EV_rel1Y_align_guide, 0, 0, 0, 0); + evas_object_hide(EV_rel2X_align_guide); + evas_object_hide(EV_rel2Y_align_guide); + evas_object_line_xy_set(EV_rel2X_align_guide, 0, 0, 0, 0); + evas_object_line_xy_set(EV_rel2Y_align_guide, 0, 0, 0, 0); } if ((int)data == DRAG_MOVEBOX) - evas_object_event_callback_del(EV_movebox,EVAS_CALLBACK_MOUSE_MOVE,on_Drag); + evas_object_event_callback_del(EV_movebox,EVAS_CALLBACK_MOUSE_MOVE, + _canvas_drag_cb); if ((int)data == DRAG_MINIARROW) { int fw,fh; //Fakewin geometry evas_object_geometry_get(EV_fakewin,NULL,NULL,&fw,&fh); - ev_resize_fake(fw,fh); + _canvas_resize_fake(fw,fh); } } -void -prepare_canvas(void) -{ - //Create Focus Handler - focus_handler = edje_object_add(ecore_evas_get(UI_ecore_MainWin)); - edje_object_file_set(focus_handler, EdjeFile, "FocusH"); - - //Create Rel1 handler - rel1_handler = edje_object_add(ecore_evas_get(UI_ecore_MainWin)); - edje_object_file_set(rel1_handler, EdjeFile, "Rel1H"); - edje_object_signal_callback_add(rel1_handler, "START_DRAG", "rel1", - on_StartDrag, (void*)DRAG_REL1); - edje_object_signal_callback_add(rel1_handler, "END_DRAG", "rel1", - on_EndDrag, (void*)DRAG_REL1); - - //Create Rel2 handler - rel2_handler = edje_object_add(ecore_evas_get(UI_ecore_MainWin)); - edje_object_file_set(rel2_handler, EdjeFile, "Rel2H"); - edje_object_signal_callback_add(rel2_handler, "START_DRAG", "rel2", - on_StartDrag, (void*)DRAG_REL2); - edje_object_signal_callback_add(rel2_handler, "END_DRAG", "rel2", - on_EndDrag, (void*)DRAG_REL2); - - //Create Move handler - move_handler = edje_object_add(ecore_evas_get(UI_ecore_MainWin)); - edje_object_file_set(move_handler, EdjeFile, "MoveH"); - edje_object_signal_callback_add(move_handler, "START_DRAG", "MoveH", - on_StartDrag, (void*)DRAG_MOVE); - edje_object_signal_callback_add(move_handler, "END_DRAG", "MoveH", - on_EndDrag, (void*)DRAG_MOVE); - - //Create Parent Handlers - rel1X_parent_handler = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); - evas_object_color_set(rel1X_parent_handler, 255, 0, 0, 200); - - rel1Y_parent_handler = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); - evas_object_color_set(rel1Y_parent_handler, 255, 0, 0, 200); - - rel2X_parent_handler = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); - evas_object_color_set(rel2X_parent_handler, 0, 0, 255, 200); - - rel2Y_parent_handler = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); - evas_object_color_set(rel2Y_parent_handler, 0, 0, 255, 200); - //Create Align Guides - rel1X_align_guide = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); - evas_object_color_set(rel1X_align_guide, 180, 0, 0, 180); - rel1Y_align_guide = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); - evas_object_color_set(rel1Y_align_guide, 180, 0, 0, 180); - - rel2X_align_guide = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); - evas_object_color_set(rel2X_align_guide, 0, 0, 180, 180); - rel2Y_align_guide = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); - evas_object_color_set(rel2Y_align_guide, 0, 0, 180, 180); - - // Create Fake win - EV_fakewin = edje_object_add(ecore_evas_get(UI_ecore_MainWin)); - edje_object_file_set(EV_fakewin, EdjeFile, "FakeWin"); - edje_object_signal_callback_add(EV_fakewin,"DRAG","miniarrow", - on_Drag, (void*)DRAG_MINIARROW); - edje_object_signal_callback_add(EV_fakewin,"END_DRAG","miniarrow", - on_EndDrag, (void*)DRAG_MINIARROW); - - // Create MoveBox - EV_movebox = evas_object_rectangle_add(ecore_evas_get(UI_ecore_MainWin)); - evas_object_color_set(EV_movebox, 0, 0, 0, 0); - evas_object_event_callback_add(EV_movebox, EVAS_CALLBACK_MOUSE_DOWN, - on_StartDrag, (void*)DRAG_MOVEBOX); - evas_object_event_callback_add(EV_movebox, EVAS_CALLBACK_MOUSE_UP, - on_EndDrag, (void*)DRAG_MOVEBOX); - - //Place Fakewin - ev_move_fake(TREE_WIDTH + 15, 75); - ev_resize_fake(200, 200); -} - -void -ev_draw_focus(void) +/*** Internals ***/ +static void +_canvas_draw_focus(void) { int ParentX,ParentY,ParentW,ParentH; int fx,fy,fw,fh; //Fakewin geometry @@ -316,23 +250,23 @@ //printf("CURRENT STATE: %s - %d\n",state,o1x); - evas_object_move(focus_handler, + evas_object_move(EV_focus_handler, px + wx - o1x - 2, py + wy - o1y - 2); - evas_object_resize(focus_handler, + evas_object_resize(EV_focus_handler, pw + o1x - o2x + 2, ph + o1y - o2y + 2); if (edje_edit_part_type_get(edje_o, Cur.part->string) == EDJE_PART_TYPE_SWALLOW) - edje_object_signal_emit(focus_handler, "SwallShow", "edje_editor"); + edje_object_signal_emit(EV_focus_handler, "SwallShow", "edje_editor"); else - edje_object_signal_emit(focus_handler, "SwallHide", "edje_editor"); + edje_object_signal_emit(EV_focus_handler, "SwallHide", "edje_editor"); - evas_object_raise(focus_handler); - evas_object_show(focus_handler); + evas_object_raise(EV_focus_handler); + evas_object_show(EV_focus_handler); }else - evas_object_hide(focus_handler); + evas_object_hide(EV_focus_handler); // if a part description is selected draw also // the parent handlers (the red and blue lines) @@ -350,24 +284,24 @@ // printf("PA geom: %d %d %d %d\n",px,py,pw,ph); //Draw rel1 & rel2 point - evas_object_move(rel1_handler, + evas_object_move(EV_rel1_handler, fx + px - o1x - 2, fy + py - o1y - 2); - evas_object_show(rel1_handler); - evas_object_raise(rel1_handler); + evas_object_show(EV_rel1_handler); + evas_object_raise(EV_rel1_handler); - evas_object_move(rel2_handler, + evas_object_move(EV_rel2_handler, fx + px + pw - o2x - 4, fy + py + ph - o2y - 4); - evas_object_show(rel2_handler); - evas_object_raise(rel2_handler); + evas_object_show(EV_rel2_handler); + evas_object_raise(EV_rel2_handler); //Draw move_handler - evas_object_move(move_handler, + evas_object_move(EV_move_handler, fx + px + pw/2 - 6, fy + py + ph/2 - 6); - evas_object_show(move_handler); - evas_object_raise(move_handler); + evas_object_show(EV_move_handler); + evas_object_raise(EV_move_handler); //draw Rel1X_ParentH (top line) @@ -385,7 +319,7 @@ else//Get FakeWin Geom evas_object_geometry_get(EV_fakewin, &ParentX, &ParentY, &ParentW, &ParentH); - evas_object_line_xy_set(rel1X_parent_handler, ParentX, ParentY, + evas_object_line_xy_set(EV_rel1X_parent_handler, ParentX, ParentY, ParentX+ParentW, ParentY); //draw Rel1Y_ParentH (left line) @@ -401,7 +335,7 @@ else//Get FakeWin Geom evas_object_geometry_get(EV_fakewin, &ParentX, &ParentY, &ParentW, &ParentH); - evas_object_line_xy_set(rel1Y_parent_handler, ParentX, ParentY, + evas_object_line_xy_set(EV_rel1Y_parent_handler, ParentX, ParentY, ParentX, ParentY+ParentH); //draw Rel2X_ParentH (bottom line) @@ -417,7 +351,7 @@ else//Get FakeWin Geom evas_object_geometry_get(EV_fakewin, &ParentX, &ParentY, &ParentW, &ParentH); - evas_object_line_xy_set(rel2X_parent_handler, ParentX, ParentY+ParentH, + evas_object_line_xy_set(EV_rel2X_parent_handler, ParentX, ParentY+ParentH, ParentX+ParentW, ParentY+ParentH); //draw Rel2Y_ParentH (right line) @@ -433,46 +367,46 @@ else//Get FakeWin Geom evas_object_geometry_get(EV_fakewin, &ParentX, &ParentY, &ParentW, &ParentH); - evas_object_line_xy_set(rel2Y_parent_handler, ParentX+ParentW, ParentY, + evas_object_line_xy_set(EV_rel2Y_parent_handler, ParentX+ParentW, ParentY, ParentX+ParentW, ParentY+ParentH); //Place the align guides - evas_object_geometry_get(rel1_handler, &px, &py, NULL, NULL); - evas_object_line_xy_set(rel1X_align_guide, px + 2, 0, px + 2, 2000); //TODO FIX 2000 - evas_object_line_xy_set(rel1Y_align_guide, 0, py + 2, 2000, py + 2); //TODO FIX 2000 - evas_object_geometry_get(rel2_handler, &px, &py, NULL, NULL); - evas_object_line_xy_set(rel2X_align_guide, px + 2, 0, px + 2, 2000); //TODO FIX 2000 - evas_object_line_xy_set(rel2Y_align_guide, 0, py + 2, 2000, py + 2); //TODO FIX 2000 - - evas_object_raise(rel1X_parent_handler); - evas_object_show(rel1X_parent_handler); - evas_object_raise(rel1Y_parent_handler); - evas_object_show(rel1Y_parent_handler); - evas_object_raise(rel2X_parent_handler); - evas_object_show(rel2X_parent_handler); - evas_object_raise(rel2Y_parent_handler); - evas_object_show(rel2Y_parent_handler); - evas_object_raise(focus_handler); - evas_object_raise(rel1_handler); - evas_object_raise(rel2_handler); - evas_object_raise(move_handler); + evas_object_geometry_get(EV_rel1_handler, &px, &py, NULL, NULL); + evas_object_line_xy_set(EV_rel1X_align_guide, px + 2, 0, px + 2, 2000); //TODO FIX 2000 + evas_object_line_xy_set(EV_rel1Y_align_guide, 0, py + 2, 2000, py + 2); //TODO FIX 2000 + evas_object_geometry_get(EV_rel2_handler, &px, &py, NULL, NULL); + evas_object_line_xy_set(EV_rel2X_align_guide, px + 2, 0, px + 2, 2000); //TODO FIX 2000 + evas_object_line_xy_set(EV_rel2Y_align_guide, 0, py + 2, 2000, py + 2); //TODO FIX 2000 + + evas_object_raise(EV_rel1X_parent_handler); + evas_object_show(EV_rel1X_parent_handler); + evas_object_raise(EV_rel1Y_parent_handler); + evas_object_show(EV_rel1Y_parent_handler); + evas_object_raise(EV_rel2X_parent_handler); + evas_object_show(EV_rel2X_parent_handler); + evas_object_raise(EV_rel2Y_parent_handler); + evas_object_show(EV_rel2Y_parent_handler); + evas_object_raise(EV_focus_handler); + evas_object_raise(EV_rel1_handler); + evas_object_raise(EV_rel2_handler); + evas_object_raise(EV_move_handler); }else{ //none selected, hide all - edje_object_signal_emit(rel1_handler,"REL1_HIDE","edje_editor"); - edje_object_signal_emit(focus_handler,"REL2_HIDE","edje_editor"); - evas_object_hide(rel1X_parent_handler); - evas_object_hide(rel1Y_parent_handler); - evas_object_hide(rel2X_parent_handler); - evas_object_hide(rel2Y_parent_handler); - evas_object_hide(rel1_handler); - evas_object_hide(rel2_handler); - evas_object_hide(move_handler); + edje_object_signal_emit(EV_rel1_handler,"REL1_HIDE","edje_editor"); + edje_object_signal_emit(EV_focus_handler,"REL2_HIDE","edje_editor"); + evas_object_hide(EV_rel1X_parent_handler); + evas_object_hide(EV_rel1Y_parent_handler); + evas_object_hide(EV_rel2X_parent_handler); + evas_object_hide(EV_rel2Y_parent_handler); + evas_object_hide(EV_rel1_handler); + evas_object_hide(EV_rel2_handler); + evas_object_hide(EV_move_handler); } } -void -ev_resize_fake(int w, int h) +static void +_canvas_resize_fake(int w, int h) { int max_w = 0; int max_h = 0; @@ -500,16 +434,94 @@ etk_label_set(ETK_LABEL(UI_CurrentGroupSizeLabel), buf); } -void -ev_move_fake(int x, int y) +static void +_canvas_move_fake(int x, int y) { //printf("MOVEBOX: %d %d\n",x,y); evas_object_move(EV_fakewin, x, y); evas_object_move(EV_movebox, x-4, y-16); } + +/*** Implementation ***/ +void +canvas_prepare(void) +{ + //Create Focus Handler + EV_focus_handler = edje_object_add(ecore_evas_get(UI_ecore_MainWin)); + edje_object_file_set(EV_focus_handler, EdjeFile, "FocusH"); + + //Create Rel1 handler + EV_rel1_handler = edje_object_add(ecore_evas_get(UI_ecore_MainWin)); + edje_object_file_set(EV_rel1_handler, EdjeFile, "Rel1H"); + edje_object_signal_callback_add(EV_rel1_handler, "START_DRAG", "rel1", + _canvas_drag_start_cb, (void*)DRAG_REL1); + edje_object_signal_callback_add(EV_rel1_handler, "END_DRAG", "rel1", + _canvas_drag_end_cb, (void*)DRAG_REL1); + + //Create Rel2 handler + EV_rel2_handler = edje_object_add(ecore_evas_get(UI_ecore_MainWin)); + edje_object_file_set(EV_rel2_handler, EdjeFile, "Rel2H"); + edje_object_signal_callback_add(EV_rel2_handler, "START_DRAG", "rel2", + _canvas_drag_start_cb, (void*)DRAG_REL2); + edje_object_signal_callback_add(EV_rel2_handler, "END_DRAG", "rel2", + _canvas_drag_end_cb, (void*)DRAG_REL2); + + //Create Move handler + EV_move_handler = edje_object_add(ecore_evas_get(UI_ecore_MainWin)); + edje_object_file_set(EV_move_handler, EdjeFile, "MoveH"); + edje_object_signal_callback_add(EV_move_handler, "START_DRAG", "MoveH", + _canvas_drag_start_cb, (void*)DRAG_MOVE); + edje_object_signal_callback_add(EV_move_handler, "END_DRAG", "MoveH", + _canvas_drag_end_cb, (void*)DRAG_MOVE); + + //Create Parent Handlers + EV_rel1X_parent_handler = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); + evas_object_color_set(EV_rel1X_parent_handler, 255, 0, 0, 200); + + EV_rel1Y_parent_handler = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); + evas_object_color_set(EV_rel1Y_parent_handler, 255, 0, 0, 200); + + EV_rel2X_parent_handler = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); + evas_object_color_set(EV_rel2X_parent_handler, 0, 0, 255, 200); + + EV_rel2Y_parent_handler = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); + evas_object_color_set(EV_rel2Y_parent_handler, 0, 0, 255, 200); + + //Create Align Guides + EV_rel1X_align_guide = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); + evas_object_color_set(EV_rel1X_align_guide, 180, 0, 0, 180); + EV_rel1Y_align_guide = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); + evas_object_color_set(EV_rel1Y_align_guide, 180, 0, 0, 180); + + EV_rel2X_align_guide = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); + evas_object_color_set(EV_rel2X_align_guide, 0, 0, 180, 180); + EV_rel2Y_align_guide = evas_object_line_add(ecore_evas_get(UI_ecore_MainWin)); + evas_object_color_set(EV_rel2Y_align_guide, 0, 0, 180, 180); + + // Create Fake win + EV_fakewin = edje_object_add(ecore_evas_get(UI_ecore_MainWin)); + edje_object_file_set(EV_fakewin, EdjeFile, "FakeWin"); + edje_object_signal_callback_add(EV_fakewin,"DRAG","miniarrow", + _canvas_drag_cb, (void*)DRAG_MINIARROW); + edje_object_signal_callback_add(EV_fakewin,"END_DRAG","miniarrow", + _canvas_drag_end_cb, (void*)DRAG_MINIARROW); + + // Create MoveBox + EV_movebox = evas_object_rectangle_add(ecore_evas_get(UI_ecore_MainWin)); + evas_object_color_set(EV_movebox, 0, 0, 0, 0); + evas_object_event_callback_add(EV_movebox, EVAS_CALLBACK_MOUSE_DOWN, + _canvas_drag_start_cb, (void*)DRAG_MOVEBOX); + evas_object_event_callback_add(EV_movebox, EVAS_CALLBACK_MOUSE_UP, + _canvas_drag_end_cb, (void*)DRAG_MOVEBOX); + + //Place Fakewin + _canvas_move_fake(TREE_WIDTH + 15, 75); + _canvas_resize_fake(200, 200); +} + void -ev_redraw(void) +canvas_redraw(void) { int x, y, w, h; @@ -520,7 +532,7 @@ evas_object_geometry_get(EV_fakewin,&x,&y,&w,&h); //Ensure we respect min e max group size - ev_resize_fake(w, h); + _canvas_resize_fake(w, h); evas_object_geometry_get(EV_fakewin,&x,&y,&w,&h); //place edje editing object @@ -535,7 +547,7 @@ if (etk_string_length_get(Cur.part)) { - ev_draw_focus(); + _canvas_draw_focus(); return; } @@ -544,12 +556,12 @@ evas_object_hide(EV_fakewin); evas_object_hide(EV_movebox); } - evas_object_hide(rel1X_parent_handler); - evas_object_hide(rel1Y_parent_handler); - evas_object_hide(rel2X_parent_handler); - evas_object_hide(rel2Y_parent_handler); - evas_object_hide(rel1_handler); - evas_object_hide(rel2_handler); - evas_object_hide(move_handler); - evas_object_hide(focus_handler); + evas_object_hide(EV_rel1X_parent_handler); + evas_object_hide(EV_rel1Y_parent_handler); + evas_object_hide(EV_rel2X_parent_handler); + evas_object_hide(EV_rel2Y_parent_handler); + evas_object_hide(EV_rel1_handler); + evas_object_hide(EV_rel2_handler); + evas_object_hide(EV_move_handler); + evas_object_hide(EV_focus_handler); } =================================================================== RCS file: /cvs/e/e17/proto/edje_editor/src/bin/edje_editor_canvas.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- edje_editor_canvas.h 2 Jul 2008 01:07:02 -0000 1.1 +++ edje_editor_canvas.h 2 Jul 2008 02:26:31 -0000 1.2 @@ -1,10 +1,22 @@ #ifndef _EDJE_EDITOR_EVAS_H_ #define _EDJE_EDITOR_EVAS_H_ -void ev_redraw(void); -void ev_draw_focus(void); -void ev_resize_fake(int w, int h); -void ev_move_fake(int x, int y); -void prepare_canvas(void); +Evas_Object *EV_fakewin; //The simple window implementation +Evas_Object *EV_movebox; //The object used for moving fakewin +Evas_Object *EV_focus_handler; //The yellow box around the selected part +Evas_Object *EV_rel1_handler; //The red point +Evas_Object *EV_rel2_handler; //The blue point +Evas_Object *EV_move_handler; //The central move arrows +Evas_Object *EV_rel1X_parent_handler; //The 4 line that show the container for each side of the part +Evas_Object *EV_rel1Y_parent_handler; // +Evas_Object *EV_rel2X_parent_handler; // +Evas_Object *EV_rel2Y_parent_handler; // +Evas_Object *EV_rel1X_align_guide; //The 4 line (2 blu & 2 red) used for align objects on drag operations +Evas_Object *EV_rel1Y_align_guide; // +Evas_Object *EV_rel2X_align_guide; // +Evas_Object *EV_rel2Y_align_guide; // + +void canvas_prepare(void); +void canvas_redraw(void); #endif =================================================================== RCS file: /cvs/e/e17/proto/edje_editor/src/bin/edje_editor_dialogs.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- edje_editor_dialogs.c 2 Jul 2008 01:07:02 -0000 1.1 +++ edje_editor_dialogs.c 2 Jul 2008 02:26:31 -0000 1.2 @@ -257,6 +257,6 @@ break; } - ev_redraw(); + canvas_redraw(); return ETK_TRUE; } =================================================================== RCS file: /cvs/e/e17/proto/edje_editor/src/bin/edje_editor_images.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- edje_editor_images.c 2 Jul 2008 01:07:02 -0000 1.1 +++ edje_editor_images.c 2 Jul 2008 02:26:31 -0000 1.2 @@ -376,7 +376,7 @@ if (!etk_string_length_get(Cur.part)) return ETK_TRUE; edje_edit_state_color_set(edje_o, Cur.part->string, Cur.state->string, -1, -1, -1, (int)va); - ev_redraw(); + canvas_redraw(); return ETK_TRUE; } @@ -394,7 +394,7 @@ (int)etk_range_value_get(ETK_RANGE(UI_BorderTopSpinner)), (int)etk_range_value_get(ETK_RANGE(UI_BorderBottomSpinner))); - ev_redraw(); + canvas_redraw(); return ETK_TRUE; } =================================================================== RCS file: /cvs/e/e17/proto/edje_editor/src/bin/edje_editor_position.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- edje_editor_position.c 2 Jul 2008 01:07:02 -0000 1.1 +++ edje_editor_position.c 2 Jul 2008 02:26:31 -0000 1.2 @@ -511,8 +511,7 @@ etk_range_value_get(range)); break; } - ev_redraw(); - //ev_draw_focus(); + canvas_redraw(); } return ETK_TRUE; @@ -549,7 +548,7 @@ etk_range_value_get(range)); break; } - ev_redraw(); + canvas_redraw(); } return ETK_TRUE; } @@ -590,6 +589,6 @@ } edje_edit_part_selected_state_set(edje_o, Cur.part->string, Cur.state->string); //this make edje redraw (need to update in lib) - ev_redraw(); + canvas_redraw(); return ETK_TRUE; } =================================================================== RCS file: /cvs/e/e17/proto/edje_editor/src/bin/edje_editor_state.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- edje_editor_state.c 2 Jul 2008 01:07:02 -0000 1.1 +++ edje_editor_state.c 2 Jul 2008 02:26:31 -0000 1.2 @@ -362,7 +362,7 @@ edje_edit_state_max_h_set(edje_o, Cur.part->string, Cur.state->string, etk_range_value_get(ETK_RANGE(UI_StateMaxHSpinner))); - ev_redraw(); + canvas_redraw(); return ETK_TRUE; } =================================================================== RCS file: /cvs/e/e17/proto/edje_editor/src/bin/edje_editor_text.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- edje_editor_text.c 2 Jul 2008 01:07:02 -0000 1.1 +++ edje_editor_text.c 2 Jul 2008 02:26:31 -0000 1.2 @@ -304,7 +304,7 @@ edje_edit_part_effect_set(edje_o, Cur.part->string, (int)etk_combobox_item_data_get(etk_combobox_active_item_get(combobox))); - ev_redraw(); + canvas_redraw(); return ETK_TRUE; } @@ -317,7 +317,7 @@ edje_edit_state_text_size_set(edje_o, Cur.part->string, Cur.state->string, (int)etk_range_value_get(range)); - ev_redraw(); + canvas_redraw(); return ETK_TRUE; } @@ -329,7 +329,7 @@ edje_edit_state_text_set(edje_o, Cur.part->string, Cur.state->string, etk_entry_text_get(ETK_ENTRY(object))); - ev_redraw(); + canvas_redraw(); return ETK_TRUE; } =================================================================== RCS file: /cvs/e/e17/proto/edje_editor/src/bin/edje_editor_toolbar.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- edje_editor_toolbar.c 2 Jul 2008 01:07:02 -0000 1.1 +++ edje_editor_toolbar.c 2 Jul 2008 02:26:31 -0000 1.2 @@ -554,7 +554,7 @@ } break; } - ev_redraw(); + canvas_redraw(); return ETK_TRUE; } =================================================================== RCS file: /cvs/e/e17/proto/edje_editor/src/bin/edje_editor_tree.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- edje_editor_tree.c 2 Jul 2008 01:07:02 -0000 1.1 +++ edje_editor_tree.c 2 Jul 2008 02:26:31 -0000 1.2 @@ -338,7 +338,7 @@ break; } - ev_redraw(); + canvas_redraw(); return ETK_TRUE; } =================================================================== RCS file: /cvs/e/e17/proto/edje_editor/src/bin/edje_editor_window.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- edje_editor_window.c 2 Jul 2008 01:07:02 -0000 1.1 +++ edje_editor_window.c 2 Jul 2008 02:26:31 -0000 1.2 @@ -145,7 +145,7 @@ evas_object_show(logo); //Create the evas objects needed by the canvas (fakewin, handlers) - prepare_canvas(); + canvas_prepare(); //ToolbarEmbed UI_ToolbarEmbed = etk_embed_new(UI_evas); =================================================================== RCS file: /cvs/e/e17/proto/edje_editor/src/bin/main.h,v retrieving revision 1.38 retrieving revision 1.39 diff -u -3 -r1.38 -r1.39 --- main.h 2 Jul 2008 01:07:02 -0000 1.38 +++ main.h 2 Jul 2008 02:26:31 -0000 1.39 @@ -158,20 +158,7 @@ Evas_Object *edje_o; //The edje object we are editing Evas_Hash *Parts_Hash; //Associate part names with Etk_Tree_Row* -Evas_Object *EV_fakewin; //The simple window implementation -Evas_Object *EV_movebox; //The object used for moving fakewin -Evas_Object *focus_handler; //The yellow box around the selected part -Evas_Object *rel1_handler; //The red point -Evas_Object *rel2_handler; //The blue point -Evas_Object *move_handler; //The central move arrows -Evas_Object *rel1X_parent_handler; //The 4 line that show the container for each side of the part -Evas_Object *rel1Y_parent_handler; // -Evas_Object *rel2X_parent_handler; // -Evas_Object *rel2Y_parent_handler; // -Evas_Object *rel1X_align_guide; //The 4 line (2 blu & 2 red) used for align on drag operation -Evas_Object *rel1Y_align_guide; // -Evas_Object *rel2X_align_guide; // -Evas_Object *rel2Y_align_guide; // + Evas_List *stack; //Stack for the consolle int consolle_count; //Counter for the consolle ------------------------------------------------------------------------- Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs