GuiGridListSetSelectionMode: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
 
m (fixed typo)
 
(10 intermediate revisions by 10 users not shown)
Line 1: Line 1:
__NOTOC__  
__NOTOC__  
<!-- Describe in plain english what this function does. Don't go into details, just give an overview -->
{{Client function}}
This fake function is for use with blah & blah and does blahblahblabhalbhl
This function sets the selection mode of a gui gridlist. For example, the MTA ''server browser'' selects a whole row, while the ''Controls'' dialog selects a single cell. To select multiple items you must be holding down 'ctrl'.


==Syntax==  
==Syntax==  
<!-- NOTE: don't use 'special' names for variable names, e.g. you shouldn't be writing things like 'player player, vehicle vehicle', instead write something like 'player thePlayer, vehicle vehicleToGetInto'. This is less confusing and prevents the syntax highlighting being odd -->
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
returnType functionName ( arguments )
bool guiGridListSetSelectionMode ( gui-Element gridlist, int mode )
</syntaxhighlight>  
</syntaxhighlight>
[[File:Selection-Mode.png|thumb|example for selection mode ( 1 )]]
{{OOP||[[Element/GUI/Gridlist|GuiGridList]]:setSelectionMode|selectionMode}}


===Required Arguments===  
===Required Arguments===  
<!-- List each argument one per line. This should be the argument's name as in the argument list above, NOT the argument's data type -->
*'''gridlist:''' The gridlist in which you wish to set the selection mode.
*'''argumentName:''' description
*'''mode:''' The mode of the selection.  Can be the following values:
 
**'''0:''' Single row selection
<!-- Only include this section below if there are optional arguments -->
**'''1:''' Multiple row selection
===Optional Arguments===
**'''2:''' Single cell selection
{{OptionalArg}}
**'''3:''' Multiple cell selection
*'''argumentName2:''' description
**'''4:''' Nominated(First) single column selection
*'''argumentName3:''' description
**'''5:''' Nominated(First) multiple column selection
**'''6:''' Single column selection
**'''7:''' Multiple column selection
**'''8:''' Nominated(First) single row selection
**'''9:''' Nominated(First) multiple row selection


===Returns===
===Returns===
<!-- Make this descriptive. Explain what cases will return false. If you're unsure, add a tag to it so we can check -->
Returns ''true'' if the selection mode was successfully set, false otherwise.
Returns ''true'' if blah, ''false'' otherwise.


==Example==  
==Example==  
<!-- Explain what the example is in a single sentance -->
This example creates a grid list with 3 columns and 3 rows, each with text describing its position in the grid list. Also, the cursor is turned on. The player can use the command 'setmode #' to change how the grid list can be selected.
This example does...
<syntaxhighlight lang="lua">function clientsideResourceStart ()
<!-- Add the code below, an emphasis should be on making it clear, not optimized. You could provide two versions if you wish, one clear and well commented, the other optimized -->
--Create a gridlist
<syntaxhighlight lang="lua">
    myGridList = guiCreateGridList ( 0.35, 0.35, 0.4, 0.1, true )
--This line does...
    --Create a column for myGridList to add rows into
blabhalbalhb --abababa
columnA = guiGridListAddColumn ( myGridList, "columnA Title", 0.3 )
--This line does this...
columnB = guiGridListAddColumn ( myGridList, "columnA Title", 0.3 )
mooo
columnC = guiGridListAddColumn ( myGridList, "columnA Title", 0.3 )
</syntaxhighlight>
--Create a row for columnA
rowA = guiGridListAddRow ( myGridList )
rowB = guiGridListAddRow ( myGridList )
rowC = guiGridListAddRow ( myGridList )
        --Set the text of columnA, rowA to "Hello World!"
guiGridListSetItemText ( myGridList, rowA, columnA, "rowA ColumnA", false, false )
guiGridListSetItemText ( myGridList, rowB, columnA, "rowB ColumnA", false, false )
guiGridListSetItemText ( myGridList, rowC, columnA, "rowC ColumnA", false, false )
guiGridListSetItemText ( myGridList, rowA, columnB, "rowA ColumnB", false, false )
guiGridListSetItemText ( myGridList, rowB, columnB, "rowB ColumnB", false, false )
guiGridListSetItemText ( myGridList, rowC, columnB, "rowC ColumnB", false, false )
guiGridListSetItemText ( myGridList, rowA, columnC, "rowA ColumnC", false, false )
guiGridListSetItemText ( myGridList, rowB, columnC, "rowB ColumnC", false, false )
guiGridListSetItemText ( myGridList, rowC, columnC, "rowC ColumnC", false, false )
showCursor ( true )
end
addEventHandler ( "onClientResourceStart", resourceRoot, clientsideResourceStart ) 
 
--The player types 'setmode' to activate this function. Additionaly, the player needs
--to type a modeNumber. Ex: 'setmode 5', 5 would be stored as modeNumber
function setSelectionMode ( commandName, modeNumber )
--The player enters the command "setmode #". The modeNumber entry will be a string
--argument. Ex: "9" "nine". Attempt to change modeNumber into a number argument.
modeNumber = tonumber(modeNumber)
--If the selection mode was successfully changed, output a message saying which
--mode it changed to. Otherwise, list reasons why it did not work.
        if ( guiGridListSetSelectionMode ( myGridList, modeNumber ) ) then
outputChatBox ( "Changed grid list selection mode to: "..modeNumber )
else                                                                       
outputChatBox ( "modeNumber must be a number and be between 0 and 9" )
end
end
addCommandHandler ( "setmode", setSelectionMode )</syntaxhighlight>


==See Also==
==See Also==
<!-- Change FunctionArea to the area that this function is in on the main function list page, e.g. Server, Player, Vehicle etc -->
{{GUI functions}}
{{GUI functions}}
[[Category:Incomplete]]
{{GUI_events}}

Latest revision as of 14:09, 27 April 2020

This function sets the selection mode of a gui gridlist. For example, the MTA server browser selects a whole row, while the Controls dialog selects a single cell. To select multiple items you must be holding down 'ctrl'.

Syntax

bool guiGridListSetSelectionMode ( gui-Element gridlist, int mode )
example for selection mode ( 1 )

OOP Syntax Help! I don't understand this!

Method: GuiGridList:setSelectionMode(...)
Variable: .selectionMode


Required Arguments

  • gridlist: The gridlist in which you wish to set the selection mode.
  • mode: The mode of the selection. Can be the following values:
    • 0: Single row selection
    • 1: Multiple row selection
    • 2: Single cell selection
    • 3: Multiple cell selection
    • 4: Nominated(First) single column selection
    • 5: Nominated(First) multiple column selection
    • 6: Single column selection
    • 7: Multiple column selection
    • 8: Nominated(First) single row selection
    • 9: Nominated(First) multiple row selection

Returns

Returns true if the selection mode was successfully set, false otherwise.

Example

This example creates a grid list with 3 columns and 3 rows, each with text describing its position in the grid list. Also, the cursor is turned on. The player can use the command 'setmode #' to change how the grid list can be selected.

function clientsideResourceStart ()
	--Create a gridlist
    	myGridList = guiCreateGridList ( 0.35, 0.35, 0.4, 0.1, true ) 
    	--Create a column for myGridList to add rows into
	columnA = guiGridListAddColumn ( myGridList, "columnA Title", 0.3 )
	columnB = guiGridListAddColumn ( myGridList, "columnA Title", 0.3 )
	columnC = guiGridListAddColumn ( myGridList, "columnA Title", 0.3 ) 
	--Create a row for columnA
	rowA = guiGridListAddRow ( myGridList )
	rowB = guiGridListAddRow ( myGridList )
	rowC = guiGridListAddRow ( myGridList )
        --Set the text of columnA, rowA to "Hello World!"
	guiGridListSetItemText ( myGridList, rowA, columnA, "rowA ColumnA", false, false )
	guiGridListSetItemText ( myGridList, rowB, columnA, "rowB ColumnA", false, false )
	guiGridListSetItemText ( myGridList, rowC, columnA, "rowC ColumnA", false, false )
	guiGridListSetItemText ( myGridList, rowA, columnB, "rowA ColumnB", false, false )
	guiGridListSetItemText ( myGridList, rowB, columnB, "rowB ColumnB", false, false )
	guiGridListSetItemText ( myGridList, rowC, columnB, "rowC ColumnB", false, false )
	guiGridListSetItemText ( myGridList, rowA, columnC, "rowA ColumnC", false, false )
	guiGridListSetItemText ( myGridList, rowB, columnC, "rowB ColumnC", false, false )
	guiGridListSetItemText ( myGridList, rowC, columnC, "rowC ColumnC", false, false )
	showCursor ( true )
end
addEventHandler ( "onClientResourceStart", resourceRoot, clientsideResourceStart )  

--The player types 'setmode' to activate this function. Additionaly, the player needs
--to type a modeNumber. Ex: 'setmode 5', 5 would be stored as modeNumber
function setSelectionMode ( commandName, modeNumber )
	--The player enters the command "setmode #". The modeNumber entry will be a string
	--argument. Ex: "9" "nine". Attempt to change modeNumber into a number argument.
	modeNumber = tonumber(modeNumber)
	--If the selection mode was successfully changed, output a message saying which
	--mode it changed to. Otherwise, list reasons why it did not work.
        if ( guiGridListSetSelectionMode ( myGridList, modeNumber ) ) then
		outputChatBox ( "Changed grid list selection mode to: "..modeNumber )
	else                                                                        
		outputChatBox ( "modeNumber must be a number and be between 0 and 9" )
	end
end
addCommandHandler ( "setmode", setSelectionMode )

See Also

General functions

Browsers

Buttons

Checkboxes

Comboboxes

Edit Boxes

Gridlists

Memos

Progressbars

Radio Buttons

Scrollbars

Scrollpanes

Static Images

Tab Panels

Tabs

Text Labels

Windows

Input

GUI