This section lists the functions and properties common to all types of GUI control. Each individual control type (Button, ListBox, etc) also has its own specific section.
GetAtScreenXY (GUI control)
AsType properties (GUI controls)
Enabled property (GUI controls)
Height property (GUI controls)
ID property (GUI controls)
OwningGUI property (GUI controls)
SetPosition (GUI controls)
SetSize (GUI controls)
Visible property (GUI controls)
Width property (GUI controls)
X property (GUI controls)
Y property (GUI controls)
static GUIControl* GUIControl.GetAtScreenXY(int x, int y)Checks whether there is a GUI control at screen co-ordinates (X,Y). Returns the control object if there is, or null if there is not. You probably want to use this in conjunction with GetGUIAtLocation.
Example:
GUIControl *theControl = GUIControl.GetAtScreenXY(mouse.x, mouse.y); if (theControl == lstSaveGames) { Display("The mouse is over the Save Games list box."); } else if (theControl == null) { Display("The mouse is not over a control."); } else { GUI *onGui = theControl.OwningGUI; Display("The mouse is over control %d on GUI %d.", theControl.ID, onGui.ID); }will display what control the mouse is over.
See Also: GUI.GetAtScreenXY
Button* GUIControl.AsButton; InvWindow* GUIControl.AsInvWindow; Label* GUIControl.AsLabel; ListBox* GUIControl.AsListBox; Slider* GUIControl.AsSlider; TextBox* GUIControl.AsTextBox;Converts a generic GUIControl* pointer into a variable of the correct type, and returns it. If the control is not of the requested type, returns null.
Example:
Button *theButton = gIconbar.Controls[2].AsButton; if (theButton == null) { Display("Control 2 is not a button!!!!"); } else { theButton.NormalGraphic = 44; }attempts to set Button 2 on GUI ICONBAR to have NormalGraphic 44, but if that control is not a button, prints a message.
See Also: GUI.Controls
bool GUIControl.EnabledEnables or disables a GUI control.
Normally, all your GUI controls (such as buttons, sliders, etc) are enabled at all times except during a cutscene, when they are disabled. This command allows you to explicitly disable a control at your script's discretion.
If you set this to true, the control will be enabled; set to false to disable it.
Whether you set it as enabled or not, it will always be disabled during a blocking cutscene, along with all the other controls.
While a control is disabled, it will not respond to mouse clicks. If it is a button, its mouseover and pushed pictures will not be shown. The control will be drawn according to the game "When GUI Disabled" settings, as usual.
Applies To
Inherited by the Button, InvWindow, Label, ListBox, Slider and TextBox.
Example:
btnSaveGame.Enabled = false;will disable the btnSaveGame button.
See Also: GUIControl.Visible
int GUIControl.Height;Gets/sets the height of the GUI control. This allows you to dynamically resize GUI controls while the game is running.
Applies To
Inherited by the Button, InvWindow, Label, ListBox, Slider and TextBox.
Example:
btnConfirm.Height = 20;makes the btnConfirm button 20 pixels high.
See Also: GUIControl.SetSize, GUIControl.Width
readonly int GUIControl.IDGets the GUI control's ID number. This is the control's object number from the GUI editor, and is useful if you need to interoperate with legacy code that uses the control's number rather than object name.
Applies To
Inherited by the Button, InvWindow, Label, ListBox, Slider and TextBox.
Example:
SetGUIObjectEnabled(lstSaves.OwningGUI.ID, lstSaves.ID, 1); lstSaves.Enabled = false;uses the obsolete SetGUIObjectEnabled function to enable the lstSaves list box, and then uses the equivalent modern property to disable it.
See Also: GUIControl.OwningGUI, GUI.ID
readonly GUI* GUIControl.OwningGUIGets the GUI control's owning GUI, which is the GUI that contains the control.
Returns a GUI, which allows you to use all the usual GUI functions and properties.
Applies To
Inherited by the Button, InvWindow, Label, ListBox, Slider and TextBox.
Example:
GUI *thegui = lstSaves.OwningGUI; thegui.Visible = false; lstSaves.OwningGUI.Visible = true;turns off the GUI that contains the lstSaves list box, then turns it on again using the niftier full pathing approach.
See Also: GUIControl.ID, GUI.ID
GUIControl.SetPosition(int x, int y)Moves the top-left corner of the GUI control to be at (X,Y). These co-ordinates are relative to the GUI which contains the control.
This allows you to dynamically move GUI controls around on the screen while the game is running, and this may well be useful in conjunction with GUI.SetSize if you want to create dynamically resizable GUIs.
Applies To
Inherited by the Button, InvWindow, Label, ListBox, Slider and TextBox.
Example:
btnConfirm.SetPosition(40, 10);will move the btnConfirm button to be positioned at (40,10) within the GUI.
See Also: GUIControl.Enabled, GUI.SetPosition, GUIControl.SetSize, GUIControl.X, GUIControl.Y
GUIControl.SetSize(int width, int height)Adjusts the specified GUI control to have the new size WIDTH x HEIGHT.
This allows you to dynamically resize GUI controls on the screen while the game is running, and this may well be useful in conjunction with GUI.SetSize and GUIControl.SetPosition if you want to create dynamically resizable GUIs.
Applies To
Inherited by the Button, InvWindow, Label, ListBox, Slider and TextBox.
Example:
invMain.SetSize(160, 100);will resize the invMain control to have a size of 160 x 100.
See Also: GUIControl.Height, GUIControl.SetPosition, GUI.SetSize, GUIControl.Width,
bool GUIControl.VisibleGets/sets whether the GUI control is visible. This is true by default, but you can set it to false in order to temporarily remove the GUI control from the GUI.
While the control is invisible, it will not be drawn on the screen, and will not register clicks or otherwise respond to any user input.
Applies To
Inherited by the Button, InvWindow, Label, ListBox, Slider and TextBox.
Example:
btnSaveGame.Visible = false;will make the btnSaveGame button invisible.
See Also: GUIControl.Enabled
int GUIControl.Width;Gets/sets the width of the GUI control. This allows you to dynamically resize GUI controls while the game is running.
Applies To
Inherited by the Button, InvWindow, Label, ListBox, Slider and TextBox.
Example:
btnConfirm.Width = 110;makes the btnConfirm button 110 pixels wide.
See Also: GUIControl.Height, GUIControl.SetSize
int GUIControl.X;Gets/sets the X position of the GUI control. This specifies its left edge, and is relative to the GUI which contains the control.
This allows you to dynamically move GUI controls around on their parent GUI while the game is running.
Applies To
Inherited by the Button, InvWindow, Label, ListBox, Slider and TextBox.
Example:
btnConfirm.X = 10;will move the btnConfirm button to be positioned 10 pixels from the left of its GUI.
See Also: GUIControl.SetPosition, GUIControl.Y
int GUIControl.Y;Gets/sets the Y position of the GUI control. This specifies its top edge, and is relative to the GUI which contains the control.
This allows you to dynamically move GUI controls around on their parent GUI while the game is running.
Applies To
Inherited by the Button, InvWindow, Label, ListBox, Slider and TextBox.
Example:
btnConfirm.Y = 20;will move the btnConfirm button to be positioned 20 pixels from the top of its GUI.
See Also: GUIControl.SetPosition, GUIControl.X
Browser Based Help. Published by chm2web software. |