getMacroProps: Difference between revisions

From RPTools Wiki
Jump to navigation Jump to search
No edit summary
 
(25 intermediate revisions by 12 users not shown)
Line 1: Line 1:
==Function getMacroProps==
{{stub|Examples}}
{{MacroFunction
|name=getMacroProps
|version=1.3b48
|description=
Returns a property list of the properties for a [[Macro_Button|macro button]] for the [[Current Token]]. You can retrieve the index of a [[Macro_Button|macro button]] with the [[getMacroIndexes|getMacroIndexes()]] or [[getMacroButtonIndex|getMacroButtonIndex()]] function. The type of the value returned depends on the delimiter parameter.


|usage=
<syntaxhighlight lang="mtmacro" line>
getMacroProps(index)
getMacroProps(index, delim)
getMacroProps(index, delim, tokenRef)
getMacroProps(index, delim, tokenRef, mapRef)
</syntaxhighlight>
'''Parameters'''
{{param|index|The index of the [[Macro_Button|macro button]].}}
{{param|delim|The delimiter used to separate the values in the  [[Macros:string property list|string property list]] which defaults to {{code|";"}} if not specified. This function returns a [[JSON Object]] if {{code|"json"}} is specified.}}
{{param|tokenRef|Either the token [[getSelected|{{code|id}}]] or [[getTokenName|Token Name]] of the token that the function is executed on. From v1.15, accepts "campaign" and "gm" as ids for the relevant panels.{{TrustedParameter}} }}
{{param|mapRef|The Name or ID of the map to find the token.  Defaults to the current map.}}
{{Note|Token IDs are unique, but Token Names can be duplicated. Using Token Name when more than one token has the same name can produce unexpected results.}}


Returns a [[Macros:string property list]] of the properties for a [[macro button]] for the current [[Token:token|token]]. You can retrieve the index of a [[macro button]] with the [[Macros:Functions:getMacroIndexes|getMacroIndexes()]] function.
'''Macro Buttons Properties Returned'''
 
* {{code|metadata}} - A [[JSON Object]] holding the metadata key/value pairs for the macro.
===Usage===
** {{code|uuid}} -
<source lang="mtmacro" line>
** {{code|commandChecksum}} -
[h: getMacroProps(label, props, delim)]
** {{code|propsChecksum}} -
[h: getMacroProps(index, props, delim)]
* See {{func|createMacro}} for a list of all other properties.
</source>
|changes=
Where
{{change|1.3b49|Added {{code|json}} delimiter option.}}
* label is the label for the macro button. If you specify a label then '''all''' [[macro buttons]] on the [[Token:token|token]] that have that label will be updated.
{{change|1.3b51|Added optional token {{code|id}} parameter.}}
* index is the index of the [[macro button]].
{{change|1.3b53|Added state of Macro Commonality settings under ''compare'' in JSON output.}}
* props is a [[Macros:string property list |string property list ]] containing the properties for the button.
{{change|1.5.7|Added metadata to JSON output.}}
* delim is the delimiter used to separate the values in the  [[Macros:string property list|string property list]] which defaults to ';' if not specified.
{{change|1.5.11|Added {{code|mapname}} parameter option.}}
 
{{change|1.15|Addition of "gm" and "campaign" options for id}}
'''Valid Properties for Macro Buttons'''
}}
* autoExec - true/false - Will the macro be automatically executed when the button is clicked on.
[[Category:Metamacro Function]]
* color - The name of the color for the button.
* fontColor - The name of the font color for the button.
* includeLabel - true/false - Will the label be output when the button is clicked.
* group - The name of the group that the button is in.
* sortBy - The sort by value of the macro button.
* index - The index of the button.
* label - the lavle of the button.
* fontSize - The size of the font for the button.
* minWidth - the minimum width of the button.

Latest revision as of 23:59, 13 May 2024

 This article is a stub, you can help the RPTools Wiki project by contributing content to expand this article.
 This article needs: Examples

getMacroProps() Function

Introduced in version 1.3b48
Returns a property list of the properties for a macro button for the Current Token. You can retrieve the index of a macro button with the getMacroIndexes() or getMacroButtonIndex() function. The type of the value returned depends on the delimiter parameter.

Usage

getMacroProps(index)
getMacroProps(index, delim)
getMacroProps(index, delim, tokenRef)
getMacroProps(index, delim, tokenRef, mapRef)

Parameters

  • index - The index of the macro button.
  • delim - The delimiter used to separate the values in the string property list which defaults to ";" if not specified. This function returns a JSON Object if "json" is specified.
  • tokenRef - Either the token id or Token Name of the token that the function is executed on. From v1.15, accepts "campaign" and "gm" as ids for the relevant panels.

     Note: This parameter can only be used in a Trusted Macro

  • mapRef - The Name or ID of the map to find the token. Defaults to the current map.
Token IDs are unique, but Token Names can be duplicated. Using Token Name when more than one token has the same name can produce unexpected results.


Macro Buttons Properties Returned

  • metadata - A JSON Object holding the metadata key/value pairs for the macro.
    • uuid -
    • commandChecksum -
    • propsChecksum -
  • See createMacro() for a list of all other properties.


Version Changes

  • 1.3b49 - Added json delimiter option.
  • 1.3b51 - Added optional token id parameter.
  • 1.3b53 - Added state of Macro Commonality settings under compare in JSON output.
  • 1.5.7 - Added metadata to JSON output.
  • 1.5.11 - Added mapname parameter option.
  • 1.15 - Addition of "gm" and "campaign" options for id