ctrlMapCursor: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
No edit summary
(description, example, note moved to talk)
Line 7: Line 7:
____________________________________________________________________________________________
____________________________________________________________________________________________


| Changes the default cursor that appears when interacting with a map control to a custom one. Use an empty string to restore the default cursor. If the specified cursor does not exist, the default is used and no error is produced. The cursor is the name of a config entry from ''CfgWrapperUI / Cursors''. Some possible class names:
| Changes the default cursor that appears when interacting with a map control to a custom one. Use an empty string to restore the default cursor. If the specified cursor does not exist, the default is used and no error is produced. The cursor is the name of a config entry from ''CfgWrapperUI / Cursors''. This command has the following specifics:
<br><br>
* When used on Main Map ([[findDisplay]] 12 [[displayCtrl]] 51) it is possible to override multiple default cursors. For example, while leaving default "Arrow" intact, it is possible to just override "Scroll" with lets say "Wait" (Example 3)
* When used on a custom map, for example user made Mini Map, there is only one single cursor "" for everything (see Example 4 on how to override it)
Some possible class names:
* Arrow
* Arrow
* Track
* Track
Line 24: Line 26:
* HC_overMission
* HC_overMission
* HC_unsel
* HC_unsel
<br>
'''NOTE1''': Cursor names are '''case sensitive'''.|= Description
'''NOTE''': Cursor name is '''case sensitive'''.|= Description
____________________________________________________________________________________________
____________________________________________________________________________________________


Line 45: Line 46:


|x3= <code>[[findDisplay]] 12 [[displayCtrl]] 51 [[ctrlMapCursor]] ["Scroll", "Wait"];</code>|= EXAMPLE3
|x3= <code>[[findDisplay]] 12 [[displayCtrl]] 51 [[ctrlMapCursor]] ["Scroll", "Wait"];</code>|= EXAMPLE3
|x4= Cycle through all available cursors over custom map:<code>0 = [] [[spawn]]
{
[[disableSerialization]];
_map = [[findDisplay]] 46 [[createDisplay]] "RscCredits" [[ctrlCreate]] ["RscMapControl", -1];
_map [[ctrlSetPosition]] [0,0,1,1];
_map [[ctrlCommit]] 0;
{
_map [[ctrlMapCursor]] ["", [[configName]] _x]; //<-- the actual usage
[[hint]] [[format]] ["Current cursor: %1", [[configName]] _x];
sleep 1;
}
[[forEach]] ("true" [[configClasses]] ([[configFile]] >> "CfgWrapperUI" >> "Cursors"));
};</code>|= EXAMPLE4


____________________________________________________________________________________________
____________________________________________________________________________________________
Line 68: Line 83:
[[Category:Command_Group:_GUI_Control|{{uc:{{PAGENAME}}}}]]
[[Category:Command_Group:_GUI_Control|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
<!-- CONTINUE Notes -->
<dl class="command_description">
<dd class="notedate">Posted on August 14, 2015 - 11:01 (UTC)</dd>
<dt class="note">[[User:Bull A|Bull A]]</dt>
<dd class="note">
control argument must be from the configFile. Other controls, even if extending from the RscMapControl class will not be affected by this command.<br/><br/>
Example:<br/>
<code>_map = uiNamespace getVariable ["CustomMapDisplayIdd",_displayNull];
_map [[ctrlMapCursor]] ["Track", "Track"];</code>
Result: No change
<br/><br/>
Please see the [http://feedback.arma3.com/view.php?id=25141 Feedback Ticket] for more information.
</dd>
</dl>
<!-- DISCONTINUE Notes -->

Revision as of 17:24, 7 February 2016

Hover & click on the images for description

Description

Description:
Changes the default cursor that appears when interacting with a map control to a custom one. Use an empty string to restore the default cursor. If the specified cursor does not exist, the default is used and no error is produced. The cursor is the name of a config entry from CfgWrapperUI / Cursors. This command has the following specifics:
  • When used on Main Map (findDisplay 12 displayCtrl 51) it is possible to override multiple default cursors. For example, while leaving default "Arrow" intact, it is possible to just override "Scroll" with lets say "Wait" (Example 3)
  • When used on a custom map, for example user made Mini Map, there is only one single cursor "" for everything (see Example 4 on how to override it)
Some possible class names:
  • Arrow
  • Track
  • Move
  • Scroll
  • Rotate
  • Track3D
  • Move3D
  • Rotate3D
  • Raise3D
  • Wait
  • HC_move
  • HC_overFriendly
  • HC_overEnemy
  • HC_overMission
  • HC_unsel
NOTE1: Cursor names are case sensitive.
Groups:
Uncategorised

Syntax

Syntax:
control ctrlMapCursor [defaultCursor, newCursor]
Parameters:
control: Control - Map control
defaultCursor: String - Cursor class name
newCursor: String - Cursor class name
Return Value:
Nothing

Examples

Example 1:
_map ctrlMapCursor ["Track", "Arrow"];
Example 2:
uiNamespace setVariable ["_map",findDisplay 12 displayCtrl 51]; (uiNamespace getVariable "_map") ctrlMapCursor ["Track","HC_overFriendly"];
Example 3:
findDisplay 12 displayCtrl 51 ctrlMapCursor ["Scroll", "Wait"];
Example 4:
Cycle through all available cursors over custom map:0 = [] spawn { disableSerialization; _map = findDisplay 46 createDisplay "RscCredits" ctrlCreate ["RscMapControl", -1]; _map ctrlSetPosition [0,0,1,1]; _map ctrlCommit 0; { _map ctrlMapCursor ["", configName _x]; //<-- the actual usage hint format ["Current cursor: %1", configName _x]; sleep 1; } forEach ("true" configClasses (configFile >> "CfgWrapperUI" >> "Cursors")); };

Additional Information

See also:
setMousePosition

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note

Notes

Bottom Section