Files
mtgodot-poc/extension/tests/port_python_ui_modules_test.cpp
T

48 lines
1.2 KiB
C++

#include "EterPythonLib/StdAfx.h"
#include "EterPythonLib/PythonWindowManager.h"
#include "ScriptLib/PythonLauncher.h"
#include "UserInterface/StdAfx.h"
extern void initapp();
#include "../src/platform/ScriptLib/PythonHost.h"
#include <cstdio>
#include <string>
int main(int argc, char** argv)
{
const std::string stdlib = argc > 1 ? argv[1] : PythonHost::DefaultStdLibPath();
PythonHost::Configure();
CPythonLauncher launcher;
if (!launcher.Create())
return 1;
std::string error;
if (!PythonHost::InstallStdLib(stdlib.c_str(), &error))
{
std::fprintf(stderr, "InstallStdLib: %s\n", error.c_str());
return 1;
}
{
UI::CWindowManager manager;
initgrp();
initgrpImage();
initgrpText();
initgrpThing();
initwndMgr();
initapp();
if (!launcher.RunLine("import wndMgr, grp, grpImage, grpText, grpThing, app"))
return 1;
if (!launcher.RunLine(
"class Handler: pass\n"
"window = wndMgr.Register(Handler(), 'UI')\n"
"assert window > 0\n"
"wndMgr.SetName(window, 'roundtrip')\n"
"wndMgr.SetWindowSize(window, 100, 50)\n"
"assert wndMgr.GetWindowWidth(window) == 100\n"
"wndMgr.Destroy(window)\n"))
return 1;
manager.Update();
}
launcher.Clear();
return 0;
}