GuiGridListSetSelectionMode

From Multi Theft Auto: Wiki
Jump to: navigation, search

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 ( guiElement gridlist, int mode )

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

GUI functions

Browsers

Buttons

Checkboxes

Comboboxes

Edit Fields

FROM VERSION 1.5.5 r12419 ONWARDS

Gridlists

Memos

FROM VERSION 1.5.5 r12419 ONWARDS

Progressbars

Radio Buttons

Scrollbars

Scrollpanes

Static Images

Tab Panels

Tabs

Text Labels

Windows

GUI events