LineEditStyler Class Reference

#include <Pt/Forms/LineEditStyler.h>

Binds a line edit to the current style renderer. More...

Inherits Styler.

Public Member Functions

 LineEditStyler ()
 Constructs an unbound line edit styler.
const Gfx::Brush & background () const
 Returns the effective text background brush.
void setBackground (const Gfx::Brush &brush)
 Sets the widget-local text background brush to brush.
const Gfx::Pen & contour () const
 Returns the effective contour pen.
void setContour (const Gfx::Pen &pen)
 Sets the widget-local contour pen to pen.
const Gfx::Color & textColor () const
 Returns the effective text color.
void setTextColor (const Gfx::Color &color)
 Sets the widget-local text color to color.
Gfx::Font font () const
 Returns the effective font.
void setFont (const Gfx::Font &font)
 Sets the widget-local font to font.
void setFontSize (std::size_t size)
 Sets the widget-local font size to size.
void setFontWeight (Gfx::Font::Weight weight)
 Sets the widget-local font weight to weight.
void setFontSlant (Gfx::Font::Slant slant)
 Sets the widget-local font slant to slant.
Gfx::SizeF measureFrame (PaintSurface &surface, const Gfx::SizeF &contentSize) const
 Measures the frame enclosing contentSize, or returns an empty size.
Gfx::RectF layoutFrame (PaintSurface &surface, const Gfx::RectF &rect) const
 Returns the frame content rectangle, or an empty rectangle when unavailable.
const Painter * textPainter (PaintSurface &surface) const
 Returns the prepared text painter, or 0 when no renderer is bound.
void renderChrome (PaintContext &context, const Gfx::RectF &rect, const Gfx::RectF &textRect, const String &text, const Gfx::PointF &textPos, const Gfx::RectF &cursor, const Gfx::RectF &selection, const LineEditState &state) const
 Renders line edit chrome when a renderer is bound.
void setRenderer (LineEditRenderer *renderer=0)
 Assigns a specific line edit renderer or restores style fallback.
StyleOptions & options ()
 Returns the bound effective line edit options.
const StyleOptions & options () const
 Returns the bound effective line edit options.
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 StyleOptions & onBindOptions (const StyleOptions &styleOptions)
 Binds the overlay to styleOptions and returns it.
virtual Renderer * onStyleRenderer (const Style &style)
 Returns the shared line-edit renderer from style, or 0.
virtual Renderer * onCreateRenderer (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 LineEdit owns a LineEditStyler. 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

◆ 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.