Class TLcdBingMapsLogoIcon
java.lang.Object
com.luciad.format.bingmaps.copyright.TLcdBingMapsLogoIcon
- All Implemented Interfaces:
ILcdIcon
,ILcdChangeSource
,ILcdCloneable
,Serializable
,Cloneable
Icon representing the Bing Maps logo when there are visible Bing Map layers in the view.
Depending on the Bing Maps terms of use, it may be required to display
the logo of the displayed content.
Usually the icon is displayed in conjunction with the copyright information (see
Adding the logo and copyright icon to the overlay panel of an FX view:
TLcdBingMapsCopyrightIcon
).
Example
Adding the logo and copyright icon to the overlay panel of a Swing/AWT view: //The Bing Maps terms of use require to display the icon and copyright information on the map
//Here we add them to the overlay component of an ILspAWTView
TLcdBingMapsLogoIcon logoIcon = new TLcdBingMapsLogoIcon(view);
view.getOverlayComponent().add(logoIcon.asComponent(), TLcdOverlayLayout.Location.NORTH_WEST);
TLspBingMapsCopyrightIcon copyrightIcon = new TLspBingMapsCopyrightIcon(view);
copyrightIcon.setAlignment(ELcdHorizontalAlignment.RIGHT);
view.getOverlayComponent().add(copyrightIcon.asComponent(), TLcdOverlayLayout.Location.NORTH_WEST);
TLcdBingMapsLogoIcon logoIcon = new TLcdBingMapsLogoIcon(view);
Node logoNode = new TLcdFXIcon(logoIcon);
TLspBingMapsCopyrightIcon copyrightIcon = new TLspBingMapsCopyrightIcon(view);
Node copyrightNode = new TLcdFXIcon(copyrightIcon);
FXUtil.findOverlayPane(view).ifPresent(overlayPane -> {
HBox box = new HBox(logoNode, copyrightNode);
overlayPane.add(box, TLcdOverlayPane.Location.SOUTH_WEST);
});
- Since:
- 2019.0
- See Also:
-
Constructor Summary
ConstructorDescriptionCreate a new icon showing the Bing Maps logo when the view contains visible Bing Map layers. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addChangeListener
(ILcdChangeListener aListener) Registers the given listener so it will receive change events from this source.Returns aJComponent
representing this icon which can be added to a Swing container.clone()
MakesObject.clone()
public.int
Returns the fixed height of the icon.int
Returns the fixed width of the icon.void
Draw theILcdIcon
at the specified location.void
removeChangeListener
(ILcdChangeListener aListener) Removes the specified listener so it is no longer notified.
-
Constructor Details
-
TLcdBingMapsLogoIcon
Create a new icon showing the Bing Maps logo when the view contains visible Bing Map layers.- Parameters:
aView
- The view
-
-
Method Details
-
paintIcon
Description copied from interface:ILcdIcon
Draw theILcdIcon
at the specified location.ILcdIcon
implementations may use theComponent
argument to get properties useful for painting, e.g. the foreground or background color.- Specified by:
paintIcon
in interfaceILcdIcon
- Parameters:
aComponent
- a Component to retrieve properties from.aGraphics
- the Graphics on which the icon will be painted.aX
- the x position where the icon will be painted. x is the first coordinate of the top left corner point of the icon.aY
- the y position where the icon will be painted. y is the second coordinate of the top left corner point of the icon.
-
getIconWidth
public int getIconWidth()Description copied from interface:ILcdIcon
Returns the fixed width of the icon.- Specified by:
getIconWidth
in interfaceILcdIcon
- Returns:
- the fixed width of the icon.
-
getIconHeight
public int getIconHeight()Description copied from interface:ILcdIcon
Returns the fixed height of the icon.- Specified by:
getIconHeight
in interfaceILcdIcon
- Returns:
- the fixed height of the icon.
-
addChangeListener
Description copied from interface:ILcdChangeSource
Registers the given listener so it will receive change events from this source.
In case you need to register a listener which keeps a reference to an object with a shorter life-time than this change source, you can use a
ALcdWeakChangeListener
instance as change listener.- Specified by:
addChangeListener
in interfaceILcdChangeSource
- Parameters:
aListener
- The listener to be notified when a change has happened.- See Also:
-
removeChangeListener
Description copied from interface:ILcdChangeSource
Removes the specified listener so it is no longer notified.- Specified by:
removeChangeListener
in interfaceILcdChangeSource
- Parameters:
aListener
- The listener to remove.
-
asComponent
Returns a
JComponent
representing this icon which can be added to a Swing container. The component will repaint itself each time the logo is updated. Typically this component is added to the overlay panel of the view.Example usage:
//The Bing Maps terms of use require to display the icon and copyright information on the map //Here we add them to the overlay component of an ILspAWTView TLcdBingMapsLogoIcon logoIcon = new TLcdBingMapsLogoIcon(view); view.getOverlayComponent().add(logoIcon.asComponent(), TLcdOverlayLayout.Location.NORTH_WEST); TLspBingMapsCopyrightIcon copyrightIcon = new TLspBingMapsCopyrightIcon(view); copyrightIcon.setAlignment(ELcdHorizontalAlignment.RIGHT); view.getOverlayComponent().add(copyrightIcon.asComponent(), TLcdOverlayLayout.Location.NORTH_WEST);
- Returns:
- a
JComponent
representing this icon
-
clone
Description copied from interface:ILcdCloneable
Makes
When for example extending fromObject.clone()
public.java.lang.Object
, it can be implemented like this:public Object clone() { try { return super.clone(); } catch ( CloneNotSupportedException e ) { // Cannot happen: extends from Object and implements Cloneable (see also Object.clone) throw new RuntimeException( e ); } }
- Specified by:
clone
in interfaceILcdCloneable
- Overrides:
clone
in classObject
- See Also:
-