mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-05-29 06:12:18 -06:00
231 lines
No EOL
15 KiB
C++
231 lines
No EOL
15 KiB
C++
topic "Message Boxes";
|
|
[i448;a25;kKO9;2 $$1,0#37138531426314131252341829483380:class]
|
|
[l288;2 $$2,2#27521748481378242620020725143825:desc]
|
|
[0 $$3,0#96390100711032703541132217272105:end]
|
|
[H6;0 $$4,0#05600065144404261032431302351956:begin]
|
|
[i448;a25;kKO9;2 $$5,0#37138531426314131252341829483370:item]
|
|
[l288;a4;*@5;1 $$6,6#70004532496200323422659154056402:requirement]
|
|
[l288;i1121;b17;O9;~~~.1408;2 $$7,0#10431211400427159095818037425705:param]
|
|
[i448;b42;O9;2 $$8,8#61672508125594000341940100500538:tparam]
|
|
[b42;ph2 $$9,9#13035079074754324216151401829390:normal]
|
|
[b42;a42;ph2 $$10,10#E71D914572A169C91BE52E3FB27F810F:text]
|
|
[2 $$0,0#00000000000000000000000000000000:Default]
|
|
[{_}
|
|
[ {{10000@(113.42.0) [s0;%% [*@7;4 Message Boxes]]}}&]
|
|
[s10;%% Message boxes in U`+`+ provide up to 3 buttons. The message
|
|
is using [*^topic`:`/`/RichText`/srcdoc`/QTF`_en`-us^ QTF] rich
|
|
text format `- it means that you can for example embed hyper`-link
|
|
or even table or image. This however can cause issues if some
|
|
non`-literal text is presented which can accidentally contain
|
|
QTF formatting characters. To solve this, you can use [*^topic`:`/`/RichText`/src`/Utilities`$en`-us`#Upp`:`:DeQtf`(const char`*`)^ D
|
|
eQtf][* ]function `'`\1`' switch (supresses QTF parsing till the
|
|
next `'`\1`'), e.g.:&]
|
|
[s10;l160;%% [/@(28.42.150) PromptOK(DeQtf(`"C:`\`\Program Files`\`\Upp`\`\theide`"));]&]
|
|
[s10;l160;%% [/@(28.42.150) PromptOK(`"`\1C:`\`\Program Files`\`\Upp`\`\theide`");]&]
|
|
[s10; &]
|
|
[ {{10000F(128)G(128)@1 [s0;%% [* Functions]]}}&]
|
|
[s3; &]
|
|
[s5;:Upp`:`:PromptOKCancel`(const char`*`): [@(0.0.255) int]_[* PromptOKCancel]([@(0.0.255) c
|
|
onst]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:PromptOKCancelAll`(const char`*`): [@(0.0.255) int]_[* PromptOKCancelAll]([@(0.0.255) c
|
|
onst]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:PromptYesNo`(const char`*`): [@(0.0.255) int]_[* PromptYesNo]([@(0.0.255) const
|
|
]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:PromptYesNoCancel`(const char`*`): [@(0.0.255) int]_[* PromptYesNoCancel]([@(0.0.255) c
|
|
onst]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:PromptYesNoAll`(const char`*`): [@(0.0.255) int]_[* PromptYesNoAll]([@(0.0.255) c
|
|
onst]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:PromptRetryCancel`(const char`*`): [@(0.0.255) int]_[* PromptRetryCancel]([@(0.0.255) c
|
|
onst]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:PromptAbortRetry`(const char`*`): [@(0.0.255) int]_[* PromptAbortRetry]([@(0.0.255) c
|
|
onst]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:PromptAbortRetryIgnore`(const char`*`): [@(0.0.255) int]_[* PromptAbortRetryI
|
|
gnore]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:PromptSaveDontSaveCancel`(const char`*`): [@(0.0.255) int]_[* PromptSaveDontS
|
|
aveCancel]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:ShowExc`(const Upp`:`:Exc`&`): [@(0.0.255) void]_[* ShowExc]([@(0.0.255) const]_
|
|
[_^Upp`:`:Exc^ Exc][@(0.0.255) `&]_[*@3 exc])&]
|
|
[s5;:Upp`:`:Exclamation`(const char`*`): [@(0.0.255) void]_[* Exclamation]([@(0.0.255) cons
|
|
t]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:ErrorOK`(const char`*`): [@(0.0.255) void]_[* ErrorOK]([@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:ErrorOKCancel`(const char`*`): [@(0.0.255) int]_[* ErrorOKCancel]([@(0.0.255) c
|
|
onst]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:ErrorYesNo`(const char`*`): [@(0.0.255) int]_[* ErrorYesNo]([@(0.0.255) const]_
|
|
[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:ErrorYesNoCancel`(const char`*`): [@(0.0.255) int]_[* ErrorYesNoCancel]([@(0.0.255) c
|
|
onst]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:ErrorYesNoAll`(const char`*`): [@(0.0.255) int]_[* ErrorYesNoAll]([@(0.0.255) c
|
|
onst]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:ErrorRetryCancel`(const char`*`): [@(0.0.255) int]_[* ErrorRetryCancel]([@(0.0.255) c
|
|
onst]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:ErrorAbortRetry`(const char`*`): [@(0.0.255) int]_[* ErrorAbortRetry]([@(0.0.255) c
|
|
onst]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:ErrorAbortRetryIgnore`(const char`*`): [@(0.0.255) int]_[* ErrorAbortRetryIgn
|
|
ore]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf])&]
|
|
[s5;:Upp`:`:PromptOKOpt`(const char`*`,const char`*`): [@(0.0.255) void]_[* PromptOKOpt](
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 o
|
|
pt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:PromptOKCancelOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* PromptOK
|
|
CancelOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:PromptOKCancelAllOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* Promp
|
|
tOKCancelAllOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:PromptYesNoOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* PromptYesNo
|
|
Opt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) char]_
|
|
`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:PromptYesNoCancelOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* Promp
|
|
tYesNoCancelOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:PromptYesNoAllOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* PromptYe
|
|
sNoAllOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:PromptRetryCancelOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* Promp
|
|
tRetryCancelOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:PromptAbortRetryOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* Prompt
|
|
AbortRetryOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:PromptAbortRetryIgnoreOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* P
|
|
romptAbortRetryIgnoreOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:PromptSaveDontSaveCancelOpt`(const char`*`,const char`*`): [@(0.0.255) int]_
|
|
[* PromptSaveDontSaveCancelOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:ExclamationOpt`(const char`*`,const char`*`): [@(0.0.255) void]_[* Exclamatio
|
|
nOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) char
|
|
]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:ErrorOKOpt`(const char`*`,const char`*`): [@(0.0.255) void]_[* ErrorOKOpt]([@(0.0.255) c
|
|
onst]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id]_`=
|
|
_NULL)&]
|
|
[s5;:Upp`:`:ErrorOKCancelOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* ErrorOKCa
|
|
ncelOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:ErrorYesNoOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* ErrorYesNoOp
|
|
t]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) char]_`*
|
|
[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:ErrorYesNoCancelOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* ErrorY
|
|
esNoCancelOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:ErrorYesNoAllOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* ErrorYesN
|
|
oAllOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:ErrorRetryCancelOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* ErrorR
|
|
etryCancelOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id]_`=_NULL)&]
|
|
[s5;:Upp`:`:ErrorAbortRetryOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* ErrorAb
|
|
ortRetryOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:ErrorAbortRetryIgnoreOpt`(const char`*`,const char`*`): [@(0.0.255) int]_[* E
|
|
rrorAbortRetryIgnoreOpt]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:ShowExcOpt`(const Upp`:`:Exc`&`,const char`*`): [@(0.0.255) void]_[* ShowExcO
|
|
pt]([@(0.0.255) const]_[_^Upp`:`:Exc^ Exc][@(0.0.255) `&]_[*@3 exc],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:PromptOKOpt1`(const char`*`,const char`*`): [@(0.0.255) void]_[* PromptOKOpt1
|
|
]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) char]_`*
|
|
[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:PromptOKCancelOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* PromptO
|
|
KCancelOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:PromptOKCancelAllOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* Prom
|
|
ptOKCancelAllOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:PromptYesNoOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* PromptYesN
|
|
oOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) cha
|
|
r]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:PromptYesNoCancelOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* Prom
|
|
ptYesNoCancelOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:PromptYesNoAllOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* PromptY
|
|
esNoAllOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:PromptRetryCancelOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* Prom
|
|
ptRetryCancelOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:PromptAbortRetryOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* Promp
|
|
tAbortRetryOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:PromptAbortRetryIgnoreOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_
|
|
[* PromptAbortRetryIgnoreOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:PromptSaveDontSaveCancelOpt1`(const char`*`,const char`*`): [@(0.0.255) int
|
|
]_[* PromptSaveDontSaveCancelOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:ExclamationOpt1`(const char`*`,const char`*`): [@(0.0.255) void]_[* Exclamati
|
|
onOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) ch
|
|
ar]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:ErrorOKOpt1`(const char`*`,const char`*`): [@(0.0.255) void]_[* ErrorOKOpt1](
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 o
|
|
pt`_id])&]
|
|
[s5;:Upp`:`:ErrorOKCancelOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* ErrorOKC
|
|
ancelOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:ErrorYesNoOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* ErrorYesNoO
|
|
pt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) char]_
|
|
`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:ErrorYesNoCancelOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* Error
|
|
YesNoCancelOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:ErrorYesNoAllOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* ErrorYes
|
|
NoAllOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:ErrorRetryCancelOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* Error
|
|
RetryCancelOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:ErrorAbortRetryOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* ErrorA
|
|
bortRetryOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf], [@(0.0.255) const]_[@(0.0.255) c
|
|
har]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:ErrorAbortRetryIgnoreOpt1`(const char`*`,const char`*`): [@(0.0.255) int]_[* E
|
|
rrorAbortRetryIgnoreOpt1]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 qtf],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id])&]
|
|
[s5;:Upp`:`:ShowExcOpt1`(const Upp`:`:Exc`&`,const char`*`): [@(0.0.255) void]_[* ShowExc
|
|
Opt1]([@(0.0.255) const]_[_^Upp`:`:Exc^ Exc][@(0.0.255) `&]_[*@3 exc],
|
|
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 opt`_id])&]
|
|
[s2; There are many various functions providing message boxes. The
|
|
first word in camel case function name designates the icon used
|
|
in the message box and possible associated sound. It is followed
|
|
by the name of buttons and optional [* Opt] or [* Opt1] part. [* Opt]
|
|
and [* Opt1] mean that the dialog has `"Do not show this again`"
|
|
option (more on that later).&]
|
|
[s2; If there are 2 or 3 buttons, the function returns an int to
|
|
report which button was pressed. First button listed in the name
|
|
returns 1, second 0 and third `-1 (e.g. in PromptYesNo Yes is
|
|
1 and No is 0, in PromptYesNoCancle Yes is 1, No is 0 and Cancel
|
|
is `-1).&]
|
|
[s2; If the name contains [* Opt] or [* Opt1], the process of ignoring
|
|
the dialog next time is automated via storing specific String
|
|
key `- this key is passed as second const char `* parameter to
|
|
the function `- if it is NULL (default), it is generated by hashing
|
|
the message.&]
|
|
[s2; The diference between [* Opt] and [* Opt1] is that [* Opt] remembers
|
|
which button was pressed and returns the same value next time
|
|
(e.g. if in PromptOKCancel `"Do not show again`" is checked and
|
|
user presses Cancel, the next the same PromptOKCancel is invoked,
|
|
it returns without displaying the dialog with 0). As this behaviour
|
|
can be confusing in certain context, [* Opt1] variant only grants
|
|
`"Do not show again`" request if the user chooses button that
|
|
returns 1 (e.g. OK or Yes).&]
|
|
[s3;%% &]
|
|
[s4; &]
|
|
[s5;:Upp`:`:ClearPromptOptHistory`(`): [@(0.0.255) void]_[* ClearPromptOptHistory]()&]
|
|
[s2;%% Clears the list of `"Do not show again`" message boxes.&]
|
|
[s3; &]
|
|
[s4; &]
|
|
[s5;:Upp`:`:ClearPromptOptHistory`(Upp`:`:Gate`<Upp`:`:String`>`): [@(0.0.255) void]_[* C
|
|
learPromptOptHistory]([_^Upp`:`:Gate^ Gate]<[_^Upp`:`:String^ String]>_[*@3 filter])&]
|
|
[s2;%% Clears the list of `"Do not show again`" message boxes `-
|
|
only removes those where [%-*@3 filter] returns true for [%-*@3 opt`_id].&]
|
|
[s3;%% &]
|
|
[s4; &]
|
|
[s5;:Upp`:`:SerializePromptOptHistory`(Upp`:`:Stream`&`): [@(0.0.255) void]_[* SerializeP
|
|
romptOptHistory]([_^Upp`:`:Stream^ Stream][@(0.0.255) `&]_[*@3 s])&]
|
|
[s2;%% Serializes the list of `"Do not show again`" message boxes.&]
|
|
[s3;%% &]
|
|
[s4; &]
|
|
[s5;:Upp`:`:RedirectPrompts`(Upp`:`:RedirectPromptFn`): [@(0.0.255) void]_[* RedirectProm
|
|
pts]([_^Upp`:`:RedirectPromptFn^ RedirectPromptFn]_[*@3 r])&]
|
|
[s2;%% Completely redirects all message boxes to another function.&]
|
|
[s3;%% &]
|
|
[s0; ]] |