Package adams.gui.visualization.heatmap
Class HeatmapPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- adams.gui.core.BasePanel
-
- adams.gui.visualization.heatmap.HeatmapPanel
-
- All Implemented Interfaces:
adams.gui.core.KnownParentSupporter,adams.gui.event.ImagePanelSelectionListener,ImageObserver,MenuContainer,Serializable,EventListener,Accessible
public class HeatmapPanel extends adams.gui.core.BasePanel implements adams.gui.event.ImagePanelSelectionListener, adams.gui.core.KnownParentSupporterPanel for displaying a single heatmap.- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
-
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
-
Field Summary
Fields Modifier and Type Field Description protected adams.gui.visualization.core.ColorGradientGeneratorm_ColorGeneratorthe color generator to use.protected Heatmapm_Heatmapthe heatmap on display.protected adams.gui.visualization.image.ImagePanelm_HeatmapImagethe panel for displaying the heatmap as image.protected adams.gui.core.SpreadSheetTablem_HeatmapTablethe table with the heatmap as spreadsheet.protected adams.gui.core.BaseTabbedPaneWithTabHidingm_LogTabbedPanethe tabbed pane for image/report and log.protected Colorm_MissingValueColorthe color to use for missing values.protected HeatmapViewerPanelm_Ownerthe owner.protected adams.gui.core.BaseLogPanelm_PanelLogthe log panel.protected static adams.core.Propertiesm_Propertiesthe setup for the panel.protected AbstractHeatmapReaderm_Readerthe reader that was used for reading in the heatmap.protected adams.gui.visualization.report.ReportFactory.Tablem_ReportTablethe report of the heatmap.protected adams.gui.core.SearchPanelm_SearchPanelthe search panel for the heatmap report.protected HashSet<HeatmapPanelSelectionListener>m_SelectionListenersthe selection listeners.protected adams.gui.core.BaseSplitPanem_SplitPanethe split pane for image/spreadsheet and report.protected adams.gui.core.BaseTabbedPanem_TabbedPanethe tabbed pane for the image and spreadsheet view.-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
-
Constructor Summary
Constructors Constructor Description HeatmapPanel(HeatmapViewerPanel owner)Initializes the panel.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddOverlay(AbstractHeatmapOverlay overlay)Adds the heatmap overlay.voidaddSelectionListener(HeatmapPanelSelectionListener l)Adds the given listener to the internal list of selection listeners.booleancanReload()Checks whether this panel can be reloaded.adams.gui.visualization.core.ColorGradientGeneratorgetColorGenerator()Returns the generator for the color gradient.HeatmapgetHeatmap()The current heatmap on display.adams.gui.visualization.image.ImagePanelgetImagePanel()Returns the underlying image panelContainergetKnownParent()Returns the component that acts as this component's parent.ColorgetMissingValueColor()Returns the color to use for missing values.HeatmapViewerPanelgetOwner()Returns the owner of this panel.static adams.core.PropertiesgetProperties()Returns the properties for this panel.AbstractHeatmapReadergetReader()Returns the heatmap reader that was used for loading this heatmap.StringgetTitle()Returns the database ID or filename as title.doublegetZoom()Returns the zoom factor (0-16).voidimageChanged(adams.gui.visualization.image.ImagePanel.PaintPanel panel)Notifies the overlay that the image has changed.protected voidinitGUI()Initializes the widgets.protected voidinitialize()Initializes the members.booleanisLogVisible()Returns whether the report table is visible.booleanisReportVisible()Returns whether the report table is visible.booleanisSearchPanelVisible()Returns whether the search panel is visible.voidlog(String msg)Logs the message in the log panel.protected Stringrefresh()Regenerates the image of the current heatmap and redisplays it.booleanreload()Reloads the data, if possible.voidremoveOverlays()Removes all overlays.voidremoveSelectionListener(HeatmapPanelSelectionListener l)Removes the given listener from the internal list of selection listeners.voidremoveSelectionListeners()Removes all listeners from the internal list of selection listeners.voidsearch(String text, boolean isRegExp)Performs a search.voidselected(adams.gui.event.ImagePanelSelectionEvent e)Invoked when a selection happened in aImagePanel.voidsetColorGenerator(adams.gui.visualization.core.ColorGradientGenerator value)Sets the generator for the color gradient.voidsetHeatmap(Heatmap value)Sets the heatmap to display.voidsetLogVisible(boolean value)Sets the visibility state of the report table.voidsetMissingValueColor(Color value)Sets the color to use for missing values.voidsetReader(AbstractHeatmapReader value)Sets the heatmap reader that was used for loading this heatmap.voidsetReportVisible(boolean value)Sets the visibility state of the report table.voidsetSearchPanelVisible(boolean value)Sets whether to display the search panel or not.voidsetZoom(double zoom)Sets the zoom factor (0-16).-
Methods inherited from class adams.gui.core.BasePanel
afterHide, afterShow, beforeHide, beforeShow, closeParent, finishInit, getParentChild, getParentDialog, getParentFrame, getParentInternalFrame, getParentTitle, initFileChooser, main, printErrorMessage, printException, saveComponent, setEnabledCascade, setEnabledCascade, setParentTitle, setVisible
-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
m_Properties
protected static adams.core.Properties m_Properties
the setup for the panel.
-
m_Heatmap
protected Heatmap m_Heatmap
the heatmap on display.
-
m_HeatmapImage
protected adams.gui.visualization.image.ImagePanel m_HeatmapImage
the panel for displaying the heatmap as image.
-
m_HeatmapTable
protected adams.gui.core.SpreadSheetTable m_HeatmapTable
the table with the heatmap as spreadsheet.
-
m_ReportTable
protected adams.gui.visualization.report.ReportFactory.Table m_ReportTable
the report of the heatmap.
-
m_SearchPanel
protected adams.gui.core.SearchPanel m_SearchPanel
the search panel for the heatmap report.
-
m_LogTabbedPane
protected adams.gui.core.BaseTabbedPaneWithTabHiding m_LogTabbedPane
the tabbed pane for image/report and log.
-
m_SplitPane
protected adams.gui.core.BaseSplitPane m_SplitPane
the split pane for image/spreadsheet and report.
-
m_TabbedPane
protected adams.gui.core.BaseTabbedPane m_TabbedPane
the tabbed pane for the image and spreadsheet view.
-
m_Owner
protected HeatmapViewerPanel m_Owner
the owner.
-
m_Reader
protected AbstractHeatmapReader m_Reader
the reader that was used for reading in the heatmap.
-
m_ColorGenerator
protected adams.gui.visualization.core.ColorGradientGenerator m_ColorGenerator
the color generator to use.
-
m_MissingValueColor
protected Color m_MissingValueColor
the color to use for missing values.
-
m_PanelLog
protected adams.gui.core.BaseLogPanel m_PanelLog
the log panel.
-
m_SelectionListeners
protected HashSet<HeatmapPanelSelectionListener> m_SelectionListeners
the selection listeners.
-
-
Constructor Detail
-
HeatmapPanel
public HeatmapPanel(HeatmapViewerPanel owner)
Initializes the panel.- Parameters:
owner- the owner of this panel
-
-
Method Detail
-
initialize
protected void initialize()
Initializes the members.- Overrides:
initializein classadams.gui.core.BasePanel
-
initGUI
protected void initGUI()
Initializes the widgets.- Overrides:
initGUIin classadams.gui.core.BasePanel
-
getOwner
public HeatmapViewerPanel getOwner()
Returns the owner of this panel.- Returns:
- the owner, null if none set
-
getKnownParent
public Container getKnownParent()
Returns the component that acts as this component's parent.- Specified by:
getKnownParentin interfaceadams.gui.core.KnownParentSupporter- Returns:
- the parent, null if not available
-
refresh
protected String refresh()
Regenerates the image of the current heatmap and redisplays it.- Returns:
- null if everything OK, otherwiser error message
-
setHeatmap
public void setHeatmap(Heatmap value)
Sets the heatmap to display.- Parameters:
value- the heatmap to display
-
getHeatmap
public Heatmap getHeatmap()
The current heatmap on display.- Returns:
- the heatmap on display
-
setReader
public void setReader(AbstractHeatmapReader value)
Sets the heatmap reader that was used for loading this heatmap. Used for reloading.- Parameters:
value- the reader
-
getReader
public AbstractHeatmapReader getReader()
Returns the heatmap reader that was used for loading this heatmap.- Returns:
- the reader, null if loaded from database
-
setColorGenerator
public void setColorGenerator(adams.gui.visualization.core.ColorGradientGenerator value)
Sets the generator for the color gradient.- Parameters:
value- the generator
-
getColorGenerator
public adams.gui.visualization.core.ColorGradientGenerator getColorGenerator()
Returns the generator for the color gradient.- Returns:
- the generator
-
addOverlay
public void addOverlay(AbstractHeatmapOverlay overlay)
Adds the heatmap overlay.- Parameters:
overlay- the overlay to add
-
removeOverlays
public void removeOverlays()
Removes all overlays.
-
setMissingValueColor
public void setMissingValueColor(Color value)
Sets the color to use for missing values.- Parameters:
value- the color
-
getMissingValueColor
public Color getMissingValueColor()
Returns the color to use for missing values.- Returns:
- the color
-
getTitle
public String getTitle()
Returns the database ID or filename as title.- Returns:
- the title
-
getImagePanel
public adams.gui.visualization.image.ImagePanel getImagePanel()
Returns the underlying image panel- Returns:
- the panel
-
canReload
public boolean canReload()
Checks whether this panel can be reloaded.- Returns:
- true if reload is possible
-
reload
public boolean reload()
Reloads the data, if possible.- Returns:
- true if successfully reloaded
-
search
public void search(String text, boolean isRegExp)
Performs a search.- Parameters:
text- the search textisRegExp- whether the search text is a regular expression
-
setSearchPanelVisible
public void setSearchPanelVisible(boolean value)
Sets whether to display the search panel or not.- Parameters:
value- if true then the search panel is displayed
-
isSearchPanelVisible
public boolean isSearchPanelVisible()
Returns whether the search panel is visible.- Returns:
- true if the search panel is visible
-
getProperties
public static adams.core.Properties getProperties()
Returns the properties for this panel.- Returns:
- the properties file for this panel
-
setZoom
public void setZoom(double zoom)
Sets the zoom factor (0-16). Use -1 to fit inside panel.- Parameters:
zoom- the zoom factor
-
getZoom
public double getZoom()
Returns the zoom factor (0-16).- Returns:
- the zoom factor
-
log
public void log(String msg)
Logs the message in the log panel.- Parameters:
msg- the log message
-
isReportVisible
public boolean isReportVisible()
Returns whether the report table is visible.- Returns:
- true if visible
-
setReportVisible
public void setReportVisible(boolean value)
Sets the visibility state of the report table.- Parameters:
value- true if visible
-
isLogVisible
public boolean isLogVisible()
Returns whether the report table is visible.- Returns:
- true if visible
-
setLogVisible
public void setLogVisible(boolean value)
Sets the visibility state of the report table.- Parameters:
value- true if visible
-
addSelectionListener
public void addSelectionListener(HeatmapPanelSelectionListener l)
Adds the given listener to the internal list of selection listeners.- Parameters:
l- the listener to add
-
removeSelectionListener
public void removeSelectionListener(HeatmapPanelSelectionListener l)
Removes the given listener from the internal list of selection listeners.- Parameters:
l- the listener to remove
-
removeSelectionListeners
public void removeSelectionListeners()
Removes all listeners from the internal list of selection listeners.
-
imageChanged
public void imageChanged(adams.gui.visualization.image.ImagePanel.PaintPanel panel)
Notifies the overlay that the image has changed.- Specified by:
imageChangedin interfaceadams.gui.event.ImagePanelSelectionListener- Parameters:
panel- the panel this overlay belongs to
-
selected
public void selected(adams.gui.event.ImagePanelSelectionEvent e)
Invoked when a selection happened in aImagePanel.- Specified by:
selectedin interfaceadams.gui.event.ImagePanelSelectionListener- Parameters:
e- the event
-
-