Warning: session_start(): open(/var/lib/php/sessions/sess_te3nt31ec7au5fvjvh2m36td81, 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
module LocalSnippets > DynObjectTable {
visualize {
JComponent c = super.visualize();
ret withCenteredButtons(centerAndEastWithMargins(c, vstackWithSpacing(
makeBold(tableDependentButton(table, "RUN", rThread {
dm_addDynamicModuleDialog2(selected().id)
})),
tableDependentButton(table, "Edit", rThread {
dm_editSnippet(selected().id)
}),
tableDependentButton(table, "Transpile", rThread {
transpileLocalSnippet(selected().id);
updateList();
}),
tableDependentButton(table, "Rename...", rThread {
fS id = selected().id;
inputText("Rename Snippet " + id,
getSnippetTitle(id),
voidfunc(S title) enter {
renameSnippet(id, title);
updateList();
});
})
,
tableDependentButton(table, "Delete", rThread {
if (confirmOKCancel("Delete snippet " + snippetWithTitle(selected()) + "? It will be backed up.")) {
deleteLocalSnippet(selected().id);
infoBox("Snippet deleted!");
updateList();
}
}),
)),
"New program...", r addSnippet);
}
start {
itemToMap = func(Snippet s) -> Map {
litorderedmap(
"ID" := s.id,
"Title" := unnull(s.title),
"Type" := s.type,
"Lines" := str(numberOfLinesInFile(localSnippetFile(s.id))),
"Transpiled" := isLocalSnippetTranspiled(s.id) ? "yes" : "no")
};
doEveryAndNow(5.0, r updateList);
}
void updateList enter {
setData(listLocalSnippets());
}
void addSnippet enter {
final JTextField tfTitle = jtextfield();
showFormTitled("Create local snippet",
"Title", tfTitle,
"Type", "Dynamic Module",
rThread {
long id = newLocalSnippetID();
File f = localSnippetFile(id);
assertFalse(fileExists(f));
saveTextFile(f, newModuleText());
setFileInfoField(f, "Title", gtt(tfTitle));
setLocalSnippetType(id, snippetType_dynModule());
updateList();
});
}
}