Garry's Mod Wiki

Revision Difference

DPropertySheet:CloseTab#518446

<function name="CloseTab" parent="DPropertySheet" type="panelfunc"> <ispanel>yes</ispanel> <description>Removes tab and/or panel from the parent DPropertySheet.</description> <realm>Client</realm> <args> <arg name="tab" type="Panel">The &lt;page&gt;DTab&lt;/page&gt; of the sheet from &lt;page&gt;DPropertySheet&lt;/page&gt;.&#xA;&#xA;See &lt;page&gt;DPropertySheet:GetItems&lt;/page&gt;.</arg>⤶ <arg name="tab" type="Panel">The <page>DTab</page> of the sheet from <page>DPropertySheet</page>.⤶ ⤶ See <page>DPropertySheet:GetItems</page>.</arg>⤶ <arg name="removePanel" type="boolean">Set to true to remove the associated panel object as well.</arg> </args> <rets> <ret name="" type="Panel">The panel of the tab.</ret> </rets> </function> <example> <description>Example of how you'd create and use this panel and close unnecessary sheets.</description> <code> local MainFrame = vgui.Create( "DFrame" ) MainFrame:SetSize( 500, 300 ) MainFrame:Center() MainFrame:MakePopup() local MainSheet = vgui.Create( "DPropertySheet", MainFrame ) MainSheet:Dock( FILL ) local First_Panel = vgui.Create( "DPanel", MainSheet ) First_Panel.Paint = function( self, w, h ) draw.RoundedBox( 4, 0, 0, w, h, Color( 255, 128, 0, self:GetAlpha() ) ) end MainSheet:AddSheet( "Users Page", First_Panel, "icon16/user.png" ) local Second_Panel = vgui.Create( "DPanel", MainSheet ) Second_Panel.Paint = function( self, w, h ) draw.RoundedBox( 4, 0, 0, w, h, Color( 0, 128, 255, self:GetAlpha() ) ) end MainSheet:AddSheet( "Admins Page", Second_Panel, "icon16/lightning.png" ) if LocalPlayer():IsAdmin() then MainSheet:CloseTab( MainSheet:GetItems()[1].Tab ) --1 is a representation of the first sheet else MainSheet:CloseTab( MainSheet:GetItems()[2].Tab ) --2 is a representation of the second sheet end </code> </example>