{ "reference": "EterPythonLib/PythonGraphic.cpp", "reference_sha256": "82fc01bd616637f92fcbc17e1eb2c7dd8ab78615695dc2aaabe9e5bf2f204632", "priority": "P4", "contracts": [], "functions": { "CPythonGraphic::Destroy": { "status": "TODO" }, "CPythonGraphic::GetD3D": { "status": "TODO" }, "CPythonGraphic::GetOrthoDepth": { "status": "PORTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::GetOrthoDepth" ] }, "CPythonGraphic::SetInterfaceRenderState": { "status": "PORTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::SetInterfaceRenderState" ] }, "CPythonGraphic::SetGameRenderState": { "status": "PORTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::SetGameRenderState" ] }, "CPythonGraphic::SetCursorPosition": { "status": "ADAPTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::SetCursorPosition" ], "test": "extension/tests/port_login_flow_test.cpp", "note": "40250 body verbatim in the platform layer (pick ray through the cursor)." }, "CPythonGraphic::SetOmniLight": { "status": "TODO" }, "CPythonGraphic::SetViewport": { "status": "ADAPTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::SetViewport" ], "test": "extension/tests/port_app_loop_test.cpp", "note": "40250 device viewport set/backup kept (guarded for the device-less boot). The UI is drawn from UIRenderCommands, not the device, so the same rectangle is also pushed as the UI clip (UIRenderSetClip)." }, "CPythonGraphic::RestoreViewport": { "status": "ADAPTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::RestoreViewport" ], "test": "extension/tests/port_app_loop_test.cpp", "note": "Restores the backup viewport as 40250 does and pops the UI clip pushed by SetViewport." }, "CPythonGraphic::SetGamma": { "status": "PORTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::SetGamma" ], "note": "Verbatim 40250. The recording device reports no D3DCAPS2_FULLSCREENGAMMA (windowed output, where D3D8 ignores the ramp as well), so it returns at the caps check; IDirect3DDevice8::SetGammaRamp added to the D3D8 shim." }, "GenScreenShotTag": { "status": "TODO" }, "CPythonGraphic::SaveJPEG": { "status": "TODO" }, "CPythonGraphic::SaveScreenShot": { "status": "TODO" }, "CPythonGraphic::PushState": { "status": "PORTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::PushState" ] }, "CPythonGraphic::PopState": { "status": "PORTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::PopState" ] }, "CPythonGraphic::RenderImage": { "status": "TODO" }, "CPythonGraphic::RenderAlphaImage": { "status": "TODO" }, "CPythonGraphic::RenderCoolTimeBox": { "status": "ADAPTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::RenderCoolTimeBox" ], "test": "extension/tests/port_app_loop_test.cpp", "note": "Fan vertex build verbatim. 40250's D3DPT_TRIANGLEFAN (untextured, SELECTARG1 DIFFUSE colour/alpha, 0x80000000) is emitted as one untextured quad UIRenderCommand per fan triangle (centre, j, j+1, j+1); native_render and python_ui_surface.gd draw Bar+quad as a polygon. On-screen look NEEDS_LIVE against a skill cooldown." }, "CPythonGraphic::GenerateColor": { "status": "PORTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::GenerateColor" ] }, "CPythonGraphic::RenderDownButton": { "status": "PORTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::RenderDownButton" ] }, "CPythonGraphic::RenderUpButton": { "status": "PORTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::RenderUpButton" ] }, "CPythonGraphic::GetAvailableMemory": { "status": "PORTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::GetAvailableMemory" ] }, "CPythonGraphic::CPythonGraphic": { "status": "PORTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::CPythonGraphic" ] }, "CPythonGraphic::~CPythonGraphic": { "status": "PORTED", "impl": [ "extension/src/platform/EterPythonLib/PythonGraphic.cpp:CPythonGraphic::~CPythonGraphic" ] } } }