s&
newspaper
About
info
About s&box
newspaper
Latest News
published_with_changes
Changes
map
Roadmap
monitoring
Metrics
games
Games
sports_esports
Browse Games
rocket
Discover Games
business_center
Workshop
sports_esports
Games
landscape
Maps
chair
Models
texture
Materials
apparel
Clothing
construction
More..
forum
Forum
docs
Docs
docs
Documentation
dashboard
Api Reference
school
Tutorials
input
Log in with Steam
chevron_left
Change Language
简体中文
English
Русский
Español
Português-Brasil
Deutsch
日本語
Français
Polski
Türkçe
한국어
Pirate
Italiano
ไทย
繁體中文
Українська
Čeština
Nederlands
Magyar
Dansk
Suomi
Svenska
Norsk
Ελληνικά
Română
Български
Tiếng Việt
Bahasa Indonesia
Español-Latinoamérica
العربية
Api
Editor Classes
chevron_left
API Reference
category
Editor Classes
search
data_object
AboutWidget
data_object
Account
data_object
AdvancedDropdownItem
data_object
AdvancedDropdownPanel
data_object
AdvancedDropdownPopup
data_object
AdvancedDropdownWidget
data_object
AnglesControlWidget
data_object
Animate
data_object
Application
data_object
AssemblyMetadata
data_object
Asset
data_object
AssetAutoTagFilter
data_object
AssetPickerParameters
data_object
AssetPreviewAttribute
data_object
AssetSystem
data_object
AssetTags
data_object
AssetTagSystem
data_object
AssetType
data_object
Attribute
data_object
AutoComplete
data_object
BaseItemWidget
data_object
BaseScrollWidget
data_object
BaseWindow
data_object
BBoxControlWidget
data_object
Body
data_object
BoolControlWidget
data_object
BoxLayout
data_object
BuildStep
data_object
BuildStepExtensions
data_object
Button
data_object
CanDropAttribute
data_object
CanEditAttribute
data_object
CategoryEntry
data_object
Checkbox
data_object
CheckState
data_object
Clear
data_object
Clipboard
data_object
CloudAsset
data_object
CodeEditor
data_object
CollisionMode
data_object
ColorSampler
data_object
ComboBox
data_object
ComponentEditorWidget
data_object
ConsoleSystem
data_object
ContextMenu
data_object
ContextMenuEvent
data_object
ControlWidget
data_object
CreateModelFromMeshDialog
data_object
CursorShape
data_object
Danger
data_object
DependencyComponent
data_object
DependencyIndex
data_object
Desc
data_object
Dialog
data_object
DockArea
data_object
DockAttribute
data_object
DockInfo
data_object
DockManager
data_object
DockProperty
data_object
DockWindow
data_object
Drag
data_object
DragAssetData
data_object
DragData
data_object
DragDropTarget
data_object
DragEvent
data_object
DragTypes
data_object
DropAction
data_object
DropdownControlWidget
data_object
EditorAppAttribute
data_object
EditorContext
data_object
EditorEvent
data_object
EditorForAssetTypeAttribute
data_object
EditorMainWindow
data_object
EditorPreferences
data_object
EditorScene
data_object
EditorShortcuts
data_object
EditorSystemPublic
data_object
EditorUtility
data_object
ElideMode
data_object
EntityObject
data_object
Entry
data_object
Entry
data_object
EnumControlWidget
data_object
ExportConfig
data_object
ExportProgress
data_object
Face
data_object
FileDialog
data_object
FileSystem
data_object
FloatControlWidget
data_object
FloatSlider
data_object
FocusChangeReason
data_object
FocusMode
data_object
FolderEdit
data_object
Frame
data_object
FrameAttribute
data_object
GameData
data_object
GameEditorSession
data_object
GameMode
data_object
GameScenePicker
data_object
Global
data_object
GlobalToolsNamespace
data_object
GraphicsHoverEvent
data_object
GraphicsItem
data_object
GraphicsLine
data_object
GraphicsMouseEvent
data_object
GraphicsView
data_object
GraphicsWidget
data_object
GridLayout
data_object
GroupButtonControlWidget
data_object
Hammer
data_object
HammerMainWindow
data_object
HammerManagedInspector
data_object
HammerSceneEditorSession
data_object
HammerSession
data_object
HammerSourceLocation
data_object
Header
data_object
History
data_object
HistoryList<T>
data_object
HotloadAttribute
data_object
IconButton
data_object
IconLabel
data_object
Input
data_object
InputOutputBase
data_object
InputOutputType
data_object
InputSystem
data_object
InsertMode
data_object
InspectorAttribute
data_object
InspectorWidget
data_object
IntegerControlWidget
data_object
ItemDragEvent
data_object
ItemEdge
data_object
ItemEntry
data_object
KeyCode
data_object
KeyEvent
data_object
Label
data_object
Layout
data_object
LibraryProject
data_object
LibrarySystem
data_object
LineEdit
data_object
LinkableSplitter
data_object
ListView
data_object
MapClass
data_object
MapClassVariable
data_object
MapDocument
data_object
MapEditor
data_object
MapEntity
data_object
MapGameObject
data_object
MapGroup
data_object
MapInstance
data_object
MapMesh
data_object
MapNode
data_object
MapPath
data_object
MapPathNode
data_object
MapStaticOverlay
data_object
MapView
data_object
MapViewContextMenu
data_object
MapWorld
data_object
MarginControlWidget
data_object
Menu
data_object
MenuBar
data_object
MetaData
data_object
ModelDoc
data_object
Mounting
data_object
MouseEvent
data_object
Network
data_object
NotificationLevel
data_object
OnInspectArgs
data_object
Option
data_object
Orientation
data_object
Output
data_object
PackageManifest
data_object
Paint
data_object
PasteSpecialOptions
data_object
PathElement
data_object
PenStyle
data_object
Pixmap
data_object
PolygonMesh
data_object
PopupDialogWidget
data_object
PopupWidget
data_object
Prefabs
data_object
Primary
data_object
PrimitiveBuilder
data_object
ProjectFile
data_object
ProjectList
data_object
ProjectPublisher
data_object
Projects
data_object
PropertyPath
data_object
PublishSettings
data_object
QObject
data_object
QStringList
data_object
QTextBlock
data_object
QueuedFile
data_object
QueuedFileState
data_object
RectControlWidget
data_object
RenderMode
data_object
RotationControlWidget
data_object
SandboxToolExtensions
data_object
SceneEditor
data_object
SceneEditorSession
data_object
SceneExtensions
data_object
ScenePasteSpecialDialog
data_object
SceneRenderingWidget
data_object
ScrollArea
data_object
ScrollBar
data_object
ScrollbarMode
data_object
SegmentedControl
data_object
Selection
data_object
SelectionChanged
data_object
SelectMode
data_object
Separator
data_object
ShortcutAttribute
data_object
ShortcutContext
data_object
ShortcutType
data_object
ShowContextMenuEvent
data_object
SimpleText
data_object
SizeConstraint
data_object
SizeMode
data_object
Small
data_object
SphereControlWidget
data_object
Splitter
data_object
SpriteAnimationControlWidget
data_object
StackLineHandlerAttribute
data_object
StackRow
data_object
StandaloneExporter
data_object
StatusBar
data_object
StringControlWidget
data_object
Subtitle
data_object
SuspendUpdates
data_object
TabBar
data_object
TagDefinition
data_object
TextAreaControlWidget
data_object
TextCursor
data_object
TextEdit
data_object
TextureDimension
data_object
TextureResidencyInfo
data_object
TextureResourceCompiler
data_object
Theme
data_object
ThumbnailRendererAttribute
data_object
Title
data_object
TitleBarButtons
data_object
ToolBar
data_object
ToolbarPosition
data_object
ToolButton
data_object
ToolButtonStyle
data_object
ToolRender
data_object
Trace
data_object
TraceResult
data_object
TransformControlWidget
data_object
TrayIcon
data_object
UndoSystem
data_object
VariantControlWidget
data_object
VectorControlWidget
data_object
VectorIntControlWidget
data_object
ViewportAnchorType
data_object
VirtualWidget
data_object
VoiceRecording
data_object
VR
data_object
WheelEvent
data_object
Widget
data_object
WidgetSignal
data_object
Window
data_object
WindowFlags
data_object
WithCornerIcon
data_object
WithNumber
Editor Classes
search
folder
Editor
167
AboutWidget
class
AdvancedDropdownItem
class
A tree node for use with Editor.AdvancedDropdownWidget. Items with children are categories; items without children are selectable leaves.
AdvancedDropdownPopup
class
A popup wrapper around Editor.AdvancedDropdownWidget.
AdvancedDropdownWidget
class
A generic sliding hierarchical selector widget. Build a tree of Editor.AdvancedDropdownItem and hand it to this widget.
AnglesControlWidget
class
Animate
class
Application
class
Asset
class
AssetPreviewAttribute
attribute
AssetSystem
class
The asset system, provides access to all the assets.
AssetTagSystem
class
Handles asset tags.
AssetType
class
AutoComplete
class
BaseItemWidget
class
BaseScrollWidget
class
BaseWindow
class
BBoxControlWidget
class
BoolControlWidget
class
BoxLayout
class
A widget layout. You can think of it as an invisible box of rows or columns, each one containing a widget, useful for automatic positioning and scaling.
BuildStepExtensions
class
Button
class
A simple button widget.
CanEditAttribute
attribute
Checkbox
class
A generic checkbox widget.
CheckState
enum
Check state of a Editor.Checkbox.
CloudAsset
class
CodeEditor
class
For opening source code files in whatever code editor the user has selected.
ColorSampler
class
ComboBox
class
ComponentEditorWidget
class
A control widget is used to edit the value of a single SerializedProperty.
ConsoleSystem
class
ContextMenu
class
Identical to Menu except DeleteOnClose defaults to true. Can optionally be made searchable by setting Editor.ContextMenu.Searchable to true before opening.
ContextMenuEvent
struct
Information about a Editor.Widgets context menu event.
ControlWidget
class
A control widget is used to edit the value of a single SerializedProperty.
CreateModelFromMeshDialog
class
A popup dialog for creating models from mesh files (.fbx, .obj, .dmx). Lets you configure collision type and output path.
CursorShape
enum
TODO: Make this match whatever we do in game
Dialog
class
A wrapper to more easily create dialog windows.
DockArea
enum
DockAttribute
attribute
DockManager
class
DockWindow
class
A window that is built from docking windows
Drag
class
DragAssetData
class
Represents an asset being dragged into an editor window. Assets will either be sourced from a package (see Editor.DragAssetData.PackageIdent) or a local path (see Editor.DragAssetData.AssetPath). Instances of this type are accessed through Editor.DragData.Assets.
DragData
class
Contains drag and drop data for tool widgets. See Editor.Widget.DragEvent.
DropAction
enum
Used to tell the user what kind of action will happen during a drag and drop event on mouse release. In Windows, these actions will also display text near cursor to let the user know what will happen if they release their mouse button.
DropdownControlWidget
class
Base class for dropdown control widgets with multi-select support.
EditorAppAttribute
attribute
EditorEvent
class
EditorForAssetTypeAttribute
attribute
Used in conjunction with IAssetEditor to declare a window that can edit an asset type
EditorMainWindow
class
EditorPreferences
class
EditorScene
class
EditorShortcuts
class
EditorUtility
class
ElideMode
enum
EnumControlWidget
class
ExportConfig
class
FileDialog
class
FileSystem
class
A filesystem that can be accessed by the game.
FloatControlWidget
class
FloatSlider
class
FocusChangeReason
enum
Describes why a Editor.Widgets' keyboard focus has changed via Editor.Widget.OnFocus(Editor.FocusChangeReason) and Editor.Widget.OnBlur(Editor.FocusChangeReason) callbacks.
FocusMode
enum
FolderEdit
class
An editable text box with a button to browse for an arbitrary folder using OS file browser dialog.
Frame
class
Like a widget - but is drawn
GameData
class
Lets all native and managed tools know about any engine / game entities.
GameEditorSession
class
GameMode
class
Registers a widget with the input system to use SDL and manages inputs and focus as it relates to the editor's game widget.
GameScenePicker
class
Opens an invisible popup above the game screen which allows you to left click once on the scene. This is great for things like selecting something from the game scene.
GraphicsHoverEvent
struct
Information about a Editor.GraphicsItems mouse hover event.
GraphicsItem
class
GraphicsLine
class
GraphicsMouseEvent
struct
Information about a Editor.GraphicsItems mouse click event.
GraphicsView
class
GraphicsWidget
class
GridLayout
class
A widget layout. You can think of it as an invisible box of rows or columns, each one containing a widget, useful for automatic positioning and scaling.
GroupButtonControlWidget
class
HistoryList<T>
class
A helper class to store a list of strings, which can then be navigated around, saved, restored
IconButton
class
IconLabel
class
A material icon label
Input
class
InputOutputBase
class
Represents a variable
InputOutputType
enum
InputSystem
class
InspectorAttribute
attribute
InspectorWidget
class
When using Editor.InspectorAttribute with a type that inherits from InspectorWidget, when you inspect an object of that class, it will create an instance of the widget and display it in the inspector.
IntegerControlWidget
class
KeyCode
enum
KeyEvent
struct
Information about a Editor.Widgets keyboard event.
Label
class
A simple text label.
Layout
class
LibraryProject
class
LibrarySystem
class
LineEdit
class
A single line text entry. See Editor.TextEdit for multi line version.
LinkableSplitter
class
Splitter that can be linked to move alongside others
ListView
class
MapClass
class
Represents an entity class used by the map editor
MapClassVariable
class
Represents a variable.
MarginControlWidget
class
Menu
class
MenuBar
class
MetaData
class
A class to CRUD json files. This should probably be a generic class since it seems like we might want to do this with stuff other than meta files. But there's no need for that right now, so lets leave it simple.
MouseEvent
struct
Information about a Editor.Widgets mouse event.
Option
class
Orientation
enum
Output
class
Paint
class
PenStyle
enum
Pixmap
class
A pixel map, or just a simple image.
PopupDialogWidget
class
PopupWidget
class
A popup widget that automatically deletes itself once it stops being visible
ProjectList
class
ProjectPublisher
class
QObject
class
QStringList
class
QTextBlock
class
RectControlWidget
class
RenderMode
enum
RotationControlWidget
class
SceneEditor
class
SceneEditorSession
class
A SceneEditorSession holds a Scene that is open in the editor. It creates a widget, has a selection and undo system.
ScenePasteSpecialDialog
class
SceneRenderingWidget
class
Render a scene to a native widget. This replaces NativeRenderingWidget.
ScrollArea
class
A widget that can scroll its Editor.ScrollArea.Canvas.
ScrollBar
class
ScrollbarMode
enum
SegmentedControl
class
Separator
class
ShortcutAttribute
attribute
ShortcutContext
enum
Scope of the shortcut. Requires focus at this level for the shortcut to be active. Defaults to Editor.ShortcutContext.WindowShortcut.
ShortcutType
enum
SizeConstraint
enum
SizeMode
enum
SphereControlWidget
class
Splitter
class
Split frame, allows dragging to resize panels
SpriteAnimationControlWidget
class
StackLineHandlerAttribute
attribute
Marks a method as a custom handler for stack trace lines matching a certain pattern. The method must take in a System.Text.RegularExpressions.Match parameter, and return a Editor.StackRow (or null).
StackRow
class
StandaloneExporter
class
StatusBar
class
StringControlWidget
class
SuspendUpdates
class
Suspends updates in the widget for this using scope.
TabBar
class
TextAreaControlWidget
class
TextCursor
class
TextEdit
class
A multi-line text entry. See Editor.LineEdit for a single line version.
TextureResidencyInfo
struct
Provides information about currently resident textures on the GPU
TextureResourceCompiler
class
Theme
class
TitleBarButtons
class
A list of title bar buttons, at the top right of a window.
ToolBar
class
ToolbarPosition
enum
ToolButton
class
A button that shows as an icon and tries to keep itself square.
ToolButtonStyle
enum
ToolRender
class
Renders basic stuff for tool views
Trace
struct
Trace for tools, not to be confused with Sandbox.SceneTrace
TraceResult
struct
TransformControlWidget
class
TrayIcon
class
Like a widget - but is drawn
VariantControlWidget
class
VectorControlWidget
class
VectorIntControlWidget
class
VirtualWidget
class
WheelEvent
struct
Information about a mouse wheel scroll event of a Editor.Widget.
Widget
class
A generic widget.
WidgetSignal
class
Window
class
WindowFlags
enum
folder
Editor.AboutWidget
2
DependencyComponent
class
DependencyIndex
class
folder
Editor.AdvancedDropdownWidget
3
AdvancedDropdownPanel
class
A single sliding panel with header, scroll area, and item list.
CategoryEntry
class
A category entry widget with a forward arrow.
ItemEntry
class
A leaf item entry widget.
folder
Editor.Asset
3
AssetTags
struct
Represents a collection of tags for an asset. This is only necessary so we can save tags as soon as they are added.
PublishSettings
class
This is data that is saved in an asset's meta file under "publish" to configure its project for uploading.
ThumbnailRendererAttribute
attribute
Should target a static method like `public static Pixmap RenderThumbnail( Asset thumbnail )` where the method returns a thumbnail for that asset type. This kind of sucks I don't like it.
deployed_code
Editor.AssetSystem
1
AssetPickerParameters
struct
Passed parameters for the AssetPicker going from engine to addon code
folder
Editor.AssetTagSystem
2
AssetAutoTagFilter
class
TagDefinition
struct
folder
Editor.BaseItemWidget
3
DragDropTarget
enum
ItemDragEvent
struct
ItemEdge
enum
folder
Editor.Button
3
Clear
class
Danger
class
Primary
class
A visually distinct button.
list
Editor.ComboBox
1
InsertMode
enum
list
Editor.CreateModelFromMeshDialog
1
CollisionMode
enum
folder
Editor.DockManager
2
DockInfo
class
Description of a dock that is available to create by the backend.
DockProperty
enum
folder
Editor.EditorEvent
4
FrameAttribute
attribute
Called every frame for tools
HotloadAttribute
attribute
MapEditor
class
Events that happen within the map editor.
ShowContextMenuEvent
class
Event args for Editor.EditorEvent.ISceneView.ShowContextMenu(Editor.EditorEvent.ShowContextMenuEvent) events.
label
Editor.EditorEvent.MapEditor
2
MapViewContextMenu
attribute
Called when the map view is right clicked, Editor.Menu is passed.
SelectionChanged
attribute
Called when the user selects / deselects any object in the map and
is changed.
list
Editor.EditorPreferences
1
NotificationLevel
enum
folder
Editor.EditorShortcuts
1
Entry
class
folder
Editor.EditorUtility
10
Account
class
AssemblyMetadata
class
Clipboard
class
Mounting
class
Network
class
OnInspectArgs
class
Prefabs
class
Projects
class
VoiceRecording
class
VR
class
deployed_code
Editor.EditorUtility.AssemblyMetadata
1
Attribute
struct
folder
Editor.Graphic
1
SimpleText
class
list
Editor.GraphicsView
2
DragTypes
enum
ViewportAnchorType
enum
folder
Editor.IconButton
2
WithCornerIcon
class
WithNumber
class
folder
Editor.Label
5
Body
class
Header
class
Small
class
Subtitle
class
Title
class
folder
Editor.MapDoc
11
MapDocument
class
Represents an open map document. A document has a tree of Editor.MapDoc.MapNode that represent the world.
MapEntity
class
MapEntity in Hammer is a type of Editor.MapDoc.MapNode that has a set of key/value pairs. The keyvalues represent the authoritative state of the entity. Entities may have helpers that enhance the presentation and sometimes modification of those keyvalues. The helpers may come and go; it should always be possible to recreate the helpers from the parent entity's keyvalues. Entities may also have zero or more Editor.MapDoc.MapMesh children.
MapGameObject
class
MapGroup
class
A map node which has the sole purpose of grouping other map nodes together.
MapInstance
class
A map node which allows a target group and its children to be placed with a new position and orientation in the world without creating a new copy. Multiple MapInstance classes may reference the same target allowing it to be placed in multiple locations, but allowing any edits to be applied to all instances.
MapMesh
class
MapMesh is the Hammer map node which represents editable mesh geometry in a Hammer map. This is the map node that is created when using the hammer geometry editing tools.
MapNode
class
A common class used for all objects in the world object tree.
MapPath
class
Path containing a bunch of Editor.MapDoc.MapPathNode
MapPathNode
class
Nodes along a Editor.MapDoc.MapPath
MapStaticOverlay
class
An overlay which is rendered using a mesh generated by projecting faces onto surrounding geometry. Baked during map compile so that there is no runtime component. Also supports being limited to specific targets.
MapWorld
class
MapWorld is the root node of a Editor.MapDoc.MapDocument, however it can have multiple sub Editor.MapDoc.MapWorld of prefabs.
folder
Editor.MapEditor
12
CanDropAttribute
attribute
EditorContext
class
Hammer
class
HammerMainWindow
class
This is our CQHammerMainWnd
HammerManagedInspector
class
HammerSceneEditorSession
class
HammerSession
class
This is our CQHammerMainWnd
HammerSourceLocation
class
Source location for graphs created in a Hammer editor session.
History
class
Undo/redo history for the current active mapdoc
MapView
class
MapViews are owned by the MapViewMgr. They display the MapViewMgr's mapdoc. The MapView provides either a 2d or 3d view of the provided map doc. The rendering mode may be swapped between various 2d and 3d modes dynamically. In addition to basic display functionality the view also provides movement implementation for moving a camera within a 3d view or panning a 2d view.
Selection
class
Current selection set for the active map
SelectMode
enum
folder
Editor.MapEditor.EditorContext
1
EntityObject
class
deployed_code
Editor.Menu
1
PathElement
struct
folder
Editor.MeshEditor
1
PrimitiveBuilder
class
Build primitives out of polygons.
folder
Editor.MeshEditor.PrimitiveBuilder
1
PolygonMesh
class
A list of vertices and faces.
folder
Editor.MeshEditor.PrimitiveBuilder.PolygonMesh
1
Face
class
A list of indices indexing into the Editor.MeshEditor.PrimitiveBuilder.PolygonMesh.Vertices list.
folder
Editor.ModelEditor
1
ModelDoc
class
folder
Editor.ProjectPublisher
2
PackageManifest
class
ProjectFile
class
A single file in the project revision manifest
folder
Editor.ScenePasteSpecialDialog
1
PasteSpecialOptions
class
folder
Editor.StandaloneExporter
4
BuildStep
enum
ExportProgress
struct
QueuedFile
class
QueuedFileState
enum
folder
Editor.TextureResidencyInfo
2
Desc
struct
TextureDimension
enum
folder
Editor.Widget
1
DragEvent
class
Information about a widget drag and drop event.
folder
Sandbox
4
EditorSystemPublic
class
Global
class
Utility info for tools usage.
SandboxToolExtensions
class
SceneExtensions
class
folder
Sandbox.Helpers
1
UndoSystem
class
A system that aims to wrap the main reusable functionality of an undo system
folder
Sandbox.Helpers.UndoSystem
1
Entry
class
folder
Sandbox.Internal
1
GlobalToolsNamespace
class
folder
Sandbox.SandboxToolExtensions
1
PropertyPath
class
Describes the path to a Sandbox.SerializedProperty from either a Sandbox.GameObject or Sandbox.Component.