Reference Codebot.Render.Scenes.pas
Part of the Codebot Render package
Each version implies all earlier versions
The Codebot.Render.Scenes unit defines TScene, which is the base class of everything a host shows. A program descends from TScene to draw each frame and to handle keyboard, text, mouse, and wheel input. A scene can also be stepped at a fixed interval on its own thread.
TSceneHost runs scenes and provides what they share: the canvas, a default font, the window, the clipboard, the timer, and vertical sync. The two scene hosts are TSceneController in the codebot_render_controls package and TApplication in the codebot_render_sdl package.
Items 86 items
| Name | Kind | Line |
|---|---|---|
| SceneHost | function | 119 |
| SceneLogicStep | constant | 203 |
| SetSceneHost | procedure | 121 |
| TMouseAction | enum | 20 |
| maPress | enum value | 20 |
| maMove | enum value | 20 |
| maRelease | enum value | 20 |
| TScene | class | 127 |
| Create | constructor | 146 |
| Destroy | destructor | 147 |
| DoKeyDown | procedure | 156 |
| DoKeyUp | procedure | 157 |
| DoMouseDown | procedure | 158 |
| DoMouseMove | procedure | 159 |
| DoMouseUp | procedure | 160 |
| DoMouseWheel | procedure | 161 |
| DoTextInput | procedure | 162 |
| Finalize | procedure | 169 |
| Initialize | procedure | 167 |
| KeyEvent | procedure | 151 |
| Logic | procedure | 171 |
| MouseEvent | procedure | 153 |
| Name | function | 149 |
| Render | procedure | 173 |
| Resize | procedure | 143 |
| Step | procedure | 181 |
| StepInterval | function | 177 |
| Update | procedure | 165 |
| Animated | property | 183 |
| Canvas | property | 189 |
| Context | property | 185 |
| Font | property | 190 |
| Height | property | 196 |
| Host | property | 187 |
| Time | property | 192 |
| Width | property | 194 |
| TSceneClass | classref | 200 |
| TSceneHost | class | 77 |
| FCanvas | field | 79 |
| FFont | field | 80 |
| FFrameRate | field | 83 |
| FMouseX | field | 84 |
| FMouseY | field | 85 |
| FTime | field | 82 |
| FTimer | field | 81 |
| FVSync | field | 87 |
| FWindow | field | 86 |
| GetClipboard | function | 89 |
| GetVSync | function | 92 |
| SetClipboard | procedure | 90 |
| SetVSync | procedure | 93 |
| Canvas | property | 96 |
| Clipboard | property | 109 |
| Font | property | 98 |
| FrameRate | property | 104 |
| MouseX | property | 106 |
| MouseY | property | 107 |
| Time | property | 102 |
| Timer | property | 100 |
| VSync | property | 114 |
| Window | property | 111 |
| TSceneKeyArgs | record | 25 |
| Handled | field | 32 |
| Key | field | 27 |
| Repeated | field | 31 |
| Shift | field | 29 |
| TSceneKeyEvent | procedural | 65 |
| TSceneMouseArgs | record | 36 |
| Button | field | 38 |
| Handled | field | 43 |
| Shift | field | 42 |
| X | field | 40 |
| XRel | field | 40 |
| Y | field | 40 |
| YRel | field | 40 |
| TSceneMouseEvent | procedural | 67 |
| TSceneTextArgs | record | 58 |
| Handled | field | 61 |
| Text | field | 60 |
| TSceneWheelArgs | record | 47 |
| Delta | field | 49 |
| Handled | field | 54 |
| Shift | field | 53 |
| X | field | 51 |
| Y | field | 51 |
| TShiftKeys | set | 18 |