srecord noeq G22ProjectOverviewPanel(G22Utils g22utils) { JSyntaxTextFileEditor storyView; cachedVisualize { 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() })); ret withTopAndBottomMargin(jRaisedCenteredSection("Project Overview", jhsplit(0.75, jCenteredSection("Project Story [" + g22utils.projectName() + "]", storyView.visualize()), jvsplit( jCenteredSection("Variables", jpanel()), jCenteredSection("Auto Start Scripts", jpanel()))) )); } }