wiki.sine.space | sinespace

Difference between revisions of "Scripting/SUIText"

From wiki.sine.space
Jump to: navigation, search
(Added simple example to SUIText.Enabled)
m
Line 107: Line 107:
 
}}
 
}}
  
{{ScriptFunction|float|FlexibleHeight|{get;}|Called by the layout system.
+
{{ScriptFunction|float|FlexibleHeight|{get;}|The extra relative height this UIText  should be allocated if there is additional available space.
 
  |5=
 
  |5=
  
Line 113: Line 113:
 
}}
 
}}
  
{{ScriptFunction|float|FlexibleWidth|{get;}|Called by the layout system.
+
{{ScriptFunction|float|FlexibleWidth|{get;}|The extra relative width this UIText should be allocated if there is additional available space. |5=
|5=
+
  
  
Line 125: Line 124:
 
}}
 
}}
  
{{ScriptFunction|int|LayoutPriority|{get;}|Called by the layout system.
+
{{ScriptFunction|int|LayoutPriority|{get;}|The layout priority of this UIText component.|5=
|5=
+
  
  
 
}}
 
}}
  
{{ScriptFunction|float|LineSpacing|{get;set;}|Line spacing, specified as a factor of font line height. A value of 1 will produce normal line spacing.
+
{{ScriptFunction|float|LineSpacing|{get;set;}|Line spacing, specified as a factor of font line height. A value of 1 will produce normal line spacing.|5=
|5=
+
  
  
 
}}
 
}}
  
{{ScriptFunction|float|MinHeight|{get;}|Called by the layout system.
+
{{ScriptFunction|float|MinHeight|{get;}|The minimum height this UIText may be allocated.|5=
|5=
+
  
  
 
}}
 
}}
  
{{ScriptFunction|float|MinWidth|{get;}|Called by the layout system.
+
{{ScriptFunction|float|MinWidth|{get;}|The minimum width this UIText may be allocated. |5=
|5=
+
  
  
 
}}
 
}}
  
{{ScriptFunction|float|PixelsPerUnit|{get;}|Provides information about how fonts are scale to the screen. |5=
+
{{ScriptFunction|float|PixelsPerUnit|{get;}|Provides information about how fonts are scale to the screen.|5=
  
  
 
}}
 
}}
  
{{ScriptFunction|float|PreferredHeight|{get;}|Called by the layout system.
+
{{ScriptFunction|float|PreferredHeight|{get;}|The preferred height this UIText should be allocated if there is sufficient space.|5=
|5=
+
  
  
 
}}
 
}}
  
{{ScriptFunction|float|PreferredWidth|{get;}|Called by the layout system.
+
{{ScriptFunction|float|PreferredWidth|{get;}|The preferred width this UIText should be allocated if there is sufficient space.|5=
|5=
+
  
  
 
}}
 
}}
  
{{ScriptFunction|bool|ResizeTextForBestFit|{get;set;}|Should the text be allowed to auto resized.
+
{{ScriptFunction|bool|ResizeTextForBestFit|{get;set;}|Should the text be allowed to auto resized. |5=
 
+
 
+
|5=
+
  
  
 
}}
 
}}
  
{{ScriptFunction|int|ResizeTextMaxSize|{get;set;}|The maximum size the text is allowed to be. 1 = infinitly large.
+
{{ScriptFunction|int|ResizeTextMaxSize|{get;set;}|The maximum size the text is allowed to be. 1 = infinitly large.|5=
|5=
+
  
  
Line 186: Line 175:
 
}}
 
}}
  
{{ScriptFunction|bool|SupportRichText|{get;set;}|Whether this Text will support rich text.
+
{{ScriptFunction|bool|SupportRichText|{get;set;}| Whether this Text will support rich text. |5=
|5=
+
  
  
Line 194: Line 182:
  
  
{{ScriptFunction|string|Text|{get;set;}|The string value this Text displays.
+
{{ScriptFunction|string|Text|{get;set;}|The string value this Text displays.|5=
|5=
+
  
  

Revision as of 14:05, 9 December 2020

The SUIText class provides tools to work with the SUIText component, which is a component responsible for displaying text

Properties

AlignByGeometry

bool AlignByGeometry {get;set;}

Use the range of glyph geometry to perform horizontal alignment.


thisObject = Space.Host.ExecutingObject
 --get a reference to our object
thisObjectText = thisObject.UIText
 --get a reference to the SUIText component in our object 

Space.Log(thisObjectText.AlignByGeometry)
--This will return "true" or "false"  to your debugger console
--telling you if the Align By Geometry feature is on or not (false by default)


thisObjectText.AlignByGeometry = true
--This enables the Align By Geometry feature

Space.Log(thisObjectText.AlignByGeometry)
--This will return "true" to your debugger console

thisObjectText.AlignByGeometry = false
--This disables the Align By Geometry feature

Space.Log(thisObjectText.AlignByGeometry)
--This will return "true" to your debugger console


Color

SColor Color {get;set;}

Base color of the Graphic.

--This script dynamically changes the text's color of a GameObject with UIText component.
--For example in a text sign over your shop that you want to make more visually stand out
--or perhaps text decoration during a celebration or a text element in your User Interface or HUD.

thisObject = Space.Host.ExecutingObject
 --get a reference to our object
thisObjectText = thisObject.UIText
 --get a reference to the SUIText component in our object 
colors = {Color.Red, Color.Black, Color.White, Color.Blue, Color.Green, Color.Yellow}
 --here we are holding 6 predefined colors in a Lua Table which we will go through


function ColorChanger()

    while true do
    --infinite loop
    
        for i=1,#colors do
        --For Loop to cycle through all the table items
        thisObjectText.color = colors[i] 
        --this will set the color based on which item in the table we are now at
        coroutine.yield(0.1)
        --this will pause for a tenth of a second before we change to the next color
        end

    end
end

thisObjectText.color = Color.Red 
--this is how to set text color using one of the predefined colors in the SColor class.
thisObjectText.color = Color.New(0,0,0,1)
--this sets our text color to Black (RGB 000) but also Alpha to 1 (meaning fully opaque, not transparent)

colorOfThisObject = thisObjectText.color
thisObjectText.color = colorOfThisObject
--The color property also allows you to "get" it, not only "set" it, meaning you can get
--your text's current color and save it. In this case, the color of your text wouldn't change.

--The last 4 lines of code above are not important to this color changing script, it's just extra information for you.

Space.Host.StartCoroutine(ColorChanger) 
--this coroutine will now call our ColorChanger() function which is infinitely changing our text colors between a select range. 


Enabled

bool Enabled {get;set;}
Whether the UIText component is Enabled or not will decide if it is visually updating or not.
thisObject = Space.Host.ExecutingObject
 --get a reference to our object
thisObjectText = thisObject.UIText
 --get a reference to the UIText component in our object 


thisObjectText.Enabled = false
--This is how we disable the UIText component

Space.Log(thisObjectText.Enabled)
--This will print "false" to your console because we have set it as false.
--The reason you may want to check if it is Enabled or not is because you may
--want to dynamically toggle it

thisObjectText.Enabled = true
-- The component is disabled only from visually updating so this script is still running
-- and we are able to enable it again. If you run this script you will see that your text is
--still appearing even though we previously disabled it.

Space.Log(thisObjectText.Enabled)
-- This will print "true" to your console, because we have just Enabled it again


FlexibleHeight

float FlexibleHeight {get;}

The extra relative height this UIText should be allocated if there is additional available space.



FlexibleWidth

float FlexibleWidth {get;}

The extra relative width this UIText should be allocated if there is additional available space.


FontSize

int FontSize {get;set;}

The size that the Font should render at.



LayoutPriority

int LayoutPriority {get;}

The layout priority of this UIText component.


LineSpacing

float LineSpacing {get;set;}

Line spacing, specified as a factor of font line height. A value of 1 will produce normal line spacing.


MinHeight

float MinHeight {get;}

The minimum height this UIText may be allocated.


MinWidth

float MinWidth {get;}

The minimum width this UIText may be allocated.


PixelsPerUnit

float PixelsPerUnit {get;}

Provides information about how fonts are scale to the screen.


PreferredHeight

float PreferredHeight {get;}

The preferred height this UIText should be allocated if there is sufficient space.


PreferredWidth

float PreferredWidth {get;}

The preferred width this UIText should be allocated if there is sufficient space.


ResizeTextForBestFit

bool ResizeTextForBestFit {get;set;}

Should the text be allowed to auto resized.


ResizeTextMaxSize

int ResizeTextMaxSize {get;set;}

No documentation


ResizeTextMinSize

int ResizeTextMinSize {get;set;}

The minimum size the text is allowed to be.



SupportRichText

bool SupportRichText {get;set;}
Whether this Text will support rich text. 



Text

string Text {get;set;}

The string value this Text displays.