java.lang.Object
ij.gui.GUI
This class consists of static GUI utility methods.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic void
static void
Positions the specified window in the center of the screen that contains target.static void
Positions the specified window in the center of the screen containing the "ImageJ" window.static Image
createBlankImage
(int width, int height) Obsoletestatic void
Lightens overly dark scrollbar background on Windows 8.static final void
Works around an OpenJDK bug on Windows that causes the scrollbar thumb color and background color to be almost identical.static Rectangle
static Rectangle
getMaxWindowBounds
(Component component) static Rectangle
getMaxWindowBounds
(Point point) static Rectangle
static Rectangle
getScreenBounds
(Component component) static Rectangle
getScreenBounds
(Component component, boolean accountForInsets) Get maximum bounds for the screen that contains a given component.static Rectangle
getScreenBounds
(Point point) static Rectangle
getScreenBounds
(Point point, boolean accountForInsets) Get maximum bounds for the screen that contains a given point.static Rectangle
static Rectangle
static GenericDialog
newNonBlockingDialog
(String title) Returns a new NonBlockingGenericDialog with the given title, except when Java is running in headless mode, in which case a GenericDialog is be returned.static GenericDialog
newNonBlockingDialog
(String title, ImagePlus imp) Returns a new NonBlockingGenericDialog with the given title if Prefs.nonBlockingFilterDialogs is 'true' and 'imp' is displayed, otherwise returns a GenericDialog.static void
Scales an AWT component according toPrefs.getGuiScale()
.static boolean
scale
(JComponent component) Tries to detect if a Swing component is unscaled and scales it it according to#getGuiScale()
.static void
scalePopupMenu
(PopupMenu popup) static boolean
showCompositeAdvisory
(ImagePlus imp, String title)
-
Constructor Details
-
GUI
public GUI()
-
-
Method Details
-
center
Positions the specified window in the center of the screen that contains target. -
centerOnImageJScreen
Positions the specified window in the center of the screen containing the "ImageJ" window. -
center
-
getScreenBounds
Get maximum bounds for the screen that contains a given point.- Parameters:
point
- Coordinates of point.accountForInsets
- Deduct the space taken up by menu and status bars, etc. (after point is found to be inside bonds)- Returns:
- Rectangle of bounds or
null
if point not inside of any screen.
-
getScreenBounds
Get maximum bounds for the screen that contains a given component.- Parameters:
component
- An AWT component located on the desired screen. Ifnull
is provided, the default screen is used.accountForInsets
- Deduct the space taken up by menu and status bars, etc.- Returns:
- Rectangle of bounds.
-
getScreenBounds
-
getScreenBounds
-
getScreenBounds
-
getMaxWindowBounds
-
getMaxWindowBounds
-
getMaxWindowBounds
-
getZeroBasedMaxBounds
-
getUnionOfBounds
-
createBlankImage
Obsolete -
fix
Lightens overly dark scrollbar background on Windows 8. -
showCompositeAdvisory
-
scale
Scales an AWT component according toPrefs.getGuiScale()
.- Parameters:
component
- the AWT component to be scaled. If a container, scaling is applied to all its child components
-
scalePopupMenu
-
scale
Tries to detect if a Swing component is unscaled and scales it it according to#getGuiScale()
.This is mainly relevant to linux: Swing components scale automatically on most platforms, specially since Java 8. However there are still exceptions to this on linux: e.g., In Ubuntu, Swing components do scale, but only under the GTK L&F. (On the other hand AWT components do not scale at all on hiDPI screens on linux).
This method tries to avoid exaggerated font sizes by detecting if a component has been already scaled by the UIManager, applying only
#getGuiScale()
to the component's font if not.- Parameters:
component
- the component to be scaled- Returns:
- true, if component's font was resized
-
fixScrollbar
Works around an OpenJDK bug on Windows that causes the scrollbar thumb color and background color to be almost identical. -
newNonBlockingDialog
Returns a new NonBlockingGenericDialog with the given title, except when Java is running in headless mode, in which case a GenericDialog is be returned. -
newNonBlockingDialog
Returns a new NonBlockingGenericDialog with the given title if Prefs.nonBlockingFilterDialogs is 'true' and 'imp' is displayed, otherwise returns a GenericDialog.- Parameters:
title
- Dialog titleimp
- The image associated with this dialog
-