ListBoxStyler Class Reference

#include <Pt/Forms/ListBoxStyler.h>

Binds a list box to the current style renderer. More...

Inherits Styler.

Public Member Functions

 ListBoxStyler ()
 Constructs an unbound list box styler.
const Gfx::Brushbackground () const
 Returns the effective list box background brush.
void setBackground (const Gfx::Brush &brush)
 Sets the widget-local list box background brush to brush.
const Gfx::Pencontour () const
 Returns the effective list box contour pen.
void setContour (const Gfx::Pen &pen)
 Sets the widget-local list box contour pen to pen.
Gfx::SizeF measureFrame (PaintSurface &surface, const Gfx::SizeF &contentSize) const
 Measures the frame enclosing contentSize.
Gfx::RectF layoutFrame (PaintSurface &surface, const Gfx::RectF &frameRect) const
 Returns the frame content rectangle within frameRect.
void renderBackground (PaintContext &context, const Gfx::RectF &rect, const ListBoxState &state) const
 Renders the list box background within rect for state.
void renderChrome (PaintContext &context, const Gfx::RectF &rect, const ListBoxState &state) const
 Renders the list box chrome within rect for state.
void setRenderer (ListBoxRenderer *renderer=0)
 Assigns a specific list box renderer.
bool bind (const Style &style, const StyleOptions &styleOptions)
 Binds this styler to style and styleOptions.
bool isBound () const
 Returns true if a renderer is bound.

Protected Member Functions

virtual StyleOptionsonBindOptions (const StyleOptions &global)
 Binds the overlay to global and returns it.
virtual RendereronStyleRenderer (const Style &style)
 Returns the shared list-box renderer from style, or 0.
virtual RendereronCreateRenderer (const Style &style)
 Creates an independent clone of the style renderer, or 0.
void init (Renderer *renderer)
 Replaces the bound renderer with renderer.

Detailed Description

A ListBox owns a ListBoxStyler. Applications do not construct one. Call Styler::bind() from onInvalidate(). When the overlay has no local options, bind uses the shared renderer from the style. Local options use a private clone. setRenderer() keeps an assigned renderer until it is cleared. A null renderer falls back on the next bind.

Appearance getters return effective tokens after bind. Setters write widget-local options. Measure, layout, and paint call the typed methods on this styler, not a public renderer accessor.

Member Function Documentation

◆ setRenderer()

void setRenderer ( ListBoxRenderer * renderer = 0)

A null renderer falls back to the current style on the next bind.

◆ bind()

bool bind ( const Style & style,
const StyleOptions & styleOptions )
inherited

Returns true when the effective renderer or the effective options changed.

◆ init()

void init ( Renderer * renderer)
protectedinherited

A non-null renderer is a custom renderer. bind() keeps it until init() is called with 0, which falls back to the current style.