48 lines
1.4 KiB
Java
48 lines
1.4 KiB
Java
package it.cavallium.warppi.gui.expression.blocks;
|
||
|
||
import it.cavallium.warppi.device.display.DisplayOutputDevice;
|
||
import it.cavallium.warppi.gui.expression.Caret;
|
||
import it.cavallium.warppi.gui.expression.InputContext;
|
||
import it.cavallium.warppi.gui.graphicengine.Renderer;
|
||
|
||
public class BlockExponentialNotation extends BlockPower {
|
||
private int bw;
|
||
private int bh;
|
||
|
||
public BlockExponentialNotation() {
|
||
super();
|
||
}
|
||
|
||
/**
|
||
* Copy
|
||
* @param old
|
||
* @param ic
|
||
*/
|
||
private BlockExponentialNotation(final TreeContainer parent, BlockExponentialNotation old, InputContext ic) {
|
||
super(parent, old, ic);
|
||
this.bw = old.bw;
|
||
this.bh = old.bh;
|
||
}
|
||
|
||
@Override
|
||
public void draw(final DisplayOutputDevice ge, final Renderer r, final int x, final int y, final Caret caret) {
|
||
BlockContainer.getDefaultFont(small).use(ge);
|
||
r.glColor(BlockContainer.getDefaultColor());
|
||
r.glDrawStringLeft(x, y + height - bh, "ℯ℮");
|
||
super.draw(ge, r, x + bw, y, caret);
|
||
}
|
||
|
||
@Override
|
||
public void recomputeDimensions() {
|
||
super.recomputeDimensions();
|
||
bw = (int) (BlockContainer.getDefaultCharWidth(small) * 1.5);
|
||
bh = BlockContainer.getDefaultCharHeight(small);
|
||
width += bw;
|
||
}
|
||
|
||
@Override
|
||
public BlockExponentialNotation clone(final TreeContainer parent, InputContext ic) {
|
||
return new BlockExponentialNotation(parent, this, ic);
|
||
}
|
||
}
|