mirror of
https://github.com/bancika/diy-layout-creator
synced 2026-11-11 01:32:08 +10:00
ability to center label
This commit is contained in:
+19
-3
@@ -27,6 +27,7 @@ public class Label extends AbstractComponent<Void> {
|
||||
private String text = DEFAULT_TEXT;
|
||||
private Font font = LABEL_FONT;
|
||||
private Color color = LABEL_COLOR;
|
||||
private boolean center = true;
|
||||
|
||||
@Override
|
||||
public void draw(Graphics2D g2d, ComponentState componentState, Project project,
|
||||
@@ -39,9 +40,16 @@ public class Label extends AbstractComponent<Void> {
|
||||
int textHeight = (int) rect.getHeight();
|
||||
int textWidth = (int) rect.getWidth();
|
||||
|
||||
// Center text horizontally and vertically
|
||||
int x = point.x - textWidth / 2;
|
||||
int y = point.y - textHeight / 2 + fontMetrics.getAscent();
|
||||
int x;
|
||||
int y;
|
||||
if (center) {
|
||||
// Center text horizontally and vertically
|
||||
x = point.x - textWidth / 2;
|
||||
y = point.y - textHeight / 2 + fontMetrics.getAscent();
|
||||
} else {
|
||||
x = point.x;
|
||||
y = point.y - textHeight;
|
||||
}
|
||||
|
||||
g2d.drawString(text, x, y);
|
||||
}
|
||||
@@ -107,6 +115,14 @@ public class Label extends AbstractComponent<Void> {
|
||||
this.color = color;
|
||||
}
|
||||
|
||||
public boolean getCenter() {
|
||||
return center;
|
||||
}
|
||||
|
||||
public void setCenter(boolean center) {
|
||||
this.center = center;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return super.getName();
|
||||
|
||||
Reference in New Issue
Block a user