Warning: session_start(): open(/var/lib/php/sessions/sess_keqdt868tq08cnb3o03acqgn5t, 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
sclass G22ChallengesPanel {
replace Challenge with G22Challenge.
transient settable G22Utils g22utils;
transient SimpleCRUD_v2 challengeCRUD;
transient SingleComponentPanel scpChallengePanel;
transient SimpleCRUD_v2 recognizerCRUD;
transient G22ChallengePanel challengePanel;
transient G22LAScriptIDE challengeIDE;
simplyCached JComponent visualize() {
challengeCRUD = new SimpleCRUD_v2<>(g22utils.concepts(), Challenge);
g22utils.setupScriptCRUD(challengeCRUD);
challengeCRUD.addCountToEnclosingTab(true);
challengeCRUD.entityName = -> "Challenge";
challengeIDE = new G22LAScriptIDE()
.g22utils(g22utils)
.noScriptSelectedMsg("Please select a challenge above to start");
recognizerCRUD = new SimpleCRUD_v2<>(g22utils.concepts(), G22RecognizerScript);
recognizerCRUD.entityName = -> "Recognizer";
g22utils.setupScriptCRUD(recognizerCRUD);
var recognizerCRUDVis = recognizerCRUD.visualize();
scpChallengePanel = singleComponentPanel();
challengeCRUD.onSelectionChangedAndNow(r_dm_q(l0 makeChallengePanel));
ret jhsplit(
withTopRightAndBottomMargin(jCenteredRaisedSection("Challenges",
withSideAndBottomMargin(
jvsplit(
jvsplit(
withBottomMargin(challengeCRUD.visualize()),
challengeIDE.visualize()
),
jCenteredRaisedSection("Recognizers", recognizerCRUDVis)
)
))),
withSideMargins(scpChallengePanel));
}
void makeChallengePanel {
var challenge = challengeCRUD.selected();
challengeIDE.setScript(challenge);
if (challenge == null) ret;
var panel = challengePanel = G22ChallengePanel(challenge);
panel.g22utils(g22utils);
panel.init();
//panel.recognizerIDE.lvScript(...);
scpChallengePanel.set(withTopAndBottomMargin(12, 6, panel.visualize()));
}
void updateCount {
challengeCRUD.update();
}
}