Warning: session_start(): open(/var/lib/php/sessions/sess_l8i0qvdnb3fnketu6erqa6se8l, 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 G22ProjectOverviewPanel(G22Utils g22utils) {
JSyntaxTextFileEditor storyView;
JLabel lblStats;
transient G22ShowCasePanel showCasePanel;
void updateStats {
setText(lblStats, "Database core size: " + str_toKB(fileSize(g22utils.concepts().conceptsFile())));
}
cachedVisualize {
var conceptsFile = g22utils.concepts().conceptsFile();
lblStats = rightAlignedLabel();
IVF1 fileListener = file -> {
if (sameFile(file, conceptsFile))
updateStats();
};
bindToComponent(lblStats, -> {
g22utils.onProjectFileChanged(fileListener);
updateStats();
}, -> g22utils.removeProjectFileChangedListener(fileListener));
storyView = new JSyntaxTextFileEditor(g22utils.projectStoryTextFile())
.uneditable(true);
storyView.adaptSyntaxTextArea = textArea ->
g22_adaptSyntaxTextAreaForHashRefs(textArea, g22utils);
addInFront(storyView.buttons(),
jImageButtonScaledToWidth(16, #1103068, "Edit", rThread {
//g22utils.projectActions.editProjectStory();
storyView.uneditable(false);
}));
showCasePanel = new G22ShowCasePanel(g22utils);
// LAYOUT
S title = "Project " + quote(g22utils.projectName()) + " Overview";
G22VariablesPanel variablesPanel = g22utils.makeVariablesPanel();
variablesPanel.crud().tableSearcher().scpRightOfSearchPanel.set(withLeftMargin(
toolTip("Maximize variables panel", jimageButtonScaledToWidth(16, #1103161, rThread {
g22utils.showUIURL("Variables")
}))));
ret withTopAndBottomMargin(jRaisedCenteredSection(title,
jvsplit_minZero(
jhsplit(0.75,
jCenteredSection("Project Story",
centerAndSouthWithMargin(
storyView,
centerAndEastWithMargin(lblStats, jFilePathButton(conceptsFile))
)),
northAndCenterWithMargin(
new G22AutoStartPanel(g22utils),
variablesPanel.compactView(false)
)),
jCenteredSection("Showcase", showCasePanel.visualize())
) // end of jvsplit
));
}
}