Garry's Mod Wiki

Revision Difference

ControlPanel:AddControl#527777

<function name="AddControl" parent="ControlPanel" type="panelfunc"> <ispanel>yes</ispanel> <description> <deprecated>It is recommended to use <page>DForm</page>'s members instead.</deprecated> Adds a control to the control panel. </description> <file line="119-L397">gamemodes/sandbox/gamemode/spawnmenu/controlpanel.lua</file> <realm>Client</realm> <args> <arg name="type" type="string">The control type to add. The complete list is: * header * textbox * label * checkbox/toggle * slider * propselect * matselect * ropematerial * button * numpad * color * combobox * listbox * materialgallery</arg> <arg name="controlinfo" type="table">Each control takes their own table structure. You may search "AddControl" on GitHub for examples. Here is a full list of each type and the table members it requires: - header - - description - textbox: - - label (def: "Untitled") - - command - label: - - text checkbox, toggle (same thing): - - label (def: "Untitled") - - command - - help (boolean, if true assumes label is a language string ("#tool.toolname.stuff") and adds ".help" at the end) - slider: - - type (optional string, if equals "float" then 2 digits after the decimal will be used, otherwise 0) - - label (def: "Untitled") - - command - - min (def: 0) - - max (def: 100) - - help (boolean, see above) - propselect: - - (data goes directly to PropSelect's :ControlValues(data)) - matselect: - - (data goes directly to MatSelect's :ControlValues(data)) - ropematerial: - - convar (notice: NOT called command this time!) - button: - - label / text (if label is missing will use text. Def: "No Label") - - command - numpad: - - command - - command2 - - label - - label2 - color: - - label - - red (convar) - - green (convar) - - blue (convar) - - alpha (convar) - combobox: - - menubutton (if doesn't equal "1", becomes a listbox) - - folder - - options (optional, ha) - - cvars (optional) - listbox: - - height (if set, becomes <page>DListView</page>, otherwise is <page>CtrlListBox</page>) - - label (def: "unknown") - - options (optional) - materialgallery: - - width (def: 32) - - height (def: 32) - - rows (def: 4) - - convar - - options</arg> * header * description * textbox: * label (def: "Untitled") * command * label: * text * checkbox, toggle (same thing): * label (def: "Untitled") * command * help (boolean, if true assumes label is a language string (`#tool.toolname.stuff`) and adds `.help` at the end) * slider: (<page>DForm:NumSlider</page>) * type (optional string, if equals `float` then 2 digits after the decimal will be used, otherwise 0) * label (def: `Untitled`) * command * min (def: `0`) * max (def: `100`) * help (boolean, see above) * propselect: * (data goes directly to PropSelect's :ControlValues(data)) * matselect: * (data goes directly to MatSelect's :ControlValues(data)) * ropematerial: * convar (notice: NOT called command this time!) * button: * label / text (if label is missing will use text. Def: `No Label`) * command * numpad: * command * command2 * label * label2 * color: * label * red (convar) * green (convar) * blue (convar) * alpha (convar) * combobox: * menubutton (if doesn't equal "1", becomes a listbox) * folder * options (optional, ha) * cvars (optional) * listbox: * height (if set, becomes <page>DListView</page>, otherwise is <page>CtrlListBox</page>) * label (def: `unknown`) * options (optional) * materialgallery: * width (def: `32`) * height (def: `32`) * rows (def: `4`) * convar * options</arg> </args> </function>