topic "MenuBar";
[i448;a25;kKO9;2 $$1,0#37138531426314131252341829483380:class]
[l288;2 $$2,0#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;2 $$9,9#13035079074754324216151401829390:normal]
[2 $$0,0#00000000000000000000000000000000:Default]
[{_} 
[ {{10000@3 [s0;%% [*@(229)4 MenuBar]]}}&]
[s3; &]
[s1;:MenuBar`:`:class: [@(0.0.255)3 class][3 _][*3 MenuBar][3 _:_][@(0.0.255)3 public][3 _][*@3;3 Ba
rCtrl]&]
[s2;%% &]
[s2;%% 
@@image:831&643
(A4UAZwAAAJn/AAAAAHic7Z3PaxNBFMe39d/wn/Aq3qzYi715FW+CQkG8eJPqpQWJ7VEqevAiJPSUg0dRaxEsLRLEgJKWFIriJYX2ENquQyLr7Pzayf6Y95J8vzzCspmdeW8++96YZOp2Op04jqOL29HlTnSlM3NjP7q6I2xm7p/NDuzCNdVm5/63gZVlnQGOS3c3K7I/v77D/A04WBlwsDLgYGXAwcocOOK0jA2S11FxRJJCxhulNdKFpYxbBIf7zpcb2Br7hBaYSPgR5eGSY6MPHHCEN0Ic7pM5cCgVLHk1th9pNuR0VrJbv8GKlDv9En04mwNlFbqkE7lnz7XDkRHuFcTtniNkffIzz+SeH//hcg+qQzRGPWp2lIvD4Rh/HPnMESxwAIce7Eg49JJLhcN/UHeNkoPK8bnDuJTbiDg8NK5lxgZGEJGk3LeobTi9c/2tUUfUr9I7H99P5cXrBlXnjuGAgxaHkjLji2MiDThYGXCwsiGOxpvnMBKz4Yih4BLTvriyIRtwEEqfdgVHdYsITDbgYGXAwcoSHEdHRycnJ/1+/+zs7Pz8HDhocURpAQctjmazubW1JUAcHx+LBKkIR1IMyQO3Oebwzf1WKXElONbX1wURgUNUrYpwxNpvIkxMcSa2/FJj87nEuBIcq6urjUZD4Oj1eqenp1XjYGVGx/LhKO7JcNprtVq9XifBoWS68WartMrZcCRpoudLRZkeEkfmrNqirrrKubPDfZ/4xMUWhzGcWJKRQpwWLQ63MwXdI8dhK022NlVY8ewYRxyOmc93XBEO280QwD0FR6vVCr92GHPf1qZ0Fpk++CRpWe4FxgFjgiOKYt3Iw+dmyA5WBhysDDhYmScOKKTkzx3G3zugkFKyAzho5YmDfDPYBFsOHFAYNQa/lQMHEwEHKwEHKwEHKwEHKzXwqZyTgIOVgIOVwuBQtgGX2HNxN2yOkfgcDEeJvRk79BlCn3DlpO04mIDDeNKzw9JFiEMJ3FgZjIVFPlBaGq+yuTHNOIxTLR/obznOOKbaUXBsa4etn8ALR0xdrGzTUh2OTN+mJDts54FDlvwliTigXTuUt8LjcFwbRsFwOIp2MtXG9cWdQcooxqscl9jGzezfHW9uDYuV6L9SHD4iuRu5KQAO46ZQUzPgyP6DAiikgIOV8I0uKwEHKwEHKwEHK3niIN85OcGWAwcURsDBSsDBSsDBSsDBSsDBSo30Hl3goBVwsBKKFSuFyQ7jj7N6mxJHHFOFyQ7/qZ5yKMDBSoQ4jBt7HNVsGhQMh3HTjnyg762aQtEWK30PFXAABx8xXDtKHHfsFH7tcGwKVc5PofAlCStRfUmSuUd0OoXvrFgpKVbDTaER/hMMUsk4aP+gAIq17AAOWgEHKzlwwEjMiGNxZUO8Jo9p3vu5LRosLy8vLCzMz8+LY/HvsXsDiePrA4mDJ48fToDdvnWzJknEJcJMYjQGXktLP+Oj4VXDB9W12235QXUKjoP9XeWT9dLSkoAoXuWTL1+sTYA9uH+nLskn8Hpa+hmb9E6Gj3HsdrvyYxwVHIcHrc6PL1933n3+9HbzQ1Px8OP75iTZs6ePWhYpgduaFZHIC8FCVKp+v588c1bB8fvwmyDS3dsVVUtwmWx7/WqtRyflEcB/AUMeCEU=)
&]
[s0;%% &]
[s9;%% This class provides the menu hierarchy. It can be used either 
as Frame or as regular Ctrl (in that case it represents top`-level 
menu), or be pop`-up as local menu (PopUp or Execute).&]
[s3;%% &]
[s0; &]
[ {{10000F(128)G(128)@1 [s0;%% [* Public Method List]]}}&]
[s3; &]
[s5;:MenuBar`:`:GetStdHeight`(Font`): [@(0.0.255) static] [@(0.0.255) int]_[* GetStdHeight](
[_^Font^ Font]_[*@3 font]_`=_StdFont())&]
[s2;%% The height of top`-level menu using the [%-*@3 font].&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:CloseMenu`(`): [@(0.0.255) void]_[* CloseMenu]()&]
[s2;%% Forces closing any open sub`-menus.&]
[s3;%% &]
[s4; &]
[s5;:Upp`:`:MenuBar`:`:Set`(Event`): [@(0.0.255) void] [* Set](Event<Bar[@(0.0.255) `&]> 
[*@3 menu])&]
[s2;%% Sets the top`-level [%-*@3 menu]. Use for top`-level menu bars 
only.&]
[s3; &]
[s4; &]
[s5;:Upp`:`:MenuBar`:`:Post`(Event`): [@(0.0.255) void] [* Post](Event<Bar[@(0.0.255) `&]> 
[*@3 bar])&]
[s2;%% Deprecated `- do not use.&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:PopUp`(Ctrl`*`,Point`,Size`): [@(0.0.255) void]_[* PopUp]([_^Ctrl^ Ctrl]_`*
[*@3 owner], [_^Point^ Point]_[*@3 p], [_^Size^ Size]_[*@3 rsz]_`=_[_^Size^ Size]([@3 0], 
[@3 0]))&]
[s2;%% Pop`-ups the menu at [%-*@3 p ]in the [%-*@3 owner] view area. 
[%-*@3 sz] is the size of menu, if zero, needed size is computed. 
Menu can be defined by issuing individual Add methods before 
calling PopUp.&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:PopUp`(Point`): [@(0.0.255) void]_[* PopUp]([_^Point^ Point]_[*@3 p])&]
[s2;%% Same as PopUp(GetActiveWindow(), p).&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:PopUp`(`): [@(0.0.255) void]_[* PopUp]()&]
[s2;%% Same as previous method, with p set to the current mouse position.&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:Execute`(Ctrl`*`,Point`): [@(0.0.255) bool]_[* Execute]([_^Ctrl^ Ctrl]_`*[*@3 o
wner], [_^Point^ Point]_[*@3 p])&]
[s2;%% Pop`-ups the menu at [%-*@3 p ]in the [%-*@3 owner] view area 
and performs the modal loop for it. Returns false when menu is 
canceled without performing any action.&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:Execute`(Point`): [@(0.0.255) bool]_[* Execute]([_^Point^ Point]_[*@3 p])&]
[s2;%% Same as Execute(GetActiveWindow(), [%-*@3 p]). Returns false 
when menu is canceled without performing any action.&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:Execute`(`): [@(0.0.255) bool]_[* Execute]()&]
[s2;%% Same as previous method, with p set to the current mouse position. 
Returns false when menu is canceled without performing any action.&]
[s3;%% &]
[s4; &]
[s5;:Upp`:`:MenuBar`:`:Execute`(Upp`:`:Ctrl`*`,Upp`:`:Event`<Upp`:`:Bar`&`>`,Upp`:`:Point`): [@(0.0.255) s
tatic] [@(0.0.255) bool]_[* Execute]([_^Upp`:`:Ctrl^ Ctrl]_`*[*@3 owner], 
[_^Upp`:`:Event^ Event]<Bar[@(0.0.255) `&]>_[*@3 proc], [_^Upp`:`:Point^ Point]_[*@3 p])&]
[s2;%% Pop`-ups the menu based on [%-*@3 proc]. Returns false when 
menu is canceled without performing any action.&]
[s3;%% &]
[s4; &]
[s5;:Upp`:`:MenuBar`:`:Execute`(Upp`:`:Event`<Upp`:`:Bar`&`>`,Upp`:`:Point`): [@(0.0.255) s
tatic] [@(0.0.255) bool]_[* Execute]([_^Upp`:`:Event^ Event]<Bar[@(0.0.255) `&]>_[*@3 proc],
 [_^Upp`:`:Point^ Point]_[*@3 p])&]
[s2;%% Same as previous method, using GetActiveWindow() as owner. 
Returns false when menu is canceled without performing any action.&]
[s3;%% &]
[s4; &]
[s5;:Upp`:`:MenuBar`:`:Execute`(Upp`:`:Event`<Upp`:`:Bar`&`>`): [@(0.0.255) static] 
[@(0.0.255) bool]_[* Execute]([_^Upp`:`:Event^ Event]<Bar[@(0.0.255) `&]>_[*@3 proc])&]
[s2;%% Same as previous method, using current mouse position. Returns 
false when menu is canceled without performing any action.&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:IsEmpty`(`): [@(0.0.255) bool]_[* IsEmpty]()&]
[s2;%% Returns true if MenuBar has no items.&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:Clear`(`): [@(0.0.255) virtual] [@(0.0.255) void]_[* Clear]()&]
[s2;%% Removes all items from MenuBar.&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:LeftGap`(int`): [_^MenuBar^ MenuBar][@(0.0.255) `&]_[* LeftGap]([@(0.0.255) i
nt]_[*@3 cx])&]
[s2;%% Minimum size reserved on the left side of menu items for icons 
in pixels. Default value is 16. Returns `*this.&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:SetFont`(Font`): [_^MenuBar^ MenuBar][@(0.0.255) `&]_[* SetFont]([_^Font^ Fon
t]_[*@3 f])&]
[s2;%% Sets the font to be used in MenuBar. Default is standard GUI 
font. Returns `*this.&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:GetFont`(`)const: [_^Font^ Font]_[* GetFont]()_[@(0.0.255) const]&]
[s2;%% Returns the font used in MenuBar.&]
[s3;%% &]
[s4; &]
[s5;:MenuBar`:`:MaxIconSize`(Size`): [_^MenuBar^ MenuBar][@(0.0.255) `&]_[* MaxIconSize]([_^Size^ S
ize]_[*@3 sz])&]
[s2;%% Sets the maximum size of an iconn displaye inside a menu item 
to [%-*@3 sz].&]
[s3;%% &]
[s4; &]
[s5;:Upp`:`:MenuBar`:`:MaxIconSize`(int`): MenuBar[@(0.0.255) `&] [* MaxIconSize]([@(0.0.255) i
nt] [*@3 n])&]
[s2;%% Same as MaxIconSize([%-*@3 n], [%-*@3 n]).&]
[s3; &]
[s4; &]
[s5;:MenuBar`:`:GetMaxIconSize`(`)const: [_^Size^ Size]_[* GetMaxIconSize]()_[@(0.0.255) co
nst]&]
[s2;%% Returns the maximum icons size.&]
[s3; &]
[s0;%% ]]