Kerbal Space Program  1.12.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
Public Member Functions | Public Attributes | Static Public Attributes | Protected Attributes | Properties | List of all members
KSP.UI.Screens.StageIcon Class Reference
Inheritance diagram for KSP.UI.Screens.StageIcon:

Public Member Functions

void AddToGroup (StageIcon icon, bool setParent=true)
 
void Awake ()
 
void BlinkBorder (float interval)
 
void ClearInfoBoxes ()
 Clear all the boxes from the icon's side. (Use this if you lost a reference. You'll kill off other boxes too, I hope you're happy) More...
 
void CollapseGroup ()
 
void ConsolidateMembers ()
 removes stageicons belonging to this group that should not belong i.e. they were just moved to another group The logic should work without ever calling this method. More...
 
void DisableGroup (StageIcon iconToDisable)
 Called from flight when a part is disconnected or destroyed More...
 
StageIconInfoBox DisplayInfo ()
 Create a new Information Box by the side of the icon. (mind the box count limit) More...
 
void ExpandGroup ()
 Expand group and select everything More...
 
void ExpandGroupInUIOnly ()
 
StageIconInfoBox ForceDisplayInfo ()
 Will assign a reference box, even if it's at the limit. (Will do so by removing the first one to make room) More...
 
void Freeze ()
 
void Highlight (bool highlightState, bool highlightReferencedPart)
 
void HoldGroupedIcons (bool alertStagingSequencer=true)
 
void RemoveFromGroup (StageIcon icon, bool resetGroupLeadIfempty=true)
 
bool RemoveFromGroupAndReshuffle (out StageGroup foundInGroup)
 take an icon out of a group and reorganize the rest of the group More...
 
void RemoveInfo (StageIconInfoBox iBox)
 Removes an information box from the icon's side. More...
 
void Reset ()
 For the reset button in the StageManager GUI Backend: Resets Part.inverseStage to Part.DefaultInverseStage and all values to default Visually: Moves parts in the staging gui to where they would have been had the sequence not been modified in any way More...
 
bool ResetAvailable ()
 
void ResetStageIconSymmetryGroup ()
 Reset after drag and drop Wrong cause it doesnt consider resizing list elements REFACTOR OUT More...
 
void SetBackgroundColor (Color color)
 
void SetBorderColor (Color color)
 
void SetIcon (Texture2D texture, int x, int y)
 
void SetIcon (DefaultIcons icon)
 
void SetIcon (string customIconFilePath, int x, int y)
 
void SetIconColor (Color color)
 
void SetInStageIndex (int index)
 Set the internal index within the stage group More...
 
void SetInStageIndexOFGroupedIcons (bool setSiblingIndex=true)
 
void SetInverseSequenceIndex (int inverseIndex, int inStageIndex, bool seqOverride=true)
 
void SetManualStageOffset (int inverseIndex)
 basically set the star on this icon More...
 
void SetSymmetryMarkers ()
 
void SetSymmetryText (bool active, string number="")
 
void Setup (ProtoStageIcon protoIcon)
 
void SortGroupedIcons ()
 Sorts grouped icons according to the order in the hierarchy and sets inStageIndexes More...
 
void Start ()
 
void Unfreeze ()
 

Public Attributes

bool blinkBorder = false
 
float blinkInterval = 1.0f
 
bool expanded = false
 
bool frozen = false
 
bool grouped = false
 
List< StageIcongroupedIcons = new List<StageIcon>()
 
StageIcon groupLead
 
DefaultIcons iconType = DefaultIcons.MYSTERY_PART
 
bool infoDisplay = false
 
UIRadioButton radioButton
 
bool selected = false
 
bool showBorder = false
 
int SiblingIndex = -1
 
bool underDrag = false
 

Static Public Attributes

static int maxInfoBoxes = 3
 this many info boxes can be displayed at once More...
 

Protected Attributes

Image backgroundImage
 
Image borderImage
 
CanvasGroup canvasGroup
 
Texture2D defaultIconMap
 
int defaultIconSize = 64
 
UIDragPanel dragHandler
 
PointerEnterExitHandler hoverHandler
 
RawImage iconImage
 
ProtoStageIcon protoIcon
 
StageGroup stage
 
StageIconInfoBox stageIconInfoBoxPrefab
 
TMPro.TextMeshProUGUI textStar
 
TMPro.TextMeshProUGUI textSymmetry
 

Properties

CanvasGroup CanvasGroup [get, set]
 
List< PartCounterparts [get]
 
int DefaultSequenceIndex [get]
 
StackIconGrouping IconGroupingRule [get]
 
int InStageIndex [get]
 
int InverseStage [get]
 
bool isDisplayingInfo [get]
 Determines if this icon has any infoboxes open (read-only) More...
 
bool isDisplayingInfoInGroup [get]
 Determines if this icon or any of it's symmetry siblings has any infoboxes open (read-only) More...
 
bool isMainIcon [get]
 
bool isSymmetryCounterPart [get]
 
int OriginalStageIndex [get]
 
Part Part [get]
 
System.Type partModule [get]
 
PartStates partState [get]
 
string partType [get]
 
ProtoStageIcon ProtoIcon [get]
 
StageGroup Stage [get, set]
 

Member Function Documentation

void KSP.UI.Screens.StageIcon.AddToGroup ( StageIcon  icon,
bool  setParent = true 
)
inline
void KSP.UI.Screens.StageIcon.Awake ( )
inline
void KSP.UI.Screens.StageIcon.BlinkBorder ( float  interval)
inline
void KSP.UI.Screens.StageIcon.ClearInfoBoxes ( )
inline

Clear all the boxes from the icon's side. (Use this if you lost a reference. You'll kill off other boxes too, I hope you're happy)

void KSP.UI.Screens.StageIcon.CollapseGroup ( )
inline
void KSP.UI.Screens.StageIcon.ConsolidateMembers ( )
inline

removes stageicons belonging to this group that should not belong i.e. they were just moved to another group The logic should work without ever calling this method.

void KSP.UI.Screens.StageIcon.DisableGroup ( StageIcon  iconToDisable)
inline

Called from flight when a part is disconnected or destroyed

Parameters
iconToDisable
StageIconInfoBox KSP.UI.Screens.StageIcon.DisplayInfo ( )
inline

Create a new Information Box by the side of the icon. (mind the box count limit)

Returns
A reference to the box assigned to you. Keep it safe. (or null if this icon is at the limit)
void KSP.UI.Screens.StageIcon.ExpandGroup ( )
inline

Expand group and select everything

void KSP.UI.Screens.StageIcon.ExpandGroupInUIOnly ( )
inline
StageIconInfoBox KSP.UI.Screens.StageIcon.ForceDisplayInfo ( )
inline

Will assign a reference box, even if it's at the limit. (Will do so by removing the first one to make room)

void KSP.UI.Screens.StageIcon.Freeze ( )
inline
void KSP.UI.Screens.StageIcon.Highlight ( bool  highlightState,
bool  highlightReferencedPart 
)
inline
void KSP.UI.Screens.StageIcon.HoldGroupedIcons ( bool  alertStagingSequencer = true)
inline
void KSP.UI.Screens.StageIcon.RemoveFromGroup ( StageIcon  icon,
bool  resetGroupLeadIfempty = true 
)
inline
bool KSP.UI.Screens.StageIcon.RemoveFromGroupAndReshuffle ( out StageGroup  foundInGroup)
inline

take an icon out of a group and reorganize the rest of the group

Returns
true if the icon was removed
void KSP.UI.Screens.StageIcon.RemoveInfo ( StageIconInfoBox  iBox)
inline

Removes an information box from the icon's side.

Parameters
iBoxThe reference that was given to you when you spawned the box. You did keep it safe didn't you?
void KSP.UI.Screens.StageIcon.Reset ( )
inline

For the reset button in the StageManager GUI Backend: Resets Part.inverseStage to Part.DefaultInverseStage and all values to default Visually: Moves parts in the staging gui to where they would have been had the sequence not been modified in any way

bool KSP.UI.Screens.StageIcon.ResetAvailable ( )
inline
void KSP.UI.Screens.StageIcon.ResetStageIconSymmetryGroup ( )
inline

Reset after drag and drop Wrong cause it doesnt consider resizing list elements REFACTOR OUT

void KSP.UI.Screens.StageIcon.SetBackgroundColor ( Color  color)
inline
void KSP.UI.Screens.StageIcon.SetBorderColor ( Color  color)
inline
void KSP.UI.Screens.StageIcon.SetIcon ( Texture2D  texture,
int  x,
int  y 
)
inline
void KSP.UI.Screens.StageIcon.SetIcon ( DefaultIcons  icon)
inline
void KSP.UI.Screens.StageIcon.SetIcon ( string  customIconFilePath,
int  x,
int  y 
)
inline
void KSP.UI.Screens.StageIcon.SetIconColor ( Color  color)
inline
void KSP.UI.Screens.StageIcon.SetInStageIndex ( int  index)
inline

Set the internal index within the stage group

Parameters
index
void KSP.UI.Screens.StageIcon.SetInStageIndexOFGroupedIcons ( bool  setSiblingIndex = true)
inline

void KSP.UI.Screens.StageIcon.SetInverseSequenceIndex ( int  inverseIndex,
int  inStageIndex,
bool  seqOverride = true 
)
inline
void KSP.UI.Screens.StageIcon.SetManualStageOffset ( int  inverseIndex)
inline

basically set the star on this icon

Parameters
inverseIndex

< set manualStageOffset on all grouped/symmetry parts too

void KSP.UI.Screens.StageIcon.SetSymmetryMarkers ( )
inline
void KSP.UI.Screens.StageIcon.SetSymmetryText ( bool  active,
string  number = "" 
)
inline
void KSP.UI.Screens.StageIcon.Setup ( ProtoStageIcon  protoIcon)
inline
void KSP.UI.Screens.StageIcon.SortGroupedIcons ( )
inline

Sorts grouped icons according to the order in the hierarchy and sets inStageIndexes

void KSP.UI.Screens.StageIcon.Start ( )
inline
void KSP.UI.Screens.StageIcon.Unfreeze ( )
inline

Member Data Documentation

Image KSP.UI.Screens.StageIcon.backgroundImage
protected
bool KSP.UI.Screens.StageIcon.blinkBorder = false
float KSP.UI.Screens.StageIcon.blinkInterval = 1.0f
Image KSP.UI.Screens.StageIcon.borderImage
protected
CanvasGroup KSP.UI.Screens.StageIcon.canvasGroup
protected
Texture2D KSP.UI.Screens.StageIcon.defaultIconMap
protected
int KSP.UI.Screens.StageIcon.defaultIconSize = 64
protected
UIDragPanel KSP.UI.Screens.StageIcon.dragHandler
protected
bool KSP.UI.Screens.StageIcon.expanded = false
bool KSP.UI.Screens.StageIcon.frozen = false
bool KSP.UI.Screens.StageIcon.grouped = false
List<StageIcon> KSP.UI.Screens.StageIcon.groupedIcons = new List<StageIcon>()
StageIcon KSP.UI.Screens.StageIcon.groupLead
PointerEnterExitHandler KSP.UI.Screens.StageIcon.hoverHandler
protected
RawImage KSP.UI.Screens.StageIcon.iconImage
protected
DefaultIcons KSP.UI.Screens.StageIcon.iconType = DefaultIcons.MYSTERY_PART
bool KSP.UI.Screens.StageIcon.infoDisplay = false
int KSP.UI.Screens.StageIcon.maxInfoBoxes = 3
static

this many info boxes can be displayed at once

ProtoStageIcon KSP.UI.Screens.StageIcon.protoIcon
protected
UIRadioButton KSP.UI.Screens.StageIcon.radioButton
bool KSP.UI.Screens.StageIcon.selected = false
bool KSP.UI.Screens.StageIcon.showBorder = false
int KSP.UI.Screens.StageIcon.SiblingIndex = -1
StageGroup KSP.UI.Screens.StageIcon.stage
protected
StageIconInfoBox KSP.UI.Screens.StageIcon.stageIconInfoBoxPrefab
protected
TMPro.TextMeshProUGUI KSP.UI.Screens.StageIcon.textStar
protected
TMPro.TextMeshProUGUI KSP.UI.Screens.StageIcon.textSymmetry
protected
bool KSP.UI.Screens.StageIcon.underDrag = false

Property Documentation

CanvasGroup KSP.UI.Screens.StageIcon.CanvasGroup
getset
List<Part> KSP.UI.Screens.StageIcon.Counterparts
get
int KSP.UI.Screens.StageIcon.DefaultSequenceIndex
get
StackIconGrouping KSP.UI.Screens.StageIcon.IconGroupingRule
get
int KSP.UI.Screens.StageIcon.InStageIndex
get
int KSP.UI.Screens.StageIcon.InverseStage
get
bool KSP.UI.Screens.StageIcon.isDisplayingInfo
get

Determines if this icon has any infoboxes open (read-only)

bool KSP.UI.Screens.StageIcon.isDisplayingInfoInGroup
get

Determines if this icon or any of it's symmetry siblings has any infoboxes open (read-only)

bool KSP.UI.Screens.StageIcon.isMainIcon
get
bool KSP.UI.Screens.StageIcon.isSymmetryCounterPart
get
int KSP.UI.Screens.StageIcon.OriginalStageIndex
get
Part KSP.UI.Screens.StageIcon.Part
get
System.Type KSP.UI.Screens.StageIcon.partModule
get
PartStates KSP.UI.Screens.StageIcon.partState
get
string KSP.UI.Screens.StageIcon.partType
get
ProtoStageIcon KSP.UI.Screens.StageIcon.ProtoIcon
get
StageGroup KSP.UI.Screens.StageIcon.Stage
getset

The documentation for this class was generated from the following file: