GuiGridListSetItemData: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
 
(OOP syntax)
 
(10 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{Client function}}
__NOTOC__  
__NOTOC__  
<!-- Describe in plain english what this function does. Don't go into details, just give an overview -->
This function sets a Item Data associated to a grid list item.<br/>
This fake function is for use with blah & blah and does blahblahblabhalbhl
'''Note:''' This function will only work '''after''' you set the item's text using [[guiGridListSetItemText]]!


==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 guiGridListSetItemData ( element gridList, int rowIndex, int columnIndex, var data )
</syntaxhighlight>  
</syntaxhighlight>
{{OOP||[[Element/GUI/Gridlist|GuiGridList]]:setItemData}}


===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:''' A gridlist element of the data you wish to set to
*'''argumentName:''' description
*'''rowIndex:''' The row of the item you wish to set to
 
*'''columnIndex:''' The column of the item you wish to set to
<!-- Only include this section below if there are optional arguments -->
*'''data:''' The data you wish to set to the item.
===Optional Arguments===
{{OptionalArg}}
*'''argumentName2:''' description
*'''argumentName3:''' description


===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 data was set successfully, false otherwise
Returns ''true'' if blah, ''false'' otherwise.


==Example==  
==Example==  
<!-- Explain what the example is in a single sentance -->
In this example, the gridlist shows the list of players without their color codes and outputs their names with color-codes at the chatbox when player is selected.
This example does...
<!-- 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 -->
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
--This line does...
function showPlayers()
blabhalbalhb --abababa
    local window = guiCreateWindow(0,0,500,400,"Window example - Title",false) -- Create the window
--This line does this...
    grid = guiCreateGridList(0,0,100,300,false,window) -- Create the gridlist
mooo
    local column = guiGridListAddColumn(grid, "Players online", 0.9) -- Create a column
</syntaxhighlight>
    showCursor(true)--show cursor
    for index,player in ipairs(getElementsByType("player")) do -- Loop through all players
        local row = guiGridListAddRow(grid) -- Add a row
        guiGridListSetItemText ( grid, row, column, (string.gsub ( getPlayerName(player), '#%x%x%x%x%x%x', '' ) or getPlayerName(player)), false, false) -- Set it's text to the player's name excluding colorcodes
        guiGridListSetItemData ( grid, row, column, getPlayerName(player)) -- Set it's data to the player's name with colorcodes
    end
end
function outputPlayerName()
    if source == grid then -- If the player clicked something in the grid
        local selectedRow, selectedColumn = guiGridListGetSelectedItem(grid) -- See which player he selected
        local playerName = guiGridListGetItemData(grid, selectedRow, selectedColumn) -- Get the selected player's name with color codes  local playerNameWithoutColorCodes = guiGridListGetItemText(grid, selectedRow, selectedColumn) -- Get the selected player's name without color codes
        local playerNameWithoutColorCodes = guiGridListGetItemText(grid, selectedRow, selectedColumn) -- Get the selected player's name without color codes
        if playerName and playerNameWithoutColorCodes then -- If he really selected something
            outputChatBox("The selected player's name without color codes : "..playerNameWithoutColorCodes, 255,255,255,false) -- output without color codes
            outputChatBox("The selected player's name with color codes : "..playerName, 255,255,255,false) -- output with color codes
            outputChatBox("The selected player's name with colors : "..playerName, 255,255,255,true) -- output with colors
        end
    end
end
addEventHandler("onClientGUIClick", getRootElement(), outputPlayerName)
addEventHandler("onClientResourceStart", getResourceRootElement(getThisResource()), showPlayers)</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 21:18, 7 November 2018

This function sets a Item Data associated to a grid list item.
Note: This function will only work after you set the item's text using guiGridListSetItemText!

Syntax

bool guiGridListSetItemData ( element gridList, int rowIndex, int columnIndex, var data )

OOP Syntax Help! I don't understand this!

Method: GuiGridList:setItemData(...)


Required Arguments

  • gridList: A gridlist element of the data you wish to set to
  • rowIndex: The row of the item you wish to set to
  • columnIndex: The column of the item you wish to set to
  • data: The data you wish to set to the item.

Returns

Returns true if the data was set successfully, false otherwise

Example

In this example, the gridlist shows the list of players without their color codes and outputs their names with color-codes at the chatbox when player is selected.

function showPlayers()
    local window = guiCreateWindow(0,0,500,400,"Window example - Title",false) -- Create the window
    grid = guiCreateGridList(0,0,100,300,false,window) -- Create the gridlist
    local column = guiGridListAddColumn(grid, "Players online", 0.9) -- Create a column
    showCursor(true)--show cursor
    for index,player in ipairs(getElementsByType("player")) do -- Loop through all players
        local row = guiGridListAddRow(grid) -- Add a row
        guiGridListSetItemText ( grid, row, column, (string.gsub ( getPlayerName(player), '#%x%x%x%x%x%x', '' ) or getPlayerName(player)), false, false) -- Set it's text to the player's name excluding colorcodes
        guiGridListSetItemData ( grid, row, column, getPlayerName(player)) -- Set it's data to the player's name with colorcodes
    end
end
 
function outputPlayerName()
    if source == grid then -- If the player clicked something in the grid
        local selectedRow, selectedColumn = guiGridListGetSelectedItem(grid) -- See which player he selected
        local playerName = guiGridListGetItemData(grid, selectedRow, selectedColumn) -- Get the selected player's name with color codes   local playerNameWithoutColorCodes = guiGridListGetItemText(grid, selectedRow, selectedColumn) -- Get the selected player's name without color codes
        local playerNameWithoutColorCodes = guiGridListGetItemText(grid, selectedRow, selectedColumn) -- Get the selected player's name without color codes
        if playerName and playerNameWithoutColorCodes then -- If he really selected something
            outputChatBox("The selected player's name without color codes : "..playerNameWithoutColorCodes, 255,255,255,false) -- output without color codes
            outputChatBox("The selected player's name with color codes : "..playerName, 255,255,255,false) -- output with color codes
            outputChatBox("The selected player's name with colors : "..playerName, 255,255,255,true) -- output with colors
        end
    end
end
 
addEventHandler("onClientGUIClick", getRootElement(), outputPlayerName)
addEventHandler("onClientResourceStart", getResourceRootElement(getThisResource()), showPlayers)

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