22 package com.realtime.crossfire.jxclient.gui.gui;
24 import java.awt.Component;
25 import java.awt.Dimension;
27 import java.awt.FontMetrics;
28 import org.jetbrains.annotations.NotNull;
29 import org.jetbrains.annotations.Nullable;
51 public static Dimension
getTextDimension(@NotNull
final String text, @NotNull
final FontMetrics fontMetrics) {
52 final int width = fontMetrics.stringWidth(text);
53 final int height = fontMetrics.getMaxAscent()+fontMetrics.getMaxDescent();
54 return new Dimension(width, height);
62 public static int getElementX(@NotNull
final Component element) {
63 final Component gui =
getGui(element);
64 int x = gui == null ? 0 : gui.getX();
65 for (Component component = element; component != null && !(component instanceof
Gui); component = component.getParent()) {
66 x += component.getX();
76 public static int getElementY(@NotNull
final Component element) {
77 final Component gui =
getGui(element);
78 int y = gui == null ? 0 : gui.getY();
79 for (Component component = element; component != null && !(component instanceof
Gui); component = component.getParent()) {
80 y += component.getY();
91 public static Gui getGui(@NotNull
final Component element) {
92 for (Component component = element; component != null; component = component.getParent()) {
93 if (component instanceof
Gui) {
94 return (Gui)component;
static Gui getGui(@NotNull final Component element)
Returns the Gui an element is part of.
static int getElementY(@NotNull final Component element)
Returns an element's absolute screen coordinate.
Combines a list of GUIElements to for a gui.
static Dimension getTextDimension(@NotNull final String text, @NotNull final FontMetrics fontMetrics)
Returns the extents of a string when rendered in a given Font on this component.
Utility class for Gui related functions.
static int getElementX(@NotNull final Component element)
Returns an element's absolute screen coordinate.
GuiUtils()
Private constructor to prevent instantiation.