MCPcopy Create free account
hub / github.com/AutoHotkey/AutoHotkey / OnX

Method OnX

source/input_object.cpp:177–204  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

175
176
177ResultType InputObject::OnX(ResultToken &aResultToken, int aID, int aFlags, ExprTokenType *aParam[], int aParamCount)
178{
179 IObject **pon;
180 switch (aID)
181 {
182 case P_OnKeyDown: pon = &onKeyDown; break;
183 case P_OnKeyUp: pon = &onKeyUp; break;
184 case P_OnChar: pon = &onChar; break;
185 default: pon = &onEnd; break;
186 }
187 if (IS_INVOKE_SET)
188 {
189 IObject *obj = ParamIndexToObject(0);
190 if (obj)
191 obj->AddRef();
192 else if (!TokenIsEmptyString(*aParam[0]))
193 _o_throw_type(_T("object"), *aParam[0]);
194 if (*pon)
195 (*pon)->Release();
196 *pon = obj;
197 }
198 if (*pon)
199 {
200 (*pon)->AddRef();
201 aResultToken.SetValue(*pon);
202 }
203 return OK;
204}
205
206
207ResultType InputObject::KeyOpt(ResultToken &aResultToken, int aID, int aFlags, ExprTokenType *aParam[], int aParamCount)

Callers

nothing calls this directly

Calls 4

TokenIsEmptyStringFunction · 0.85
SetValueMethod · 0.80
AddRefMethod · 0.45
ReleaseMethod · 0.45

Tested by

no test coverage detected