wxRuby Documentation Home


A ScreenDC can be used to paint on the screen. This should normally be constructed as a temporary stack object; don’t store a ScreenDC object.

Derived from


See also

DC, MemoryDC, PaintDC, ClientDC, WindowDC




Boolean start_drawing_on_top(Window window)
Boolean start_drawing_on_top(Rect rect = nil)

Use this in conjunction with end_drawing_on_top to ensure that drawing to the screen occurs on top of existing windows. Without this, some window systems (such as X) only allow drawing to take place underneath other windows.

By using the first form of this function, an application is specifying that the area that will be drawn on coincides with the given window.

By using the second form, an application can specify an area of the screen which is to be drawn on. If NULL is passed, the whole screen is available.

It is recommended that an area of the screen is specified because with large regions, flickering effects are noticeable when destroying the temporary transparent window used to implement this feature.

You might use this pair of functions when implementing a drag feature, for example as in the SplitterWindow implementation.


This function is probably obsolete since the X implementations allow drawing directly on the screen now. However, the fact that this function allows the screen to be refreshed afterwards, may be useful to some applications.


Boolean end_drawing_on_top()

Use this in conjunction with start_drawing_on_top.

This function destroys the temporary window created to implement on-top drawing (X only).

[This page automatically generated from the Textile source at Wed Sep 09 02:21:22 +0100 2009]