On Tue, Jul 13, 2004 at 03:31:25PM +0800, Jack Liu (Shanghai) wrote:
> Hi, Sven,
>       Now comes the codes, I write it refer to the example"df_window.c".
> 
> 
>       DirectFBInit (&argc, &argv);
>       DirectFBCreate (&dfb);
> 
>       //init display layer
>       dfb->GetDisplayLayer( dfb, DLID_PRIMARY, &layer );
>       layer->SetCooperativeLevel( layer, DLSCL_ADMINISTRATIVE );
>       layer_config.flags = DLCONF_BUFFERMODE;
>       layer_config.buffermode = DLBM_FRONTONLY;
>       layer->SetConfiguration( layer, &layer_config );
>       layer->GetConfiguration( layer, &layer_config );
>       layer->EnableCursor ( layer, 1 );
> 
>       //create bg surface
>       {
>               DFBSurfaceDescription desc;
> 
>               desc.flags = DSDESC_WIDTH | DSDESC_HEIGHT | DSDESC_CAPS;
>               desc.width = layer_config.width;
>               desc.height = layer_config.height;
>               desc.caps = DSCAPS_PRIMARY |DSCAPS_SYSTEMONLY;
>               dfb->CreateSurface( dfb, &desc, &bgsurface );

Here you are implicitly creating a window because your DirectFB 
cooperative level is DFSCL_SHARED. That's why you can move it around. Just 
replace this part with layer->GetSurface( layer ); and your app will work 
correctly.

>               bgsurface->SetFont( bgsurface, font );
>               bgsurface->SetColor( bgsurface, 0xEE, 0x00, 0xEE, 0xFF );
>               }
>       
>       //Create Window on layer
>       {
>               DFBWindowDescription desc;
> 
>               desc.flags = ( DWDESC_POSX | DWDESC_POSY | DWDESC_WIDTH |
> DWDESC_HEIGHT | DWDESC_CAPS);
>               desc.caps = DWCAPS_INPUTONLY;

Are you sure you want to use DWCAPS_INPUTONLY? The window will be 
invisible.

>               desc.posx = 200;
>               desc.posy = 200;
>               desc.width = 300;
>               desc.height = 300;
> 
>               layer->CreateWindow( layer, &desc, &window1 );
>               window1->SetOpacity( window1, 0xFF );
>               window1->GetID( window1, &id1 );
>               
>       }
> 

-- 
Ville Syrj�l�
[EMAIL PROTECTED]
http://www.sci.fi/~syrjala/


Reply via email to