topic "TabCtrl";
[2 $$0,0#00000000000000000000000000000000:Default]
[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]
[{_}%EN-US 
[ {{10000@3 [s0;%- [*@(229)4 TabCtrl]]}}&]
[s3; &]
[s1;:TabCtrl`:`:class:%- [@(0.0.255)3 class][3 _][*3 TabCtrl][3 _:_][@(0.0.255)3 public][3 _][*@3;3 C
trl]&]
[s9; This widget can be used to organize the dialog content into 
separate pages switched by clicking header tabs.&]
[s0; &]
[s2; 
@@image:2155&1443
([encoded data, 22336 characters])
&]
[s0; &]
[s9; Each tab of TabCtrl can but does not need to contain a slave 
widget (usually slave dialog pane).&]
[s9; Value of TabCtrl (accessed by GetData() / SetData() or respective 
shortcut operators) is the index of active tab.&]
[s9; TabCtrl responds to SetReadOnly / SetEditable method calls by 
locking / unlocking itself in currently active tab w.r.t. user 
actions.&]
[s3; &]
[s0;%- &]
[ {{10000F(128)G(128)@1 [s0; [* Public Member List]]}}&]
[s3;%- &]
[s5;:TabCtrl`:`:WhenSet:%- [_^Callback^ Callback]_[* WhenSet]&]
[s2; This callback is invoked when active tab changes.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Add`(`):%- [_^TabCtrl`:`:Item^ TabCtrl`::Item][@(0.0.255) `&]_[* Add]()&]
[s2; Add a new tab to TabCtrl. Returns a reference to [^`:`:TabCtrl`:`:Item^ TabCtrl`::I
tem] which can be used to setup tab`'s properties.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Add`(const char`*`):%- [_^TabCtrl`:`:Item^ TabCtrl`::Item][@(0.0.255) `&]_
[* Add]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 text])&]
[s2; Same as Add(), but also sets the [%-*@3 text] of tab.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Add`(const Image`&`,const char`*`):%- [_^TabCtrl`:`:Item^ TabCtrl`::Item
][@(0.0.255) `&]_[* Add]([@(0.0.255) const]_[_^Image^ Image][@(0.0.255) `&]_[*@3 m], 
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 text])&]
[s2; Adds a tab and sets its image and label.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Add`(Ctrl`&`,const char`*`):%- [_^TabCtrl`:`:Item^ TabCtrl`::Item][@(0.0.255) `&
]_[* Add]([_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 slave], [@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 t
ext])&]
[s2; Adds a tab with the [%-*@3 slave] widget and [%-*@3 text] label.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Add`(Ctrl`&`,const Image`&`,const char`*`):%- [_^TabCtrl`:`:Item^ TabCt
rl`::Item][@(0.0.255) `&]_[* Add]([_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 slave], 
[@(0.0.255) const]_[_^Image^ Image][@(0.0.255) `&]_[*@3 m], [@(0.0.255) const]_[@(0.0.255) ch
ar]_`*[*@3 text])&]
[s2; Adds a tab with the [%-*@3 slave] widget, image and [%-*@3 text].&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Insert`(int`):%- [_^TabCtrl`:`:Item^ TabCtrl`::Item][@(0.0.255) `&]_[* Inser
t]([@(0.0.255) int]_[*@3 i])&]
[s2;%- Inserts a new tab to TabCtrl at position [*@3 i]. Returns a 
reference to TabCtrl`::Item which can be used to setup tab`'s 
properties.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Insert`(int`,const char`*`):%- [_^TabCtrl`:`:Item^ TabCtrl`::Item][@(0.0.255) `&
]_[* Insert]([@(0.0.255) int]_[*@3 i], [@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 text])&]
[s2;%- Inserts a new tab to TabCtrl at position [*@3 i] and also sets 
the text of tab to [*@3 text].&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Insert`(int`,const Image`&`,const char`*`):%- [_^TabCtrl`:`:Item^ TabCt
rl`::Item][@(0.0.255) `&]_[* Insert]([@(0.0.255) int]_[*@3 i], [@(0.0.255) const]_[_^Image^ Im
age][@(0.0.255) `&]_[*@3 m], [@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 text])&]
[s2;%- Inserts a new tab to TabCtrl at position [*@3 i] and also sets 
the text of tab to [*@3 text] and the image to [*@3 m].&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Insert`(int`,Ctrl`&`,const char`*`):%- [_^TabCtrl`:`:Item^ TabCtrl`::Ite
m][@(0.0.255) `&]_[* Insert]([@(0.0.255) int]_[*@3 i], [_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 slave
], [@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 text])&]
[s2;%- Inserts a new tab to TabCtrl at position [*@3 i] and also sets 
it`'s slave widget to [*@3 slave ]and the text to [*@3 text].&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Insert`(int`,Ctrl`&`,const Image`&`,const char`*`):%- [_^TabCtrl`:`:Item^ T
abCtrl`::Item][@(0.0.255) `&]_[* Insert]([@(0.0.255) int]_[*@3 i], [_^Ctrl^ Ctrl][@(0.0.255) `&
]_[*@3 slave], [@(0.0.255) const]_[_^Image^ Image][@(0.0.255) `&]_[*@3 m], 
[@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 text])&]
[s2; Inserts a new tab at position [%-*@3 i]. [%-*@3 slave] is the slave 
dialog, [%-*@3 m] is image to be shown in tab and [%-*@3 text] is 
tab label.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Remove`(int`):%- [@(0.0.255) void]_[* Remove]([@(0.0.255) int]_[*@3 i])&]
[s2; Removes the tab with the index [%-*@3 i].&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:GetCount`(`)const:%- [@(0.0.255) int]_[* GetCount]()_[@(0.0.255) const]&]
[s2; Returns the number of tabs in TabCtrl.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:GetTab`(Point`)const:%- [@(0.0.255) int]_[* GetTab]([_^Point^ Point]_[*@3 p])
_[@(0.0.255) const]&]
[s2; Returns the index of the tab that can be found at the psoition 
[%-*@3 p].&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:GetItem`(int`):%- [_^TabCtrl`:`:Item^ Item][@(0.0.255) `&]_[* GetItem]([@(0.0.255) i
nt]_[*@3 i])&]
[s2; Returns a reference to tab [%-*@3 i].&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:GetItem`(int`)const:%- [@(0.0.255) const]_[_^TabCtrl`:`:Item^ Item][@(0.0.255) `&
]_[* GetItem]([@(0.0.255) int]_[*@3 i])_[@(0.0.255) const]&]
[s2; Return a constant reference to tab [%-*@3 i].&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Set`(int`):%- [@(0.0.255) void]_[* Set]([@(0.0.255) int]_[*@3 i])&]
[s2; Sets tab [*@3 i ]as active. You can also use SetData (or operator<<`=).&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Get`(`)const:%- [@(0.0.255) int]_[* Get]()_[@(0.0.255) const]&]
[s2; Returns the index of active tab. You can also use GetData (or 
operator`~).&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Find`(const Ctrl`&`)const:%- [@(0.0.255) int]_[* Find]([@(0.0.255) const]_[_^Ctrl^ C
trl][@(0.0.255) `&]_[*@3 slave])_[@(0.0.255) const]&]
[s2; Finds the tab index of [%-*@3 slave]. If [%-*@3 slave] is not present 
in TabCtrl, returns `-1.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Set`(Ctrl`&`):%- [@(0.0.255) void]_[* Set]([_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 s
lave])&]
[s2;%- [%% Sets tab with ][*@3 slave][%%  widget as active. ]If [*@3 slave] 
is not present in TabCtrl, nothing happens.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:IsAt`(Ctrl`&`):%- [@(0.0.255) bool]_[* IsAt]([_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 s
lave])&]
[s2; Returns true if [%-*@3 slave] represents the active tab.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Insert`(Ctrl`&`):%- [_^TabCtrl`:`:Item^ TabCtrl`::Item][@(0.0.255) `&]_[* In
sert]([_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 before`_slave])&]
[s5;:TabCtrl`:`:Insert`(Ctrl`&`,const char`*`):%- [_^TabCtrl`:`:Item^ TabCtrl`::Item][@(0.0.255) `&
]_[* Insert]([_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 before`_slave], [@(0.0.255) const]_[@(0.0.255) c
har]_`*[*@3 text])&]
[s5;:TabCtrl`:`:Insert`(Ctrl`&`,const Image`&`,const char`*`):%- [_^TabCtrl`:`:Item^ Ta
bCtrl`::Item][@(0.0.255) `&]_[* Insert]([_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 before`_slave], 
[@(0.0.255) const]_[_^Image^ Image][@(0.0.255) `&]_[*@3 m], [@(0.0.255) const]_[@(0.0.255) ch
ar]_`*[*@3 text])&]
[s5;:TabCtrl`:`:Insert`(Ctrl`&`,Ctrl`&`,const char`*`):%- [_^TabCtrl`:`:Item^ TabCtrl`:
:Item][@(0.0.255) `&]_[* Insert]([_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 before`_slave], 
[_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 slave], [@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 text])
&]
[s5;:TabCtrl`:`:Insert`(Ctrl`&`,Ctrl`&`,const Image`&`,const char`*`):%- [_^TabCtrl`:`:Item^ T
abCtrl`::Item][@(0.0.255) `&]_[* Insert]([_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 before`_slave], 
[_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 slave], [@(0.0.255) const]_[_^Image^ Image][@(0.0.255) `&]_
[*@3 m], [@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 text])&]
[s2; Inserts a new tab before tab that contains [%-*@3 before`_slave]. 
If [%-*@3 before`_slave] is not present in TabCtrl, new tab is 
appended at the end.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Remove`(Ctrl`&`):%- [@(0.0.255) void]_[* Remove]([_^Ctrl^ Ctrl][@(0.0.255) `&
]_[*@3 slave])&]
[s2;%- [%% Removes a tab with ][*@3 slave][%% . ]If [*@3 slave] is not present 
in TabCtrl, nothing happens.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:GoNext`(`):%- [@(0.0.255) void]_[* GoNext]()&]
[s2; Sets the next tab as active. If the tab is last, sets the first 
one.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:GoPrev`(`):%- [@(0.0.255) void]_[* GoPrev]()&]
[s2; Sets the previous tab as active. If the tab is first, sets the 
last one.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:ComputeSize`(Size`):%- [_^Size^ Size]_[* ComputeSize]([_^Size^ Size]_[*@3 pan
e])&]
[s2; Computes required smallest size of TabCtrl is big enough to 
have client area of [%-*@3 pane] size.&]
[s3; &]
[s4;%- &]
[s5;:Upp`:`:TabCtrl`:`:ComputeSize`(`):%- [_^Upp`:`:Size^ Size]_[* ComputeSize]()&]
[s2; Computes required smallest size of TabCtrl is big enough to 
have client area big enough to accommodate all slave widgets, 
based on GetMinSize of slave widgets.&]
[s3;%- &]
[s4;%- &]
[s5;:TabCtrl`:`:Add`(Ctrl`&`):%- [@(0.0.255) void]_[* Add]([_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 c
])&]
[s2; Adds widget [%-*@3 c] to client area. Note that in this case, 
widget does not belong to any of tabs and is not affect by switching 
them.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:NoAccept`(bool`):%- [_^TabCtrl^ TabCtrl][@(0.0.255) `&]_[* NoAccept]([@(0.0.255) b
ool]_[*@3 ac]_`=_[@(0.0.255) true])&]
[s2; If active, TabCtrl Accept method does not call any of slave 
widgets Accept.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:AcceptCurrent`(bool`):%- [_^TabCtrl^ TabCtrl][@(0.0.255) `&]_[* AcceptCurre
nt]([@(0.0.255) bool]_[*@3 ac]_`=_[@(0.0.255) true])&]
[s2; If AcceptCurrent is active (default is not active), TabCtrl 
Accept method accepts only the current slave widget instead of 
all of them. Returns `*this.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:AcceptAll`(`):%- [_^TabCtrl^ TabCtrl][@(0.0.255) `&]_[* AcceptAll]()&]
[s2; Same as AcceptCurrent(false).&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:SetStyle`(const TabCtrl`:`:Style`&`):%- [_^TabCtrl^ TabCtrl][@(0.0.255) `&
]_[* SetStyle]([@(0.0.255) const]_[_^TabCtrl`:`:Style^ Style][@(0.0.255) `&]_[*@3 s])&]
[s2; Sets the style of the tab control to TabCtrl`::Style [%-*@3 s].&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Reset`(`):%- [@(0.0.255) void]_[* Reset]()&]
[s2; Resets TabCtrl to default settings.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:StyleDefault`(`):%- [@(0.0.255) static] [@(0.0.255) const]_[_^TabCtrl`:`:Style^ S
tyle][@(0.0.255) `&]_[* StyleDefault]()&]
[s2; Returns the default style of a tab control.&]
[s3;%- &]
[s0; &]
[s0; &]
[s0;%- &]
[ {{10000@3 [s0;%- [*@(229)4 TabCtrl`::Item]]}}&]
[s3; &]
[s1;:TabCtrl`:`:Item`:`:class:%- [@(0.0.255)3 class][3 _][*3 Item]&]
[s9; This nested class represents properties of individual tabs in 
TabCtrl.&]
[s3; &]
[s0; &]
[ {{10000F(128)G(128)@1 [s0; [* Public Method List]]}}&]
[s3;%- &]
[s5;:TabCtrl`:`:Item`:`:Text`(const String`&`):%- [_^TabCtrl`:`:Item^ Item][@(0.0.255) `&
]_[* Text]([@(0.0.255) const]_[_^String^ String][@(0.0.255) `&]_[*@3 `_text])&]
[s2; Sets the label of tab to [%-*@3 `_text]. Returns `*this.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Item`:`:Picture`(PaintRect`):%- [_^TabCtrl`:`:Item^ Item][@(0.0.255) `&]_
[* Picture]([_^PaintRect^ PaintRect]_[*@3 d])&]
[s2; Sets the [%-*@3 d] as visual content of tab. Returns `*this.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Item`:`:SetImage`(const Image`&`):%- [_^TabCtrl`:`:Item^ Item][@(0.0.255) `&
]_[* SetImage]([@(0.0.255) const]_[_^Image^ UPP`::Image][@(0.0.255) `&]_[*@3 `_im])&]
[s2; Sets the image to appear on the left side of tab`'s label[%- .] 
Returns `*this.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Item`:`:SetCtrl`(Ctrl`*`):%- [_^TabCtrl`:`:Item^ Item][@(0.0.255) `&]_[* Se
tCtrl]([_^Ctrl^ Ctrl]_`*[*@3 `_ctrl])&]
[s2; Sets the [%-*@3 ctrl ]to appear inside header tab. Returns `*this.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Item`:`:SetCtrl`(Ctrl`&`):%- [_^TabCtrl`:`:Item^ Item][@(0.0.255) `&]_[* Se
tCtrl]([_^Ctrl^ Ctrl][@(0.0.255) `&]_[*@3 c])&]
[s2; Same as SetCtrl(`&[%-*@3 c]). Returns `*this.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Item`:`:Slave`(Ctrl`*`):%- [_^TabCtrl`:`:Item^ Item][@(0.0.255) `&]_[* Slav
e]([_^Ctrl^ Ctrl]_`*[*@3 `_slave])&]
[s2; Sets the [%-*@3 slave] widget. Returns `*this.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Item`:`:Key`(dword`):%- [_^TabCtrl`:`:Item^ Item][@(0.0.255) `&]_[* Key]([_^dword^ d
word]_[*@3 `_key])&]
[s2; Sets a [%-*@3 key] that activates tab. Returns `*this.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Item`:`:Enable`(bool`):%- [_^TabCtrl`:`:Item^ Item][@(0.0.255) `&]_[* Enabl
e]([@(0.0.255) bool]_[*@3 `_en]_`=_[@(0.0.255) true])&]
[s2; Enables/disables tab. Returns `*this.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Item`:`:Disable`(`):%- [_^TabCtrl`:`:Item^ Item][@(0.0.255) `&]_[* Disable](
)&]
[s2; Same as Enable(false).&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Item`:`:IsEnabled`(`)const:%- [@(0.0.255) bool]_[* IsEnabled]()_[@(0.0.255) c
onst]&]
[s2; Returns true if tab is enabled.&]
[s3; &]
[s4;%- &]
[s5;:TabCtrl`:`:Item`:`:GetSlave`(`):%- [_^Ctrl^ Ctrl]_`*[* GetSlave]()&]
[s5;:TabCtrl`:`:Item`:`:GetSlave`(`)const:%- [@(0.0.255) const]_[_^Ctrl^ Ctrl]_`*[* GetSlav
e]()_[@(0.0.255) const]&]
[s2; Returns the slave widget.&]
[s3;%- &]
[s4;%- &]
[s5;:TabCtrl`:`:Item`:`:GetCtrl`(`):%- [_^Ctrl^ Ctrl]_`*[* GetCtrl]()&]
[s5;:TabCtrl`:`:Item`:`:GetCtrl`(`)const:%- [@(0.0.255) const]_[_^Ctrl^ Ctrl]_`*[* GetCtrl](
)_[@(0.0.255) const]&]
[s2; Returns the control that appears inside the header tab.&]
[s3;%- &]
[s4;%- &]
[s5;:Upp`:`:TabCtrl`:`:Item`:`:GetText`(`)const:%- [_^Upp`:`:String^ String]_[* GetText](
)_[@(0.0.255) const]&]
[s2; Returns the text set by Text.&]
[s3;%- &]
[s4;%- &]
[s5;:Upp`:`:TabCtrl`:`:Item`:`:GetPicture`(`)const:%- [_^Upp`:`:PaintRect^ PaintRect]_[* G
etPicture]()_[@(0.0.255) const]&]
[s2; Returns the PaintRect set by Picture or SetImage.&]
[s3;%- &]
[s0; ]]