MCPcopy Create free account
hub / github.com/OpenApoc/OpenApoc / eventOccurred

Method eventOccurred

game/ui/debugtools/formpreview.cpp:105–169  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

103void FormPreview::finish() {}
104
105void FormPreview::eventOccurred(Event *e)
106{
107 previewselector->eventOccured(e);
108 if (propertyeditor != nullptr)
109 {
110 propertyeditor->eventOccured(e);
111 }
112 if (displayform != nullptr && interactWithDisplay->isChecked())
113 {
114 displayform->eventOccured(e);
115 }
116
117 if (e->type() == EVENT_KEY_DOWN)
118 {
119 if (e->keyboard().KeyCode == SDLK_ESCAPE)
120 {
121 fw().stageQueueCommand({StageCmd::Command::POP});
122 return;
123 }
124 }
125
126 if (e->type() == EVENT_FORM_INTERACTION && e->forms().EventFlag == FormEventType::MouseClick)
127 {
128
129 if (displayform != nullptr && e->forms().RaisedBy->getForm() == displayform)
130 {
131 currentSelectedControl = e->forms().RaisedBy;
132 configureSelectedControlForm();
133 }
134 else
135 {
136 currentSelectedControl = nullptr;
137 configureSelectedControlForm();
138 }
139
140 if (e->forms().RaisedBy->getForm() == previewselector &&
141 e->forms().RaisedBy->getParent() != nullptr &&
142 e->forms().RaisedBy->getParent()->Name == "FORM_LIST")
143 {
144
145 if (currentSelected != nullptr)
146 {
147 currentSelected->BackgroundColour.a = 0;
148 currentSelected->setDirty();
149 }
150
151 currentSelected = std::dynamic_pointer_cast<Label>(e->forms().RaisedBy);
152 if (currentSelected != nullptr)
153 {
154 currentSelected->BackgroundColour.a = 255;
155 displayform = ui().getForm(currentSelected->Name);
156 }
157
158 return;
159 }
160 else if (e->forms().RaisedBy->Name == "FORM_RELOAD")
161 {
162 if (currentSelected != nullptr)

Callers

nothing calls this directly

Calls 8

isCheckedMethod · 0.80
typeMethod · 0.80
stageQueueCommandMethod · 0.80
getParentMethod · 0.80
setDirtyMethod · 0.80
reloadFormsXmlMethod · 0.80
eventOccuredMethod · 0.45
getFormMethod · 0.45

Tested by

no test coverage detected