Revision Difference
DIconLayout#513651
<panel>⤶
<parent>DDragBase</parent>⤶
<description>⤶
DIconLayout is what replaced <page>DPanelList</page> in Garry's Mod 13. DPanelList still exists in GMod but is deprecated and does not support the new GWEN skin.⤶
⤶
<page>DIconLayout</page> is used to make a list of panels. Unlike DPanelList, DIconLayout does not automatically add a scroll bar - the example below shows you how you can do this.⤶
</description>⤶
⤶
</panel>⤶
⤶
⤶
<example>⤶
<code>⤶
local Frame = vgui.Create( "DFrame" ) -- Create a Frame to contain everything.⤶
Frame:SetTitle( "DIconLayout Example" )⤶
Frame:SetSize( 365, 240 )⤶
Frame:Center()⤶
Frame:MakePopup()⤶
⤶
local Scroll = vgui.Create( "DScrollPanel", Frame ) -- Create the Scroll panel⤶
Scroll:Dock( FILL )⤶
⤶
local List = vgui.Create( "DIconLayout", Scroll )⤶
List:Dock( FILL )⤶
List:SetSpaceY( 5 ) -- Sets the space in between the panels on the Y Axis by 5⤶
List:SetSpaceX( 5 ) -- Sets the space in between the panels on the X Axis by 5⤶
⤶
for i = 1, 20 do -- Make a loop to create a bunch of panels inside of the DIconLayout⤶
local ListItem = List:Add( "DPanel" ) -- Add DPanel to the DIconLayout⤶
ListItem:SetSize( 80, 40 ) -- Set the size of it⤶
-- You don't need to set the position, that is done automatically.⤶
end⤶
⤶
local ListLabel = List:Add( "DLabel" ) -- Add a label that will be the only panel on its row⤶
ListLabel.OwnLine = true -- The magic variable that specifies this item has its own line all for itself⤶
ListLabel:SetText( "Hello World!" )⤶
⤶
for i = 1, 5 do⤶
local ListItem = List:Add( "DPanel" )⤶
ListItem:SetSize( 80, 40 )⤶
end⤶
</code>⤶
⤶
</example>⤶
⤶