package jetbrains.mps.lang.smodel.editor; /*Generated by MPS */ import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder; import org.jetbrains.annotations.NotNull; import org.jetbrains.mps.openapi.model.SNode; import jetbrains.mps.openapi.editor.EditorContext; import jetbrains.mps.openapi.editor.cells.EditorCell; import jetbrains.mps.lang.smodel.generator.smodelAdapter.SConceptOperations; import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations; import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory; import jetbrains.mps.openapi.editor.style.Style; import jetbrains.mps.editor.runtime.style.StyleImpl; import jetbrains.mps.editor.runtime.style.StyleAttributes; import jetbrains.mps.nodeEditor.MPSFonts; import jetbrains.mps.nodeEditor.cellMenu.CompositeSubstituteInfo; import jetbrains.mps.nodeEditor.cellMenu.BasicCellContext; import jetbrains.mps.nodeEditor.cellMenu.SubstituteInfoPartExt; import jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfoPartEx; import jetbrains.mps.lang.editor.generator.internal.AbstractCellMenuPart_ReplaceNode_CustomNodeConcept; import org.jetbrains.mps.openapi.language.SAbstractConcept; import jetbrains.mps.nodeEditor.cells.EditorCell_Error; /*package*/ class ReplaceableAlias_Comp_ComponentBuilder_a extends AbstractEditorBuilder { @NotNull private SNode myNode; public ReplaceableAlias_Comp_ComponentBuilder_a(@NotNull EditorContext context, @NotNull SNode node) { super(context); myNode = node; } @NotNull @Override public SNode getNode() { return myNode; } /*package*/ EditorCell createCell() { return createAlternation_gk1mhy_a(); } private EditorCell createAlternation_gk1mhy_a() { boolean alternationCondition = true; alternationCondition = nodeCondition_gk1mhy_a0(); EditorCell editorCell = null; if (alternationCondition) { editorCell = createComponent_gk1mhy_a0(); } else { editorCell = createError_gk1mhy_a0(); } return editorCell; } private boolean nodeCondition_gk1mhy_a0() { return !(SConceptOperations.isExactly(SNodeOperations.asSConcept(SNodeOperations.getConcept(myNode)), MetaAdapterFactory.getConcept(0x7866978ea0f04cc7L, 0x81bc4d213d9375e1L, 0x1090ea2ebacL, "jetbrains.mps.lang.smodel.structure.SNodeOperation"))); } private EditorCell createComponent_gk1mhy_a0() { EditorCell editorCell = getCellFactory().createEditorComponentCell(myNode, "jetbrains.mps.lang.core.editor.alias"); Style style = new StyleImpl(); style.set(StyleAttributes.FONT_STYLE, MPSFonts.BOLD); editorCell.getStyle().putAll(style); editorCell.setSubstituteInfo(new CompositeSubstituteInfo(getEditorContext(), new BasicCellContext(myNode), new SubstituteInfoPartExt[]{new ReplaceableAlias_Comp_ComponentBuilder_a.ReplaceWith_SNodeOperation_cellMenu_gk1mhy_a0a0(), new SChildSubstituteInfoPartEx(editorCell)})); return editorCell; } public static class ReplaceWith_SNodeOperation_cellMenu_gk1mhy_a0a0 extends AbstractCellMenuPart_ReplaceNode_CustomNodeConcept { public ReplaceWith_SNodeOperation_cellMenu_gk1mhy_a0a0() { } public SAbstractConcept getReplacementConcept() { return MetaAdapterFactory.getConcept(0x7866978ea0f04cc7L, 0x81bc4d213d9375e1L, 0x1090ea2ebacL, "jetbrains.mps.lang.smodel.structure.SNodeOperation"); } } private EditorCell createError_gk1mhy_a0() { EditorCell_Error editorCell = new EditorCell_Error(getEditorContext(), myNode, "<choose operaion>"); editorCell.setCellId("Error_gk1mhy_a0"); return editorCell; } }