com.jgoodies.looks.common
Class ShadowPopupFactory

java.lang.Object
  extended by javax.swing.PopupFactory
      extended by com.jgoodies.looks.common.ShadowPopupFactory

public final class ShadowPopupFactory
extends PopupFactory

The JGoodies Looks implementation of PopupFactory Adds a drop shadow border to all popups except ComboBox popups It is installed by the JGoodies Plastic L&F, as well as b the JGoodies Windows L&F during the Look&Feel initialization see PlasticLookAndFeel.initialize() an WindowsLookAndFeel.initialize().

install()Note: To be used in a sandbox environment, this PopupFactor requires two AWT permissions: createRobot an readDisplayPixels. The reason for it is, that in the case o the heavy weight popups this PopupFactory uses a Robot to snapsho the screen background to simulate the drop shadow effect.

Version:
$Revision: 1.8 $
Author:
Karsten Lentzsch
See Also:
AWTPermission, Robot, Popup, LookAndFeel.initialize(), LookAndFeel.uninitialize()

Method Summary
 Popup getPopup(Component owner, Component contents, int x, int y)
          Creates a Popup for the Component ownercontents.
static void install()
          Installs the ShadowPopupFactory as the shared popup factor on non-Mac platforms.
static void uninstall()
          Uninstalls the ShadowPopupFactory and restores the origina popup factory as the new shared popup factory.
 
Methods inherited from class javax.swing.PopupFactory
getSharedInstance, setSharedInstance
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

install

public static void install()
Installs the ShadowPopupFactory as the shared popup factor on non-Mac platforms. Also stores the previously set factory so that it can be restored in #uninstall.

#getPopup.

See Also:
uninstall()

uninstall

public static void uninstall()
Uninstalls the ShadowPopupFactory and restores the origina popup factory as the new shared popup factory.

See Also:
install()

getPopup

public Popup getPopup(Component owner,
                      Component contents,
                      int x,
                      int y)
Creates a Popup for the Component ownercontents. In addition t the superclass behavior, we try to return a Popup that has a drop shadow if popup drop shadows are active - as returned b Options#isPopupDropShadowActive.

owner is used to determine which Window the ne Popup will parent the Component th Popup creates to. A null owner implies ther is no valid parent. x an y specify the preferred initial location to plac the Popup at. Based on screen size, or other paramaters the Popup may not display at x an y.

#getPopup, not the one in th stored factory, because the popup type is set in this instance not in the stored one.

Overrides:
getPopup in class PopupFactory
Parameters:
owner - Component mouse coordinates are relative to, may be null
contents - Contents of the Popup
x - Initial x screen coordinate
y - Initial y screen coordinate
Returns:
Popup containing Contents
Throws:
IllegalArgumentException - if contents is null
See Also:
Options.isPopupDropShadowActive()


Copyright © 2001-2013 JGoodies Software GmbH. All Rights Reserved.