diff options
| author | Francesco Borzì <borzifrancesco@gmail.com> | 2020-07-24 20:12:32 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-07-24 20:12:32 +0200 |
| commit | de1d55510fd9782ef8be23260f5fcaa5d55198a6 (patch) | |
| tree | f9aa3d5acce0063c48755af733aa8c0278a37750 /docs | |
| parent | c785209e1e1b1f52997814d229fddbc339567e61 (diff) | |
| download | wiki-de1d55510fd9782ef8be23260f5fcaa5d55198a6.tar.gz wiki-de1d55510fd9782ef8be23260f5fcaa5d55198a6.tar.bz2 wiki-de1d55510fd9782ef8be23260f5fcaa5d55198a6.zip | |
Update keira3-internals.md
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/keira3-internals.md | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/docs/keira3-internals.md b/docs/keira3-internals.md index c9636f3..ad0327b 100644 --- a/docs/keira3-internals.md +++ b/docs/keira3-internals.md @@ -138,3 +138,13 @@ In order to maximise code reuse, the following abstract classes have been create - `SingleRowEditorComponent`: extends `EditorComponent`, base of all Single-row Editor Components (e.g. `CreatureTemplateComponent` extends this class); - `MultiRowEditorComponent`: extends `EditorComponent`, base of all Multi-row Editor Components (e.g. `CreatureLootTemplateComponent` extends this class); +### Handler + +Handlers are services responsible for holding statuses such as: + +- which entity has been selected (for example, when you select a Creature, the ID of the creature is kept inside the `CreatureHandlerService`) +- which editors are left with unsaved changes + +Group of editors that refer to the same main entity should share **one Handler**. For example, all Creature Editors refer to the `CreatureHandlerService`, all Quest Editors refer to the `QuestHandlerService`, and so on... + +All Handlers classes extend the `HandlerService` abstract class. |
