PIP 5.6.1
Platform-Independent Primitives
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
TileSimple Class Reference

Simple text tile with per-row formatting. More...

#include <piscreentiles.h>

Inheritance diagram for TileSimple:
Inheritance graph
[legend]

Public Types

typedef PIPair< PIString, PIScreenTypes::CellFormatRow
 Row text with cell format.
 

Public Member Functions

 TileSimple (const PIString &n=PIString())
 Constructs an empty text tile.
 
 TileSimple (const Row &r)
 Constructs a text tile with one row.
 
virtual ~TileSimple ()
 Destroys the text tile.
 
- Public Member Functions inherited from PIScreenTile
 PIScreenTile (const PIString &n=PIString(), PIScreenTypes::Direction d=PIScreenTypes::Vertical, PIScreenTypes::SizePolicy p=PIScreenTypes::Preferred)
 Constructs a tile with name, child layout direction, and size policy.
 
virtual ~PIScreenTile ()
 Destroys the tile and its owned child tiles.
 
void addTile (PIScreenTile *t)
 Adds child tile t, makes this tile its parent, and attaches the subtree to the same screen bridge.
 
void takeTile (PIScreenTile *t)
 Detaches child tile t without deleting it and removes its screen association.
 
void removeTile (PIScreenTile *t)
 Removes and deletes child tile t.
 
PIScreenTileparentTile () const
 Returns the parent tile or nullptr for the root.
 
PIVector< PIScreenTile * > children (bool only_visible=false)
 Returns all descendant tiles. Hidden tiles can be skipped with only_visible.
 
PIScreenTilechildUnderMouse (int x, int y)
 Returns the first visible direct child covering screen point x, y.
 
void show ()
 Makes the tile visible for subsequent layout, hit-testing, and drawing passes.
 
void hide ()
 Hides the tile from layout, hit-testing, and drawing passes.
 
void setFocus ()
 Requests focus for this tile if it is attached to a screen and allows focus.
 
bool hasFocus () const
 Returns whether this tile currently owns focus.
 
void setMargins (int m)
 Sets all margins to m cells.
 
void setMargins (int l, int r, int t, int b)
 Sets left, right, top, and bottom margins in cells.
 
int x () const
 Returns the tile X coordinate in screen space.
 
int y () const
 Returns the tile Y coordinate in screen space.
 
int width () const
 Returns the current tile width in cells.
 
int height () const
 Returns the current tile height in cells.
 
- Public Member Functions inherited from PIObject
 PIObject (const PIString &name=PIString())
 Constructs an object and initializes its name property.
 
virtual ~PIObject ()
 Destroys the object, raises deleted() and disconnects it from the event graph.
 
PIString name () const
 Returns the name property of this object.
 
virtual const char * className () const
 Returns the registered class name of this object.
 
virtual uint classNameID () const
 Returns the hash of className().
 
virtual const char * parentClassName () const
 Returns the registered parent class name, or an empty string for the root.
 
bool debug () const
 Returns whether piCoutObj output is enabled for this object.
 
void setName (const PIString &name)
 Sets the name property of this object.
 
void setDebug (bool debug)
 Enables or disables piCoutObj output for this object.
 
PIVariant property (const char *name) const
 Returns the property with name "name".
 
void setProperty (const char *name, const PIVariant &value)
 Sets the property "name" to "value" and creates it if needed. More...
 
bool isPropertyExists (const char *name) const
 Returns whether the property "name" exists.
 
void setThreadSafe (bool yes)
 Enables or disables the internal object mutex during handler execution. More...
 
bool isThreadSafe () const
 Returns whether the internal object mutex is enabled for handler execution.
 
bool execute (const PIString &method, const PIVector< PIVariantSimple > &vl)
 Executes a registered method or handler method by name with the supplied arguments. More...
 
bool execute (const PIString &method)
 Overload of execute() for a method without arguments.
 
bool execute (const PIString &method, const PIVariantSimple &v0)
 Overload of execute() for one argument.
 
bool execute (const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1)
 Overload of execute() for two arguments.
 
bool execute (const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2)
 Overload of execute() for three arguments.
 
bool execute (const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2, const PIVariantSimple &v3)
 Overload of execute() for four arguments.
 
bool executeQueued (PIObject *performer, const PIString &method, const PIVector< PIVariantSimple > &vl)
 Queues execution of a registered method on the performer object. More...
 
bool executeQueued (PIObject *performer, const PIString &method)
 Overload of executeQueued() for a method without arguments.
 
bool executeQueued (PIObject *performer, const PIString &method, const PIVariantSimple &v0)
 Overload of executeQueued() for one argument.
 
bool executeQueued (PIObject *performer, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1)
 Overload of executeQueued() for two arguments.
 
bool executeQueued (PIObject *performer, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2)
 Overload of executeQueued() for three arguments.
 
bool executeQueued (PIObject *performer, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2, const PIVariantSimple &v3)
 Overload of executeQueued() for four arguments.
 
void dump (const PIString &line_prefix=PIString()) const
 Dumps object diagnostics to the project output stream.
 
PIStringList scopeList () const
 Returns the registered inheritance scope of this object, including its own class.
 
PIStringList methodsEH () const
 Returns full signatures of all registered event and handler methods for this class scope.
 
bool isMethodEHContains (const PIString &name) const
 Returns whether a registered event or handler method with this name exists.
 
PIString methodEHArguments (const PIString &name) const
 Returns the comma-separated argument type list of a registered method.
 
PIString methodEHFullFormat (const PIString &name) const
 Returns the full registered signature of a method.
 
PIString methodEHFromAddr (const void *addr) const
 Returns the registered method name for the specified entry-point address.
 
void piDisconnect (const PIString &sig, PIObject *dest, void *ev_h)
 Disconnects this source object from a specific destination handler for event "sig".
 
void piDisconnect (const PIString &sig, PIObject *dest)
 Disconnects this source object from all connections of event "sig" to destination object "dest".
 
void piDisconnect (const PIString &sig)
 Disconnects this source object from all connections of event "sig".
 
bool isPIObject () const
 Returns whether this pointer still refers to a live PIObject instance.
 
template<typename T >
bool isTypeOf () const
 Returns whether this object belongs to class "T" or one of its registered descendants.
 
template<typename T >
T * cast () const
 Returns this object cast to "T" when isTypeOf<T>() succeeds, otherwise nullptr.
 
void callQueuedEvents ()
 Executes all queued deliveries posted to this performer object.
 
bool maybeCallQueuedEvents ()
 Executes queued deliveries only when this object was used as a performer. More...
 
void deleteLater ()
 Schedules the object for deferred deletion. More...
 
void deleted (PIObject *o)
 Raised immediately before object destruction. More...
 

Public Attributes

PIVector< Rowcontent
 Rows displayed by the tile.
 
PIScreenTypes::Alignment alignment
 Horizontal text alignment inside the tile.
 
- Public Attributes inherited from PIScreenTile
PIScreenTypes::Direction direction
 Direction used to lay out child tiles.
 
PIScreenTypes::SizePolicy size_policy
 Size policy used by the parent during layout.
 
PIScreenTypes::FocusFlags focus_flags
 Focus and navigation flags for the tile.
 
PIScreenTypes::CellFormat back_format
 Background format used to prefill the tile area before drawing.
 
PIChar back_symbol
 Background symbol used to prefill the tile area before drawing.
 
int minimumWidth
 Minimum size limits accepted during layout.
 
int maximumWidth
 Maximum size limits accepted during layout.
 
int marginLeft
 Outer margins in cells.
 
int spacing
 Spacing between visible child tiles in cells.
 
bool visible
 Whether the tile participates in layout, hit-testing, and drawing.
 

Protected Member Functions

void sizeHint (int &w, int &h) const override
 Returns the preferred tile size in w and h. The base implementation derives it from visible children, spacing, and margins.
 
void drawEvent (PIScreenDrawer *d) override
 Draws the tile with drawer d in screen coordinates.
 
- Protected Member Functions inherited from PIScreenTile
virtual void sizeHint (int &w, int &h) const
 Returns the preferred tile size in w and h. The base implementation derives it from visible children, spacing, and margins.
 
virtual void resizeEvent (int w, int h)
 Called after the tile size changes to w by h during layout.
 
virtual void drawEvent (PIScreenDrawer *d)
 Draws the tile with drawer d in screen coordinates.
 
virtual bool keyEvent (PIKbdListener::KeyEvent key)
 Handles keyboard input and returns true when the event is consumed.
 
virtual bool mouseEvent (PIKbdListener::MouseEvent me)
 Handles mouse input and returns true when the event is consumed.
 
virtual bool wheelEvent (PIKbdListener::WheelEvent we)
 Handles mouse wheel input and returns true when the event is consumed.
 
void raiseEvent (PIScreenTypes::TileEvent e)
 Raises tile event.
 
void setScreen (PIScreenTypes::PIScreenBase *s)
 Sets screen reference.
 
void deleteChildren ()
 Deletes all owned child tiles.
 
void drawEventInternal (PIScreenDrawer *d)
 Draws background, tile contents, and then child tiles.
 
void layout ()
 Recomputes child geometry according to size hints, margins, and policies.
 
bool needLayout ()
 Returns whether this tile should participate in automatic layout. Tiles with policy PIScreenTypes::Ignore are skipped.
 
- Protected Member Functions inherited from PIObject
PIObjectemitter () const
 Returns the source object that raised the current event. More...
 
virtual void propertyChanged (const char *name)
 Virtual method called after property "name" has been changed by setProperty().
 

Additional Inherited Members

- Static Public Member Functions inherited from PIObject
static bool execute (PIObject *o, const PIString &method, const PIVector< PIVariantSimple > &vl)
 Static convenience wrapper for execute().
 
static bool execute (PIObject *o, const PIString &method)
 Static overload of execute() without arguments.
 
static bool execute (PIObject *o, const PIString &method, const PIVariantSimple &v0)
 Static overload of execute() for one argument.
 
static bool execute (PIObject *o, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1)
 Static overload of execute() for two arguments.
 
static bool execute (PIObject *o, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2)
 Static overload of execute() for three arguments.
 
static bool execute (PIObject *o, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2, const PIVariantSimple &v3)
 Static overload of execute() for four arguments.
 
static bool executeQueued (PIObject *o, PIObject *performer, const PIString &method, const PIVector< PIVariantSimple > &vl)
 Static convenience wrapper for executeQueued().
 
static bool executeQueued (PIObject *o, PIObject *performer, const PIString &method)
 Static overload of executeQueued() without arguments.
 
static bool executeQueued (PIObject *o, PIObject *performer, const PIString &method, const PIVariantSimple &v0)
 Static overload of executeQueued() for one argument.
 
static bool executeQueued (PIObject *o, PIObject *performer, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1)
 Static overload of executeQueued() for two arguments.
 
static bool executeQueued (PIObject *o, PIObject *performer, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2)
 Static overload of executeQueued() for three arguments.
 
static bool executeQueued (PIObject *o, PIObject *performer, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2, const PIVariantSimple &v3)
 Static overload of executeQueued() for four arguments.
 
static PIObject::Connection piConnect (PIObject *src, const PIString &sig, PIObject *dest_o, void *dest, void *ev_h, void *e_h, int args, const char *loc)
 Low-level direct connection helper behind the legacy CONNECT* macros.
 
static PIObject::Connection piConnectU (PIObject *src, const PIString &sig, PIObject *dest_o, void *dest, const PIString &hname, const char *loc, PIObject *performer=0)
 Low-level name-based connection helper behind CONNECTU() and CONNECTU_QUEUED().
 
static PIObject::Connection piConnectLS (PIObject *src, const PIString &sig, std::function< void()> *f, const char *loc)
 Low-level helper that connects an event to a lambda or functor wrapper.
 
static void piDisconnect (PIObject *src, const PIString &sig, PIObject *dest, void *ev_h)
 Disconnects source object "src" from a specific destination handler for event "sig".
 
static void piDisconnect (PIObject *src, const PIString &sig, PIObject *dest)
 Disconnects source object "src" from all connections of event "sig" to destination object "dest".
 
static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnects source object "src" from all connections of event "sig".
 
static void raiseEvent (PIObject *sender, const uint eventID)
 Internal event delivery helper for registered events without arguments.
 
template<typename T0 >
static void raiseEvent (PIObject *sender, const uint eventID, const T0 &v0=T0())
 Internal event delivery helper for registered events with one argument.
 
template<typename T0 , typename T1 >
static void raiseEvent (PIObject *sender, const uint eventID, const T0 &v0=T0(), const T1 &v1=T1())
 Internal event delivery helper for registered events with two arguments.
 
template<typename T0 , typename T1 , typename T2 >
static void raiseEvent (PIObject *sender, const uint eventID, const T0 &v0=T0(), const T1 &v1=T1(), const T2 &v2=T2())
 Internal event delivery helper for registered events with three arguments.
 
template<typename T0 , typename T1 , typename T2 , typename T3 >
static void raiseEvent (PIObject *sender, const uint eventID, const T0 &v0=T0(), const T1 &v1=T1(), const T2 &v2=T2(), const T3 &v3=T3())
 Internal event delivery helper for registered events with four arguments.
 
static PIObjectfindByName (const PIString &name)
 Returns the first live object with name "name", or nullptr.
 
static bool isPIObject (const PIObject *o)
 Returns whether "o" points to a live PIObject instance.
 
static bool isPIObject (const void *o)
 Overload of isPIObject() for an untyped pointer.
 
template<typename T >
static bool isTypeOf (const PIObject *o)
 Returns whether "o" belongs to class "T" or one of its registered descendants.
 
template<typename T >
static bool isTypeOf (const void *o)
 Overload of isTypeOf() for an untyped pointer.
 
static PIString simplifyType (const char *a, bool readable=true)
 Simplifies a C++ type spelling for registered-method metadata.
 
- Protected Attributes inherited from PIScreenTile
PIVector< PIScreenTile * > tiles
 Owned direct child tiles.
 
PIScreenTileparent
 Parent tile or nullptr for the root or detached tiles.
 
PIScreenTypes::PIScreenBasescreen
 Screen pointer, receiving tile notifications.
 
int x_
 Tile position and size in screen cells.
 
bool has_focus
 Whether this tile currently owns focus.
 

Detailed Description

Simple text tile with per-row formatting.