Warning: session_start(): open(/var/lib/php/sessions/sess_u40bbqc8ct689rsocjrq02584m, 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
!7
static JTextField tf;
static SingleComponentPanel scp;
static Canvas canvas;
static Q q; // action queue
static volatile bool boss; // boss mode (after pressing Escape)
static L aiConcepts;
!include #1007377 // traits for CirclesAndLines
p-substance-thread {
aiConcepts = loadAIConcepts();
//final S word = getString(random(aiConcepts), /*"name"*/"globalID");
final S word = "paul + marie";
swing {
q = new Q(true);
JFrame frame = showFrame(northAndCenter(tf = setTextFieldFontSize(jCenteredTextField(word), 20), scp = new SingleComponentPanel));
registerEscape(frame, r { boss = true; tf.setText(""); scp.noComponent(); });
centerFrame(frameInnerSize(frame, 600, 600));
addMenu(frame, "Menu!", "Show AI Concepts", r { nohupJavax(#1006463) });
onEnterAndNow(tf, r {
boss = false;
awt { tf.selectAll(); }
final S text = getTextTrim(tf);
q.add(r {
if (boss) ret;
long time = sysNow();
loading {
final CirclesAndLines cal = renderText(text);
if (boss) ret;
awt {
scp.setComponent(centerAndSouth(
/*jscroll_centered*/(cal.makeCanvas()),
setFont(sansSerifBold(20), jcenteredlabel(text))));
}
}
sleepUntilSys(time+1000); // min display time
});
});
hideConsole();
}
}
static CirclesAndLines renderText(S text) {
if (possibleGlobalID(text)) {
AIConcept c = findWhere(aiConcepts, globalID := text);
if (c != null) {
print("Have concept (" + c.globalID + " - " + c.name + ")");
ret renderConcept(c);
}
}
new CirclesAndLines cal;
for (S s : splitAtPlus(text)) cal.circle_autoVis(s, 0.5, 0.5);
autoPositionCircles(cal);
ret cal;
}
static CirclesAndLines renderConcept(AIConcept c) {
new CirclesAndLines cal;
BufferedImage img = getConceptImage(c);
Circle cc;
if (img != null)
cc = cal.circle(img, 0.5, 0.5, c.name);
else
cc = cal.circle_autoVis(c.name, 0.5, 0.5);
cc.addTrait(c.globalID);
ret cal;
}