com.explodingpixels.widgets
Class WindowUtils

java.lang.Object
  extended by com.explodingpixels.widgets.WindowUtils

public class WindowUtils
extends Object

Utility methods for dealing with Windows.


Constructor Summary
WindowUtils()
           
 
Method Summary
static WindowFocusListener createAndInstallRepaintWindowFocusListener(Window window)
          Deprecated. use the more targeted installJComponentRepainterOnWindowFocusChanged(JComponent) method.
static void installJComponentRepainterOnWindowFocusChanged(JComponent component)
          Installs a listener on the given JComponent's parent Window that repaints the given component when the parent window's focused state changes.
static void installWeakWindowFocusListener(JComponent component, WindowFocusListener focusListener)
          Installs a WindowFocusListener on the given JComponent's parent Window.
static boolean isParentWindowFocused(Component component)
          true if the given Component's has a parent Window (i.e.
static void makeWindowNonOpaque(Window window)
          Try's to make the given Window non-opqaue (transparent) across platforms and JREs.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WindowUtils

public WindowUtils()
Method Detail

makeWindowNonOpaque

public static void makeWindowNonOpaque(Window window)
Try's to make the given Window non-opqaue (transparent) across platforms and JREs. This method is not guaranteed to succeed, and will fail silently if the given Window cannot be made non-opaque.

This method is useful, for example, when creating a HUD style window that is semi-transparent, and thus doesn't want the window background to be drawn.

Parameters:
window - the Window to make non-opaque.

createAndInstallRepaintWindowFocusListener

@Deprecated
public static WindowFocusListener createAndInstallRepaintWindowFocusListener(Window window)
Deprecated. use the more targeted installJComponentRepainterOnWindowFocusChanged(JComponent) method.

Creates and installs a WindowFocusListener on the given Window which calls the Window's repaint() method on focus state changes.

Parameters:
window - the Window to repaint on focus state changes.
Returns:
the listener installed.

isParentWindowFocused

public static boolean isParentWindowFocused(Component component)
true if the given Component's has a parent Window (i.e. it's not null) and that Window is currently active (focused).

Parameters:
component - the Component to check the parent Window's focus for.
Returns:
true if the given Component's parent Window is currently active.

installWeakWindowFocusListener

public static void installWeakWindowFocusListener(JComponent component,
                                                  WindowFocusListener focusListener)
Installs a WindowFocusListener on the given JComponent's parent Window. If the JComponent doesn't yet have a parent, then the listener will be installed when the component is added to a container.

Parameters:
component - the component who's parent frame to listen to focus changes on.
focusListener - the WindowFocusListener to notify when focus changes.

installJComponentRepainterOnWindowFocusChanged

public static void installJComponentRepainterOnWindowFocusChanged(JComponent component)
Installs a listener on the given JComponent's parent Window that repaints the given component when the parent window's focused state changes. If the given component does not have a parent at the time this method is called, then an ancestor listener will be installed that installs a window listener when the components parent changes.

Parameters:
component - the JComponent to add the repaint focus listener to.