@tlua/gmod 1.0.5 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (272) hide show
  1. package/package.json +1 -1
  2. package/types/achievementicon.d.tlua +0 -1
  3. package/types/achievements.d.tlua +15 -16
  4. package/types/ai.d.tlua +5 -6
  5. package/types/ai_schedule.d.tlua +0 -1
  6. package/types/ai_task.d.tlua +0 -1
  7. package/types/angle.d.tlua +18 -19
  8. package/types/avatarimage.d.tlua +0 -1
  9. package/types/awesomium.d.tlua +0 -1
  10. package/types/baseclass.d.tlua +1 -3
  11. package/types/bf_read.d.tlua +10 -12
  12. package/types/bit.d.tlua +11 -12
  13. package/types/button.d.tlua +0 -1
  14. package/types/cam.d.tlua +16 -17
  15. package/types/ceffectdata.d.tlua +31 -33
  16. package/types/chat.d.tlua +5 -6
  17. package/types/checkbutton.d.tlua +0 -1
  18. package/types/cleanup.d.tlua +7 -8
  19. package/types/cluaemitter.d.tlua +11 -13
  20. package/types/clualocomotion.d.tlua +39 -41
  21. package/types/cluaparticle.d.tlua +43 -45
  22. package/types/cmovedata.d.tlua +46 -48
  23. package/types/cnavarea.d.tlua +76 -78
  24. package/types/cnavladder.d.tlua +21 -23
  25. package/types/cnewparticleeffect.d.tlua +25 -27
  26. package/types/color.d.tlua +28 -29
  27. package/types/concommand.d.tlua +4 -5
  28. package/types/constraint.d.tlua +28 -29
  29. package/types/construct.d.tlua +1 -2
  30. package/types/contentheader.d.tlua +1 -3
  31. package/types/contenticon.d.tlua +7 -9
  32. package/types/contentsidebar.d.tlua +2 -4
  33. package/types/contentsidebartoolbox.d.tlua +0 -1
  34. package/types/contextbase.d.tlua +2 -4
  35. package/types/controlpanel.d.tlua +11 -14
  36. package/types/controlpresets.d.tlua +11 -13
  37. package/types/convar.d.tlua +15 -17
  38. package/types/cookie.d.tlua +3 -4
  39. package/types/coroutine.d.tlua +7 -8
  40. package/types/crecipientfilter.d.tlua +15 -17
  41. package/types/csent.d.tlua +0 -1
  42. package/types/csoundpatch.d.tlua +13 -15
  43. package/types/ctakedamageinfo.d.tlua +32 -34
  44. package/types/ctrllistbox.d.tlua +0 -1
  45. package/types/ctrlnumpad.d.tlua +5 -7
  46. package/types/cusercmd.d.tlua +26 -28
  47. package/types/custom_entity_fields.d.tlua +0 -1
  48. package/types/cvars.d.tlua +6 -7
  49. package/types/dadjustablemodelpanel.d.tlua +5 -7
  50. package/types/dalphabar.d.tlua +1 -3
  51. package/types/dbinder.d.tlua +2 -4
  52. package/types/dbubblecontainer.d.tlua +0 -2
  53. package/types/dbutton.d.tlua +6 -8
  54. package/types/dcategoryheader.d.tlua +0 -1
  55. package/types/dcategorylist.d.tlua +0 -1
  56. package/types/dcheckbox.d.tlua +3 -5
  57. package/types/dcheckboxlabel.d.tlua +9 -10
  58. package/types/dcollapsiblecategory.d.tlua +21 -23
  59. package/types/dcolorbutton.d.tlua +5 -7
  60. package/types/dcolorcombo.d.tlua +3 -5
  61. package/types/dcolorcube.d.tlua +11 -13
  62. package/types/dcolormixer.d.tlua +25 -27
  63. package/types/dcolorpalette.d.tlua +21 -23
  64. package/types/dcolumnsheet.d.tlua +3 -5
  65. package/types/dcombobox.d.tlua +15 -17
  66. package/types/ddragbase.d.tlua +11 -13
  67. package/types/ddrawer.d.tlua +6 -8
  68. package/types/debug.d.tlua +16 -19
  69. package/types/debugoverlay.d.tlua +11 -12
  70. package/types/dentityproperties.d.tlua +3 -5
  71. package/types/derma.d.tlua +10 -11
  72. package/types/dexpandbutton.d.tlua +1 -3
  73. package/types/dfilebrowser.d.tlua +20 -21
  74. package/types/dform.d.tlua +16 -18
  75. package/types/dframe.d.tlua +24 -25
  76. package/types/dgrid.d.tlua +9 -11
  77. package/types/dhorizontaldivider.d.tlua +18 -20
  78. package/types/dhorizontalscroller.d.tlua +9 -11
  79. package/types/dhscrollbar.d.tlua +9 -11
  80. package/types/dhtml.d.tlua +6 -8
  81. package/types/dhtmlcontrols.d.tlua +5 -6
  82. package/types/diconbrowser.d.tlua +9 -11
  83. package/types/diconlayout.d.tlua +16 -18
  84. package/types/dimage.d.tlua +17 -20
  85. package/types/dimagebutton.d.tlua +9 -10
  86. package/types/dkillicon.d.tlua +0 -1
  87. package/types/dlabel.d.tlua +31 -33
  88. package/types/dlabeleditable.d.tlua +3 -5
  89. package/types/dlabelurl.d.tlua +8 -10
  90. package/types/dlistbox.d.tlua +6 -8
  91. package/types/dlistboxitem.d.tlua +2 -4
  92. package/types/dlistlayout.d.tlua +0 -1
  93. package/types/dlistview.d.tlua +32 -34
  94. package/types/dlistview_column.d.tlua +12 -14
  95. package/types/dlistview_columnplain.d.tlua +0 -1
  96. package/types/dlistview_draggerbar.d.tlua +0 -1
  97. package/types/dlistview_line.d.tlua +11 -13
  98. package/types/dlistviewheaderlabel.d.tlua +0 -1
  99. package/types/dlistviewlabel.d.tlua +0 -1
  100. package/types/dlistviewline.d.tlua +0 -1
  101. package/types/dmenu.d.tlua +23 -28
  102. package/types/dmenubar.d.tlua +2 -7
  103. package/types/dmenuoption.d.tlua +11 -13
  104. package/types/dmenuoptioncvar.d.tlua +4 -6
  105. package/types/dmodelpanel.d.tlua +20 -22
  106. package/types/dmodelselect.d.tlua +0 -2
  107. package/types/dmodelselectmulti.d.tlua +0 -2
  108. package/types/dnotify.d.tlua +8 -10
  109. package/types/dnumberscratch.d.tlua +24 -26
  110. package/types/dnumberwang.d.tlua +14 -16
  111. package/types/dnumpad.d.tlua +0 -1
  112. package/types/dnumslider.d.tlua +17 -18
  113. package/types/dpanel.d.tlua +12 -14
  114. package/types/dpanellist.d.tlua +11 -12
  115. package/types/dpaneloverlay.d.tlua +5 -7
  116. package/types/dpanelselect.d.tlua +0 -1
  117. package/types/dpanpanel.d.tlua +4 -6
  118. package/types/dprogress.d.tlua +1 -3
  119. package/types/dproperties.d.tlua +2 -4
  120. package/types/dproperty_boolean.d.tlua +0 -1
  121. package/types/dproperty_combo.d.tlua +1 -3
  122. package/types/dproperty_entity.d.tlua +0 -1
  123. package/types/dproperty_float.d.tlua +0 -1
  124. package/types/dproperty_generic.d.tlua +3 -5
  125. package/types/dproperty_int.d.tlua +0 -1
  126. package/types/dproperty_vectorcolor.d.tlua +0 -1
  127. package/types/dpropertysheet.d.tlua +15 -17
  128. package/types/dragndrop.d.tlua +10 -11
  129. package/types/draw.d.tlua +10 -12
  130. package/types/drgbpicker.d.tlua +2 -4
  131. package/types/drive.d.tlua +11 -13
  132. package/types/dscrollbargrip.d.tlua +0 -1
  133. package/types/dscrollpanel.d.tlua +10 -11
  134. package/types/dshape.d.tlua +5 -7
  135. package/types/dsizetocontents.d.tlua +3 -5
  136. package/types/dslider.d.tlua +26 -28
  137. package/types/dsprite.d.tlua +7 -9
  138. package/types/dtab.d.tlua +6 -8
  139. package/types/dtextentry.d.tlua +41 -43
  140. package/types/dtilelayout.d.tlua +19 -21
  141. package/types/dtooltip.d.tlua +4 -6
  142. package/types/dtree.d.tlua +14 -16
  143. package/types/dtree_node.d.tlua +66 -68
  144. package/types/dtree_node_button.d.tlua +0 -1
  145. package/types/duplicator.d.tlua +29 -31
  146. package/types/dverticaldivider.d.tlua +21 -23
  147. package/types/dvscrollbar.d.tlua +9 -11
  148. package/types/editablepanel.d.tlua +0 -1
  149. package/types/effect.d.tlua +2 -4
  150. package/types/effects.d.tlua +6 -7
  151. package/types/engine.d.tlua +21 -22
  152. package/types/entity.d.tlua +643 -674
  153. package/types/ents.d.tlua +19 -25
  154. package/types/enums.d.tlua +0 -1
  155. package/types/file.d.tlua +39 -40
  156. package/types/file_class.d.tlua +0 -1
  157. package/types/fingerposer.d.tlua +0 -1
  158. package/types/fingervar.d.tlua +0 -1
  159. package/types/frame.d.tlua +0 -1
  160. package/types/frame_blend.d.tlua +7 -8
  161. package/types/game.d.tlua +39 -40
  162. package/types/gameevent.d.tlua +0 -1
  163. package/types/gamemode.d.tlua +2 -4
  164. package/types/global.d.tlua +0 -18
  165. package/types/gm.d.tlua +266 -268
  166. package/types/gmod.d.tlua +0 -1
  167. package/types/gmsave.d.tlua +4 -5
  168. package/types/gui.d.tlua +21 -22
  169. package/types/gwen.d.tlua +3 -4
  170. package/types/halo.d.tlua +2 -3
  171. package/types/hammer.d.tlua +0 -1
  172. package/types/hook.d.tlua +4 -5
  173. package/types/html.d.tlua +0 -1
  174. package/types/http.d.tlua +1 -2
  175. package/types/iconeditor.d.tlua +9 -11
  176. package/types/igmodaudiochannel.d.tlua +40 -42
  177. package/types/imagecheckbox.d.tlua +2 -4
  178. package/types/imaterial.d.tlua +25 -27
  179. package/types/imesh.d.tlua +4 -6
  180. package/types/input.d.tlua +22 -25
  181. package/types/invalidateinternalentitycache.d.tlua +0 -1
  182. package/types/irestore.d.tlua +8 -10
  183. package/types/isave.d.tlua +8 -10
  184. package/types/itexture.d.tlua +9 -11
  185. package/types/ivideowriter.d.tlua +4 -6
  186. package/types/jit.d.tlua +16 -17
  187. package/types/killicon.d.tlua +7 -8
  188. package/types/label.d.tlua +0 -1
  189. package/types/language.d.tlua +1 -2
  190. package/types/list.d.tlua +8 -9
  191. package/types/makeballoon.d.tlua +0 -1
  192. package/types/markup.d.tlua +2 -3
  193. package/types/markupobject.d.tlua +4 -6
  194. package/types/material.d.tlua +0 -1
  195. package/types/math.d.tlua +83 -84
  196. package/types/matproxy.d.tlua +3 -4
  197. package/types/matselect.d.tlua +9 -11
  198. package/types/menu.d.tlua +0 -1
  199. package/types/menubar.d.tlua +2 -3
  200. package/types/mesh.d.tlua +19 -20
  201. package/types/modelimage.d.tlua +0 -1
  202. package/types/motionsensor.d.tlua +10 -11
  203. package/types/navmesh.d.tlua +26 -27
  204. package/types/net.d.tlua +51 -53
  205. package/types/nextbot.d.tlua +34 -37
  206. package/types/notification.d.tlua +2 -3
  207. package/types/npc.d.tlua +180 -182
  208. package/types/numpad.d.tlua +7 -8
  209. package/types/os.d.tlua +3 -5
  210. package/types/package.d.tlua +0 -1
  211. package/types/panel.d.tlua +329 -331
  212. package/types/panellist.d.tlua +0 -1
  213. package/types/pathfollower.d.tlua +30 -32
  214. package/types/permissions.d.tlua +6 -7
  215. package/types/physcollide.d.tlua +2 -4
  216. package/types/physenv.d.tlua +11 -12
  217. package/types/physobj.d.tlua +77 -79
  218. package/types/pixelvis_handle_t.d.tlua +0 -1
  219. package/types/player.d.tlua +288 -293
  220. package/types/player_manager.d.tlua +13 -14
  221. package/types/preseteditor.d.tlua +0 -1
  222. package/types/presets.d.tlua +6 -7
  223. package/types/projectedtexture.d.tlua +47 -49
  224. package/types/properties.d.tlua +5 -6
  225. package/types/propselect.d.tlua +3 -5
  226. package/types/radiobutton.d.tlua +0 -1
  227. package/types/render.d.tlua +142 -143
  228. package/types/resource.d.tlua +2 -3
  229. package/types/richtext.d.tlua +0 -1
  230. package/types/sandbox.d.tlua +52 -54
  231. package/types/saverestore.d.tlua +12 -13
  232. package/types/schedule.d.tlua +5 -7
  233. package/types/scripted_ents.d.tlua +9 -12
  234. package/types/search.d.tlua +1 -2
  235. package/types/serverlist.d.tlua +7 -8
  236. package/types/slidebar.d.tlua +0 -1
  237. package/types/slider.d.tlua +0 -1
  238. package/types/sound.d.tlua +10 -11
  239. package/types/spawnicon.d.tlua +6 -8
  240. package/types/spawnmenu.d.tlua +23 -25
  241. package/types/spawnmenucontentpanel.d.tlua +3 -5
  242. package/types/sql.d.tlua +9 -10
  243. package/types/stack.d.tlua +4 -6
  244. package/types/steamworks.d.tlua +18 -19
  245. package/types/string.d.tlua +46 -50
  246. package/types/structures.d.tlua +0 -7
  247. package/types/surface.d.tlua +34 -35
  248. package/types/surfaceinfo.d.tlua +4 -6
  249. package/types/system.d.tlua +10 -11
  250. package/types/table.d.tlua +45 -48
  251. package/types/task.d.tlua +8 -10
  252. package/types/team.d.tlua +19 -20
  253. package/types/textentry.d.tlua +0 -1
  254. package/types/tgaimage.d.tlua +0 -1
  255. package/types/timer.d.tlua +14 -15
  256. package/types/tool.d.tlua +42 -46
  257. package/types/ugcpublishwindow.d.tlua +7 -9
  258. package/types/umsg.d.tlua +12 -13
  259. package/types/undo.d.tlua +10 -11
  260. package/types/urllabel.d.tlua +0 -1
  261. package/types/usermessage.d.tlua +2 -3
  262. package/types/utf8.d.tlua +7 -8
  263. package/types/util.d.tlua +90 -95
  264. package/types/vector.d.tlua +36 -37
  265. package/types/vehicle.d.tlua +48 -51
  266. package/types/vgui.d.tlua +14 -19
  267. package/types/video.d.tlua +0 -1
  268. package/types/vmatrix.d.tlua +35 -36
  269. package/types/weapon.d.tlua +81 -84
  270. package/types/weapons.d.tlua +5 -7
  271. package/types/widgets.d.tlua +1 -2
  272. package/types/workshopfilebase.d.tlua +4 -6
@@ -17,6 +17,7 @@ interface Panel {
17
17
  * @realm menu
18
18
  */
19
19
  SetValue(self: Panel, value: any): void;
20
+
20
21
  /**
21
22
  * Called every frame unless the panel is not visible ([Panel:IsVisible](https://wiki.facepunch.com/gmod/Panel:IsVisible)). Similar to [PANEL:Think](https://wiki.facepunch.com/gmod/PANEL:Think), but can be disabled by [Panel:SetAnimationEnabled](https://wiki.facepunch.com/gmod/Panel:SetAnimationEnabled) as explained below.
22
23
  *
@@ -28,6 +29,7 @@ interface Panel {
28
29
  * @source https://wiki.facepunch.com/gmod/PANEL:AnimationThink
29
30
  */
30
31
  AnimationThink(self: Panel): void;
32
+
31
33
  /**
32
34
  * Called whenever the panel should apply its scheme (colors, fonts, style).
33
35
  *
@@ -39,6 +41,7 @@ interface Panel {
39
41
  * @source https://wiki.facepunch.com/gmod/PANEL:ApplySchemeSettings
40
42
  */
41
43
  ApplySchemeSettings(self: Panel): void;
44
+
42
45
  /**
43
46
  * Called when an object is dragged and hovered over this panel for 0.1 seconds.
44
47
  *
@@ -48,6 +51,7 @@ interface Panel {
48
51
  * @source https://wiki.facepunch.com/gmod/PANEL:DragHoverClick
49
52
  */
50
53
  DragHoverClick(self: Panel, hoverTime: number): void;
54
+
51
55
  /**
52
56
  * Called when this panel is dropped onto another panel.
53
57
  *
@@ -57,24 +61,28 @@ interface Panel {
57
61
  * @source https://wiki.facepunch.com/gmod/PANEL:DroppedOn
58
62
  */
59
63
  DroppedOn(self: Panel, pnl: Panel): void;
64
+
60
65
  /**
61
66
  * Called when the panel should generate example use case / example code to use for this panel. Used in the panel opened by **derma_controls** console command.
62
67
  * @realm client
63
68
  * @source https://wiki.facepunch.com/gmod/PANEL:GenerateExample
64
69
  */
65
70
  GenerateExample(self: Panel, _class: string, dpropertysheet: Panel, width: number, height: number): void;
71
+
66
72
  /**
67
73
  * Called when the panel is created. This is called for each base type that the panel has.
68
74
  * @realm client
69
75
  * @source https://wiki.facepunch.com/gmod/PANEL:Init
70
76
  */
71
77
  Init(self: Panel): void;
78
+
72
79
  /**
73
80
  * Called after [Panel:SetCookieName](https://wiki.facepunch.com/gmod/Panel:SetCookieName) is called on this panel to apply the just loaded cookie values for this panel.
74
81
  * @realm client
75
82
  * @source https://wiki.facepunch.com/gmod/PANEL:LoadCookies
76
83
  */
77
84
  LoadCookies(self: Panel): void;
85
+
78
86
  /**
79
87
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
80
88
  * Called when we are activated during level load. Used by the loading screen panel.
@@ -82,6 +90,7 @@ interface Panel {
82
90
  * @source https://wiki.facepunch.com/gmod/PANEL:OnActivate
83
91
  */
84
92
  OnActivate(self: Panel): void;
93
+
85
94
  /**
86
95
  * Called whenever a child was parented to the panel.
87
96
  *
@@ -91,30 +100,35 @@ interface Panel {
91
100
  * @source https://wiki.facepunch.com/gmod/PANEL:OnChildAdded
92
101
  */
93
102
  OnChildAdded(self: Panel, child: Panel): void;
103
+
94
104
  /**
95
105
  * Called whenever a child of the panel is about to removed.
96
106
  * @realm client
97
107
  * @source https://wiki.facepunch.com/gmod/PANEL:OnChildRemoved
98
108
  */
99
109
  OnChildRemoved(self: Panel, child: Panel): void;
110
+
100
111
  /**
101
112
  * Called whenever the cursor entered the panels bounds.
102
113
  * @realm client
103
114
  * @source https://wiki.facepunch.com/gmod/PANEL:OnCursorEntered
104
115
  */
105
116
  OnCursorEntered(self: Panel): void;
117
+
106
118
  /**
107
119
  * Called whenever the cursor left the panels bounds.
108
120
  * @realm client
109
121
  * @source https://wiki.facepunch.com/gmod/PANEL:OnCursorExited
110
122
  */
111
123
  OnCursorExited(self: Panel): void;
124
+
112
125
  /**
113
126
  * Called whenever the cursor was moved with the panels bounds.
114
127
  * @realm client
115
128
  * @source https://wiki.facepunch.com/gmod/PANEL:OnCursorMoved
116
129
  */
117
130
  OnCursorMoved(self: Panel, cursorX: number, cursorY: number): boolean;
131
+
118
132
  /**
119
133
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
120
134
  * Called when we are deactivated during level load. Used by the loading screen panel.
@@ -122,6 +136,7 @@ interface Panel {
122
136
  * @source https://wiki.facepunch.com/gmod/PANEL:OnDeactivate
123
137
  */
124
138
  OnDeactivate(self: Panel): void;
139
+
125
140
  /**
126
141
  * We're being dropped on something
127
142
  * We can create a new panel here and return it, so that instead of dropping us - it drops the new panel instead! We remain where we are!
@@ -132,6 +147,7 @@ interface Panel {
132
147
  * @source https://wiki.facepunch.com/gmod/PANEL:OnDrop
133
148
  */
134
149
  OnDrop(self: Panel): Panel;
150
+
135
151
  /**
136
152
  * Called whenever the panel gained or lost focus.
137
153
  *
@@ -142,12 +158,14 @@ interface Panel {
142
158
  * @source https://wiki.facepunch.com/gmod/PANEL:OnFocusChanged
143
159
  */
144
160
  OnFocusChanged(self: Panel, gained: boolean): void;
161
+
145
162
  /**
146
163
  * Called when the panel a child [DHScrollBar](https://wiki.facepunch.com/gmod/DHScrollBar) is scrolled.
147
164
  * @realm client
148
165
  * @source https://wiki.facepunch.com/gmod/PANEL:OnHScroll
149
166
  */
150
167
  OnHScroll(self: Panel, offset: number): void;
168
+
151
169
  /**
152
170
  * Called whenever a keyboard key was pressed while the panel is focused.
153
171
  *
@@ -157,6 +175,7 @@ interface Panel {
157
175
  * @source https://wiki.facepunch.com/gmod/PANEL:OnKeyCodePressed
158
176
  */
159
177
  OnKeyCodePressed(self: Panel, keyCode: number): boolean;
178
+
160
179
  /**
161
180
  * Called whenever a keyboard key was released while the panel is focused.
162
181
  *
@@ -166,30 +185,35 @@ interface Panel {
166
185
  * @source https://wiki.facepunch.com/gmod/PANEL:OnKeyCodeReleased
167
186
  */
168
187
  OnKeyCodeReleased(self: Panel, keyCode: number): boolean;
188
+
169
189
  /**
170
190
  * Called whenever a mouse key was pressed while the panel is focused.
171
191
  * @realm client
172
192
  * @source https://wiki.facepunch.com/gmod/PANEL:OnMousePressed
173
193
  */
174
194
  OnMousePressed(self: Panel, keyCode: number): boolean;
195
+
175
196
  /**
176
197
  * Called whenever a mouse key was released while the panel is focused.
177
198
  * @realm client
178
199
  * @source https://wiki.facepunch.com/gmod/PANEL:OnMouseReleased
179
200
  */
180
201
  OnMouseReleased(self: Panel, keyCode: number): boolean;
202
+
181
203
  /**
182
204
  * Called whenever the mouse wheel was used.
183
205
  * @realm client
184
206
  * @source https://wiki.facepunch.com/gmod/PANEL:OnMouseWheeled
185
207
  */
186
208
  OnMouseWheeled(self: Panel, scrollDelta: number): boolean;
209
+
187
210
  /**
188
211
  * Called when the panel is about to be removed.
189
212
  * @realm client
190
213
  * @source https://wiki.facepunch.com/gmod/PANEL:OnRemove
191
214
  */
192
215
  OnRemove(self: Panel): void;
216
+
193
217
  /**
194
218
  * Called when the player's screen resolution of the game changes.
195
219
  *
@@ -199,12 +223,14 @@ interface Panel {
199
223
  * @source https://wiki.facepunch.com/gmod/PANEL:OnScreenSizeChanged
200
224
  */
201
225
  OnScreenSizeChanged(self: Panel, oldWidth: number, oldHeight: number, newWidth: number, newHeight: number): void;
226
+
202
227
  /**
203
228
  * Called when the panel a child [DVScrollBar](https://wiki.facepunch.com/gmod/DVScrollBar) or [DHScrollBar](https://wiki.facepunch.com/gmod/DHScrollBar) becomes visible.
204
229
  * @realm client
205
230
  * @source https://wiki.facepunch.com/gmod/PANEL:OnScrollbarAppear
206
231
  */
207
232
  OnScrollbarAppear(self: Panel): void;
233
+
208
234
  /**
209
235
  * Called just after the panel size changes.
210
236
  *
@@ -217,6 +243,7 @@ interface Panel {
217
243
  * @source https://wiki.facepunch.com/gmod/PANEL:OnSizeChanged
218
244
  */
219
245
  OnSizeChanged(self: Panel, newWidth: number, newHeight: number): void;
246
+
220
247
  /**
221
248
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
222
249
  * Called by [dragndrop.StartDragging](https://wiki.facepunch.com/gmod/dragndrop.StartDragging) when the panel starts being dragged.
@@ -224,6 +251,7 @@ interface Panel {
224
251
  * @source https://wiki.facepunch.com/gmod/PANEL:OnStartDragging
225
252
  */
226
253
  OnStartDragging(self: Panel): void;
254
+
227
255
  /**
228
256
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
229
257
  * Called by [Panel:DragMouseRelease](https://wiki.facepunch.com/gmod/Panel:DragMouseRelease) when the panel object is released after being dragged.
@@ -231,18 +259,21 @@ interface Panel {
231
259
  * @source https://wiki.facepunch.com/gmod/PANEL:OnStopDragging
232
260
  */
233
261
  OnStopDragging(self: Panel): void;
262
+
234
263
  /**
235
264
  * Called whenever clickable text is clicked within a [RichText](https://wiki.facepunch.com/gmod/RichText).
236
265
  * @realm client
237
266
  * @source https://wiki.facepunch.com/gmod/PANEL:OnTextClicked
238
267
  */
239
268
  OnTextClicked(self: Panel, id: string): void;
269
+
240
270
  /**
241
271
  * Called when the panel a child [DVScrollBar](https://wiki.facepunch.com/gmod/DVScrollBar) is scrolled.
242
272
  * @realm client
243
273
  * @source https://wiki.facepunch.com/gmod/PANEL:OnVScroll
244
274
  */
245
275
  OnVScroll(self: Panel, offset: number): void;
276
+
246
277
  /**
247
278
  * Called whenever the panel should be drawn.
248
279
  *
@@ -260,6 +291,7 @@ interface Panel {
260
291
  * @source https://wiki.facepunch.com/gmod/PANEL:Paint
261
292
  */
262
293
  Paint(self: Panel, width: number, height: number): boolean;
294
+
263
295
  /**
264
296
  * Called whenever the panel and all its children were drawn, return true to override the default drawing.
265
297
  *
@@ -269,6 +301,7 @@ interface Panel {
269
301
  * @source https://wiki.facepunch.com/gmod/PANEL:PaintOver
270
302
  */
271
303
  PaintOver(self: Panel, width: number, height: number): boolean;
304
+
272
305
  /**
273
306
  * Called whenever the panels' layout needs to be performed again. This means all child panels must be re-positioned to fit the possibly new size of this panel.
274
307
  *
@@ -287,6 +320,7 @@ interface Panel {
287
320
  * @source https://wiki.facepunch.com/gmod/PANEL:PerformLayout
288
321
  */
289
322
  PerformLayout(self: Panel, width: number, height: number): void;
323
+
290
324
  /**
291
325
  * Only works on elements defined with [derma.DefineControl](https://wiki.facepunch.com/gmod/derma.DefineControl) and only if the panel has **AllowAutoRefresh** set to true.
292
326
  *
@@ -298,6 +332,7 @@ interface Panel {
298
332
  * @source https://wiki.facepunch.com/gmod/PANEL:PostAutoRefresh
299
333
  */
300
334
  PostAutoRefresh(self: Panel): void;
335
+
301
336
  /**
302
337
  * Only works on elements defined with [derma.DefineControl](https://wiki.facepunch.com/gmod/derma.DefineControl) and only if the panel has **AllowAutoRefresh** set to true.
303
338
  *
@@ -309,18 +344,21 @@ interface Panel {
309
344
  * @source https://wiki.facepunch.com/gmod/PANEL:PreAutoRefresh
310
345
  */
311
346
  PreAutoRefresh(self: Panel): void;
347
+
312
348
  /**
313
349
  * Called to test if the panel is being `hovered` by the mouse. This will only be called if the panel's parent is being hovered.
314
350
  * @realm client
315
351
  * @source https://wiki.facepunch.com/gmod/PANEL:TestHover
316
352
  */
317
353
  TestHover(self: Panel, x: number, y: number): boolean;
354
+
318
355
  /**
319
356
  * Called every frame while [Panel:IsVisible](https://wiki.facepunch.com/gmod/Panel:IsVisible) is true.
320
357
  * @realm client and menu
321
358
  * @source https://wiki.facepunch.com/gmod/PANEL:Think
322
359
  */
323
360
  Think(self: Panel): void;
361
+
324
362
  /**
325
363
  * Adds the specified object to the panel.
326
364
  *
@@ -334,6 +372,7 @@ interface Panel {
334
372
  Add<T extends Panel>(self: Panel, object: string | T): T;
335
373
  /** Creates a panel from a PANEL table and parents it to this panel. */
336
374
  Add(self: Panel, panelTable: table): Panel;
375
+
337
376
  /**
338
377
  * This function does nothing.
339
378
  *
@@ -342,42 +381,49 @@ interface Panel {
342
381
  * @deprecated Does nothing
343
382
  */
344
383
  AddText(self: Panel): void;
384
+
345
385
  /**
346
386
  * Aligns the panel on the bottom of its parent with the specified offset.
347
387
  * @realm client and menu
348
388
  * @source https://wiki.facepunch.com/gmod/Panel:AlignBottom
349
389
  */
350
390
  AlignBottom(self: Panel, offset?: number): void;
391
+
351
392
  /**
352
393
  * Aligns the panel on the left of its parent with the specified offset.
353
394
  * @realm client and menu
354
395
  * @source https://wiki.facepunch.com/gmod/Panel:AlignLeft
355
396
  */
356
397
  AlignLeft(self: Panel, offset?: number): void;
398
+
357
399
  /**
358
400
  * Aligns the panel on the right of its parent with the specified offset.
359
401
  * @realm client and menu
360
402
  * @source https://wiki.facepunch.com/gmod/Panel:AlignRight
361
403
  */
362
404
  AlignRight(self: Panel, offset?: number): void;
405
+
363
406
  /**
364
407
  * Aligns the panel on the top of its parent with the specified offset.
365
408
  * @realm client and menu
366
409
  * @source https://wiki.facepunch.com/gmod/Panel:AlignTop
367
410
  */
368
411
  AlignTop(self: Panel, offset?: number): void;
412
+
369
413
  /**
370
414
  * Uses animation to transition the current alpha value of a panel to a new alpha, over a set period of time and after a specified delay.
371
415
  * @realm client and menu
372
416
  * @source https://wiki.facepunch.com/gmod/Panel:AlphaTo
373
417
  */
374
418
  AlphaTo(self: Panel, alpha: number, duration: number, delay?: number, callback?: (animData: table, targetPanel: Panel) => void): void;
419
+
375
420
  /**
376
421
  * Returns the [Global.SysTime](https://wiki.facepunch.com/gmod/Global.SysTime) value when all animations for this panel object will end.
377
422
  * @realm client and menu
378
423
  * @source https://wiki.facepunch.com/gmod/Panel:AnimTail
379
424
  */
380
425
  AnimTail(self: Panel): number;
426
+
381
427
  /**
382
428
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
383
429
  * Performs the per-frame operations required for panel animations.
@@ -388,18 +434,21 @@ interface Panel {
388
434
  * @source https://wiki.facepunch.com/gmod/Panel:AnimationThinkInternal
389
435
  */
390
436
  AnimationThinkInternal(self: Panel): void;
437
+
391
438
  /**
392
439
  * Appends text to a [RichText](https://wiki.facepunch.com/gmod/RichText) element. This does not automatically add a new line.
393
440
  * @realm client and menu
394
441
  * @source https://wiki.facepunch.com/gmod/Panel:AppendText
395
442
  */
396
443
  AppendText(self: Panel, txt: string): void;
444
+
397
445
  /**
398
446
  * Appends text to a [RichText](https://wiki.facepunch.com/gmod/RichText) element (exactly like [Panel:AppendText](https://wiki.facepunch.com/gmod/Panel:AppendText)), while also parsing and adding valid URLs ([Panel:InsertClickableTextStart](https://wiki.facepunch.com/gmod/Panel:InsertClickableTextStart)). This does not automatically add a new line.
399
447
  * @realm client and menu
400
448
  * @source https://wiki.facepunch.com/gmod/Panel:AppendTextWithURLs
401
449
  */
402
450
  AppendTextWithURLs(self: Panel, txt: string): void;
451
+
403
452
  /**
404
453
  * Used by [Panel:LoadGWENFile](https://wiki.facepunch.com/gmod/Panel:LoadGWENFile) and [Panel:LoadGWENString](https://wiki.facepunch.com/gmod/Panel:LoadGWENString) to apply a GWEN controls table to a panel object.
405
454
  *
@@ -409,6 +458,7 @@ interface Panel {
409
458
  * @source https://wiki.facepunch.com/gmod/Panel:ApplyGWEN
410
459
  */
411
460
  ApplyGWEN(self: Panel, GWENTable: table): void;
461
+
412
462
  /**
413
463
  * Centers the panel on its parent.
414
464
  *
@@ -426,6 +476,7 @@ interface Panel {
426
476
  * @source https://wiki.facepunch.com/gmod/Panel:Center
427
477
  */
428
478
  Center(self: Panel): void;
479
+
429
480
  /**
430
481
  * Centers the panel horizontally with specified fraction.
431
482
  *
@@ -434,6 +485,7 @@ interface Panel {
434
485
  * @source https://wiki.facepunch.com/gmod/Panel:CenterHorizontal
435
486
  */
436
487
  CenterHorizontal(self: Panel, fraction?: number): void;
488
+
437
489
  /**
438
490
  * Centers the panel vertically with specified fraction.
439
491
  *
@@ -442,24 +494,28 @@ interface Panel {
442
494
  * @source https://wiki.facepunch.com/gmod/Panel:CenterVertical
443
495
  */
444
496
  CenterVertical(self: Panel, fraction?: number): void;
497
+
445
498
  /**
446
499
  * Returns the amount of children of the of panel.
447
500
  * @realm client and menu
448
501
  * @source https://wiki.facepunch.com/gmod/Panel:ChildCount
449
502
  */
450
503
  ChildCount(self: Panel): number;
504
+
451
505
  /**
452
506
  * Returns the width and height of the space between the position of the panel (upper-left corner) and the max bound of the children panels (farthest reaching lower-right corner).
453
507
  * @realm client and menu
454
508
  * @source https://wiki.facepunch.com/gmod/Panel:ChildrenSize
455
509
  */
456
510
  ChildrenSize(self: Panel): (number, number);
511
+
457
512
  /**
458
513
  * Removes all of the panel's children. Many panels also override this method to gracefully clear their contents without breaking themselves.
459
514
  * @realm client and menu
460
515
  * @source https://wiki.facepunch.com/gmod/Panel:Clear
461
516
  */
462
517
  Clear(self: Panel): void;
518
+
463
519
  /**
464
520
  * Fades panels color to specified one.
465
521
  * **NOTE**: The panel must have `GetColor` and `SetColor` functions for `ColorTo` to work.
@@ -469,12 +525,14 @@ interface Panel {
469
525
  * @source https://wiki.facepunch.com/gmod/Panel:ColorTo
470
526
  */
471
527
  ColorTo(self: Panel, color: Color, length: number, delay?: number, callback?: (animData: AnimationData, targetPanel: Panel) => void): void;
528
+
472
529
  /**
473
530
  * Updates a panel object's associated console variable. This must first be set up with [Global.Derma_Install_Convar_Functions](https://wiki.facepunch.com/gmod/Global.Derma_Install_Convar_Functions), and have a ConVar set using [Panel:SetConVar](https://wiki.facepunch.com/gmod/Panel:SetConVar).
474
531
  * @realm client and menu
475
532
  * @source https://wiki.facepunch.com/gmod/Panel:ConVarChanged
476
533
  */
477
534
  ConVarChanged(self: Panel, newValue: string): void;
535
+
478
536
  /**
479
537
  * A think hook for [Panel](https://wiki.facepunch.com/gmod/Panel)s using ConVars as a value. Call it in the Think hook. Sets the panel's value should the convar change.
480
538
  *
@@ -490,6 +548,7 @@ interface Panel {
490
548
  * @source https://wiki.facepunch.com/gmod/Panel:ConVarNumberThink
491
549
  */
492
550
  ConVarNumberThink(self: Panel): void;
551
+
493
552
  /**
494
553
  * A think hook for [panels](https://wiki.facepunch.com/gmod/Panel) using ConVars as a value. Call it in the Think hook. Sets the panel's value should the convar change.
495
554
  *
@@ -504,42 +563,49 @@ interface Panel {
504
563
  * @source https://wiki.facepunch.com/gmod/Panel:ConVarStringThink
505
564
  */
506
565
  ConVarStringThink(self: Panel): void;
566
+
507
567
  /**
508
568
  * Gets the size, position and dock state of the passed panel object, and applies it to this one.
509
569
  * @realm client and menu
510
570
  * @source https://wiki.facepunch.com/gmod/Panel:CopyBase
511
571
  */
512
572
  CopyBase(self: Panel, srcPanel: Panel): void;
573
+
513
574
  /**
514
575
  * Copies position and size of the panel.
515
576
  * @realm client and menu
516
577
  * @source https://wiki.facepunch.com/gmod/Panel:CopyBounds
517
578
  */
518
579
  CopyBounds(self: Panel, base: Panel): void;
580
+
519
581
  /**
520
582
  * Copies the height of the panel.
521
583
  * @realm client and menu
522
584
  * @source https://wiki.facepunch.com/gmod/Panel:CopyHeight
523
585
  */
524
586
  CopyHeight(self: Panel, base: Panel): void;
587
+
525
588
  /**
526
589
  * Copies the position of the panel.
527
590
  * @realm client and menu
528
591
  * @source https://wiki.facepunch.com/gmod/Panel:CopyPos
529
592
  */
530
593
  CopyPos(self: Panel, base: Panel): void;
594
+
531
595
  /**
532
596
  * Performs the CONTROL + C key combination effect ( Copy selection to clipboard ) on selected text in a [TextEntry](https://wiki.facepunch.com/gmod/TextEntry) or [RichText](https://wiki.facepunch.com/gmod/RichText) based element.
533
597
  * @realm client and menu
534
598
  * @source https://wiki.facepunch.com/gmod/Panel:CopySelected
535
599
  */
536
600
  CopySelected(self: Panel): void;
601
+
537
602
  /**
538
603
  * Copies the width of the panel.
539
604
  * @realm client and menu
540
605
  * @source https://wiki.facepunch.com/gmod/Panel:CopyWidth
541
606
  */
542
607
  CopyWidth(self: Panel, base: Panel): void;
608
+
543
609
  /**
544
610
  * Returns the cursor position relative to the top left of the panel.
545
611
  *
@@ -554,18 +620,21 @@ interface Panel {
554
620
  * @source https://wiki.facepunch.com/gmod/Panel:CursorPos
555
621
  */
556
622
  CursorPos(self: Panel): (number, number);
623
+
557
624
  /**
558
625
  * Performs the CONTROL + X (delete text and copy it to clipboard buffer) action on selected text in a [TextEntry](https://wiki.facepunch.com/gmod/TextEntry) or [RichText](https://wiki.facepunch.com/gmod/RichText) based element.
559
626
  * @realm client and menu
560
627
  * @source https://wiki.facepunch.com/gmod/Panel:CutSelected
561
628
  */
562
629
  CutSelected(self: Panel): void;
630
+
563
631
  /**
564
632
  * Deletes a cookie value using the panel's cookie name ( [Panel:GetCookieName](https://wiki.facepunch.com/gmod/Panel:GetCookieName) ) and the passed extension.
565
633
  * @realm client and menu
566
634
  * @source https://wiki.facepunch.com/gmod/Panel:DeleteCookie
567
635
  */
568
636
  DeleteCookie(self: Panel, cookieName: string): void;
637
+
569
638
  /**
570
639
  * Resets the panel object's [Panel:SetPos](https://wiki.facepunch.com/gmod/Panel:SetPos) method and removes its animation table (`Panel.LerpAnim`). This effectively undoes the changes made by [Panel:LerpPositions](https://wiki.facepunch.com/gmod/Panel:LerpPositions).
571
640
  *
@@ -575,18 +644,21 @@ interface Panel {
575
644
  * @source https://wiki.facepunch.com/gmod/Panel:DisableLerp
576
645
  */
577
646
  DisableLerp(self: Panel): void;
647
+
578
648
  /**
579
649
  * Returns the linear distance from the center of this panel object and another. **Both panels must have the same parent for this function to work properly.**
580
650
  * @realm client and menu
581
651
  * @source https://wiki.facepunch.com/gmod/Panel:Distance
582
652
  */
583
653
  Distance(self: Panel, tgtPanel: Panel): number;
654
+
584
655
  /**
585
656
  * Returns the distance between the center of this panel object and a specified point **local to the parent panel**.
586
657
  * @realm client and menu
587
658
  * @source https://wiki.facepunch.com/gmod/Panel:DistanceFrom
588
659
  */
589
660
  DistanceFrom(self: Panel, posX: number, posY: number): number;
661
+
590
662
  /**
591
663
  * Makes the panel "lock" the screen until it is removed. All input will be directed to the given panel.
592
664
  *
@@ -598,6 +670,7 @@ interface Panel {
598
670
  * @source https://wiki.facepunch.com/gmod/Panel:DoModal
599
671
  */
600
672
  DoModal(self: Panel): void;
673
+
601
674
  /**
602
675
  * Sets the dock type for the panel, making the panel "dock" in a certain direction, modifying it's position and size.
603
676
  *
@@ -612,6 +685,7 @@ interface Panel {
612
685
  * @source https://wiki.facepunch.com/gmod/Panel:Dock
613
686
  */
614
687
  Dock(self: Panel, dockType: DOCK): void;
688
+
615
689
  /**
616
690
  * Sets the dock margin of the panel.
617
691
  *
@@ -621,6 +695,7 @@ interface Panel {
621
695
  * @source https://wiki.facepunch.com/gmod/Panel:DockMargin
622
696
  */
623
697
  DockMargin(self: Panel, marginLeft: number, marginTop: number, marginRight: number, marginBottom: number): void;
698
+
624
699
  /**
625
700
  * Sets the dock padding of the panel.
626
701
  *
@@ -630,6 +705,7 @@ interface Panel {
630
705
  * @source https://wiki.facepunch.com/gmod/Panel:DockPadding
631
706
  */
632
707
  DockPadding(self: Panel, paddingLeft: number, paddingTop: number, paddingRight: number, paddingBottom: number): void;
708
+
633
709
  /**
634
710
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
635
711
  * Called by [Panel:DragMouseRelease](https://wiki.facepunch.com/gmod/Panel:DragMouseRelease) when a user clicks one mouse button whilst dragging with another.
@@ -637,6 +713,7 @@ interface Panel {
637
713
  * @source https://wiki.facepunch.com/gmod/Panel:DragClick
638
714
  */
639
715
  DragClick(self: Panel): boolean;
716
+
640
717
  /**
641
718
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
642
719
  * Called by [dragndrop.HoverThink](https://wiki.facepunch.com/gmod/dragndrop.HoverThink) to perform actions on an object that is dragged and hovered over another.
@@ -644,6 +721,7 @@ interface Panel {
644
721
  * @source https://wiki.facepunch.com/gmod/Panel:DragHover
645
722
  */
646
723
  DragHover(self: Panel, HoverTime: number): void;
724
+
647
725
  /**
648
726
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
649
727
  * Called to end a drag and hover action. This resets the panel's [PANEL:PaintOver](https://wiki.facepunch.com/gmod/PANEL:PaintOver) method, and is primarily used by [dragndrop.StopDragging](https://wiki.facepunch.com/gmod/dragndrop.StopDragging).
@@ -651,18 +729,21 @@ interface Panel {
651
729
  * @source https://wiki.facepunch.com/gmod/Panel:DragHoverEnd
652
730
  */
653
731
  DragHoverEnd(self: Panel): void;
732
+
654
733
  /**
655
734
  * Called to inform the [dragndrop](https://wiki.facepunch.com/gmod/dragndrop) that a mouse button is being held down on a panel object.
656
735
  * @realm client and menu
657
736
  * @source https://wiki.facepunch.com/gmod/Panel:DragMousePress
658
737
  */
659
738
  DragMousePress(self: Panel, mouseCode: number): void;
739
+
660
740
  /**
661
741
  * Called to inform the [dragndrop](https://wiki.facepunch.com/gmod/dragndrop) that a mouse button has been depressed on a panel object.
662
742
  * @realm client and menu
663
743
  * @source https://wiki.facepunch.com/gmod/Panel:DragMouseRelease
664
744
  */
665
745
  DragMouseRelease(self: Panel, mouseCode: number): boolean;
746
+
666
747
  /**
667
748
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
668
749
  * Called to draw the drop target when an object is being dragged across another. See [Panel:SetDropTarget](https://wiki.facepunch.com/gmod/Panel:SetDropTarget).
@@ -670,6 +751,7 @@ interface Panel {
670
751
  * @source https://wiki.facepunch.com/gmod/Panel:DrawDragHover
671
752
  */
672
753
  DrawDragHover(self: Panel, x: number, y: number, width: number, height: number): void;
754
+
673
755
  /**
674
756
  * Draws a coloured rectangle to fill the panel object this method is called on. The colour is set using [surface.SetDrawColor](https://wiki.facepunch.com/gmod/surface.SetDrawColor). This should only be called within the object's [PANEL:Paint](https://wiki.facepunch.com/gmod/PANEL:Paint) or [PANEL:PaintOver](https://wiki.facepunch.com/gmod/PANEL:PaintOver) hooks, as a shortcut for [surface.DrawRect](https://wiki.facepunch.com/gmod/surface.DrawRect).
675
757
  *
@@ -680,6 +762,7 @@ interface Panel {
680
762
  * @source https://wiki.facepunch.com/gmod/Panel:DrawFilledRect
681
763
  */
682
764
  DrawFilledRect(self: Panel): void;
765
+
683
766
  /**
684
767
  * Draws a hollow rectangle the size of the panel object this method is called on, with a border width of 1 px. The border colour is set using [surface.SetDrawColor](https://wiki.facepunch.com/gmod/surface.SetDrawColor). This should only be called within the object's [PANEL:Paint](https://wiki.facepunch.com/gmod/PANEL:Paint) or [PANEL:PaintOver](https://wiki.facepunch.com/gmod/PANEL:PaintOver) hooks, as a shortcut for [surface.DrawOutlinedRect](https://wiki.facepunch.com/gmod/surface.DrawOutlinedRect).
685
768
  *
@@ -690,12 +773,14 @@ interface Panel {
690
773
  * @source https://wiki.facepunch.com/gmod/Panel:DrawOutlinedRect
691
774
  */
692
775
  DrawOutlinedRect(self: Panel): void;
776
+
693
777
  /**
694
778
  * Used to draw the magenta highlight colour of a panel object when it is selected. This should be called in the object's [PANEL:PaintOver](https://wiki.facepunch.com/gmod/PANEL:PaintOver) hook. Once this is implemented, the highlight colour will be displayed only when the object is selectable and selected. This is achieved using [Panel:SetSelectable](https://wiki.facepunch.com/gmod/Panel:SetSelectable) and [Panel:SetSelected](https://wiki.facepunch.com/gmod/Panel:SetSelected) respectively.
695
779
  * @realm client and menu
696
780
  * @source https://wiki.facepunch.com/gmod/Panel:DrawSelections
697
781
  */
698
782
  DrawSelections(self: Panel): void;
783
+
699
784
  /**
700
785
  * Used to draw the text in a [DTextEntry](https://wiki.facepunch.com/gmod/DTextEntry) within a derma skin. This is usually called within the [SKIN:PaintTextEntry](https://wiki.facepunch.com/gmod/SKIN:PaintTextEntry) skin hook.
701
786
  * **NOTE**: Will silently fail if any of arguments are not given.
@@ -707,6 +792,7 @@ interface Panel {
707
792
  * @source https://wiki.facepunch.com/gmod/Panel:DrawTextEntryText
708
793
  */
709
794
  DrawTextEntryText(self: Panel, textCol: table, highlightCol: table, cursorCol: table): void;
795
+
710
796
  /**
711
797
  * Draws a textured rectangle to fill the panel object this method is called on. The texture is set using [surface.SetTexture](https://wiki.facepunch.com/gmod/surface.SetTexture) or [surface.SetMaterial](https://wiki.facepunch.com/gmod/surface.SetMaterial). This should only be called within the object's [PANEL:Paint](https://wiki.facepunch.com/gmod/PANEL:Paint) or [PANEL:PaintOver](https://wiki.facepunch.com/gmod/PANEL:PaintOver) hooks, as a shortcut for [surface.DrawTexturedRect](https://wiki.facepunch.com/gmod/surface.DrawTexturedRect).
712
798
  *
@@ -717,6 +803,7 @@ interface Panel {
717
803
  * @source https://wiki.facepunch.com/gmod/Panel:DrawTexturedRect
718
804
  */
719
805
  DrawTexturedRect(self: Panel): void;
806
+
720
807
  /**
721
808
  * Makes this panel droppable. This is used with [Panel:Receiver](https://wiki.facepunch.com/gmod/Panel:Receiver) to create drag and drop events.
722
809
  *
@@ -726,12 +813,14 @@ interface Panel {
726
813
  * @source https://wiki.facepunch.com/gmod/Panel:Droppable
727
814
  */
728
815
  Droppable(self: Panel, name: string): table;
816
+
729
817
  /**
730
818
  * Completes a box selection. If the end point of the selection box is within the selection canvas, mouse capture is disabled for the panel object, and the selected state of each child object within the selection box is toggled.
731
819
  * @realm client and menu
732
820
  * @source https://wiki.facepunch.com/gmod/Panel:EndBoxSelection
733
821
  */
734
822
  EndBoxSelection(self: Panel): boolean;
823
+
735
824
  /**
736
825
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
737
826
  * Used to run commands within a [DHTML](https://wiki.facepunch.com/gmod/DHTML) window.
@@ -739,24 +828,28 @@ interface Panel {
739
828
  * @source https://wiki.facepunch.com/gmod/Panel:Exec
740
829
  */
741
830
  Exec(self: Panel, cmd: string): void;
831
+
742
832
  /**
743
833
  * Finds a panel in its children(and sub children) with the given name.
744
834
  * @realm client and menu
745
835
  * @source https://wiki.facepunch.com/gmod/Panel:Find
746
836
  */
747
837
  Find(self: Panel, panelName: string): Panel;
838
+
748
839
  /**
749
840
  * Focuses the next panel in the focus queue.
750
841
  * @realm client and menu
751
842
  * @source https://wiki.facepunch.com/gmod/Panel:FocusNext
752
843
  */
753
844
  FocusNext(self: Panel): void;
845
+
754
846
  /**
755
847
  * Focuses the previous panel in the focus queue.
756
848
  * @realm client and menu
757
849
  * @source https://wiki.facepunch.com/gmod/Panel:FocusPrevious
758
850
  */
759
851
  FocusPrevious(self: Panel): void;
852
+
760
853
  /**
761
854
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
762
855
  * Used by [Panel:ApplyGWEN](https://wiki.facepunch.com/gmod/Panel:ApplyGWEN) to apply the `CheckboxText` property to a [DCheckBoxLabel](https://wiki.facepunch.com/gmod/DCheckBoxLabel). This does exactly the same as [Panel:GWEN_SetText](https://wiki.facepunch.com/gmod/Panel:GWEN_SetText), but exists to cater for the seperate GWEN properties.
@@ -764,6 +857,7 @@ interface Panel {
764
857
  * @source https://wiki.facepunch.com/gmod/Panel:GWEN_SetCheckboxText
765
858
  */
766
859
  GWEN_SetCheckboxText(self: Panel, txt: string): void;
860
+
767
861
  /**
768
862
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
769
863
  * Used by [Panel:ApplyGWEN](https://wiki.facepunch.com/gmod/Panel:ApplyGWEN) to apply the `ControlName` property to a panel. This calls [Panel:SetName](https://wiki.facepunch.com/gmod/Panel:SetName).
@@ -771,6 +865,7 @@ interface Panel {
771
865
  * @source https://wiki.facepunch.com/gmod/Panel:GWEN_SetControlName
772
866
  */
773
867
  GWEN_SetControlName(self: Panel, name: string): void;
868
+
774
869
  /**
775
870
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
776
871
  * Used by [Panel:ApplyGWEN](https://wiki.facepunch.com/gmod/Panel:ApplyGWEN) to apply the `Dock` property to a panel object. This calls [Panel:Dock](https://wiki.facepunch.com/gmod/Panel:Dock).
@@ -778,6 +873,7 @@ interface Panel {
778
873
  * @source https://wiki.facepunch.com/gmod/Panel:GWEN_SetDock
779
874
  */
780
875
  GWEN_SetDock(self: Panel, dockState: string): void;
876
+
781
877
  /**
782
878
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
783
879
  * Used by [Panel:ApplyGWEN](https://wiki.facepunch.com/gmod/Panel:ApplyGWEN) to apply the `HorizontalAlign` property to a panel object. This calls [Panel:SetContentAlignment](https://wiki.facepunch.com/gmod/Panel:SetContentAlignment).
@@ -785,6 +881,7 @@ interface Panel {
785
881
  * @source https://wiki.facepunch.com/gmod/Panel:GWEN_SetHorizontalAlign
786
882
  */
787
883
  GWEN_SetHorizontalAlign(self: Panel, hAlign: string): void;
884
+
788
885
  /**
789
886
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
790
887
  * Used by [Panel:ApplyGWEN](https://wiki.facepunch.com/gmod/Panel:ApplyGWEN) to apply the `Margin` property to a panel object. This calls [Panel:DockMargin](https://wiki.facepunch.com/gmod/Panel:DockMargin).
@@ -792,6 +889,7 @@ interface Panel {
792
889
  * @source https://wiki.facepunch.com/gmod/Panel:GWEN_SetMargin
793
890
  */
794
891
  GWEN_SetMargin(self: Panel, margins: table): void;
892
+
795
893
  /**
796
894
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
797
895
  * Used by [Panel:ApplyGWEN](https://wiki.facepunch.com/gmod/Panel:ApplyGWEN) to apply the `Max` property to a [DNumberWang](https://wiki.facepunch.com/gmod/DNumberWang), [Slider](https://wiki.facepunch.com/gmod/Slider), [DNumSlider](https://wiki.facepunch.com/gmod/DNumSlider) or [DNumberScratch](https://wiki.facepunch.com/gmod/DNumberScratch). This calls `SetMax` on one of the previously listed methods.
@@ -799,6 +897,7 @@ interface Panel {
799
897
  * @source https://wiki.facepunch.com/gmod/Panel:GWEN_SetMax
800
898
  */
801
899
  GWEN_SetMax(self: Panel, maxValue: number): void;
900
+
802
901
  /**
803
902
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
804
903
  * Used by [Panel:ApplyGWEN](https://wiki.facepunch.com/gmod/Panel:ApplyGWEN) to apply the `Min` property to a [DNumberWang](https://wiki.facepunch.com/gmod/DNumberWang), [Slider](https://wiki.facepunch.com/gmod/Slider), [DNumSlider](https://wiki.facepunch.com/gmod/DNumSlider) or [DNumberScratch](https://wiki.facepunch.com/gmod/DNumberScratch). This calls `SetMin` on one of the previously listed methods.
@@ -806,6 +905,7 @@ interface Panel {
806
905
  * @source https://wiki.facepunch.com/gmod/Panel:GWEN_SetMin
807
906
  */
808
907
  GWEN_SetMin(self: Panel, minValue: number): void;
908
+
809
909
  /**
810
910
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
811
911
  * Used by [Panel:ApplyGWEN](https://wiki.facepunch.com/gmod/Panel:ApplyGWEN) to apply the `Position` property to a panel object. This calls [Panel:SetPos](https://wiki.facepunch.com/gmod/Panel:SetPos).
@@ -813,6 +913,7 @@ interface Panel {
813
913
  * @source https://wiki.facepunch.com/gmod/Panel:GWEN_SetPosition
814
914
  */
815
915
  GWEN_SetPosition(self: Panel, pos: table): void;
916
+
816
917
  /**
817
918
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
818
919
  * Used by [Panel:ApplyGWEN](https://wiki.facepunch.com/gmod/Panel:ApplyGWEN) to apply the `Size` property to a panel object. This calls [Panel:SetSize](https://wiki.facepunch.com/gmod/Panel:SetSize).
@@ -820,6 +921,7 @@ interface Panel {
820
921
  * @source https://wiki.facepunch.com/gmod/Panel:GWEN_SetSize
821
922
  */
822
923
  GWEN_SetSize(self: Panel, size: table): void;
924
+
823
925
  /**
824
926
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
825
927
  * Used by [Panel:ApplyGWEN](https://wiki.facepunch.com/gmod/Panel:ApplyGWEN) to apply the `Text` property to a panel.
@@ -827,12 +929,14 @@ interface Panel {
827
929
  * @source https://wiki.facepunch.com/gmod/Panel:GWEN_SetText
828
930
  */
829
931
  GWEN_SetText(self: Panel, txt: string): void;
932
+
830
933
  /**
831
934
  * Returns the alpha multiplier for this panel.
832
935
  * @realm client and menu
833
936
  * @source https://wiki.facepunch.com/gmod/Panel:GetAlpha
834
937
  */
835
938
  GetAlpha(self: Panel): number;
939
+
836
940
  /**
837
941
  * Returns the background color of a panel such as a [RichText](https://wiki.facepunch.com/gmod/RichText), [Label](https://wiki.facepunch.com/gmod/Label) or [DColorCube](https://wiki.facepunch.com/gmod/DColorCube).
838
942
  *
@@ -843,6 +947,7 @@ interface Panel {
843
947
  * @source https://wiki.facepunch.com/gmod/Panel:GetBGColor
844
948
  */
845
949
  GetBGColor(self: Panel): Color;
950
+
846
951
  /**
847
952
  * Returns the position and size of the panel.
848
953
  *
@@ -852,48 +957,56 @@ interface Panel {
852
957
  * @source https://wiki.facepunch.com/gmod/Panel:GetBounds
853
958
  */
854
959
  GetBounds(self: Panel): (number, number, number, number);
960
+
855
961
  /**
856
962
  * Returns the position/offset of the caret (or text cursor) in a text-based panel object.
857
963
  * @realm client and menu
858
964
  * @source https://wiki.facepunch.com/gmod/Panel:GetCaretPos
859
965
  */
860
966
  GetCaretPos(self: Panel): number;
967
+
861
968
  /**
862
969
  * Gets a child by its index. For use with [Panel:ChildCount](https://wiki.facepunch.com/gmod/Panel:ChildCount).
863
970
  * @realm client and menu
864
971
  * @source https://wiki.facepunch.com/gmod/Panel:GetChild
865
972
  */
866
973
  GetChild(self: Panel, childIndex: number): void;
974
+
867
975
  /**
868
976
  * Gets a child object's position relative to this panel object. The number of levels is not relevant; the child may have many parents between itself and the object on which the method is called.
869
977
  * @realm client and menu
870
978
  * @source https://wiki.facepunch.com/gmod/Panel:GetChildPosition
871
979
  */
872
980
  GetChildPosition(self: Panel, pnl: Panel): (number, number);
981
+
873
982
  /**
874
983
  * Returns a table with all the child panels of the panel.
875
984
  * @realm client and menu
876
985
  * @source https://wiki.facepunch.com/gmod/Panel:GetChildren
877
986
  */
878
987
  GetChildren(self: Panel): table;
988
+
879
989
  /**
880
990
  * Returns a table of all visible, selectable children of the panel object that lie at least partially within the specified rectangle.
881
991
  * @realm client and menu
882
992
  * @source https://wiki.facepunch.com/gmod/Panel:GetChildrenInRect
883
993
  */
884
994
  GetChildrenInRect(self: Panel, x: number, y: number, w: number, h: number): table;
995
+
885
996
  /**
886
997
  * Returns the class name of the panel. This would be the class name of the base engine-level panel, not Lua classname. The latter is stored usually in [Panel:GetName](https://wiki.facepunch.com/gmod/Panel:GetName).
887
998
  * @realm client and menu
888
999
  * @source https://wiki.facepunch.com/gmod/Panel:GetClassName
889
1000
  */
890
1001
  GetClassName(self: Panel): string;
1002
+
891
1003
  /**
892
1004
  * Returns the child of this panel object that is closest to the specified point. The point is relative to the object on which the method is called. The distance the child is from this point is also returned.
893
1005
  * @realm client and menu
894
1006
  * @source https://wiki.facepunch.com/gmod/Panel:GetClosestChild
895
1007
  */
896
1008
  GetClosestChild(self: Panel, x: number, y: number): (Panel, number);
1009
+
897
1010
  /**
898
1011
  * Returns the alignment of the text of a [Label](https://wiki.facepunch.com/gmod/Label).
899
1012
  *
@@ -904,6 +1017,7 @@ interface Panel {
904
1017
  * @source https://wiki.facepunch.com/gmod/Panel:GetContentAlignment
905
1018
  */
906
1019
  GetContentAlignment(self: Panel): number;
1020
+
907
1021
  /**
908
1022
  * Gets the size of the content/children within a panel object.
909
1023
  *
@@ -916,6 +1030,7 @@ interface Panel {
916
1030
  * @source https://wiki.facepunch.com/gmod/Panel:GetContentSize
917
1031
  */
918
1032
  GetContentSize(self: Panel): (number, number);
1033
+
919
1034
  /**
920
1035
  * Gets the value of a cookie stored by the panel object. This can also be done with [cookie.GetString](https://wiki.facepunch.com/gmod/cookie.GetString), using the panel's cookie name, a fullstop, and then the actual name of the cookie.
921
1036
  *
@@ -925,12 +1040,14 @@ interface Panel {
925
1040
  * @source https://wiki.facepunch.com/gmod/Panel:GetCookie
926
1041
  */
927
1042
  GetCookie(self: Panel, cookieName: string, _default: string): string;
1043
+
928
1044
  /**
929
1045
  * Gets the name the panel uses to store cookies. This is set with [Panel:SetCookieName](https://wiki.facepunch.com/gmod/Panel:SetCookieName).
930
1046
  * @realm client and menu
931
1047
  * @source https://wiki.facepunch.com/gmod/Panel:GetCookieName
932
1048
  */
933
1049
  GetCookieName(self: Panel): string;
1050
+
934
1051
  /**
935
1052
  * Gets the value of a cookie stored by the panel object, as a number. This can also be done with [cookie.GetNumber](https://wiki.facepunch.com/gmod/cookie.GetNumber), using the panel's cookie name, a fullstop, and then the actual name of the cookie.
936
1053
  *
@@ -940,24 +1057,28 @@ interface Panel {
940
1057
  * @source https://wiki.facepunch.com/gmod/Panel:GetCookieNumber
941
1058
  */
942
1059
  GetCookieNumber(self: Panel, cookieName: string, _default: number): number;
1060
+
943
1061
  /**
944
1062
  * Returns a dock enum for the panel's current docking type.
945
1063
  * @realm client and menu
946
1064
  * @source https://wiki.facepunch.com/gmod/Panel:GetDock
947
1065
  */
948
1066
  GetDock(self: Panel): number;
1067
+
949
1068
  /**
950
1069
  * Returns the docked margins of the panel. (set by [Panel:DockMargin](https://wiki.facepunch.com/gmod/Panel:DockMargin))
951
1070
  * @realm client and menu
952
1071
  * @source https://wiki.facepunch.com/gmod/Panel:GetDockMargin
953
1072
  */
954
1073
  GetDockMargin(self: Panel): (number, number, number, number);
1074
+
955
1075
  /**
956
1076
  * Returns the docked padding of the panel. (set by [Panel:DockPadding](https://wiki.facepunch.com/gmod/Panel:DockPadding))
957
1077
  * @realm client and menu
958
1078
  * @source https://wiki.facepunch.com/gmod/Panel:GetDockPadding
959
1079
  */
960
1080
  GetDockPadding(self: Panel): (number, number, number, number);
1081
+
961
1082
  /**
962
1083
  * Returns the foreground color of the panel.
963
1084
  *
@@ -970,6 +1091,7 @@ interface Panel {
970
1091
  * @source https://wiki.facepunch.com/gmod/Panel:GetFGColor
971
1092
  */
972
1093
  GetFGColor(self: Panel): Color;
1094
+
973
1095
  /**
974
1096
  * Returns the name of the font that the panel renders its text with.
975
1097
  *
@@ -982,12 +1104,14 @@ interface Panel {
982
1104
  * @source https://wiki.facepunch.com/gmod/Panel:GetFont
983
1105
  */
984
1106
  GetFont(self: Panel): string;
1107
+
985
1108
  /**
986
1109
  * Returns the panel's HTML material. Only works with [Awesomium](https://wiki.facepunch.com/gmod/Awesomium), [HTML](https://wiki.facepunch.com/gmod/HTML) and [DHTML](https://wiki.facepunch.com/gmod/DHTML) panels that have been fully loaded.
987
1110
  * @realm client
988
1111
  * @source https://wiki.facepunch.com/gmod/Panel:GetHTMLMaterial
989
1112
  */
990
1113
  GetHTMLMaterial(self: Panel): IMaterial;
1114
+
991
1115
  /**
992
1116
  * Returns the height of a single line of a [RichText](https://wiki.facepunch.com/gmod/RichText) panel.
993
1117
  *
@@ -995,6 +1119,7 @@ interface Panel {
995
1119
  * @source https://wiki.facepunch.com/gmod/Panel:GetLineHeight
996
1120
  */
997
1121
  GetLineHeight(self: Panel): number;
1122
+
998
1123
  /**
999
1124
  * Returns the current maximum character count.
1000
1125
  *
@@ -1004,12 +1129,14 @@ interface Panel {
1004
1129
  * @source https://wiki.facepunch.com/gmod/Panel:GetMaximumCharCount
1005
1130
  */
1006
1131
  GetMaximumCharCount(self: Panel): number;
1132
+
1007
1133
  /**
1008
1134
  * Returns the internal name of the panel. Can be set via [Panel:SetName](https://wiki.facepunch.com/gmod/Panel:SetName).
1009
1135
  * @realm client and menu
1010
1136
  * @source https://wiki.facepunch.com/gmod/Panel:GetName
1011
1137
  */
1012
1138
  GetName(self: Panel): string;
1139
+
1013
1140
  /**
1014
1141
  * Returns the number of lines in a [RichText](https://wiki.facepunch.com/gmod/RichText) or a [TextEntry](https://wiki.facepunch.com/gmod/TextEntry).
1015
1142
  *
@@ -1019,12 +1146,14 @@ interface Panel {
1019
1146
  * @source https://wiki.facepunch.com/gmod/Panel:GetNumLines
1020
1147
  */
1021
1148
  GetNumLines(self: Panel): number;
1149
+
1022
1150
  /**
1023
1151
  * Returns the parent of the panel, returns nil if there is no parent.
1024
1152
  * @realm client and menu
1025
1153
  * @source https://wiki.facepunch.com/gmod/Panel:GetParent
1026
1154
  */
1027
1155
  GetParent(self: Panel): Panel;
1156
+
1028
1157
  /**
1029
1158
  * Returns the position of the panel relative to its [Panel:GetParent](https://wiki.facepunch.com/gmod/Panel:GetParent).
1030
1159
  *
@@ -1038,6 +1167,7 @@ interface Panel {
1038
1167
  * @source https://wiki.facepunch.com/gmod/Panel:GetPos
1039
1168
  */
1040
1169
  GetPos(self: Panel): (number, number);
1170
+
1041
1171
  /**
1042
1172
  * Returns the vertical and horizontal start indexes of a [TextEntry](https://wiki.facepunch.com/gmod/TextEntry)'s visible text. This is useful when the panel is scrolled.
1043
1173
  *
@@ -1045,12 +1175,14 @@ interface Panel {
1045
1175
  * @source https://wiki.facepunch.com/gmod/Panel:GetScrollStartIndexes
1046
1176
  */
1047
1177
  GetScrollStartIndexes(self: Panel): (number, number);
1178
+
1048
1179
  /**
1049
1180
  * Returns a table of all children of the panel object that are selected. This is recursive, and the returned table will include tables for any child objects that also have children. This means that not all first-level members in the returned table will be of type [Panel](https://wiki.facepunch.com/gmod/Panel).
1050
1181
  * @realm client and menu
1051
1182
  * @source https://wiki.facepunch.com/gmod/Panel:GetSelectedChildren
1052
1183
  */
1053
1184
  GetSelectedChildren(self: Panel): table;
1185
+
1054
1186
  /**
1055
1187
  * Returns the currently selected range of text.
1056
1188
  *
@@ -1060,6 +1192,7 @@ interface Panel {
1060
1192
  * @source https://wiki.facepunch.com/gmod/Panel:GetSelectedTextRange
1061
1193
  */
1062
1194
  GetSelectedTextRange(self: Panel): (number, number);
1195
+
1063
1196
  /**
1064
1197
  * Returns the selection canvas for this panel. This will be the first parent that has [Panel:SetSelectionCanvas](https://wiki.facepunch.com/gmod/Panel:SetSelectionCanvas) set to true (or `self` if this panel is the selection canvas)
1065
1198
  *
@@ -1068,6 +1201,7 @@ interface Panel {
1068
1201
  * @source https://wiki.facepunch.com/gmod/Panel:GetSelectionCanvas
1069
1202
  */
1070
1203
  GetSelectionCanvas(self: Panel): Panel;
1204
+
1071
1205
  /**
1072
1206
  * Returns the size of the panel.
1073
1207
  *
@@ -1077,18 +1211,21 @@ interface Panel {
1077
1211
  * @source https://wiki.facepunch.com/gmod/Panel:GetSize
1078
1212
  */
1079
1213
  GetSize(self: Panel): (number, number);
1214
+
1080
1215
  /**
1081
1216
  * Returns the table for the derma skin currently being used by this panel object.
1082
1217
  * @realm client and menu
1083
1218
  * @source https://wiki.facepunch.com/gmod/Panel:GetSkin
1084
1219
  */
1085
1220
  GetSkin(self: Panel): table;
1221
+
1086
1222
  /**
1087
1223
  * Returns the internal Lua table of the panel.
1088
1224
  * @realm client and menu
1089
1225
  * @source https://wiki.facepunch.com/gmod/Panel:GetTable
1090
1226
  */
1091
1227
  GetTable(self: Panel): table;
1228
+
1092
1229
  /**
1093
1230
  * Returns the height of the panel.
1094
1231
  *
@@ -1099,6 +1236,7 @@ interface Panel {
1099
1236
  * @source https://wiki.facepunch.com/gmod/Panel:GetTall
1100
1237
  */
1101
1238
  GetTall(self: Panel): number;
1239
+
1102
1240
  /**
1103
1241
  * Returns the panel's text (where applicable).
1104
1242
  *
@@ -1108,18 +1246,21 @@ interface Panel {
1108
1246
  * @source https://wiki.facepunch.com/gmod/Panel:GetText
1109
1247
  */
1110
1248
  GetText(self: Panel): string;
1249
+
1111
1250
  /**
1112
1251
  * Gets the left and top text margins of a text-based panel object, such as a [DButton](https://wiki.facepunch.com/gmod/DButton) or [DLabel](https://wiki.facepunch.com/gmod/DLabel). This is set with [Panel:SetTextInset](https://wiki.facepunch.com/gmod/Panel:SetTextInset).
1113
1252
  * @realm client and menu
1114
1253
  * @source https://wiki.facepunch.com/gmod/Panel:GetTextInset
1115
1254
  */
1116
1255
  GetTextInset(self: Panel): (number, number);
1256
+
1117
1257
  /**
1118
1258
  * Gets the size of the text within a [Label](https://wiki.facepunch.com/gmod/Label) derived panel.
1119
1259
  * @realm client and menu
1120
1260
  * @source https://wiki.facepunch.com/gmod/Panel:GetTextSize
1121
1261
  */
1122
1262
  GetTextSize(self: Panel): (number, number);
1263
+
1123
1264
  /**
1124
1265
  * Returns the tooltip text that was set with [PANEL:SetTooltip](https://wiki.facepunch.com/gmod/PANEL:SetTooltip).
1125
1266
  *
@@ -1127,6 +1268,7 @@ interface Panel {
1127
1268
  * @source https://wiki.facepunch.com/gmod/Panel:GetTooltip
1128
1269
  */
1129
1270
  GetTooltip(self: Panel): string;
1271
+
1130
1272
  /**
1131
1273
  * Returns the tooltip delay (time between hovering over the panel, and the tooltip showing up) that was set with [Panel:SetTooltipDelay](https://wiki.facepunch.com/gmod/Panel:SetTooltipDelay), or nothing if it was not set.
1132
1274
  *
@@ -1136,6 +1278,7 @@ interface Panel {
1136
1278
  * @source https://wiki.facepunch.com/gmod/Panel:GetTooltipDelay
1137
1279
  */
1138
1280
  GetTooltipDelay(self: Panel): number;
1281
+
1139
1282
  /**
1140
1283
  * Returns the tooltip panel that was set with [PANEL:SetTooltipPanel](https://wiki.facepunch.com/gmod/PANEL:SetTooltipPanel).
1141
1284
  *
@@ -1143,12 +1286,14 @@ interface Panel {
1143
1286
  * @source https://wiki.facepunch.com/gmod/Panel:GetTooltipPanel
1144
1287
  */
1145
1288
  GetTooltipPanel(self: Panel): Panel;
1289
+
1146
1290
  /**
1147
1291
  * Gets valid receiver slot of currently dragged panel.
1148
1292
  * @realm client and menu
1149
1293
  * @source https://wiki.facepunch.com/gmod/Panel:GetValidReceiverSlot
1150
1294
  */
1151
1295
  GetValidReceiverSlot(self: Panel): (Panel, table);
1296
+
1152
1297
  /**
1153
1298
  * Returns the value the panel holds.
1154
1299
  *
@@ -1161,6 +1306,7 @@ interface Panel {
1161
1306
  * @source https://wiki.facepunch.com/gmod/Panel:GetValue
1162
1307
  */
1163
1308
  GetValue(self: Panel): any;
1309
+
1164
1310
  /**
1165
1311
  * Returns the width of the panel.
1166
1312
  *
@@ -1169,6 +1315,7 @@ interface Panel {
1169
1315
  * @source https://wiki.facepunch.com/gmod/Panel:GetWide
1170
1316
  */
1171
1317
  GetWide(self: Panel): number;
1318
+
1172
1319
  /**
1173
1320
  * Returns the X position of the panel relative to its [Panel:GetParent](https://wiki.facepunch.com/gmod/Panel:GetParent).
1174
1321
  *
@@ -1178,6 +1325,7 @@ interface Panel {
1178
1325
  * @source https://wiki.facepunch.com/gmod/Panel:GetX
1179
1326
  */
1180
1327
  GetX(self: Panel): number;
1328
+
1181
1329
  /**
1182
1330
  * Returns the Y position of the panel relative to its [Panel:GetParent](https://wiki.facepunch.com/gmod/Panel:GetParent).
1183
1331
  *
@@ -1187,36 +1335,42 @@ interface Panel {
1187
1335
  * @source https://wiki.facepunch.com/gmod/Panel:GetY
1188
1336
  */
1189
1337
  GetY(self: Panel): number;
1338
+
1190
1339
  /**
1191
1340
  * Returns the Z position of the panel.
1192
1341
  * @realm client and menu
1193
1342
  * @source https://wiki.facepunch.com/gmod/Panel:GetZPos
1194
1343
  */
1195
1344
  GetZPos(self: Panel): number;
1345
+
1196
1346
  /**
1197
1347
  * Goes back one page in the HTML panel's history if available.
1198
1348
  * @realm client and menu
1199
1349
  * @source https://wiki.facepunch.com/gmod/Panel:GoBack
1200
1350
  */
1201
1351
  GoBack(self: Panel): void;
1352
+
1202
1353
  /**
1203
1354
  * Goes forward one page in the HTML panel's history if available.
1204
1355
  * @realm client and menu
1205
1356
  * @source https://wiki.facepunch.com/gmod/Panel:GoForward
1206
1357
  */
1207
1358
  GoForward(self: Panel): void;
1359
+
1208
1360
  /**
1209
1361
  * Goes to the page in the HTML panel's history at the specified relative offset.
1210
1362
  * @realm client and menu
1211
1363
  * @source https://wiki.facepunch.com/gmod/Panel:GoToHistoryOffset
1212
1364
  */
1213
1365
  GoToHistoryOffset(self: Panel, offset: number): void;
1366
+
1214
1367
  /**
1215
1368
  * Causes a [RichText](https://wiki.facepunch.com/gmod/RichText) element to scroll to the bottom of its text.
1216
1369
  * @realm client and menu
1217
1370
  * @source https://wiki.facepunch.com/gmod/Panel:GotoTextEnd
1218
1371
  */
1219
1372
  GotoTextEnd(self: Panel): void;
1373
+
1220
1374
  /**
1221
1375
  * Causes a [RichText](https://wiki.facepunch.com/gmod/RichText) element to scroll to the top of its text.
1222
1376
  *
@@ -1224,42 +1378,49 @@ interface Panel {
1224
1378
  * @source https://wiki.facepunch.com/gmod/Panel:GotoTextStart
1225
1379
  */
1226
1380
  GotoTextStart(self: Panel): void;
1381
+
1227
1382
  /**
1228
1383
  * Returns whenever the panel has child panels.
1229
1384
  * @realm client and menu
1230
1385
  * @source https://wiki.facepunch.com/gmod/Panel:HasChildren
1231
1386
  */
1232
1387
  HasChildren(self: Panel): boolean;
1388
+
1233
1389
  /**
1234
1390
  * Returns if the panel is focused.
1235
1391
  * @realm client and menu
1236
1392
  * @source https://wiki.facepunch.com/gmod/Panel:HasFocus
1237
1393
  */
1238
1394
  HasFocus(self: Panel): boolean;
1395
+
1239
1396
  /**
1240
1397
  * Returns if the panel or any of its children(sub children and so on) has the focus.
1241
1398
  * @realm client and menu
1242
1399
  * @source https://wiki.facepunch.com/gmod/Panel:HasHierarchicalFocus
1243
1400
  */
1244
1401
  HasHierarchicalFocus(self: Panel): boolean;
1402
+
1245
1403
  /**
1246
1404
  * Returns whether the panel is a descendent of the given panel.
1247
1405
  * @realm client and menu
1248
1406
  * @source https://wiki.facepunch.com/gmod/Panel:HasParent
1249
1407
  */
1250
1408
  HasParent(self: Panel, parentPanel: Panel): boolean;
1409
+
1251
1410
  /**
1252
1411
  * Makes a panel invisible.
1253
1412
  * @realm client and menu
1254
1413
  * @source https://wiki.facepunch.com/gmod/Panel:Hide
1255
1414
  */
1256
1415
  Hide(self: Panel): void;
1416
+
1257
1417
  /**
1258
1418
  * Marks the end of a clickable text segment in a [RichText](https://wiki.facepunch.com/gmod/RichText) element, started with [Panel:InsertClickableTextStart](https://wiki.facepunch.com/gmod/Panel:InsertClickableTextStart).
1259
1419
  * @realm client and menu
1260
1420
  * @source https://wiki.facepunch.com/gmod/Panel:InsertClickableTextEnd
1261
1421
  */
1262
1422
  InsertClickableTextEnd(self: Panel): void;
1423
+
1263
1424
  /**
1264
1425
  * Starts the insertion of clickable text for a [RichText](https://wiki.facepunch.com/gmod/RichText) element. Any text appended with [Panel:AppendText](https://wiki.facepunch.com/gmod/Panel:AppendText) between this call and [Panel:InsertClickableTextEnd](https://wiki.facepunch.com/gmod/Panel:InsertClickableTextEnd) will become clickable text.
1265
1426
  *
@@ -1272,12 +1433,14 @@ interface Panel {
1272
1433
  * @source https://wiki.facepunch.com/gmod/Panel:InsertClickableTextStart
1273
1434
  */
1274
1435
  InsertClickableTextStart(self: Panel, signalValue: string): void;
1436
+
1275
1437
  /**
1276
1438
  * Inserts a color change in a [RichText](https://wiki.facepunch.com/gmod/RichText) element, which affects the color of all text added with [Panel:AppendText](https://wiki.facepunch.com/gmod/Panel:AppendText) until another color change is applied.
1277
1439
  * @realm client and menu
1278
1440
  * @source https://wiki.facepunch.com/gmod/Panel:InsertColorChange
1279
1441
  */
1280
1442
  InsertColorChange(self: Panel, r: number, g: number, b: number, a: number): void;
1443
+
1281
1444
  /**
1282
1445
  * Begins a text fade for a [RichText](https://wiki.facepunch.com/gmod/RichText) element where the last appended text segment is fully faded out after a specific amount of time, at a specific speed.
1283
1446
  *
@@ -1287,12 +1450,14 @@ interface Panel {
1287
1450
  * @source https://wiki.facepunch.com/gmod/Panel:InsertFade
1288
1451
  */
1289
1452
  InsertFade(self: Panel, sustain: number, length: number): void;
1453
+
1290
1454
  /**
1291
1455
  * Invalidates the layout of this panel object and all its children. This will cause these objects to re-layout immediately, calling [PANEL:PerformLayout](https://wiki.facepunch.com/gmod/PANEL:PerformLayout). If you want to perform the layout in the next frame, you will have loop manually through all children, and call [Panel:InvalidateLayout](https://wiki.facepunch.com/gmod/Panel:InvalidateLayout) on each.
1292
1456
  * @realm client and menu
1293
1457
  * @source https://wiki.facepunch.com/gmod/Panel:InvalidateChildren
1294
1458
  */
1295
1459
  InvalidateChildren(self: Panel, recursive?: boolean): void;
1460
+
1296
1461
  /**
1297
1462
  * Causes the panel to re-layout in the next frame. During the layout process [PANEL:PerformLayout](https://wiki.facepunch.com/gmod/PANEL:PerformLayout) will be called on the target panel.
1298
1463
  *
@@ -1304,6 +1469,7 @@ interface Panel {
1304
1469
  * @source https://wiki.facepunch.com/gmod/Panel:InvalidateLayout
1305
1470
  */
1306
1471
  InvalidateLayout(self: Panel, layoutNow?: boolean): void;
1472
+
1307
1473
  /**
1308
1474
  * Calls [Panel:InvalidateLayout](https://wiki.facepunch.com/gmod/Panel:InvalidateLayout) on the panel's [parent](https://wiki.facepunch.com/gmod/Panel:GetParent). This function will silently fail if the panel has no parent.
1309
1475
  *
@@ -1315,24 +1481,28 @@ interface Panel {
1315
1481
  * @source https://wiki.facepunch.com/gmod/Panel:InvalidateParent
1316
1482
  */
1317
1483
  InvalidateParent(self: Panel, layoutNow?: boolean): void;
1484
+
1318
1485
  /**
1319
1486
  * Determines whether the mouse cursor is hovered over one of this panel object's children. This is a reverse process using [vgui.GetHoveredPanel](https://wiki.facepunch.com/gmod/vgui.GetHoveredPanel), and looks upward to find the parent.
1320
1487
  * @realm client and menu
1321
1488
  * @source https://wiki.facepunch.com/gmod/Panel:IsChildHovered
1322
1489
  */
1323
1490
  IsChildHovered(self: Panel, immediate?: boolean): boolean;
1491
+
1324
1492
  /**
1325
1493
  * Returns whether this panel is draggable ( if user is able to drag it ) or not.
1326
1494
  * @realm client and menu
1327
1495
  * @source https://wiki.facepunch.com/gmod/Panel:IsDraggable
1328
1496
  */
1329
1497
  IsDraggable(self: Panel): boolean;
1498
+
1330
1499
  /**
1331
1500
  * Returns whether this panel is currently being dragged or not.
1332
1501
  * @realm client and menu
1333
1502
  * @source https://wiki.facepunch.com/gmod/Panel:IsDragging
1334
1503
  */
1335
1504
  IsDragging(self: Panel): boolean;
1505
+
1336
1506
  /**
1337
1507
  * Returns whether the the panel is enabled or disabled.
1338
1508
  *
@@ -1342,6 +1512,7 @@ interface Panel {
1342
1512
  * @source https://wiki.facepunch.com/gmod/Panel:IsEnabled
1343
1513
  */
1344
1514
  IsEnabled(self: Panel): boolean;
1515
+
1345
1516
  /**
1346
1517
  * Returns whether the mouse cursor is hovering over this panel or not
1347
1518
  *
@@ -1353,12 +1524,14 @@ interface Panel {
1353
1524
  * @source https://wiki.facepunch.com/gmod/Panel:IsHovered
1354
1525
  */
1355
1526
  IsHovered(self: Panel): boolean;
1527
+
1356
1528
  /**
1357
1529
  * Returns true if the panel can receive keyboard input.
1358
1530
  * @realm client and menu
1359
1531
  * @source https://wiki.facepunch.com/gmod/Panel:IsKeyboardInputEnabled
1360
1532
  */
1361
1533
  IsKeyboardInputEnabled(self: Panel): boolean;
1534
+
1362
1535
  /**
1363
1536
  * Determines whether or not a [HTML](https://wiki.facepunch.com/gmod/HTML) or [DHTML](https://wiki.facepunch.com/gmod/DHTML) element is currently loading a page.
1364
1537
  *
@@ -1373,84 +1546,98 @@ interface Panel {
1373
1546
  * @source https://wiki.facepunch.com/gmod/Panel:IsLoading
1374
1547
  */
1375
1548
  IsLoading(self: Panel): boolean;
1549
+
1376
1550
  /**
1377
1551
  * Returns if the panel is going to be deleted in the next frame.
1378
1552
  * @realm client and menu
1379
1553
  * @source https://wiki.facepunch.com/gmod/Panel:IsMarkedForDeletion
1380
1554
  */
1381
1555
  IsMarkedForDeletion(self: Panel): boolean;
1556
+
1382
1557
  /**
1383
1558
  * Returns whether the panel was made modal or not. See [Panel:DoModal](https://wiki.facepunch.com/gmod/Panel:DoModal).
1384
1559
  * @realm client and menu
1385
1560
  * @source https://wiki.facepunch.com/gmod/Panel:IsModal
1386
1561
  */
1387
1562
  IsModal(self: Panel): boolean;
1563
+
1388
1564
  /**
1389
1565
  * Returns true if the panel can receive mouse input.
1390
1566
  * @realm client and menu
1391
1567
  * @source https://wiki.facepunch.com/gmod/Panel:IsMouseInputEnabled
1392
1568
  */
1393
1569
  IsMouseInputEnabled(self: Panel): boolean;
1570
+
1394
1571
  /**
1395
1572
  * Determines whether or not a [TextEntry](https://wiki.facepunch.com/gmod/TextEntry) panel is in multi-line mode. This is set with [Panel:SetMultiline](https://wiki.facepunch.com/gmod/Panel:SetMultiline).
1396
1573
  * @realm client and menu
1397
1574
  * @source https://wiki.facepunch.com/gmod/Panel:IsMultiline
1398
1575
  */
1399
1576
  IsMultiline(self: Panel): boolean;
1577
+
1400
1578
  /**
1401
1579
  * Returns whether the panel contains the given panel, recursively.
1402
1580
  * @realm client and menu
1403
1581
  * @source https://wiki.facepunch.com/gmod/Panel:IsOurChild
1404
1582
  */
1405
1583
  IsOurChild(self: Panel, childPanel: Panel): boolean;
1584
+
1406
1585
  /**
1407
1586
  * Returns if the panel was made popup or not. See [Panel:MakePopup](https://wiki.facepunch.com/gmod/Panel:MakePopup)
1408
1587
  * @realm client and menu
1409
1588
  * @source https://wiki.facepunch.com/gmod/Panel:IsPopup
1410
1589
  */
1411
1590
  IsPopup(self: Panel): boolean;
1591
+
1412
1592
  /**
1413
1593
  * Determines if the panel object is selectable (like icons in the Spawn Menu, holding Shift). This is set with [Panel:SetSelectable](https://wiki.facepunch.com/gmod/Panel:SetSelectable).
1414
1594
  * @realm client and menu
1415
1595
  * @source https://wiki.facepunch.com/gmod/Panel:IsSelectable
1416
1596
  */
1417
1597
  IsSelectable(self: Panel): boolean;
1598
+
1418
1599
  /**
1419
1600
  * Returns if the panel object is selected (like icons in the Spawn Menu, holding Shift). This can be set in Lua using [Panel:SetSelected](https://wiki.facepunch.com/gmod/Panel:SetSelected).
1420
1601
  * @realm client and menu
1421
1602
  * @source https://wiki.facepunch.com/gmod/Panel:IsSelected
1422
1603
  */
1423
1604
  IsSelected(self: Panel): boolean;
1605
+
1424
1606
  /**
1425
1607
  * Determines if the panel object is a selection canvas or not. This is set with [Panel:SetSelectionCanvas](https://wiki.facepunch.com/gmod/Panel:SetSelectionCanvas).
1426
1608
  * @realm client and menu
1427
1609
  * @source https://wiki.facepunch.com/gmod/Panel:IsSelectionCanvas
1428
1610
  */
1429
1611
  IsSelectionCanvas(self: Panel): any;
1612
+
1430
1613
  /**
1431
1614
  * Returns if the panel is valid and not marked for deletion.
1432
1615
  * @realm client and menu
1433
1616
  * @source https://wiki.facepunch.com/gmod/Panel:IsValid
1434
1617
  */
1435
1618
  IsValid(self: Panel): boolean;
1619
+
1436
1620
  /**
1437
1621
  * Returns if the panel is visible. This will **NOT** take into account visibility of the parent.
1438
1622
  * @realm client and menu
1439
1623
  * @source https://wiki.facepunch.com/gmod/Panel:IsVisible
1440
1624
  */
1441
1625
  IsVisible(self: Panel): boolean;
1626
+
1442
1627
  /**
1443
1628
  * Returns if a panel allows world clicking set by [Panel:SetWorldClicker](https://wiki.facepunch.com/gmod/Panel:SetWorldClicker).
1444
1629
  * @realm client and menu
1445
1630
  * @source https://wiki.facepunch.com/gmod/Panel:IsWorldClicker
1446
1631
  */
1447
1632
  IsWorldClicker(self: Panel): boolean;
1633
+
1448
1634
  /**
1449
1635
  * Remove the focus from the panel.
1450
1636
  * @realm client and menu
1451
1637
  * @source https://wiki.facepunch.com/gmod/Panel:KillFocus
1452
1638
  */
1453
1639
  KillFocus(self: Panel): void;
1640
+
1454
1641
  /**
1455
1642
  * Redefines the panel object's [Panel:SetPos](https://wiki.facepunch.com/gmod/Panel:SetPos) method to operate using frame-by-frame linear interpolation ([Global.Lerp](https://wiki.facepunch.com/gmod/Global.Lerp)). When the panel's position is changed, it will move to the target position at the speed defined. You can undo this with [Panel:DisableLerp](https://wiki.facepunch.com/gmod/Panel:DisableLerp).
1456
1643
  *
@@ -1460,6 +1647,7 @@ interface Panel {
1460
1647
  * @source https://wiki.facepunch.com/gmod/Panel:LerpPositions
1461
1648
  */
1462
1649
  LerpPositions(self: Panel, speed: number, easeOut: boolean): void;
1650
+
1463
1651
  /**
1464
1652
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
1465
1653
  *
@@ -1470,6 +1658,7 @@ interface Panel {
1470
1658
  * @deprecated No longer does anything.
1471
1659
  */
1472
1660
  LoadControlsFromFile(self: Panel, path: string): void;
1661
+
1473
1662
  /**
1474
1663
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
1475
1664
  *
@@ -1480,6 +1669,7 @@ interface Panel {
1480
1669
  * @deprecated No longer does anything.
1481
1670
  */
1482
1671
  LoadControlsFromString(self: Panel, data: string): void;
1672
+
1483
1673
  /**
1484
1674
  * Loads a .gwen file (created by GWEN Designer) and calls [Panel:LoadGWENString](https://wiki.facepunch.com/gmod/Panel:LoadGWENString) with the contents of the loaded file.
1485
1675
  *
@@ -1489,12 +1679,14 @@ interface Panel {
1489
1679
  * @source https://wiki.facepunch.com/gmod/Panel:LoadGWENFile
1490
1680
  */
1491
1681
  LoadGWENFile(self: Panel, filename: string, path?: string): void;
1682
+
1492
1683
  /**
1493
1684
  * Loads controls for the panel from a JSON string.
1494
1685
  * @realm client and menu
1495
1686
  * @source https://wiki.facepunch.com/gmod/Panel:LoadGWENString
1496
1687
  */
1497
1688
  LoadGWENString(self: Panel, str: string): void;
1689
+
1498
1690
  /**
1499
1691
  * Sets a new image to be loaded by a [TGAImage](https://wiki.facepunch.com/gmod/TGAImage).
1500
1692
  * @realm client and menu
@@ -1502,12 +1694,14 @@ interface Panel {
1502
1694
  * @deprecated DImage should be used instead (with `.png` or `.jpg` images). `TGAImage` panel has no advantages.
1503
1695
  */
1504
1696
  LoadTGAImage(self: Panel, imageName: string, strPath: string): void;
1697
+
1505
1698
  /**
1506
1699
  * Returns the cursor position local to the position of the panel (usually the upper-left corner).
1507
1700
  * @realm client and menu
1508
1701
  * @source https://wiki.facepunch.com/gmod/Panel:LocalCursorPos
1509
1702
  */
1510
1703
  LocalCursorPos(self: Panel): (number, number);
1704
+
1511
1705
  /**
1512
1706
  * Takes X and Y coordinates relative to the panel and returns their corresponding positions relative to the screen.
1513
1707
  *
@@ -1524,6 +1718,7 @@ interface Panel {
1524
1718
  * @source https://wiki.facepunch.com/gmod/Panel:LocalToScreen
1525
1719
  */
1526
1720
  LocalToScreen(self: Panel, posX: number, posY: number): (number, number);
1721
+
1527
1722
  /**
1528
1723
  * Focuses the panel and enables it to receive input.
1529
1724
  *
@@ -1538,42 +1733,49 @@ interface Panel {
1538
1733
  * @source https://wiki.facepunch.com/gmod/Panel:MakePopup
1539
1734
  */
1540
1735
  MakePopup(self: Panel): void;
1736
+
1541
1737
  /**
1542
1738
  * Allows the panel to receive mouse input even if the mouse cursor is outside the bounds of the panel.
1543
1739
  * @realm client and menu
1544
1740
  * @source https://wiki.facepunch.com/gmod/Panel:MouseCapture
1545
1741
  */
1546
1742
  MouseCapture(self: Panel, doCapture: boolean): void;
1743
+
1547
1744
  /**
1548
1745
  * Places the panel above the passed panel with the specified offset.
1549
1746
  * @realm client and menu
1550
1747
  * @source https://wiki.facepunch.com/gmod/Panel:MoveAbove
1551
1748
  */
1552
1749
  MoveAbove(self: Panel, panel: Panel, offset?: number): void;
1750
+
1553
1751
  /**
1554
1752
  * Places the panel below the passed panel with the specified offset.
1555
1753
  * @realm client and menu
1556
1754
  * @source https://wiki.facepunch.com/gmod/Panel:MoveBelow
1557
1755
  */
1558
1756
  MoveBelow(self: Panel, panel: Panel, offset?: number): void;
1757
+
1559
1758
  /**
1560
1759
  * Moves the panel by the specified coordinates using animation.
1561
1760
  * @realm client and menu
1562
1761
  * @source https://wiki.facepunch.com/gmod/Panel:MoveBy
1563
1762
  */
1564
1763
  MoveBy(self: Panel, moveX: number, moveY: number, time: number, delay?: number, ease?: number, callback?: (animData: table, targetPanel: Panel) => void): void;
1764
+
1565
1765
  /**
1566
1766
  * Places the panel left to the passed panel with the specified offset.
1567
1767
  * @realm client and menu
1568
1768
  * @source https://wiki.facepunch.com/gmod/Panel:MoveLeftOf
1569
1769
  */
1570
1770
  MoveLeftOf(self: Panel, panel: Panel, offset?: number): void;
1771
+
1571
1772
  /**
1572
1773
  * Places the panel right to the passed panel with the specified offset.
1573
1774
  * @realm client and menu
1574
1775
  * @source https://wiki.facepunch.com/gmod/Panel:MoveRightOf
1575
1776
  */
1576
1777
  MoveRightOf(self: Panel, panel: Panel, offset?: number): void;
1778
+
1577
1779
  /**
1578
1780
  * Moves the panel to the specified position using animation.
1579
1781
  * **NOTE**: Setting the ease argument to 0 will result in the animation happening instantly, this applies to all MoveTo/SizeTo functions
@@ -1583,30 +1785,35 @@ interface Panel {
1583
1785
  * @source https://wiki.facepunch.com/gmod/Panel:MoveTo
1584
1786
  */
1585
1787
  MoveTo(self: Panel, posX: number, posY: number, time: number, delay?: number, ease?: number, callback?: (animData: table, targetPanel: Panel) => void): void;
1788
+
1586
1789
  /**
1587
1790
  * Moves this panel object in front of the specified sibling (child of the same parent) in the render order, and shuffles up the Z-positions of siblings now behind.
1588
1791
  * @realm client and menu
1589
1792
  * @source https://wiki.facepunch.com/gmod/Panel:MoveToAfter
1590
1793
  */
1591
1794
  MoveToAfter(self: Panel, siblingPanel: Panel): boolean;
1795
+
1592
1796
  /**
1593
1797
  * Moves the panel object behind all other panels on screen. If the panel has been made a pop-up with [Panel:MakePopup](https://wiki.facepunch.com/gmod/Panel:MakePopup), it will still draw in front of any panels that haven't.
1594
1798
  * @realm client and menu
1595
1799
  * @source https://wiki.facepunch.com/gmod/Panel:MoveToBack
1596
1800
  */
1597
1801
  MoveToBack(self: Panel): void;
1802
+
1598
1803
  /**
1599
1804
  * Moves this panel object behind the specified sibling (child of the same parent) in the render order, and shuffles up the [Panel:SetZPos](https://wiki.facepunch.com/gmod/Panel:SetZPos) of siblings now in front.
1600
1805
  * @realm client and menu
1601
1806
  * @source https://wiki.facepunch.com/gmod/Panel:MoveToBefore
1602
1807
  */
1603
1808
  MoveToBefore(self: Panel, siblingPanel: Panel): boolean;
1809
+
1604
1810
  /**
1605
1811
  * Moves the panel in front of all other panels on screen. Unless the panel has been made a pop-up using [Panel:MakePopup](https://wiki.facepunch.com/gmod/Panel:MakePopup), it will still draw behind any that have.
1606
1812
  * @realm client and menu
1607
1813
  * @source https://wiki.facepunch.com/gmod/Panel:MoveToFront
1608
1814
  */
1609
1815
  MoveToFront(self: Panel): void;
1816
+
1610
1817
  /**
1611
1818
  * Creates a new animation for the panel object.
1612
1819
  *
@@ -1624,6 +1831,7 @@ interface Panel {
1624
1831
  * @source https://wiki.facepunch.com/gmod/Panel:NewAnimation
1625
1832
  */
1626
1833
  NewAnimation(self: Panel, length: number, delay?: number, ease?: number, callback?: (animData: table, targetPanel: Panel) => void): table;
1834
+
1627
1835
  /**
1628
1836
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
1629
1837
  *
@@ -1631,6 +1839,7 @@ interface Panel {
1631
1839
  * @source https://wiki.facepunch.com/gmod/Panel:NewObject
1632
1840
  */
1633
1841
  NewObject(self: Panel, objectName: string): void;
1842
+
1634
1843
  /**
1635
1844
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
1636
1845
  *
@@ -1638,6 +1847,7 @@ interface Panel {
1638
1847
  * @source https://wiki.facepunch.com/gmod/Panel:NewObjectCallback
1639
1848
  */
1640
1849
  NewObjectCallback(self: Panel, objectName: string, callbackName: string): void;
1850
+
1641
1851
  /**
1642
1852
  * Sets whether this panel's drawings should be clipped within the parent panel's bounds.
1643
1853
  *
@@ -1652,12 +1862,14 @@ interface Panel {
1652
1862
  * @source https://wiki.facepunch.com/gmod/Panel:NoClipping
1653
1863
  */
1654
1864
  NoClipping(self: Panel, disableClipping: boolean): void;
1865
+
1655
1866
  /**
1656
1867
  * Returns the number of children of the panel object that are selected. This is equivalent to calling [Panel:IsSelected](https://wiki.facepunch.com/gmod/Panel:IsSelected) on all child objects and counting the number of returns that are `true`.
1657
1868
  * @realm client and menu
1658
1869
  * @source https://wiki.facepunch.com/gmod/Panel:NumSelectedChildren
1659
1870
  */
1660
1871
  NumSelectedChildren(self: Panel): number;
1872
+
1661
1873
  /**
1662
1874
  * Instructs a HTML control to download and parse a HTML script using the passed URL.
1663
1875
  *
@@ -1666,6 +1878,7 @@ interface Panel {
1666
1878
  * @source https://wiki.facepunch.com/gmod/Panel:OpenURL
1667
1879
  */
1668
1880
  OpenURL(self: Panel, URL: string): void;
1881
+
1669
1882
  /**
1670
1883
  * Paints a ghost copy of the panel at the given position.
1671
1884
  * **WARNING**: This function sets Z pos of panel's children ([PANEL:SetZPos](https://wiki.facepunch.com/gmod/PANEL:SetZPos)). It also briefly unparents and reparents the panel.
@@ -1675,12 +1888,14 @@ interface Panel {
1675
1888
  * @source https://wiki.facepunch.com/gmod/Panel:PaintAt
1676
1889
  */
1677
1890
  PaintAt(self: Panel, posX: number, posY: number): void;
1891
+
1678
1892
  /**
1679
1893
  * Paints the panel at its current position. To use this you must call [Panel:SetPaintedManually](https://wiki.facepunch.com/gmod/Panel:SetPaintedManually)(true).
1680
1894
  * @realm client and menu
1681
1895
  * @source https://wiki.facepunch.com/gmod/Panel:PaintManual
1682
1896
  */
1683
1897
  PaintManual(self: Panel, unclamp?: boolean): void;
1898
+
1684
1899
  /**
1685
1900
  * Parents the panel to the HUD.
1686
1901
  * Makes it invisible on the escape-menu and disables controls.
@@ -1689,6 +1904,7 @@ interface Panel {
1689
1904
  * @source https://wiki.facepunch.com/gmod/Panel:ParentToHUD
1690
1905
  */
1691
1906
  ParentToHUD(self: Panel): void;
1907
+
1692
1908
  /**
1693
1909
  * Only works for TextEntries.
1694
1910
  *
@@ -1702,12 +1918,14 @@ interface Panel {
1702
1918
  * @deprecated Due to privacy concerns, this function has been disabled
1703
1919
  */
1704
1920
  Paste(self: Panel): void;
1921
+
1705
1922
  /**
1706
1923
  * Sets the width and position of a [DLabel](https://wiki.facepunch.com/gmod/DLabel) and places the passed panel object directly to the right of it. Returns the `y` value of the bottom of the tallest object. The panel on which this method is run is not relevant; only the passed objects are affected.
1707
1924
  * @realm client and menu
1708
1925
  * @source https://wiki.facepunch.com/gmod/Panel:PositionLabel
1709
1926
  */
1710
1927
  PositionLabel(self: Panel, lblWidth: number, x: number, y: number, lbl: Panel, panelObj: Panel): number;
1928
+
1711
1929
  /**
1712
1930
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
1713
1931
  *
@@ -1717,18 +1935,21 @@ interface Panel {
1717
1935
  * @source https://wiki.facepunch.com/gmod/Panel:Prepare
1718
1936
  */
1719
1937
  Prepare(self: Panel): void;
1938
+
1720
1939
  /**
1721
1940
  * Enables the queue for panel animations. If enabled, the next new animation will begin after all current animations have ended. This must be called before [Panel:NewAnimation](https://wiki.facepunch.com/gmod/Panel:NewAnimation) to work, and only applies to the next new animation. If you want to queue many, you must call this before each.
1722
1941
  * @realm client and menu
1723
1942
  * @source https://wiki.facepunch.com/gmod/Panel:Queue
1724
1943
  */
1725
1944
  Queue(self: Panel): void;
1945
+
1726
1946
  /**
1727
1947
  * Causes a [SpawnIcon](https://wiki.facepunch.com/gmod/SpawnIcon) to rebuild its model image.
1728
1948
  * @realm client
1729
1949
  * @source https://wiki.facepunch.com/gmod/Panel:RebuildSpawnIcon
1730
1950
  */
1731
1951
  RebuildSpawnIcon(self: Panel): void;
1952
+
1732
1953
  /**
1733
1954
  * Re-renders a spawn icon with customized cam data.
1734
1955
  *
@@ -1741,18 +1962,21 @@ interface Panel {
1741
1962
  * @source https://wiki.facepunch.com/gmod/Panel:RebuildSpawnIconEx
1742
1963
  */
1743
1964
  RebuildSpawnIconEx(self: Panel, data: table): void;
1965
+
1744
1966
  /**
1745
1967
  * Allows the panel to receive drag and drop events. Can be called multiple times with different names to receive multiple different draggable panel events.
1746
1968
  * @realm client and menu
1747
1969
  * @source https://wiki.facepunch.com/gmod/Panel:Receiver
1748
1970
  */
1749
1971
  Receiver(self: Panel, name: string, func: (pnl: Panel, tbl: table, dropped: boolean, menuIndex: number, x: number, y: number) => void, menu?: table): void;
1972
+
1750
1973
  /**
1751
1974
  * Refreshes the HTML panel's current page.
1752
1975
  * @realm client and menu
1753
1976
  * @source https://wiki.facepunch.com/gmod/Panel:Refresh
1754
1977
  */
1755
1978
  Refresh(self: Panel, ignoreCache?: boolean): void;
1979
+
1756
1980
  /**
1757
1981
  * Marks a panel for deletion so it will be deleted on the next frame.
1758
1982
  *
@@ -1766,18 +1990,21 @@ interface Panel {
1766
1990
  * @source https://wiki.facepunch.com/gmod/Panel:Remove
1767
1991
  */
1768
1992
  Remove(self: Panel): void;
1993
+
1769
1994
  /**
1770
1995
  * Attempts to obtain focus for this panel.
1771
1996
  * @realm client and menu
1772
1997
  * @source https://wiki.facepunch.com/gmod/Panel:RequestFocus
1773
1998
  */
1774
1999
  RequestFocus(self: Panel): void;
2000
+
1775
2001
  /**
1776
2002
  * Resets all text fades in a [RichText](https://wiki.facepunch.com/gmod/RichText) element made with [Panel:InsertFade](https://wiki.facepunch.com/gmod/Panel:InsertFade).
1777
2003
  * @realm client and menu
1778
2004
  * @source https://wiki.facepunch.com/gmod/Panel:ResetAllFades
1779
2005
  */
1780
2006
  ResetAllFades(self: Panel, hold: boolean, expiredOnly: boolean, newSustain: number): void;
2007
+
1781
2008
  /**
1782
2009
  * Executes a string as JavaScript code on a web document panel.
1783
2010
  *
@@ -1794,6 +2021,7 @@ interface Panel {
1794
2021
  * @source https://wiki.facepunch.com/gmod/Panel:RunJavascript
1795
2022
  */
1796
2023
  RunJavascript(self: Panel, js: string): void;
2024
+
1797
2025
  /**
1798
2026
  * Saves the current state (caret position and the text inside) of a [TextEntry](https://wiki.facepunch.com/gmod/TextEntry) as an undo state.
1799
2027
  *
@@ -1803,6 +2031,7 @@ interface Panel {
1803
2031
  * @source https://wiki.facepunch.com/gmod/Panel:SaveUndoState
1804
2032
  */
1805
2033
  SaveUndoState(self: Panel): void;
2034
+
1806
2035
  /**
1807
2036
  * Translates global screen coordinate to coordinates relative to the panel.
1808
2037
  *
@@ -1815,6 +2044,7 @@ interface Panel {
1815
2044
  * @source https://wiki.facepunch.com/gmod/Panel:ScreenToLocal
1816
2045
  */
1817
2046
  ScreenToLocal(self: Panel, screenX: number, screenY: number): (number, number);
2047
+
1818
2048
  /**
1819
2049
  * Selects all items within a panel or object. For text-based objects, selects all text.
1820
2050
  *
@@ -1825,12 +2055,14 @@ interface Panel {
1825
2055
  * @source https://wiki.facepunch.com/gmod/Panel:SelectAll
1826
2056
  */
1827
2057
  SelectAll(self: Panel): void;
2058
+
1828
2059
  /**
1829
2060
  * If called on a [TextEntry](https://wiki.facepunch.com/gmod/TextEntry), clicking the text entry for the first time will automatically select all of the text ready to be copied by the user.
1830
2061
  * @realm client and menu
1831
2062
  * @source https://wiki.facepunch.com/gmod/Panel:SelectAllOnFocus
1832
2063
  */
1833
2064
  SelectAllOnFocus(self: Panel): void;
2065
+
1834
2066
  /**
1835
2067
  * Selects all the text in a panel object. Will not select non-text items; for this, use [Panel:SelectAll](https://wiki.facepunch.com/gmod/Panel:SelectAll).
1836
2068
  * @realm client and menu
@@ -1838,6 +2070,7 @@ interface Panel {
1838
2070
  * @deprecated Duplicate of Panel:SelectAll.
1839
2071
  */
1840
2072
  SelectAllText(self: Panel, resetCursorPos: boolean): void;
2073
+
1841
2074
  /**
1842
2075
  * Deselects all items in a panel object. For text-based objects, this will deselect all text.
1843
2076
  *
@@ -1848,12 +2081,14 @@ interface Panel {
1848
2081
  * @source https://wiki.facepunch.com/gmod/Panel:SelectNone
1849
2082
  */
1850
2083
  SelectNone(self: Panel): void;
2084
+
1851
2085
  /**
1852
2086
  * Sets the achievement to be displayed by [AchievementIcon](https://wiki.facepunch.com/gmod/AchievementIcon).
1853
2087
  * @realm client and menu
1854
2088
  * @source https://wiki.facepunch.com/gmod/Panel:SetAchievement
1855
2089
  */
1856
2090
  SetAchievement(self: Panel, id: number): void;
2091
+
1857
2092
  /**
1858
2093
  * Configures a [TextEntry](https://wiki.facepunch.com/gmod/TextEntry) to allow user to type characters that are not included in the US-ASCII (7-bit ASCII) character set.
1859
2094
  *
@@ -1863,24 +2098,28 @@ interface Panel {
1863
2098
  * @source https://wiki.facepunch.com/gmod/Panel:SetAllowNonAsciiCharacters
1864
2099
  */
1865
2100
  SetAllowNonAsciiCharacters(self: Panel, allowed: boolean): void;
2101
+
1866
2102
  /**
1867
2103
  * Sets the alpha multiplier for the panel
1868
2104
  * @realm client and menu
1869
2105
  * @source https://wiki.facepunch.com/gmod/Panel:SetAlpha
1870
2106
  */
1871
2107
  SetAlpha(self: Panel, alpha: number): void;
2108
+
1872
2109
  /**
1873
2110
  * Enables or disables animations for the panel object by overriding the [PANEL:AnimationThink](https://wiki.facepunch.com/gmod/PANEL:AnimationThink) hook to nil and back.
1874
2111
  * @realm client and menu
1875
2112
  * @source https://wiki.facepunch.com/gmod/Panel:SetAnimationEnabled
1876
2113
  */
1877
2114
  SetAnimationEnabled(self: Panel, enable: boolean): void;
2115
+
1878
2116
  /**
1879
2117
  * Sets whenever the panel should be removed if the parent was removed.
1880
2118
  * @realm client and menu
1881
2119
  * @source https://wiki.facepunch.com/gmod/Panel:SetAutoDelete
1882
2120
  */
1883
2121
  SetAutoDelete(self: Panel, autoDelete: boolean): void;
2122
+
1884
2123
  /**
1885
2124
  * Sets the background color of a panel such as a [RichText](https://wiki.facepunch.com/gmod/RichText), [Label](https://wiki.facepunch.com/gmod/Label), [DColorCube](https://wiki.facepunch.com/gmod/DColorCube) or the base [Panel](https://wiki.facepunch.com/gmod/Panel).
1886
2125
  *
@@ -1897,7 +2136,9 @@ interface Panel {
1897
2136
  * @source https://wiki.facepunch.com/gmod/Panel:SetBGColor
1898
2137
  */
1899
2138
  SetBGColor(self: Panel, r: number, g: number, b: number, a: number): void;
2139
+
1900
2140
  SetBGColor(self: Panel, color: Color): void;
2141
+
1901
2142
  /**
1902
2143
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
1903
2144
  * Sets the background color of the panel.
@@ -1905,12 +2146,14 @@ interface Panel {
1905
2146
  * @source https://wiki.facepunch.com/gmod/Panel:SetBGColorEx
1906
2147
  */
1907
2148
  SetBGColorEx(self: Panel, r: number, g: number, b: number, a: number): void;
2149
+
1908
2150
  /**
1909
2151
  * Sets the position of the caret (or text cursor) in a text-based panel object.
1910
2152
  * @realm client and menu
1911
2153
  * @source https://wiki.facepunch.com/gmod/Panel:SetCaretPos
1912
2154
  */
1913
2155
  SetCaretPos(self: Panel, offset: number): void;
2156
+
1914
2157
  /**
1915
2158
  * **WARNING**: This function does not exist on all panels
1916
2159
  *
@@ -1927,6 +2170,7 @@ interface Panel {
1927
2170
  * @source https://wiki.facepunch.com/gmod/Panel:SetConVar
1928
2171
  */
1929
2172
  SetConVar(self: Panel, convar: string): void;
2173
+
1930
2174
  /**
1931
2175
  * Sets the alignment of the contents.
1932
2176
  *
@@ -1939,6 +2183,7 @@ interface Panel {
1939
2183
  * @source https://wiki.facepunch.com/gmod/Panel:SetContentAlignment
1940
2184
  */
1941
2185
  SetContentAlignment(self: Panel, alignment: number): void;
2186
+
1942
2187
  /**
1943
2188
  * Stores a string in the named cookie using [Panel:GetCookieName](https://wiki.facepunch.com/gmod/Panel:GetCookieName) as prefix.
1944
2189
  *
@@ -1956,12 +2201,14 @@ interface Panel {
1956
2201
  * @source https://wiki.facepunch.com/gmod/Panel:SetCookie
1957
2202
  */
1958
2203
  SetCookie(self: Panel, cookieName: string, value: string): void;
2204
+
1959
2205
  /**
1960
2206
  * Sets the panel's cookie name. Calls [PANEL:LoadCookies](https://wiki.facepunch.com/gmod/PANEL:LoadCookies) if defined.
1961
2207
  * @realm client and menu
1962
2208
  * @source https://wiki.facepunch.com/gmod/Panel:SetCookieName
1963
2209
  */
1964
2210
  SetCookieName(self: Panel, name: string): void;
2211
+
1965
2212
  /**
1966
2213
  * Sets the appearance of the cursor. You can find a list of all available cursors with image previews [here](https://wiki.facepunch.com/gmod/Cursors).
1967
2214
  *
@@ -1969,6 +2216,7 @@ interface Panel {
1969
2216
  * @source https://wiki.facepunch.com/gmod/Panel:SetCursor
1970
2217
  */
1971
2218
  SetCursor(self: Panel, cursor: string): void;
2219
+
1972
2220
  /**
1973
2221
  * Sets the drag parent.
1974
2222
  *
@@ -1978,6 +2226,7 @@ interface Panel {
1978
2226
  * @source https://wiki.facepunch.com/gmod/Panel:SetDragParent
1979
2227
  */
1980
2228
  SetDragParent(self: Panel, parent: Panel): void;
2229
+
1981
2230
  /**
1982
2231
  * Sets the visibility of the language selection box when typing in non-English mode.
1983
2232
  *
@@ -1987,6 +2236,7 @@ interface Panel {
1987
2236
  * @source https://wiki.facepunch.com/gmod/Panel:SetDrawLanguageID
1988
2237
  */
1989
2238
  SetDrawLanguageID(self: Panel, visible: boolean): void;
2239
+
1990
2240
  /**
1991
2241
  * Sets where to draw the language selection box.
1992
2242
  *
@@ -1996,6 +2246,7 @@ interface Panel {
1996
2246
  * @source https://wiki.facepunch.com/gmod/Panel:SetDrawLanguageIDAtLeft
1997
2247
  */
1998
2248
  SetDrawLanguageIDAtLeft(self: Panel, left: boolean): void;
2249
+
1999
2250
  /**
2000
2251
  * Makes the panel render in front of all others, including the spawn menu and main menu.
2001
2252
  *
@@ -2013,6 +2264,7 @@ interface Panel {
2013
2264
  * @source https://wiki.facepunch.com/gmod/Panel:SetDrawOnTop
2014
2265
  */
2015
2266
  SetDrawOnTop(self: Panel, drawOnTop?: boolean): void;
2267
+
2016
2268
  /**
2017
2269
  * Sets the target area for dropping when an object is being dragged around this panel using the [dragndrop](https://wiki.facepunch.com/gmod/dragndrop).
2018
2270
  *
@@ -2022,6 +2274,7 @@ interface Panel {
2022
2274
  * @source https://wiki.facepunch.com/gmod/Panel:SetDropTarget
2023
2275
  */
2024
2276
  SetDropTarget(self: Panel, x: number, y: number, width: number, height: number): void;
2277
+
2025
2278
  /**
2026
2279
  * Sets the enabled state of a panel object that supports being disabled, such as a [DButton](https://wiki.facepunch.com/gmod/DButton) or [DTextEntry](https://wiki.facepunch.com/gmod/DTextEntry).
2027
2280
  *
@@ -2033,6 +2286,7 @@ interface Panel {
2033
2286
  * @source https://wiki.facepunch.com/gmod/Panel:SetEnabled
2034
2287
  */
2035
2288
  SetEnabled(self: Panel, enable: boolean): void;
2289
+
2036
2290
  /**
2037
2291
  * Adds a shadow falling to the bottom right corner of the panel's text.
2038
2292
  *
@@ -2043,6 +2297,7 @@ interface Panel {
2043
2297
  * @source https://wiki.facepunch.com/gmod/Panel:SetExpensiveShadow
2044
2298
  */
2045
2299
  SetExpensiveShadow(self: Panel, distance: number, Color: Color): void;
2300
+
2046
2301
  /**
2047
2302
  * Sets the foreground color of a panel.
2048
2303
  *
@@ -2061,7 +2316,9 @@ interface Panel {
2061
2316
  * @source https://wiki.facepunch.com/gmod/Panel:SetFGColor
2062
2317
  */
2063
2318
  SetFGColor(self: Panel, r: number, g: number, b: number, a: number): void;
2319
+
2064
2320
  SetFGColor(self: Panel, color: Color): void;
2321
+
2065
2322
  /**
2066
2323
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
2067
2324
  * Sets the foreground color of the panel.
@@ -2072,6 +2329,7 @@ interface Panel {
2072
2329
  * @source https://wiki.facepunch.com/gmod/Panel:SetFGColorEx
2073
2330
  */
2074
2331
  SetFGColorEx(self: Panel, r: number, g: number, b: number, a: number): void;
2332
+
2075
2333
  /**
2076
2334
  * Sets the panel that owns this FocusNavGroup to be the root in the focus traversal hierarchy. This function will only work on EditablePanel class panels and its derivatives.
2077
2335
  *
@@ -2081,6 +2339,7 @@ interface Panel {
2081
2339
  * @source https://wiki.facepunch.com/gmod/Panel:SetFocusTopLevel
2082
2340
  */
2083
2341
  SetFocusTopLevel(self: Panel, state: boolean): void;
2342
+
2084
2343
  /**
2085
2344
  * Sets the font used to render this panel's text. This works for [Label](https://wiki.facepunch.com/gmod/Label), [TextEntry](https://wiki.facepunch.com/gmod/TextEntry) and [RichText](https://wiki.facepunch.com/gmod/RichText), but it's a better idea to use their local `SetFont` ([DTextEntry:SetFont](https://wiki.facepunch.com/gmod/DTextEntry:SetFont), [DLabel:SetFont](https://wiki.facepunch.com/gmod/DLabel:SetFont)) methods when available.
2086
2345
  *
@@ -2090,12 +2349,14 @@ interface Panel {
2090
2349
  * @source https://wiki.facepunch.com/gmod/Panel:SetFontInternal
2091
2350
  */
2092
2351
  SetFontInternal(self: Panel, fontName: string): void;
2352
+
2093
2353
  /**
2094
2354
  * Allows you to set HTML code within a panel.
2095
2355
  * @realm client and menu
2096
2356
  * @source https://wiki.facepunch.com/gmod/Panel:SetHTML
2097
2357
  */
2098
2358
  SetHTML(self: Panel, HTML: string): void;
2359
+
2099
2360
  /**
2100
2361
  * Sets the height of the panel.
2101
2362
  *
@@ -2108,6 +2369,7 @@ interface Panel {
2108
2369
  * @source https://wiki.facepunch.com/gmod/Panel:SetHeight
2109
2370
  */
2110
2371
  SetHeight(self: Panel, height: number): void;
2372
+
2111
2373
  /**
2112
2374
  * Enables or disables the keyboard input for the panel.
2113
2375
  * @realm client and menu
@@ -2115,12 +2377,14 @@ interface Panel {
2115
2377
  * @deprecated Alias of Panel:SetKeyboardInputEnabled(lowercase)
2116
2378
  */
2117
2379
  SetKeyBoardInputEnabled(self: Panel, keyboardInput: boolean): void;
2380
+
2118
2381
  /**
2119
2382
  * Allows or disallows the panel to receive keyboard focus and input. This is recursively applied to all children.
2120
2383
  * @realm client
2121
2384
  * @source https://wiki.facepunch.com/gmod/Panel:SetKeyboardInputEnabled(lowercase)
2122
2385
  */
2123
2386
  SetKeyboardInputEnabled(self: Panel, enable: boolean): void;
2387
+
2124
2388
  /**
2125
2389
  * Sets the height of a single line of a [RichText](https://wiki.facepunch.com/gmod/RichText) panel.
2126
2390
  *
@@ -2128,6 +2392,7 @@ interface Panel {
2128
2392
  * @source https://wiki.facepunch.com/gmod/Panel:SetLineHeight
2129
2393
  */
2130
2394
  SetLineHeight(self: Panel): number;
2395
+
2131
2396
  /**
2132
2397
  * Sets the maximum character count this panel should have.
2133
2398
  *
@@ -2137,6 +2402,7 @@ interface Panel {
2137
2402
  * @source https://wiki.facepunch.com/gmod/Panel:SetMaximumCharCount
2138
2403
  */
2139
2404
  SetMaximumCharCount(self: Panel, maxChar: number): void;
2405
+
2140
2406
  /**
2141
2407
  * Sets the minimum dimensions of the panel or object.
2142
2408
  *
@@ -2148,6 +2414,7 @@ interface Panel {
2148
2414
  * @source https://wiki.facepunch.com/gmod/Panel:SetMinimumSize
2149
2415
  */
2150
2416
  SetMinimumSize(self: Panel, minW?: number, minH?: number): void;
2417
+
2151
2418
  /**
2152
2419
  * Sets the model to be displayed by [SpawnIcon](https://wiki.facepunch.com/gmod/SpawnIcon).
2153
2420
  *
@@ -2158,6 +2425,7 @@ interface Panel {
2158
2425
  * @source https://wiki.facepunch.com/gmod/Panel:SetModel
2159
2426
  */
2160
2427
  SetModel(self: Panel, ModelPath: string, skin?: number, bodygroups?: string): void;
2428
+
2161
2429
  /**
2162
2430
  * Enables or disables the mouse input for the panel.
2163
2431
  * **NOTE**: Panels parented to the context menu will not be clickable unless [Panel:SetKeyboardInputEnabled](https://wiki.facepunch.com/gmod/Panel:SetKeyboardInputEnabled(lowercase)) is enabled or [Panel:MakePopup](https://wiki.facepunch.com/gmod/Panel:MakePopup) has been called. If you want the panel to have mouse input but you do not want to prevent players from moving, set [Panel:SetKeyboardInputEnabled](https://wiki.facepunch.com/gmod/Panel:SetKeyboardInputEnabled(lowercase)) to false immediately after calling [Panel:MakePopup](https://wiki.facepunch.com/gmod/Panel:MakePopup).
@@ -2167,42 +2435,49 @@ interface Panel {
2167
2435
  * @source https://wiki.facepunch.com/gmod/Panel:SetMouseInputEnabled
2168
2436
  */
2169
2437
  SetMouseInputEnabled(self: Panel, mouseInput: boolean): void;
2438
+
2170
2439
  /**
2171
2440
  * Enables or disables the multi-line functionality of [TextEntry](https://wiki.facepunch.com/gmod/TextEntry) panel and its derivatives.
2172
2441
  * @realm client and menu
2173
2442
  * @source https://wiki.facepunch.com/gmod/Panel:SetMultiline
2174
2443
  */
2175
2444
  SetMultiline(self: Panel, multiline: boolean): void;
2445
+
2176
2446
  /**
2177
2447
  * Sets the internal name of the panel. Can be retrieved with [Panel:GetName](https://wiki.facepunch.com/gmod/Panel:GetName).
2178
2448
  * @realm client and menu
2179
2449
  * @source https://wiki.facepunch.com/gmod/Panel:SetName
2180
2450
  */
2181
2451
  SetName(self: Panel, name: string): void;
2452
+
2182
2453
  /**
2183
2454
  * Set to true to open links in an external browser. This only functions on the `x86-64` beta.
2184
2455
  * @realm menu
2185
2456
  * @source https://wiki.facepunch.com/gmod/Panel:SetOpenLinksExternally
2186
2457
  */
2187
2458
  SetOpenLinksExternally(self: Panel, openExternally: boolean): void;
2459
+
2188
2460
  /**
2189
2461
  * Sets whether the default background of the panel should be drawn or not. It's color is usually set by [Panel:SetBGColor](https://wiki.facepunch.com/gmod/Panel:SetBGColor).
2190
2462
  * @realm client and menu
2191
2463
  * @source https://wiki.facepunch.com/gmod/Panel:SetPaintBackgroundEnabled
2192
2464
  */
2193
2465
  SetPaintBackgroundEnabled(self: Panel, paintBackground: boolean): void;
2466
+
2194
2467
  /**
2195
2468
  * Sets whether the default border of the panel should be drawn or not.
2196
2469
  * @realm client and menu
2197
2470
  * @source https://wiki.facepunch.com/gmod/Panel:SetPaintBorderEnabled
2198
2471
  */
2199
2472
  SetPaintBorderEnabled(self: Panel, paintBorder: boolean): void;
2473
+
2200
2474
  /**
2201
2475
  * Enables or disables painting of the panel manually with [Panel:PaintManual](https://wiki.facepunch.com/gmod/Panel:PaintManual).
2202
2476
  * @realm client and menu
2203
2477
  * @source https://wiki.facepunch.com/gmod/Panel:SetPaintedManually
2204
2478
  */
2205
2479
  SetPaintedManually(self: Panel, paintedManually: boolean): void;
2480
+
2206
2481
  /**
2207
2482
  * Sets the parent of the panel.
2208
2483
  * **NOTE**: Panels parented to the context menu will not be clickable unless [Panel:SetMouseInputEnabled](https://wiki.facepunch.com/gmod/Panel:SetMouseInputEnabled) and [Panel:SetKeyboardInputEnabled](https://wiki.facepunch.com/gmod/Panel:SetKeyboardInputEnabled(lowercase)) are both true or [Panel:MakePopup](https://wiki.facepunch.com/gmod/Panel:MakePopup) has been called. If you want the panel to have mouse input but you do not want to prevent players from moving, set [Panel:SetKeyboardInputEnabled](https://wiki.facepunch.com/gmod/Panel:SetKeyboardInputEnabled(lowercase)) to false immediately after calling [Panel:MakePopup](https://wiki.facepunch.com/gmod/Panel:MakePopup).
@@ -2212,18 +2487,21 @@ interface Panel {
2212
2487
  * @source https://wiki.facepunch.com/gmod/Panel:SetParent
2213
2488
  */
2214
2489
  SetParent(self: Panel, parent: Panel): void;
2490
+
2215
2491
  /**
2216
2492
  * Used by [AvatarImage](https://wiki.facepunch.com/gmod/AvatarImage) to load an avatar for given player.
2217
2493
  * @realm client
2218
2494
  * @source https://wiki.facepunch.com/gmod/Panel:SetPlayer
2219
2495
  */
2220
2496
  SetPlayer(self: Panel, player: Player, size?: number): void;
2497
+
2221
2498
  /**
2222
2499
  * If this panel object has been made a popup with [Panel:MakePopup](https://wiki.facepunch.com/gmod/Panel:MakePopup), this method will prevent it from drawing in front of other panels when it receives input focus.
2223
2500
  * @realm client and menu
2224
2501
  * @source https://wiki.facepunch.com/gmod/Panel:SetPopupStayAtBack
2225
2502
  */
2226
2503
  SetPopupStayAtBack(self: Panel, stayAtBack: boolean): void;
2504
+
2227
2505
  /**
2228
2506
  * Sets the position of the panel's top left corner.
2229
2507
  *
@@ -2238,30 +2516,35 @@ interface Panel {
2238
2516
  * @source https://wiki.facepunch.com/gmod/Panel:SetPos
2239
2517
  */
2240
2518
  SetPos(self: Panel, posX: number, posY: number): void;
2519
+
2241
2520
  /**
2242
2521
  * Sets whenever the panel should be rendered in a screenshot. (`jpeg` or `screenshot` commands, Camera SWEP)
2243
2522
  * @realm client and menu
2244
2523
  * @source https://wiki.facepunch.com/gmod/Panel:SetRenderInScreenshots
2245
2524
  */
2246
2525
  SetRenderInScreenshots(self: Panel, renderInScreenshot: boolean): void;
2526
+
2247
2527
  /**
2248
2528
  * Sets whether the panel object can be selected or not (like icons in the Spawn Menu, holding Shift). If enabled, this will affect the function of a [DButton](https://wiki.facepunch.com/gmod/DButton) whilst Shift is pressed. [Panel:SetSelected](https://wiki.facepunch.com/gmod/Panel:SetSelected) can be used to select/deselect the object.
2249
2529
  * @realm client and menu
2250
2530
  * @source https://wiki.facepunch.com/gmod/Panel:SetSelectable
2251
2531
  */
2252
2532
  SetSelectable(self: Panel, selectable: boolean): void;
2533
+
2253
2534
  /**
2254
2535
  * Sets the selected state of a selectable panel object. This functionality is set with [Panel:SetSelectable](https://wiki.facepunch.com/gmod/Panel:SetSelectable) and checked with [Panel:IsSelectable](https://wiki.facepunch.com/gmod/Panel:IsSelectable).
2255
2536
  * @realm client and menu
2256
2537
  * @source https://wiki.facepunch.com/gmod/Panel:SetSelected
2257
2538
  */
2258
2539
  SetSelected(self: Panel, selected?: boolean): void;
2540
+
2259
2541
  /**
2260
2542
  * Enables the panel object for selection (much like the spawn menu).
2261
2543
  * @realm client and menu
2262
2544
  * @source https://wiki.facepunch.com/gmod/Panel:SetSelectionCanvas
2263
2545
  */
2264
2546
  SetSelectionCanvas(self: Panel, set: boolean): void;
2547
+
2265
2548
  /**
2266
2549
  * Sets the size of the panel.
2267
2550
  *
@@ -2278,12 +2561,14 @@ interface Panel {
2278
2561
  * @source https://wiki.facepunch.com/gmod/Panel:SetSize
2279
2562
  */
2280
2563
  SetSize(self: Panel, width: number, height: number): void;
2564
+
2281
2565
  /**
2282
2566
  * Sets the derma skin that the panel object will use, and refreshes all panels with [derma.RefreshSkins](https://wiki.facepunch.com/gmod/derma.RefreshSkins).
2283
2567
  * @realm client and menu
2284
2568
  * @source https://wiki.facepunch.com/gmod/Panel:SetSkin
2285
2569
  */
2286
2570
  SetSkin(self: Panel, skinName: string): void;
2571
+
2287
2572
  /**
2288
2573
  * Sets the `.png` image to be displayed on a [SpawnIcon](https://wiki.facepunch.com/gmod/SpawnIcon) or the panel it is based on - [ModelImage](https://wiki.facepunch.com/gmod/ModelImage).
2289
2574
  *
@@ -2293,12 +2578,14 @@ interface Panel {
2293
2578
  * @source https://wiki.facepunch.com/gmod/Panel:SetSpawnIcon
2294
2579
  */
2295
2580
  SetSpawnIcon(self: Panel, icon: string): void;
2581
+
2296
2582
  /**
2297
2583
  * Used by [AvatarImage](https://wiki.facepunch.com/gmod/AvatarImage) panels to load an avatar by its 64-bit Steam ID (community ID).
2298
2584
  * @realm client
2299
2585
  * @source https://wiki.facepunch.com/gmod/Panel:SetSteamID
2300
2586
  */
2301
2587
  SetSteamID(self: Panel, steamid: string, size: number): void;
2588
+
2302
2589
  /**
2303
2590
  * When TAB is pressed, the next selectable panel in the number sequence is selected.
2304
2591
  *
@@ -2309,12 +2596,14 @@ interface Panel {
2309
2596
  * @source https://wiki.facepunch.com/gmod/Panel:SetTabPosition
2310
2597
  */
2311
2598
  SetTabPosition(self: Panel, position: number): void;
2599
+
2312
2600
  /**
2313
2601
  * Sets height of a panel. An alias of [Panel:SetHeight](https://wiki.facepunch.com/gmod/Panel:SetHeight).
2314
2602
  * @realm client and menu
2315
2603
  * @source https://wiki.facepunch.com/gmod/Panel:SetTall
2316
2604
  */
2317
2605
  SetTall(self: Panel, height: number): void;
2606
+
2318
2607
  /**
2319
2608
  * Removes the panel after given time in seconds.
2320
2609
  * **NOTE**: This function will not work if [PANEL:AnimationThink](https://wiki.facepunch.com/gmod/PANEL:AnimationThink) is overridden, unless [Panel:AnimationThinkInternal](https://wiki.facepunch.com/gmod/Panel:AnimationThinkInternal) is called every frame.
@@ -2324,6 +2613,7 @@ interface Panel {
2324
2613
  * @source https://wiki.facepunch.com/gmod/Panel:SetTerm
2325
2614
  */
2326
2615
  SetTerm(self: Panel, delay: number): void;
2616
+
2327
2617
  /**
2328
2618
  * Sets the text value of a panel object containing text, such as a [Label](https://wiki.facepunch.com/gmod/Label), [TextEntry](https://wiki.facepunch.com/gmod/TextEntry) or [RichText](https://wiki.facepunch.com/gmod/RichText) and their derivatives, such as [DLabel](https://wiki.facepunch.com/gmod/DLabel), [DTextEntry](https://wiki.facepunch.com/gmod/DTextEntry) or [DButton](https://wiki.facepunch.com/gmod/DButton).
2329
2619
  *
@@ -2339,6 +2629,7 @@ interface Panel {
2339
2629
  * @source https://wiki.facepunch.com/gmod/Panel:SetText
2340
2630
  */
2341
2631
  SetText(self: Panel, text: string): void;
2632
+
2342
2633
  /**
2343
2634
  * Makes [TextEntry](https://wiki.facepunch.com/gmod/TextEntry)'s text be replaced by `*` characters, just like a password-entry text field would.
2344
2635
  *
@@ -2346,18 +2637,21 @@ interface Panel {
2346
2637
  * @source https://wiki.facepunch.com/gmod/Panel:SetTextHidden
2347
2638
  */
2348
2639
  SetTextHidden(self: Panel, arg0: boolean): void;
2640
+
2349
2641
  /**
2350
2642
  * Sets the left and top text margins of a text-based panel object, such as a [DButton](https://wiki.facepunch.com/gmod/DButton) or [DLabel](https://wiki.facepunch.com/gmod/DLabel).
2351
2643
  * @realm client and menu
2352
2644
  * @source https://wiki.facepunch.com/gmod/Panel:SetTextInset
2353
2645
  */
2354
2646
  SetTextInset(self: Panel, insetX: number, insetY: number): void;
2647
+
2355
2648
  /**
2356
2649
  * Sets text selection colors of a [RichText](https://wiki.facepunch.com/gmod/RichText) element.
2357
2650
  * @realm client and menu
2358
2651
  * @source https://wiki.facepunch.com/gmod/Panel:SetTextSelectionColors
2359
2652
  */
2360
2653
  SetTextSelectionColors(self: Panel, textColor: Color, backgroundColor: Color): void;
2654
+
2361
2655
  /**
2362
2656
  * Sets the height of a [RichText](https://wiki.facepunch.com/gmod/RichText) element to accommodate the text inside.
2363
2657
  *
@@ -2368,6 +2662,7 @@ interface Panel {
2368
2662
  * @source https://wiki.facepunch.com/gmod/Panel:SetToFullHeight
2369
2663
  */
2370
2664
  SetToFullHeight(self: Panel): void;
2665
+
2371
2666
  /**
2372
2667
  * Sets the tooltip to be displayed when a player hovers over the panel object with their cursor.
2373
2668
  *
@@ -2377,6 +2672,7 @@ interface Panel {
2377
2672
  * @source https://wiki.facepunch.com/gmod/Panel:SetTooltip
2378
2673
  */
2379
2674
  SetTooltip(self: Panel, str?: string): void;
2675
+
2380
2676
  /**
2381
2677
  * Sets the tooltip delay. (time between hovering over the panel, and the tooltip showing up)
2382
2678
  *
@@ -2386,6 +2682,7 @@ interface Panel {
2386
2682
  * @source https://wiki.facepunch.com/gmod/Panel:SetTooltipDelay
2387
2683
  */
2388
2684
  SetTooltipDelay(self: Panel, tooltip: number): void;
2685
+
2389
2686
  /**
2390
2687
  * Sets the panel to be displayed as contents of a [DTooltip](https://wiki.facepunch.com/gmod/DTooltip) when a player hovers over the panel object with their cursor. See [Panel:SetTooltipPanelOverride](https://wiki.facepunch.com/gmod/Panel:SetTooltipPanelOverride) if you are looking to override [DTooltip](https://wiki.facepunch.com/gmod/DTooltip) itself.
2391
2688
  *
@@ -2401,6 +2698,7 @@ interface Panel {
2401
2698
  * @source https://wiki.facepunch.com/gmod/Panel:SetTooltipPanel
2402
2699
  */
2403
2700
  SetTooltipPanel(self: Panel, tooltipPanel?: Panel): void;
2701
+
2404
2702
  /**
2405
2703
  * Sets the panel class to be created instead of [DTooltip](https://wiki.facepunch.com/gmod/DTooltip) when the player hovers over this panel and a tooltip needs creating.
2406
2704
  *
@@ -2408,12 +2706,14 @@ interface Panel {
2408
2706
  * @source https://wiki.facepunch.com/gmod/Panel:SetTooltipPanelOverride
2409
2707
  */
2410
2708
  SetTooltipPanelOverride(self: Panel, override: string): void;
2709
+
2411
2710
  /**
2412
2711
  * Sets the URL of a link-based panel such as [DLabelURL](https://wiki.facepunch.com/gmod/DLabelURL).
2413
2712
  * @realm client and menu
2414
2713
  * @source https://wiki.facepunch.com/gmod/Panel:SetURL
2415
2714
  */
2416
2715
  SetURL(self: Panel, url: string): void;
2716
+
2417
2717
  /**
2418
2718
  * Sets the underlined font for use by clickable text in a [RichText](https://wiki.facepunch.com/gmod/RichText). See also [Panel:InsertClickableTextStart](https://wiki.facepunch.com/gmod/Panel:InsertClickableTextStart)
2419
2719
  *
@@ -2423,6 +2723,7 @@ interface Panel {
2423
2723
  * @source https://wiki.facepunch.com/gmod/Panel:SetUnderlineFont
2424
2724
  */
2425
2725
  SetUnderlineFont(self: Panel, fontName: string): void;
2726
+
2426
2727
  /**
2427
2728
  * Sets the visibility of the vertical scrollbar.
2428
2729
  *
@@ -2432,18 +2733,21 @@ interface Panel {
2432
2733
  * @source https://wiki.facepunch.com/gmod/Panel:SetVerticalScrollbarEnabled
2433
2734
  */
2434
2735
  SetVerticalScrollbarEnabled(self: Panel, display?: boolean): void;
2736
+
2435
2737
  /**
2436
2738
  * Sets the "visibility" of the panel.
2437
2739
  * @realm client and menu
2438
2740
  * @source https://wiki.facepunch.com/gmod/Panel:SetVisible
2439
2741
  */
2440
2742
  SetVisible(self: Panel, visible: boolean): void;
2743
+
2441
2744
  /**
2442
2745
  * Sets width of a panel. An alias of [Panel:SetWidth](https://wiki.facepunch.com/gmod/Panel:SetWidth).
2443
2746
  * @realm client and menu
2444
2747
  * @source https://wiki.facepunch.com/gmod/Panel:SetWide
2445
2748
  */
2446
2749
  SetWide(self: Panel, width: number): void;
2750
+
2447
2751
  /**
2448
2752
  * Sets the width of the panel.
2449
2753
  *
@@ -2456,6 +2760,7 @@ interface Panel {
2456
2760
  * @source https://wiki.facepunch.com/gmod/Panel:SetWidth
2457
2761
  */
2458
2762
  SetWidth(self: Panel, width: number): void;
2763
+
2459
2764
  /**
2460
2765
  * This makes it so that when you're hovering over this panel you can "click" on the world. Your weapon aim (and its viewmodel) will follow the cursor. This is primarily used for the Sandbox context menu.
2461
2766
  *
@@ -2463,6 +2768,7 @@ interface Panel {
2463
2768
  * @source https://wiki.facepunch.com/gmod/Panel:SetWorldClicker
2464
2769
  */
2465
2770
  SetWorldClicker(self: Panel, enable: boolean): void;
2771
+
2466
2772
  /**
2467
2773
  * Sets whether text wrapping should be enabled or disabled on [Label](https://wiki.facepunch.com/gmod/Label) and [DLabel](https://wiki.facepunch.com/gmod/DLabel) panels.
2468
2774
  *
@@ -2472,6 +2778,7 @@ interface Panel {
2472
2778
  * @source https://wiki.facepunch.com/gmod/Panel:SetWrap
2473
2779
  */
2474
2780
  SetWrap(self: Panel, wrap: boolean): void;
2781
+
2475
2782
  /**
2476
2783
  * Sets the X position of the panel.
2477
2784
  *
@@ -2481,6 +2788,7 @@ interface Panel {
2481
2788
  * @source https://wiki.facepunch.com/gmod/Panel:SetX
2482
2789
  */
2483
2790
  SetX(self: Panel, x: number): void;
2791
+
2484
2792
  /**
2485
2793
  * Sets the Y position of the panel.
2486
2794
  *
@@ -2490,6 +2798,7 @@ interface Panel {
2490
2798
  * @source https://wiki.facepunch.com/gmod/Panel:SetY
2491
2799
  */
2492
2800
  SetY(self: Panel, y: number): void;
2801
+
2493
2802
  /**
2494
2803
  * Sets the panels z position which determines the rendering order.
2495
2804
  *
@@ -2501,18 +2810,21 @@ interface Panel {
2501
2810
  * @source https://wiki.facepunch.com/gmod/Panel:SetZPos
2502
2811
  */
2503
2812
  SetZPos(self: Panel, zIndex: number): void;
2813
+
2504
2814
  /**
2505
2815
  * Makes a panel visible.
2506
2816
  * @realm client and menu
2507
2817
  * @source https://wiki.facepunch.com/gmod/Panel:Show
2508
2818
  */
2509
2819
  Show(self: Panel): void;
2820
+
2510
2821
  /**
2511
2822
  * Uses animation to resize the panel to the specified size.
2512
2823
  * @realm client and menu
2513
2824
  * @source https://wiki.facepunch.com/gmod/Panel:SizeTo
2514
2825
  */
2515
2826
  SizeTo(self: Panel, sizeW?: number, sizeH?: number, time?: number, delay?: number, ease?: number, callback?: (animData: table, targetPanel: Panel) => void): void;
2827
+
2516
2828
  /**
2517
2829
  * Resizes the panel to fit the bounds of its children.
2518
2830
  *
@@ -2525,6 +2837,7 @@ interface Panel {
2525
2837
  * @source https://wiki.facepunch.com/gmod/Panel:SizeToChildren
2526
2838
  */
2527
2839
  SizeToChildren(self: Panel, sizeW?: boolean, sizeH?: boolean): void;
2840
+
2528
2841
  /**
2529
2842
  * Resizes the panel so that its width and height fit all of the content inside.
2530
2843
  *
@@ -2538,6 +2851,7 @@ interface Panel {
2538
2851
  * @source https://wiki.facepunch.com/gmod/Panel:SizeToContents
2539
2852
  */
2540
2853
  SizeToContents(self: Panel): void;
2854
+
2541
2855
  /**
2542
2856
  * Resizes the panel object's width to accommodate all child objects/contents.
2543
2857
  *
@@ -2550,6 +2864,7 @@ interface Panel {
2550
2864
  * @source https://wiki.facepunch.com/gmod/Panel:SizeToContentsX
2551
2865
  */
2552
2866
  SizeToContentsX(self: Panel, addVal?: number): void;
2867
+
2553
2868
  /**
2554
2869
  * Resizes the panel object's height to accommodate all child objects/contents.
2555
2870
  *
@@ -2562,66 +2877,77 @@ interface Panel {
2562
2877
  * @source https://wiki.facepunch.com/gmod/Panel:SizeToContentsY
2563
2878
  */
2564
2879
  SizeToContentsY(self: Panel, addVal?: number): void;
2880
+
2565
2881
  /**
2566
2882
  * Slides the panel in from above.
2567
2883
  * @realm client and menu
2568
2884
  * @source https://wiki.facepunch.com/gmod/Panel:SlideDown
2569
2885
  */
2570
2886
  SlideDown(self: Panel, Length: number): void;
2887
+
2571
2888
  /**
2572
2889
  * Slides the panel out to the top.
2573
2890
  * @realm client and menu
2574
2891
  * @source https://wiki.facepunch.com/gmod/Panel:SlideUp
2575
2892
  */
2576
2893
  SlideUp(self: Panel, Length: number): void;
2894
+
2577
2895
  /**
2578
2896
  * Begins a box selection, enables mouse capture for the panel object, and sets the start point of the selection box to the mouse cursor's position, relative to this object. For this to work, either the object or its parent must be enabled as a selection canvas. This is set using [Panel:SetSelectionCanvas](https://wiki.facepunch.com/gmod/Panel:SetSelectionCanvas).
2579
2897
  * @realm client and menu
2580
2898
  * @source https://wiki.facepunch.com/gmod/Panel:StartBoxSelection
2581
2899
  */
2582
2900
  StartBoxSelection(self: Panel): void;
2901
+
2583
2902
  /**
2584
2903
  * Stops all panel animations by clearing its animation list. This also clears all delayed animations.
2585
2904
  * @realm client and menu
2586
2905
  * @source https://wiki.facepunch.com/gmod/Panel:Stop
2587
2906
  */
2588
2907
  Stop(self: Panel): void;
2908
+
2589
2909
  /**
2590
2910
  * Stops the loading of the [HTML](https://wiki.facepunch.com/gmod/HTML) panel's current page.
2591
2911
  * @realm client and menu
2592
2912
  * @source https://wiki.facepunch.com/gmod/Panel:StopLoading
2593
2913
  */
2594
2914
  StopLoading(self: Panel): void;
2915
+
2595
2916
  /**
2596
2917
  * Resizes the panel object's height so that its bottom is aligned with the top of the passed panel. An offset greater than zero will reduce the panel's height to leave a gap between it and the passed panel.
2597
2918
  * @realm client and menu
2598
2919
  * @source https://wiki.facepunch.com/gmod/Panel:StretchBottomTo
2599
2920
  */
2600
2921
  StretchBottomTo(self: Panel, tgtPanel: Panel, offset?: number): void;
2922
+
2601
2923
  /**
2602
2924
  * Resizes the panel object's width so that its right edge is aligned with the left of the passed panel. An offset greater than zero will reduce the panel's width to leave a gap between it and the passed panel.
2603
2925
  * @realm client and menu
2604
2926
  * @source https://wiki.facepunch.com/gmod/Panel:StretchRightTo
2605
2927
  */
2606
2928
  StretchRightTo(self: Panel, tgtPanel: Panel, offset?: number): void;
2929
+
2607
2930
  /**
2608
2931
  * Sets the dimensions of the panel to fill its parent. It will only stretch in directions that aren't nil.
2609
2932
  * @realm client and menu
2610
2933
  * @source https://wiki.facepunch.com/gmod/Panel:StretchToParent
2611
2934
  */
2612
2935
  StretchToParent(self: Panel, offsetLeft?: number, offsetTop?: number, offsetRight?: number, offsetBottom?: number): void;
2936
+
2613
2937
  /**
2614
2938
  * Toggles the selected state of a selectable panel object. This functionality is set with [Panel:SetSelectable](https://wiki.facepunch.com/gmod/Panel:SetSelectable) and checked with [Panel:IsSelectable](https://wiki.facepunch.com/gmod/Panel:IsSelectable). To check whether the object is selected or not, [Panel:IsSelected](https://wiki.facepunch.com/gmod/Panel:IsSelected) is used.
2615
2939
  * @realm client and menu
2616
2940
  * @source https://wiki.facepunch.com/gmod/Panel:ToggleSelection
2617
2941
  */
2618
2942
  ToggleSelection(self: Panel): void;
2943
+
2619
2944
  /**
2620
2945
  * Toggles the visibility of a panel and all its children.
2621
2946
  * @realm client and menu
2622
2947
  * @source https://wiki.facepunch.com/gmod/Panel:ToggleVisible
2623
2948
  */
2624
2949
  ToggleVisible(self: Panel): void;
2950
+
2625
2951
  /**
2626
2952
  * Restores the last saved state (caret position and the text inside) of a [TextEntry](https://wiki.facepunch.com/gmod/TextEntry). Should act identically to pressing CTRL+Z in a [TextEntry](https://wiki.facepunch.com/gmod/TextEntry).
2627
2953
  *
@@ -2631,12 +2957,14 @@ interface Panel {
2631
2957
  * @source https://wiki.facepunch.com/gmod/Panel:Undo
2632
2958
  */
2633
2959
  Undo(self: Panel): void;
2960
+
2634
2961
  /**
2635
2962
  * Recursively deselects this panel object and all of its children. This will cascade to all child objects at every level below the parent.
2636
2963
  * @realm client and menu
2637
2964
  * @source https://wiki.facepunch.com/gmod/Panel:UnselectAll
2638
2965
  */
2639
2966
  UnselectAll(self: Panel): void;
2967
+
2640
2968
  /**
2641
2969
  * Forcibly updates the panels' HTML Material, similar to when Paint is called on it.This is only useful if the panel is not normally visible, i.e the panel exists purely for its HTML Material.
2642
2970
  * **NOTE**: Only works on with panels that have a HTML Material. See [Panel:GetHTMLMaterial](https://wiki.facepunch.com/gmod/Panel:GetHTMLMaterial) for more details.
@@ -2648,6 +2976,7 @@ interface Panel {
2648
2976
  * @source https://wiki.facepunch.com/gmod/Panel:UpdateHTMLTexture
2649
2977
  */
2650
2978
  UpdateHTMLTexture(self: Panel): void;
2979
+
2651
2980
  /**
2652
2981
  * Returns if a given panel is valid or not.
2653
2982
  * @realm client and menu
@@ -2659,334 +2988,3 @@ interface Panel {
2659
2988
 
2660
2989
  // The PANEL hook table is a Panel.
2661
2990
  interface PANEL extends Panel {}
2662
-
2663
-
2664
-
2665
-
2666
-
2667
-
2668
-
2669
-
2670
-
2671
-
2672
-
2673
-
2674
-
2675
-
2676
-
2677
-
2678
-
2679
-
2680
-
2681
-
2682
-
2683
-
2684
-
2685
-
2686
-
2687
-
2688
-
2689
-
2690
-
2691
-
2692
-
2693
-
2694
-
2695
-
2696
-
2697
-
2698
-
2699
-
2700
-
2701
-
2702
-
2703
-
2704
-
2705
-
2706
-
2707
-
2708
-
2709
-
2710
-
2711
-
2712
-
2713
-
2714
-
2715
-
2716
-
2717
-
2718
-
2719
-
2720
-
2721
-
2722
-
2723
-
2724
-
2725
-
2726
-
2727
-
2728
-
2729
-
2730
-
2731
-
2732
-
2733
-
2734
-
2735
-
2736
-
2737
-
2738
-
2739
-
2740
-
2741
-
2742
-
2743
-
2744
-
2745
-
2746
-
2747
-
2748
-
2749
-
2750
-
2751
-
2752
-
2753
-
2754
-
2755
-
2756
-
2757
-
2758
-
2759
-
2760
-
2761
-
2762
-
2763
-
2764
-
2765
-
2766
-
2767
-
2768
-
2769
-
2770
-
2771
-
2772
-
2773
-
2774
-
2775
-
2776
-
2777
-
2778
-
2779
-
2780
-
2781
-
2782
-
2783
-
2784
-
2785
-
2786
-
2787
-
2788
-
2789
-
2790
-
2791
-
2792
-
2793
-
2794
-
2795
-
2796
-
2797
-
2798
-
2799
-
2800
-
2801
-
2802
-
2803
-
2804
-
2805
-
2806
-
2807
-
2808
-
2809
-
2810
-
2811
-
2812
-
2813
-
2814
-
2815
-
2816
-
2817
-
2818
-
2819
-
2820
-
2821
-
2822
-
2823
-
2824
-
2825
-
2826
-
2827
-
2828
-
2829
-
2830
-
2831
-
2832
-
2833
-
2834
-
2835
-
2836
-
2837
-
2838
-
2839
-
2840
-
2841
-
2842
-
2843
-
2844
-
2845
-
2846
-
2847
-
2848
-
2849
-
2850
-
2851
-
2852
-
2853
-
2854
-
2855
-
2856
-
2857
-
2858
-
2859
-
2860
-
2861
-
2862
-
2863
-
2864
-
2865
-
2866
-
2867
-
2868
-
2869
-
2870
-
2871
-
2872
-
2873
-
2874
-
2875
-
2876
-
2877
-
2878
-
2879
-
2880
-
2881
-
2882
-
2883
-
2884
-
2885
-
2886
-
2887
-
2888
-
2889
-
2890
-
2891
-
2892
-
2893
-
2894
-
2895
-
2896
-
2897
-
2898
-
2899
-
2900
-
2901
-
2902
-
2903
-
2904
-
2905
-
2906
-
2907
-
2908
-
2909
-
2910
-
2911
-
2912
-
2913
-
2914
-
2915
-
2916
-
2917
-
2918
-
2919
-
2920
-
2921
-
2922
-
2923
-
2924
-
2925
-
2926
-
2927
-
2928
-
2929
-
2930
-
2931
-
2932
-
2933
-
2934
-
2935
-
2936
-
2937
-
2938
-
2939
-
2940
-
2941
-
2942
-
2943
-
2944
-
2945
-
2946
-
2947
-
2948
-
2949
-
2950
-
2951
-
2952
-
2953
-
2954
-
2955
-
2956
-
2957
-
2958
-
2959
-
2960
-
2961
-
2962
-
2963
-
2964
-
2965
-
2966
-
2967
-
2968
-
2969
-
2970
-
2971
-
2972
-
2973
-
2974
-
2975
-
2976
-
2977
-
2978
-
2979
-
2980
-
2981
-
2982
-
2983
-
2984
-
2985
-
2986
-
2987
-
2988
-
2989
-
2990
-
2991
-
2992
-