Seems like you need to use ecore_evas_callback_resize_set. EG:

 >    ee = ecore_evas_software_x11_new(NULL, 0,  0, 0, WIDTH, HEIGHT);
 >         ecore_evas_title_set(ee, "EDJE example");
 >         ecore_evas_borderless_set(ee, 0);
 >         ecore_evas_shaped_set(ee, 0);
ecore_evas_callback_resize_set(ee, _my_resize_func);
 >         //ecore_evas_show(ee);


 >    edje = edje_object_add(evas);
evas_object_name_set(edje, "bg");
 >         edje_object_file_set(edje, "edje/XXX.edj", "test");
 >         evas_object_move(edje, 0, 0);
 >         edje_object_size_min_get(edje, &edje_w, &edje_h);
 >         if ( edje_w <= 10 )
 >             edje_w = WIDTH;
 >         if ( edje_h <= 10 )
 >             edje_h = HEIGHT;
 >         evas_object_resize(edje, edje_w, edje_h);
 >         evas_object_show(edje);


static void _my_resize_func(Ecore_Evas *ee)
{
    Evas_Object *o = NULL;
    int w = 0, h = 0;

    if (!(o = evas_object_name_find(ecore_evas_get(ee), "bg"))) return;
    ecore_evas_geometry_get(ee, NULL, NULL, &w, &h);
    evas_object_move(o, 0, 0);
    evas_object_resize(o, w, h);
}

devilhorns

Diego Jacobi wrote:
> Hello people.
> 
> I am trying to get involved in EFL programming.
> But i am having a problem with resizing my application.
> The tutorial that i am reading say nothing about it and i can not find
> other people having the same problem on google.
> 
> This is the problem:
> 
> I made a basic Edje application and i expect it to resize when i
> manually resize the window, but instead, a black background is drawn.
> 
> This is the app:
> 
> #include <Ecore_Evas.h>
> #include <Ecore.h>
> #include <Edje.h>
> 
> #define WIDTH 400
> #define HEIGHT 400
> 
> 
> // Declaraciones
> int app_signal_exit(void *data, int type, void *event);
> 
> // GLOBALS
> Ecore_Evas  *   ee;
> Evas        *   evas;
> Evas_Object *   edje;
> 
> Evas_Coord   edje_w, edje_h;
> 
> 
> int main(int argv, char *argc[])
> {
>         ecore_init();
>         ecore_event_handler_add(ECORE_EVENT_SIGNAL_EXIT, app_signal_exit, 
> NULL);
> 
> 
>         ecore_evas_init();
> 
>    ee = ecore_evas_software_x11_new(NULL, 0,  0, 0, WIDTH, HEIGHT);
>         ecore_evas_title_set(ee, "EDJE example");
>         ecore_evas_borderless_set(ee, 0);
>         ecore_evas_shaped_set(ee, 0);
>         //ecore_evas_show(ee);
> 
> 
>    evas = ecore_evas_get(ee);
>         //evas_font_path_append(evas, "edje/fonts/");
> 
>         edje_init();
>    edje = edje_object_add(evas);
>         edje_object_file_set(edje, "edje/XXX.edj", "test");
>         evas_object_move(edje, 0, 0);
>         edje_object_size_min_get(edje, &edje_w, &edje_h);
>         if ( edje_w <= 10 )
>             edje_w = WIDTH;
>         if ( edje_h <= 10 )
>             edje_h = HEIGHT;
>         evas_object_resize(edje, edje_w, edje_h);
>         evas_object_show(edje);
> 
>         ecore_evas_resize(ee, (int)edje_w, (int)edje_h);
>         ecore_evas_show(ee);
> 
>       /* Insert Objects and callbacks here */
> 
>         ecore_main_loop_begin();
> 
>         return 0;
> }
> 
> 
> int app_signal_exit(void *data, int type, void *event){
> 
>         printf("DEBUG: Exit called, shutting down\n");
>         ecore_main_loop_quit();
>         return 1;
> }
> 
> 
> 
> 
> and XXX.edc
> 
> 
> collections {
>     group {
>         name: "test";
>               parts {
>             part {
>                 name: "box-red";
>                 type: RECT;
>                 mouse_events: 0;
>                 description {
>                    state: "default" 0.0;
>                    color: 255 0 0 255;
>                    rel1 {
>                       relative: 0.0 0.0;
>                       offset: 0 0;
>                    }
>                    rel2 {
>                       relative: 0.5 0.5;
>                       offset: 0 0;
>                    }
>                 }
>             }
>             part {
>                 name: "box-blue";
>                 type: RECT;
>                 mouse_events: 0;
>                 description {
>                     state: "default" 0.0;
>                     color: 0 0 255 255;
>                     rel1 {
>                         relative: 1.0 1.0;
>                         offset: 0 0;
>                         to: "box-red";
>                     }
>                     rel2 {
>                         relative: 1.0 1.0;
>                         offset: 0 0;
>                     }
>                 }
>             }
>         }
>     }
> }
> 

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to