LineEditRenderer Class Referenceabstract

#include <Pt/Forms/LineEditStyler.h>

Renders the look of a line edit. More...

Inherits Renderer.

Public Member Functions

 LineEditRenderer (std::size_t refs=0)
 Constructs a renderer with reference count refs.
virtual ~LineEditRenderer ()
 Destroys the renderer.
LineEditRenderercreate () const
 Creates a new default-constructed instance that the caller owns.
Gfx::SizeF measureFrame (PaintSurface &surface, const Gfx::SizeF &contentSize)
 Returns the outer size including the frame for contentSize.
Gfx::RectF layoutFrame (PaintSurface &surface, const Gfx::RectF &rect)
 Returns the content rectangle within rect.
const PaintertextPainter (PaintSurface &surface)
 Returns a painter with the current font and text color.
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)
 Paints entry, selection, text, and caret for state.
void renderEntry (PaintContext &context, const Gfx::RectF &rect, const LineEditState &state)
 Paints the entry for state.
void renderSelection (PaintContext &context, const Gfx::RectF &textRect, const Gfx::RectF &selection, const LineEditState &state)
 Paints the selection for state.
void renderText (PaintContext &context, const Gfx::RectF &textRect, const String &text, const Gfx::PointF &textPos, const LineEditState &state)
 Paints text at textPos for state.
void renderCursor (PaintContext &context, const Gfx::RectF &textRect, const Gfx::RectF &cursor, const LineEditState &state)
 Paints the caret for state.
const std::type_info & typeId () const
 Returns the dynamic type used as the registry key.
void ref ()
 Adds one reference.
std::size_t unref ()
 Removes one reference and returns the remaining count.
void reset (const StyleOptions &options)
 Resets this facet with options.

Protected Member Functions

virtual LineEditRendereronCreate () const =0
 Creates a new instance of the same concrete type.
virtual void onReset (const StyleOptions &options)=0
 Resets this facet with options.
virtual Gfx::SizeF onMeasureFrame (PaintSurface &surface, const Gfx::SizeF &contentSize)=0
 Measures the frame enclosing contentSize.
virtual Gfx::RectF onLayoutFrame (PaintSurface &surface, const Gfx::RectF &rect)=0
 Returns the content rectangle within rect.
virtual const PainteronGetTextPainter (PaintSurface &surface)=0
 Returns a painter with the current font and text color.
virtual void onRenderChrome (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)
 Paints entry, selection, text, and caret for state.
virtual void onRenderEntry (PaintContext &context, const Gfx::RectF &rect, const LineEditState &state)=0
 Paints the entry for state.
virtual void onRenderSelection (PaintContext &context, const Gfx::RectF &textRect, const Gfx::RectF &selection, const LineEditState &state)=0
 Paints the selection for state.
virtual void onRenderText (PaintContext &context, const Gfx::RectF &textRect, const String &text, const Gfx::PointF &textPos, const LineEditState &state)=0
 Paints text at textPos for state.
virtual void onRenderCursor (PaintContext &context, const Gfx::RectF &textRect, const Gfx::RectF &cursor, const LineEditState &state)=0
 Paints the caret for state.

Detailed Description

A LineEditRenderer is a Style::Facet for the line-edit family. Named measure methods run inside-out. Named layout methods run outside-in. Named render methods paint prepared rectangles. The widget owns geometry and orchestrates those passes. The renderer does not mutate widget geometry.

Derive a renderer to change the look of line edits. Register it on a Style, or assign it to a widget with LineEdit::setRenderer().

Member Function Documentation

◆ onReset()

virtual void onReset ( const StyleOptions & options)
protectedpure virtual

Resolves tokens from options and stores the painter and metric state used later by measure, layout, and render. Shared facets are reset when the application applies global options.

Reimplemented from Style::Facet.