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;
}
}