# --- T2-COPYRIGHT-BEGIN --- # t2/package/*/codeblocks/hotfix-wx-3.3.patch # Copyright (C) 2026 The T2 SDE Project # SPDX-License-Identifier: GPL-2.0 or patched project license # --- T2-COPYRIGHT-END --- Backport of upstream svn r13802: fix the Squirrel bindings build with wxWidgets 3.3, wxColour channel getters are declared in the base class. diff --git a/src/sdk/scripting/bindings/sc_wxtypes.cpp b/src/sdk/scripting/bindings/sc_wxtypes.cpp index 9fb13ddcfd..465598d5ac 100644 --- a/src/sdk/scripting/bindings/sc_wxtypes.cpp +++ b/src/sdk/scripting/bindings/sc_wxtypes.cpp @@ -605,6 +605,46 @@ SQInteger wxColour_ToString(HSQUIRRELVM v) return 1; } +SQInteger wxColour_Blue(HSQUIRRELVM v) +{ + ExtractParams1 extractor(v); + if (!extractor.Process("wxColour_Blue")) + return extractor.ErrorMessage(); + + sq_pushinteger(v, extractor.p0->Blue()); + return 1; +} + +SQInteger wxColour_Green(HSQUIRRELVM v) +{ + ExtractParams1 extractor(v); + if (!extractor.Process("wxColour_Green")) + return extractor.ErrorMessage(); + + sq_pushinteger(v, extractor.p0->Green()); + return 1; +} + +SQInteger wxColour_Red(HSQUIRRELVM v) +{ + ExtractParams1 extractor(v); + if (!extractor.Process("wxColour_Red")) + return extractor.ErrorMessage(); + + sq_pushinteger(v, extractor.p0->Red()); + return 1; +} + +SQInteger wxColour_Alpha(HSQUIRRELVM v) +{ + ExtractParams1 extractor(v); + if (!extractor.Process("wxColour_Alpha")) + return extractor.ErrorMessage(); + + sq_pushinteger(v, extractor.p0->Alpha()); + return 1; +} + SQInteger wxPoint_get(HSQUIRRELVM v) { ExtractParams2 extractor(v); @@ -1076,12 +1116,12 @@ void Register_wxTypes(HSQUIRRELVM v) BindDefaultClone(v); BindMethod(v, _SC("_tostring"), wxColour_ToString, _SC("wxColour::_tostring")); - BindMethod(v, _SC("Blue"), NoParamGetterInt, _SC("wxColour::Blue")); - BindMethod(v, _SC("Green"), NoParamGetterInt, _SC("wxColour::Green")); - BindMethod(v, _SC("Red"), NoParamGetterInt, _SC("wxColour::Red")); - BindMethod(v, _SC("Alpha"), NoParamGetterInt, _SC("wxColour::Alpha")); - BindMethod(v, _SC("IsOk"), wxColour_IsOk, _SC("wxColour::IsOk")); - BindMethod(v, _SC("Set"), wxColour_Set, _SC("wxColour::Set")); + BindMethod(v, _SC("Blue"), wxColour_Blue, _SC("wxColour::Blue")); + BindMethod(v, _SC("Green"), wxColour_Green, _SC("wxColour::Green")); + BindMethod(v, _SC("Red"), wxColour_Red, _SC("wxColour::Red")); + BindMethod(v, _SC("Alpha"), wxColour_Alpha, _SC("wxColour::Alpha")); + BindMethod(v, _SC("IsOk"), wxColour_IsOk, _SC("wxColour::IsOk")); + BindMethod(v, _SC("Set"), wxColour_Set, _SC("wxColour::Set")); sq_newslot(v, classDecl, SQFalse); // Put the class in the root table. This must be last! }