BIS fnc guiMessage: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(Upgraded page to level 2 (and fixed some errors and clarified some things here and there!))
m (Text replacement - "BIS fnc " to "BIS_fnc_")
 
(9 intermediate revisions by 2 users not shown)
Line 3: Line 3:
|selected= 2
|selected= 2


|title1= {{Icon|tkoh|24|link=}} {{tkoh}}
|title1= {{TabView/GameTitle|tkoh}}
|content1=
|content1=
{{RV|type=function
{{RV|type=function


|game1= TKOH
|game1= tkoh
|version1= 1.00
|version1= 1.00


Line 25: Line 25:
|p3= position: [[Array]] - (Optional) position in format [x,y,w,h]
|p3= position: [[Array]] - (Optional) position in format [x,y,w,h]


|p4= isCancel: [[Boolean]] or [[Array]] - (Optional, default [[true]]) true to display cancel button or array with button texts [okText, cancelText]
|p4= isCancel: [[Boolean]] or [[Array]] - (Optional, default [[true]]) [[true]] to display cancel button or array with button texts [okText, cancelText]


|p5= parent: [[Display]] - (Optional) parent display
|p5= parent: [[Display]] - (Optional) parent display


|p6= pause: [[Boolean]] - (Optional) true to pause simulation when message window is open
|p6= pause: [[Boolean]] - (Optional) [[true]] to pause simulation when message window is open


|r1= [[Array]] - [endState, lbId]
|r1= [[Array]] - [endState, lbId]
Line 36: Line 36:
Returned only after message box is closed.
Returned only after message box is closed.


|x1= <code>["Hello World"] [[spawn]] [[BIS_fnc_guiMessage TKOH|BIS_fnc_guiMessage]];</code>
|x1= <sqf>["Hello World"] spawn BIS_fnc_guiMessage;</sqf>


|x2= [[File:TakeOn BIS fnc guiMessage.jpg|right|200px]]
|x2= [[File:TakeOn BIS_fnc_guiMessage.jpg|right|200px]]
<code>["Message", "Header", [[nil]], [[true]]] [[spawn]] [[BIS_fnc_guiMessage TKOH|BIS_fnc_guiMessage]];</code><div style="clear: both"></div>
<sqf>["Message", "Header", nil, true] spawn BIS_fnc_guiMessage;</sqf>


|x3= <code>[["Enabled Item", ["Disabled Item"]], "Header"] [[spawn]] [[BIS_fnc_guiMessage TKOH|BIS_fnc_guiMessage]];</code>
|x3= <sqf>[["Enabled Item", ["Disabled Item"]], "Header"] spawn BIS_fnc_guiMessage;</sqf>


|seealso= [[hintC]], [[BIS_fnc_GUIhint]]
|seealso= [[hintC]] [[BIS_fnc_GUIhint]]


|exec= spawn
|exec= spawn
}}
}}


|title2= {{Icon|arma3|24|link=}} {{arma3}}
|title2= {{TabView/GameTitle|arma3}}
|content2=
|content2=
{{RV|type=function
{{RV|type=function


|game1= arma3
|game1= arma3
|version1= 1.00
|version1= 0.50


|eff= local
|eff= local
Line 59: Line 59:
|gr1= GUI
|gr1= GUI


|descr= [[File:BIS fnc guiMessage.jpg|thumb|right|[[BIS_fnc_guiMessage]] message dialog in {{arma3}}]] Displays an interactive message dialog in the center of the screen.
|descr= [[File:BIS_fnc_guiMessage.jpg|thumb|[[BIS_fnc_guiMessage]] dialog in {{arma3}}]]
Displays an interactive message dialog in the center of the screen.
{{Feature|important|This function internally utilizes suspension ([[waitUntil]] to be specific) and therefore has to be executed in a [[Scheduler#Scheduled_Environment|scheduled environment]].}}


|exec= call
|exec= call
Line 65: Line 67:
|s1= [message, header, okButton, cancelButton, parent, useParentBox, pause] call [[BIS_fnc_guiMessage]]
|s1= [message, header, okButton, cancelButton, parent, useParentBox, pause] call [[BIS_fnc_guiMessage]]


|p1= message (Optional, default: ""): [[String]] or [[Structured Text]] - Message
|p1= message: [[String]] or [[Structured Text]] - (Optional, default: "") message


|p2= header (Optional): [[String]] - Header text
|p2= header: [[String]] - (Optional, default: "") header text


|p3= okButton (Optional, default: [[true]]):
|p3= okButton [[Boolean]] or [[String]] - (Optional, default [[true]]):
* [[Boolean]] - Enable the "OK" button
* [[Boolean]] - enable the "OK" button
* [[String]] - Custom text for the "OK" button
* [[String]] - custom text for the "OK" button


|p4= cancelButton (Optional, default: [[false]]):
|p4= cancelButton: [[Boolean]] or [[String]] - (Optional, default [[false]]):
* [[Boolean]] - Enable the "Cancel" button
* [[Boolean]] - enable the "Cancel" button
* [[String]] - Custom text for the "Cancel" button
* [[String]] - custom text for the "Cancel" button


|p5= parent (Optional, default: [[displayNull]]): [[Display]] - Parent display
|p5= parent: [[Display]] - (Optional, default: <sqf inline>[] call BIS_fnc_displayMission</sqf>) parent display


|p6= useParentBox (Optional, default: [[false]]): [[Boolean]] - Try to use control inherited from "RscMessageBox" in parent instead of creating a new one
|p6= useParentBox: [[Boolean]] - (Optional, default: [[false]]) try to use control inherited from "RscMessageBox" in parent instead of creating a new one


|p7= pause (Optional, default: [[true]]): [[Boolean]] - Pause simulation while message dialog is open (no effect in multiplayer)
|p7= pause: [[Boolean]] - (Optional, default: [[true]]) pause simulation while message dialog is open (no effect in multiplayer)


|r1= [[Boolean]] - [[true|True]] if the "OK" button was pressed, otherwise [[false]]. Returned only after message box is closed.
|r1= [[Boolean]] - [[true]] if the "OK" button was pressed, otherwise [[false]]. Returned only after the message box is closed.


|x1= Because this example uses [[spawn]], the return value of [[BIS_fnc_guiMessage]] is lost and can not be used.
|x1= Because this example uses [[spawn]], the return value of [[BIS_fnc_guiMessage]] is lost and can not be used.
<code>["Hello World"] [[spawn]] [[BIS_fnc_guiMessage]];</code>
<sqf>["Hello World"] spawn BIS_fnc_guiMessage;</sqf>


|x2= <code>[[private]] _result = ["Are you sure?", "Confirm", [[true]], [[true]]] [[call]] [[BIS_fnc_guiMessage]];
|x2= <sqf>
private _result = ["Are you sure?", "Confirm", true, true] call BIS_fnc_guiMessage;


[[if]] (_result) [[then]] {
if (_result) then {
[[systemChat]] "Player is sure.";
systemChat "The player is sure.";
} [[else]] {
} else {
[[systemChat]] "Player is not sure.";
systemChat "The player is not sure.";
};</code>
};
</sqf>


|seealso= [[BIS_fnc_GUIhint]] [[BIS_fnc_3DENShowMessage]] [[hintC]]
|seealso= [[BIS_fnc_GUIhint]] [[BIS_fnc_3DENShowMessage]] [[hintC]]
}}
}}
}}
}}


<dl class="command_description">
{{Note
<dt><dt>
|user= AgentRev
<dd class="notedate">Posted on June 24, 2014 - 00:43 (UTC)</dd>
|timestamp= 20140624004300
<dt class="note">[[User:AgentRevolution|AgentRev]]</dt>
|text= Message boxes can be force-closed with:
<dd class="note">
<sqf>uiNamespace setVariable ["BIS_fnc_guiMessage_status", false];</sqf>
Message boxes can be force-closed with:
}}
<code>[[uiNamespace]] [[setVariable]] ["BIS_fnc_guiMessage_status", [[false]]];</code>
</dd>
 
<dt><dt>
<dd class="notedate">Posted on January 13, 2016 - 15:16 (UTC)</dd>
<dt class="note">[[User:Eden|Eden]]</dt>
<dd class="note">
Calling this function can cause an game crash. When doing this you have to [[spawn]] the function or add an spawn around it so you can use the result:


<code>[] [[spawn]]
{{Note
|user= Eden
|timestamp= 20160113151600
|text= Calling this function can cause an game crash. When doing this you have to [[spawn]] the function or add an spawn around it so you can use the result:
<sqf>
[] spawn
{
{
[[private]] _result = ["Are you sure?", "Confirm", [[true]], [[true]]] [[call]] [[BIS_fnc_guiMessage]];
private _result = ["Are you sure?", "Confirm", true, true] call BIS_fnc_guiMessage;
{{cc|Use _result here}}
// Use _result here
};</code>
};
</dd>
</sqf>
}}


<dt><dt>
{{Note
<dd class="notedate">Posted on November 1, 2017 - 18:35 (UTC)</dd>
|user= Demellion
<dt class="note">[[User:demellion|demellion]]</dt>
|timestamp= 20171101183500
<dd class="note">
|text= This function only exists along with mission display ([[findDisplay]] 46). If this function is called before with ''-skipIntro'' parameter enabled (see [[Arma 3: Startup Parameters]]) it will result as [[Void]].
'''NOTE''': This function only exists along with mission display ([[findDisplay]] 46). If this function is called before with ''-skipIntro'' parameter enabled (see [[Arma 3: Startup Parameters]]) it will result as [[Void]].
}}
</dd>
</dl>

Latest revision as of 11:15, 27 July 2022

tkoh logo small.png Take On Helicopters
Arma 3 logo black.png Arma 3
Hover & click on the images for description

Description

Description:
Shows customized native message box to user.
Execution:
spawn
Groups:
GUI

Syntax

Syntax:
[message, header, position, isCancel, parent, pause] spawn BIS_fnc_guiMessage
Parameters:
message: String, Structured Text or Array: When variable BIS_fnc_guiMessage_cursel is defined as a Number, item with this index will be selected.
header: String or Structured Text - (Optional, default "") header text
position: Array - (Optional) position in format [x,y,w,h]
isCancel: Boolean or Array - (Optional, default true) true to display cancel button or array with button texts [okText, cancelText]
parent: Display - (Optional) parent display
pause: Boolean - (Optional) true to pause simulation when message window is open
Return Value:
Array - [endState, lbId]
  • endState: Boolean - true when clicked OK button, false when escaped or clicked on Cancel button
  • lbId: Number - (Optional, returned if listbox was used) selected listbox item
Returned only after message box is closed.

Examples

Example 1:
["Hello World"] spawn BIS_fnc_guiMessage;
Example 2:
TakeOn BIS fnc guiMessage.jpg
["Message", "Header", nil, true] spawn BIS_fnc_guiMessage;
Example 3:
[["Enabled Item", ["Disabled Item"]], "Header"] spawn BIS_fnc_guiMessage;

Additional Information

See also:
hintC BIS_fnc_GUIhint

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
Hover & click on the images for description

Description

Description:
BIS_fnc_guiMessage dialog in Arma 3

Displays an interactive message dialog in the center of the screen.

This function internally utilizes suspension (waitUntil to be specific) and therefore has to be executed in a scheduled environment.
Execution:
call
Groups:
GUI

Syntax

Syntax:
[message, header, okButton, cancelButton, parent, useParentBox, pause] call BIS_fnc_guiMessage
Parameters:
message: String or Structured Text - (Optional, default: "") message
header: String - (Optional, default: "") header text
okButton Boolean or String - (Optional, default true):
  • Boolean - enable the "OK" button
  • String - custom text for the "OK" button
cancelButton: Boolean or String - (Optional, default false):
  • Boolean - enable the "Cancel" button
  • String - custom text for the "Cancel" button
parent: Display - (Optional, default: [] call BIS_fnc_displayMission) parent display
useParentBox: Boolean - (Optional, default: false) try to use control inherited from "RscMessageBox" in parent instead of creating a new one
pause: Boolean - (Optional, default: true) pause simulation while message dialog is open (no effect in multiplayer)
Return Value:
Boolean - true if the "OK" button was pressed, otherwise false. Returned only after the message box is closed.

Examples

Example 1:
Because this example uses spawn, the return value of BIS_fnc_guiMessage is lost and can not be used.
["Hello World"] spawn BIS_fnc_guiMessage;
Example 2:
private _result = ["Are you sure?", "Confirm", true, true] call BIS_fnc_guiMessage; if (_result) then { systemChat "The player is sure."; } else { systemChat "The player is not sure."; };

Additional Information

See also:
BIS_fnc_GUIhint BIS_fnc_3DENShowMessage hintC

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
AgentRev - c
Posted on Jun 24, 2014 - 00:43 (UTC)
Message boxes can be force-closed with:
uiNamespace setVariable ["BIS_fnc_guiMessage_status", false];
Eden - c
Posted on Jan 13, 2016 - 15:16 (UTC)
Calling this function can cause an game crash. When doing this you have to spawn the function or add an spawn around it so you can use the result:
[] spawn { private _result = ["Are you sure?", "Confirm", true, true] call BIS_fnc_guiMessage; // Use _result here };
Demellion - c
Posted on Nov 01, 2017 - 18:35 (UTC)
This function only exists along with mission display (findDisplay 46). If this function is called before with -skipIntro parameter enabled (see Arma 3: Startup Parameters) it will result as Void.