Warning: session_start(): open(/var/lib/php/sessions/sess_02flh7gs7fc94qrd7nkinmk4u3, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
srecord noeq JG22NetworkPort(G22Utils g22utils, JG22NetworkElement element, G22NetworkElement.Port port) > JPanel {
int size = 10;
Color outputColor() { ret Color.green; }
Color inputColor() { ret Color.red; }
void init {
bindChangeListenerToComponent(this, port, l0 update);
componentPopupMenuItem(this, "Show value", rThread showValue);
update();
}
void update {
_print("Updating port " + port);
setOpaque(true);
setBackground(port.isOutput() ? outputColor() : inputColor());
setSize(size, size);
// TODO: merge with backend computation
Rect r = toRect(main getBounds(element.visualize()));
r = growRectTopAndLeft(r, size);
setLocation(r.x+iround(port.position.x*r.w),
r.y+iround(port.position.y*r.h));
setToolTip(this, str(port));
_print("Port " + port.name + " : " + getBounds());
}
void showValue {
G22NetworkElement e;
if (port.isOutput())
e = port.element();
else
e = port.cable.from;
var value = element.parent.networkInstance.getObjectForBlueprint(e);
infoBox("Value: " + str(value));
}
}