package jetbrains.mps.baseLanguage.math.pluginSolution.plugin; /*Generated by MPS */ import jetbrains.mps.nodeEditor.AbstractCellProvider; import org.jetbrains.mps.openapi.model.SNode; import jetbrains.mps.openapi.editor.cells.EditorCell; import jetbrains.mps.openapi.editor.EditorContext; import jetbrains.mps.nodeEditor.cells.EditorCell_Basic; import java.awt.Graphics; import jetbrains.mps.nodeEditor.cells.ParentSettings; import java.awt.Color; import jetbrains.mps.openapi.editor.cells.CellTraversalUtil; public class HLineCellProvider extends AbstractCellProvider { public HLineCellProvider(SNode node) { super(node); } @Override public EditorCell createEditorCell(EditorContext context) { EditorCell_Basic result = new EditorCell_Basic(context, getSNode()) { @Override protected void paintContent(Graphics g, ParentSettings parentSettings) { if (this.isSelectionPaintedOnAncestor(parentSettings).isSelectionPainted()) { g.setColor(Color.WHITE); } else { g.setColor(Color.BLACK); } int x = this.getParent().getX(); int width = this.getParent().getWidth(); this.setWidth(width); this.setX(x); g.fillRect(x, this.getY() + 1, width, 1); } @Override public int getAscent() { return CellTraversalUtil.getPrevLeaf(this).getHeight() / 4; } @Override public void relayoutImpl() { this.myWidth = 20; this.myHeight = 3; } }; return result; } }