C# Class UILabel, TheUnseen

Inheritance: UIWidget
Datei anzeigen Open project: henryj41043/TheUnseen Class Usage Examples

Public Properties

Property Type Description
keepCrispWhenShrunk Crispness

Private Properties

Property Type Description
GetCharacterIndex int
GetCharacterIndex int
OnFontTextureChanged void

Public Methods

Method Description
ApplyShadow ( BetterList verts, BetterList uvs, BetterList cols, int start, int end, float x, float y ) : void

Apply a shadow effect to the buffer.

AssumeNaturalSize ( ) : void

Make the label assume its natural size.

CalculateOffsetToFit ( string text ) : int

Calculate the character index offset necessary in order to print the end of the specified text.

GetCharacterIndex ( int currentIndex, KeyCode, key ) : int

Get the index of the character on the line directly above or below the current index.

GetCharacterIndexAtPosition ( Vector2 localPos ) : int

Return the index of the character at the specified local position.

GetCharacterIndexAtPosition ( Vector3 worldPos ) : int

Return the index of the character at the specified world position.

GetSides ( Transform relativeTo ) : Vector3[]

Get the sides of the rectangle relative to the specified transform. The order is left, top, right, bottom.

GetUrlAtCharacterIndex ( int characterIndex ) : string

Retrieve the URL right under the specified character index.

GetUrlAtPosition ( Vector2 localPos ) : string

Retrieve the URL directly below the specified relative-to-label position.

GetUrlAtPosition ( Vector3 worldPos ) : string

Retrieve the URL directly below the specified world-space position.

GetWordAtCharacterIndex ( int characterIndex ) : string

Retrieve the word right under the specified character index.

GetWordAtPosition ( Vector2 localPos ) : string

Retrieve the word directly below the specified relative-to-label position.

GetWordAtPosition ( Vector3 worldPos ) : string

Retrieve the word directly below the specified world-space position.

MakePixelPerfect ( ) : void

Text is pixel-perfect when its scale matches the size.

MarkAsChanged ( ) : void

UILabel needs additional processing when something changes.

OnFill ( BetterList verts, BetterList uvs, BetterList cols ) : void

Draw the label.

PrintOverlay ( int start, int end, UIGeometry, caret, UIGeometry, highlight, Color caretColor, Color highlightColor ) : void

Fill the specified geometry buffer with vertices that would highlight the current selection.

ProcessAndRequest ( ) : void

Request the needed characters in the texture.

ProcessText ( ) : void

Process the raw text, called when something changes.

ProcessText ( bool legacyMode ) : void

Process the raw text, called when something changes.

SetCurrentPercent ( ) : void

Convenience function, in case you wanted to associate progress bar, slider or scroll bar's OnValueChanged function in inspector with a label.

SetCurrentProgress ( ) : void

Convenience function, in case you wanted to associate progress bar, slider or scroll bar's OnValueChanged function in inspector with a label.

SetCurrentSelection ( ) : void

Convenience function, in case you wanted to automatically set some label's text by selecting a value in the UIPopupList.

UpdateNGUIText ( ) : void

Update NGUIText.current with all the properties from this label.

UpdateNGUIText ( int size, int lineWidth, int lineHeight ) : void

Update NGUIText.current with all the properties from this label.

Wrap ( string text, string &final ) : bool

Convenience function -- wrap the current text given the label's settings and unlimited height.

Wrap ( string text, string &final, int height ) : bool

Convenience function -- wrap the current text given the label's settings and the given height.

Protected Methods

Method Description
ApplyOffset ( BetterList verts, int start ) : Vector2

Align the vertices, making the label positioned correctly based on the pivot. Returns the offset that was applied.

OnAnchor ( ) : void

If the label is anchored it should not auto-resize.

OnDisable ( ) : void

Remove the font texture change listener.

OnInit ( ) : void

Register the font texture change listener.

OnStart ( ) : void

Determine start-up values.

OnValidate ( ) : void

Validate the properties.

SetActiveFont ( Font fnt ) : void

Set the active font, correctly setting and clearing callbacks.

UpgradeFrom265 ( ) : void

Upgrading labels is a bit different.

Private Methods

Method Description
GetCharacterIndex ( Vector2 localPos ) : int
GetCharacterIndex ( Vector3 worldPos ) : int
OnFontTextureChanged ( ) : void

Notification called when the Unity's font's texture gets rebuilt. Unity's font has a nice tendency to simply discard other characters when the texture's dimensions change. By requesting them inside the notification callback, we immediately force them back in. Originally I was subscribing each label to the font individually, but as it turned out mono's delegate system causes an insane amount of memory allocations when += or -= to a delegate. So... queue yet another work-around.

Method Details

ApplyOffset() protected method

Align the vertices, making the label positioned correctly based on the pivot. Returns the offset that was applied.
protected ApplyOffset ( BetterList verts, int start ) : Vector2
verts BetterList
start int
return Vector2

ApplyShadow() public method

Apply a shadow effect to the buffer.
public ApplyShadow ( BetterList verts, BetterList uvs, BetterList cols, int start, int end, float x, float y ) : void
verts BetterList
uvs BetterList
cols BetterList
start int
end int
x float
y float
return void

AssumeNaturalSize() public method

Make the label assume its natural size.
public AssumeNaturalSize ( ) : void
return void

CalculateOffsetToFit() public method

Calculate the character index offset necessary in order to print the end of the specified text.
public CalculateOffsetToFit ( string text ) : int
text string
return int

GetCharacterIndex() public method

Get the index of the character on the line directly above or below the current index.
public GetCharacterIndex ( int currentIndex, KeyCode, key ) : int
currentIndex int
key KeyCode,
return int

GetCharacterIndexAtPosition() public method

Return the index of the character at the specified local position.
public GetCharacterIndexAtPosition ( Vector2 localPos ) : int
localPos Vector2
return int

GetCharacterIndexAtPosition() public method

Return the index of the character at the specified world position.
public GetCharacterIndexAtPosition ( Vector3 worldPos ) : int
worldPos Vector3
return int

GetSides() public method

Get the sides of the rectangle relative to the specified transform. The order is left, top, right, bottom.
public GetSides ( Transform relativeTo ) : Vector3[]
relativeTo Transform
return Vector3[]

GetUrlAtCharacterIndex() public method

Retrieve the URL right under the specified character index.
public GetUrlAtCharacterIndex ( int characterIndex ) : string
characterIndex int
return string

GetUrlAtPosition() public method

Retrieve the URL directly below the specified relative-to-label position.
public GetUrlAtPosition ( Vector2 localPos ) : string
localPos Vector2
return string

GetUrlAtPosition() public method

Retrieve the URL directly below the specified world-space position.
public GetUrlAtPosition ( Vector3 worldPos ) : string
worldPos Vector3
return string

GetWordAtCharacterIndex() public method

Retrieve the word right under the specified character index.
public GetWordAtCharacterIndex ( int characterIndex ) : string
characterIndex int
return string

GetWordAtPosition() public method

Retrieve the word directly below the specified relative-to-label position.
public GetWordAtPosition ( Vector2 localPos ) : string
localPos Vector2
return string

GetWordAtPosition() public method

Retrieve the word directly below the specified world-space position.
public GetWordAtPosition ( Vector3 worldPos ) : string
worldPos Vector3
return string

MakePixelPerfect() public method

Text is pixel-perfect when its scale matches the size.
public MakePixelPerfect ( ) : void
return void

MarkAsChanged() public method

UILabel needs additional processing when something changes.
public MarkAsChanged ( ) : void
return void

OnAnchor() protected method

If the label is anchored it should not auto-resize.
protected OnAnchor ( ) : void
return void

OnDisable() protected method

Remove the font texture change listener.
protected OnDisable ( ) : void
return void

OnFill() public method

Draw the label.
public OnFill ( BetterList verts, BetterList uvs, BetterList cols ) : void
verts BetterList
uvs BetterList
cols BetterList
return void

OnInit() protected method

Register the font texture change listener.
protected OnInit ( ) : void
return void

OnStart() protected method

Determine start-up values.
protected OnStart ( ) : void
return void

OnValidate() protected method

Validate the properties.
protected OnValidate ( ) : void
return void

PrintOverlay() public method

Fill the specified geometry buffer with vertices that would highlight the current selection.
public PrintOverlay ( int start, int end, UIGeometry, caret, UIGeometry, highlight, Color caretColor, Color highlightColor ) : void
start int
end int
caret UIGeometry,
highlight UIGeometry,
caretColor Color
highlightColor Color
return void

ProcessAndRequest() public method

Request the needed characters in the texture.
public ProcessAndRequest ( ) : void
return void

ProcessText() public method

Process the raw text, called when something changes.
public ProcessText ( ) : void
return void

ProcessText() public method

Process the raw text, called when something changes.
public ProcessText ( bool legacyMode ) : void
legacyMode bool
return void

SetActiveFont() protected method

Set the active font, correctly setting and clearing callbacks.
protected SetActiveFont ( Font fnt ) : void
fnt Font
return void

SetCurrentPercent() public method

Convenience function, in case you wanted to associate progress bar, slider or scroll bar's OnValueChanged function in inspector with a label.
public SetCurrentPercent ( ) : void
return void

SetCurrentProgress() public method

Convenience function, in case you wanted to associate progress bar, slider or scroll bar's OnValueChanged function in inspector with a label.
public SetCurrentProgress ( ) : void
return void

SetCurrentSelection() public method

Convenience function, in case you wanted to automatically set some label's text by selecting a value in the UIPopupList.
public SetCurrentSelection ( ) : void
return void

UpdateNGUIText() public method

Update NGUIText.current with all the properties from this label.
public UpdateNGUIText ( ) : void
return void

UpdateNGUIText() public method

Update NGUIText.current with all the properties from this label.
public UpdateNGUIText ( int size, int lineWidth, int lineHeight ) : void
size int
lineWidth int
lineHeight int
return void

UpgradeFrom265() protected method

Upgrading labels is a bit different.
protected UpgradeFrom265 ( ) : void
return void

Wrap() public method

Convenience function -- wrap the current text given the label's settings and unlimited height.
public Wrap ( string text, string &final ) : bool
text string
final string
return bool

Wrap() public method

Convenience function -- wrap the current text given the label's settings and the given height.
public Wrap ( string text, string &final, int height ) : bool
text string
final string
height int
return bool

Property Details

keepCrispWhenShrunk public_oe property

Whether the label will keep its content crisp even when shrunk. You may want to turn this off on mobile devices.
public Crispness keepCrispWhenShrunk
return Crispness