载入中...
搜索中...
未找到
ParentScalerBindings.cpp
浏览该文件的文档.
1#include "ui/ParentScaler.h"
2
4
5#include <simplesquirrel/simplesquirrel.hpp>
6
7namespace eve::ui {
8
9void exposeParentScalerBindings(ssq::Table& table) {
10 auto settings = table.addClass("ParentScalerSettings", ssq::Class::Ctor<ParentScalerSettings()>());
11 settings.addVar("scaleWithCanvas", &ParentScalerSettings::scaleWithCanvas);
12 settings.addVar("partScreen", &ParentScalerSettings::partScreen);
13 settings.addVar("maxHeight", &ParentScalerSettings::maxHeight);
14 auto input = table.addClass("ParentScalerInput", ssq::Class::Ctor<ParentScalerInput()>());
15 input.addVar("hasCanvas", &ParentScalerInput::hasCanvas);
16 input.addVar("targetCount", &ParentScalerInput::targetCount);
17 input.addVar("canvasHeight", &ParentScalerInput::canvasHeight);
18 auto state = table.addClass("ParentScalerState", ssq::Class::Ctor<ParentScalerState()>());
19 state.addVar("lastScaleHeight", &ParentScalerState::lastScaleHeight);
20 auto output = table.addClass("ParentScalerOutput", ssq::Class::Ctor<ParentScalerOutput()>());
21 output.addVar("applyHeight", &ParentScalerOutput::applyHeight);
22 output.addVar("height", &ParentScalerOutput::height);
23 table.addFunc("evaluateParentScaler",
24 [vm = table.getHandle()](ParentScalerState* state, ParentScalerOutput* output,
27 return eve::script::projectResult(vm,
28 evaluateParentScaler(state, output, settings, input));
29 });
30}
31
32} // namespace eve::ui
std::string output
HSQUIRRELVM vm
Definition ECS.cpp:20
EvpackChunkInput input
Definition Evpack.cpp:170
The single Squirrel projection for common Result, Status and Value.
TerrainThermalSettings settings
void exposeParentScalerBindings(ssq::Table &table)
Register ParentScaler value types and evaluator with the root script table.
Current canvas and target-list observation.
Height write emitted for every valid target rect.
Configuration for Pcg ParentScaler canvas-height behavior.
Caller-owned change detector retained across evaluations.