[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
Just to provide on update on this( assuming someone cares )..
When _xwin_private_process_event receives a ConfigureNotify event it
calls a global function, resize_screen. resize_screen is also available
for the user to call. resize_screen calls
(*gfx_driver->resize_window_handler)() which points to
_xwin_resize_window. _xwin_resize_window calls
_xwin_private_resize_window and recreates the internal screen object
somehow. Right now Im calling _xwin_private_destroy_screen followed by
_xwin_private_create_screen_bitmap but that crashes.
That is that.. ill hack on it more this weekend till it works.
Jon Rafkind wrote:
I have hacked on xwin.c to enable window resizing in X11 which works
fine but I have not found a clean way yet to update the graphics
driver and the current screen bitmap. Im not familiar enough with the
Allegro internals to know of a good way to do this. Would a callback
work? The way I imagine it is when the ConfigureNotify event is
received in the X event handler, it calls a function pointer much like
what _xwin_mouse_interrupt is, to reconfigure the gfx driver and
update the screen bitmap. It would also call a user supplied call
back( if one is set ) to let the user update their own stuff.
The xwin code doesnt seem to "know" about the current graphics driver,
though, except for the times that it is passed into a function such as
_xwin_create_screen. Is there some way to get the current gfx driver?
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/