Warning: session_start(): open(/var/lib/php/sessions/sess_0oslhnhfaesrliimadr6ctccq9, 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 G22AnalyzersPanel extends G22CRUDAndDetailPanel {
SimpleCRUD_v2 makeCRUD() {
var crud = new SimpleCRUD_v2<>(g22utils.concepts(), G22Analyzer);
crud.entityName = -> "Analyzer";
g22utils.setupScriptCRUD(crud);
ret crud;
}
void crudVisualized :: after {
crud.addButton(jPopDownButton_noText(
"Copy to other project...", rThread copyToOtherProject
));
}
void copyToOtherProject {
var analyzer = crud.selected();
var srcProject = g22utils.getLoadedDB();
var projects = g22utils.masterStuff().getLoadedDBs();
var cbProject = jTypedComboBox(listMinus(projects, srcProject));
packFrame(showFormTitled3("Copy analyzer to other project",
"Copy analyzer", str(analyzer),
"From project", str(srcProject),
"To project", cbProject,
"", jThreadedButton("Copy", -> copyToOtherProject(analyzer, getSelectedItem_typed(cbProject)))
).visualize());
}
void copyToOtherProject(G22Analyzer src, IG22LoadedDB project) {
new G22Analyzer clone;
clone.description(src.description)
.text(src.text);
clone.clearedForAutoRun(src.clearedForAutoRun)
.editingText(src.editingText)
.importNote("Copied from project " + quote(g22utils.masterStuff().getLoadedDB(src.concepts())) + " on " + localDateWithSeconds());
registerConcept(project.concepts(), clone);
infoBox("Made clone: " + clone);
}
JComponent makeDetailView(G22Analyzer script) {
var scriptIDE = new G22AnalyzerIDE(g22utils);
scriptIDE.setScript(script);
ret scriptIDE.visualize();
}
SimpleCRUD_v2 scriptCRUD() { ret crud(); }
selfType g22utils(G22Utils g22utils) { super.g22utils(g22utils); this; }
}