undo
The undo library allows you to add custom entities to the undo list, allowing users to "undo" their creation with their undo (default: z) key.
Methods
undo.AddFunction( function func, ... )
Adds a function to call when the current undo block is undone. Note that if an undo has a function, the player will always be notified when this undo is performed, even if the entity it is meant to undo no longer exists.
Processes an undo block (in table form). This is used internally by the undo manager when a player presses Z.
You should use gm_undo or gm_undonum *num* console commands instead of calling this function directly.
Completes an undo entry, and registers it with the player's client
Serverside, returns a table containing all undo blocks of all players. Clientside, returns a table of the local player's undo blocks.
Serverside, this table's keys use Player:UniqueID to store a player's undo blocks.
undo.MakeUIDirty()
This is used internally - although you're able to use it you probably shouldn't.
Makes the UI dirty - it will re-create the controls the next time it is viewed.
Replaces any instance of the "from" reference with the "to" reference, in any existing undo block. Returns true if something was replaced
undo.SetCustomUndoText( string customText )
Sets a custom undo text for the current undo block
undo.SetupUI()
This is used internally - although you're able to use it you probably shouldn't.
Adds a hook (CPanelPaint) to the control panel paint function so we can determine when it is being drawn.