Files
mtgodot-poc/audit/port-map/UserInterface/PythonApplication.cpp.json
T
shenleiandClaude Opus 5.5 a12e7fea42 Port route 4-c: NPC shop (PythonShop.cpp) + app cursor state
- UserInterface/PythonShop.cpp ported verbatim (shop module, initshop after initfly);
  pending stub and module stubs removed.
- 40250 PythonApplicationCursor.cpp and SetMouseHandler moved into the platform
  CPythonApplication on file-static members; GetCursorNum out of line, since uishop's
  app.GetCursor() dereferenced the missing application object.
- Fake server: general store (npclist 9003) answers CG_ON_CLICK with GC_SHOP START,
  CG_SHOP BUY/SELL2/END like CShop::Buy / CShopManager::Sell.
- port.login_flow step 10: click the shopkeeper, right-click buy, drag-sell, ESC close.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-24 09:30:47 +09:00

136 lines
3.7 KiB
JSON

{
"reference": "UserInterface/PythonApplication.cpp",
"reference_sha256": "9a9e5268c7475e6ed720bc8ee53ed58d334b22d1efa93310b3d45f1bbdd85bf3",
"priority": "P4",
"contracts": [],
"functions": {
"CPythonApplication::CPythonApplication": {
"status": "TODO"
},
"CPythonApplication::~CPythonApplication": {
"status": "TODO"
},
"CPythonApplication::GetMousePosition": {
"status": "TODO"
},
"CPythonApplication::SetMinFog": {
"status": "TODO"
},
"CPythonApplication::SetFrameSkip": {
"status": "TODO"
},
"CPythonApplication::NotifyHack": {
"status": "TODO"
},
"CPythonApplication::GetInfo": {
"status": "TODO"
},
"CPythonApplication::Abort": {
"status": "TODO"
},
"CPythonApplication::Exit": {
"status": "TODO"
},
"CPythonApplication::RenderGame": {
"status": "TODO"
},
"CPythonApplication::UpdateGame": {
"status": "TODO"
},
"CPythonApplication::SkipRenderBuffering": {
"status": "TODO"
},
"CPythonApplication::Process": {
"status": "TODO"
},
"CPythonApplication::UpdateClientRect": {
"status": "TODO"
},
"CPythonApplication::SetMouseHandler": {
"status": "ADAPTED",
"impl": [
"extension/src/platform/UserInterface/PythonApplication.cpp:SetMouseHandler"
],
"note": "Body verbatim on a file-static m_poMouseHandler (no application object yet); SetCursorNum calls its ChangeCursor.",
"test": "extension/tests/port_login_flow_test.cpp (step 10)"
},
"CPythonApplication::CheckDeviceState": {
"status": "TODO"
},
"CPythonApplication::CreateDevice": {
"status": "TODO"
},
"CPythonApplication::Loop": {
"status": "TODO"
},
"LoadLocaleData": {
"status": "ADAPTED",
"impl": [
"extension/src/platform/UserInterface/PythonApplication.cpp:LoadLocaleData"
],
"note": "Body verbatim in the platform CPythonApplication stand-in (the class itself is not ported); it reads item/mob tables and CPythonSkill's skilldesc/skilltable.",
"test": "extension/tests/port_login_flow_test.cpp step 3c (port.login_flow / port.login_live: item 19 Sword+9, mob 101 Wild Dog, skill 1 Three-Way Cut cool time 12)"
},
"__GetWindowMode": {
"status": "TODO"
},
"CPythonApplication::Create": {
"status": "TODO"
},
"CPythonApplication::SetGlobalCenterPosition": {
"status": "TODO"
},
"CPythonApplication::SetCenterPosition": {
"status": "TODO"
},
"CPythonApplication::GetCenterPosition": {
"status": "TODO"
},
"CPythonApplication::SetServerTime": {
"status": "TODO"
},
"CPythonApplication::GetServerTime": {
"status": "TODO"
},
"CPythonApplication::GetServerTimeStamp": {
"status": "TODO"
},
"CPythonApplication::GetGlobalTime": {
"status": "TODO"
},
"CPythonApplication::GetGlobalElapsedTime": {
"status": "TODO"
},
"CPythonApplication::SetFPS": {
"status": "TODO"
},
"CPythonApplication::GetWidth": {
"status": "TODO"
},
"CPythonApplication::GetHeight": {
"status": "TODO"
},
"CPythonApplication::SetConnectData": {
"status": "TODO"
},
"CPythonApplication::GetConnectData": {
"status": "TODO"
},
"CPythonApplication::EnableSpecialCameraMode": {
"status": "TODO"
},
"CPythonApplication::SetCameraSpeed": {
"status": "TODO"
},
"CPythonApplication::SetForceSightRange": {
"status": "TODO"
},
"CPythonApplication::Clear": {
"status": "TODO"
},
"CPythonApplication::Destroy": {
"status": "TODO"
}
}
}