Add EditorInitialize callback

qteditor
Sven Eberhardt 2016-08-04 22:12:10 -04:00
parent 693c0124b9
commit bce09d272d
4 changed files with 9 additions and 1 deletions

View File

@ -53,6 +53,11 @@
<col></col>
<col>When the object is removed.</col>
</row>
<row id="EditorInitialize">
<literal_col>EditorInitialize</literal_col>
<col></col>
<col>Called after Construction and Initialize when the object is placed in the editor.</col>
</row>
<row id="Hit">
<literal_col>Hit</literal_col>
<col></col>

View File

@ -1368,6 +1368,7 @@ void C4ControlEMMoveObject::Execute() const
#endif
C4Object *obj = ::Game.CreateObject(C4ID(StringParam), nullptr, NO_OWNER, fixtoi(tx), fixtoi(ty), 0, create_centered);
if (container && obj && container->Status && obj->Status) obj->Enter(container);
if (obj && obj->Status) obj->Call(P_EditorInitialize); // specific initialization when placed in editor
}
break;
case EMMO_Transform:
@ -1383,7 +1384,7 @@ void C4ControlEMMoveObject::Execute() const
}
}
// update property dlg & status bar
if (fLocalCall && eAction != eAction)
if (fLocalCall && eAction != EMMO_Move)
Console.EditCursor.OnSelectionChanged();
}

View File

@ -289,6 +289,7 @@ C4StringTable::C4StringTable()
P[P_EditorHelp] = "EditorHelp";
P[P_Description] = "Description";
P[P_AllowEditing] = "AllowEditing";
P[P_EditorInitialize] = "EditorInitialize";
P[DFA_WALK] = "WALK";
P[DFA_FLIGHT] = "FLIGHT";
P[DFA_KNEEL] = "KNEEL";

View File

@ -513,6 +513,7 @@ enum C4PropertyName
P_EditorHelp,
P_Description,
P_AllowEditing,
P_EditorInitialize,
// Default Action Procedures
DFA_WALK,
DFA_FLIGHT,