import org.simantics.db.common.request.UniqueRead;
import org.simantics.db.common.request.WriteRequest;
import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.layer0.util.Layer0Utils;
import org.simantics.db.procedure.Listener;
import org.simantics.db.request.Read;
import org.simantics.modeling.ComponentTypeScriptRequest;
StructuralResource2 STR = StructuralResource2.getInstance(graph);
currentText = graph.getRelatedValue(resource, STR.ComponentTypeScript_code, Bindings.STRING);
Resource owner = graph.getPossibleObject(resource, STR.ComponentType_hasScript_Inverse);
- immutable = owner != null && StructuralUtils.isImmutable(graph, owner);
+ immutable = Layer0Utils.isMarkedReadOnly(graph, resource)
+ || owner != null && StructuralUtils.isImmutable(graph, owner);
errorHappened = false;
- return new Document(currentText != null ? currentText : "");
+ return new Document(currentText != null ? currentText : ""); //$NON-NLS-1$
}
});
} catch (DatabaseException e) {
synchronized(annotationModel.getLockObject()) {
annotationModel.removeAllAnnotations();
for(CompilationError error : result.getErrors()) {
- Annotation annotation = new Annotation("org.eclipse.ui.workbench.texteditor.error", true, error.description);
+ Annotation annotation = new Annotation("org.eclipse.ui.workbench.texteditor.error", true, error.description); //$NON-NLS-1$
int begin = Locations.beginOf(error.location);
int end = Locations.endOf(error.location);
Position position = new Position(begin, end - begin);
@Override
protected void doSaveDocument(IProgressMonitor monitor, Object element,
IDocument document, boolean overwrite) throws CoreException {
- TimeLogger.resetTimeAndLog(getClass(), "doSaveDocument");
+ TimeLogger.resetTimeAndLog(getClass(), "doSaveDocument"); //$NON-NLS-1$
currentText = document.get();
Simantics.getSession().asyncRequest(new WriteRequest() {
@Override