Search documentation of wx

# View Source wxClientDC (wx v2.4.2)

Functions for wxClientDC class

`wxClientDC` is primarily useful for obtaining information about the window from outside EVT_PAINT() handler.

Typical use of this class is to obtain the extent of some text string in order to allocate enough size for a window, e.g.

Note: While `wxClientDC` may also be used for drawing on the client area of a window from outside an EVT_PAINT() handler in some ports, this does `not` work on all platforms (neither wxOSX nor wxGTK with GTK 3 Wayland backend support this, so drawing using `wxClientDC` simply doesn't have any effect there) and the only portable way of drawing is via `wxPaintDC`. To redraw a small part of the window, use `wxWindow:refreshRect/3` to invalidate just this part and check `wxWindow:getUpdateRegion/1` in the paint event handler to redraw this part only.

`wxClientDC` objects should normally be constructed as temporary stack objects, i.e. don't store a `wxClientDC` object.

A `wxClientDC` object is initialized to use the same font and colours as the window it is associated with.

See: `wxDC`, `wxMemoryDC`, `wxPaintDC`, `wxWindowDC`, `wxScreenDC`

This class is derived (and can use functions) from: `wxWindowDC` `wxDC`

wxWidgets docs: wxClientDC

# Summary

## Types

wxClientDC()

## Functions

destroy(This)

Destroys the object.

new(Window)

Constructor.

# Types

Link to this type

# wxClientDC()

View Source

    -type wxClientDC() :: wx:wx_object().

# Functions

Link to this function

# destroy(This)

View Source

    -spec destroy(This :: wxClientDC()) -> ok.

Destroys the object.

Link to this function

# new(Window)

View Source

    -spec new(Window) -> wxClientDC() when Window :: wxWindow:wxWindow().

Constructor.

Pass a pointer to the window on which you wish to paint.