Difference between revisions of "LGUI2:textblock"

From Lavish Software Wiki
Jump to navigation Jump to search
Line 23: Line 23:
 
|-
 
|-
 
! horizontalContentAlignment
 
! horizontalContentAlignment
| The horizonal alignment of the content (text), not to be confused with text justification; one of "none" "stretch" "left" "right" "center"
+
| The horizontal alignment of the content (text), not to be confused with text justification; one of "none" "stretch" "left" "right" "center"
 
|-
 
|-
 
! verticalContentAlignment
 
! verticalContentAlignment

Revision as of 11:46, 4 October 2019

A LavishGUI 2 textblock element is a fairly straightforward text display.

Defining a textblock element

A textblock element is a Element with an additional "text" property.

textblock element properties
text A string containing the text to render
lavishscript A JSON object specifying LavishScript parsing options for the textblock (see table of textblock LavishScript properties, below)
textScanner A Text Scanner definition specifying options for syntax highlighting and decoration
cursor A standard Border definition describing the text cursor
selectionBrush A Brush definition used for the background of selected text
horizontalContentAlignment The horizontal alignment of the content (text), not to be confused with text justification; one of "none" "stretch" "left" "right" "center"
verticalContentAlignment The vertical alignment of the content (text), not to be confused with text justification; one of "none" "stretch" "top" "bottom" "center"


textblock LavishScript properties
parse true/false indicating whether to parse LavishScript data sequences
ms A numeric value specifying the interval, in milliseconds, between re-evaluating LavishScript data sequences
frames A numeric value specifying the interval, in frames, between re-evaluating LavishScript data sequences
maxLength Buffer size used for evaluating LavishScript data sequences (default 4096)


Shorthand

A textblock element can be defined shorthand. Instead of using a JSON object, just use a JSON string containing the text.

Examples

A simple textblock
{
  "type": "textblock",
  "text": "Hello World!"
}
A shorthand textblock
"Hello World!"
Many shorthand textblocks, along with imageboxes, in a listbox
{
  "type": "listbox",
  "height": 60,
  "items": [
    {
      "type": "imagebox",
      "margin": [ 1, 1, 4, 1 ],
      "imageBrush": {
        "color": [ 1.0, 1.0, 1.0 ],
        "imageFile": "C:\\Users\\joeth\\Pictures\\ISBoxer 2 Logo - Concept 2.2 48x48.png"
      }
    },
    {
      "type": "imagebox",
      "margin": [ 1, 1, 4, 1 ],
      "imageBrush": {
        "color": [ 1.0, 1.0, 1.0 ],
        "imageFile": "C:\\Users\\joeth\\Pictures\\banana.gif"
      }
    },
    "this is a list box",
    "item one",
    "item two",
    "item three",
    "item four",
    "item five",
    "item six"
  ]
}

LavishGUI 2 Element Types

LavishGUI 2 LavishScript Object Types

Core API (see Using LavishGUI 2 from LavishScript)
lgui2 - lgui2animateargs - lgui2animationtype - lgui2elementref - lgui2eventargs - lgui2eventhandler - lgui2elementtype - lgui2itemviewgeneratorargs - lgui2inputbinding - lgui2layer - lgui2skin - lgui2trigger
Enums
elgui2animationframestate - elgui2dpad - elgui2edge - elgui2fontflags - elgui2horizontalalignment - elgui2imageorientation - elgui2progresstext - elgui2scrollbar - elgui2sizetocontent - elgui2verticalignment - elgui2visibility
Element Components
lgui2animation - lgui2brush - lgui2fontstyle - lgui2margins - lgui2item - lgui2property - lgui2radialitem - lgui2radialgaugeneedle
Element Base Types
lgui2element - lgui2bordered - lgui2contentbase - lgui2headeredcontentbase - lgui2itemlist
Elements