sgtplot.beans
Class PanelModel
- java.lang.Object
-
- sgtplot.beans.PanelModel
-
- All Implemented Interfaces:
- java.awt.event.ComponentListener, java.beans.PropertyChangeListener, java.io.Serializable, java.util.EventListener, javax.swing.event.ChangeListener
public class PanelModel extends java.lang.Object implements java.io.Serializable, javax.swing.event.ChangeListener, java.awt.event.ComponentListener, java.beans.PropertyChangeListenerA model that supports thePanelstructure of aPlot. Information includes theDataGroups andLayerChildren that are included in aPanel. APanelconsist of severalLayers, at least one for eachDataGroup.The layout of the
Panels will eventually be accomplished using theSpringLayout. This will provide a flexible and easy method to position thePanels in arbitrary positions. Currently thePanels are positioned in absolution location.Some classes have been omitted for display purposes.

- Since:
- 3.0
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor and Description PanelModel()PanelModelconstructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidaddChangeListener(javax.swing.event.ChangeListener l)Add changelistenervoidaddPanel(PanelHolder ph)Add aPanelHoldertoPanelModel.voidaddPanel(java.lang.String id, java.awt.Rectangle bounds, java.util.Map labels, java.util.Map dataGroups, java.util.Map legends)Create a newPaneland add toPanelModel.voidaddPropertyChangeListener(java.beans.PropertyChangeListener l)Add property change listener.voidaddPropertyChangeListener(java.lang.String name, java.beans.PropertyChangeListener l)Listen for specific property change.voidcomponentHidden(java.awt.event.ComponentEvent e)Unused.voidcomponentMoved(java.awt.event.ComponentEvent e)Unused.voidcomponentResized(java.awt.event.ComponentEvent e)Listener to updatePagesize if it changes.voidcomponentShown(java.awt.event.ComponentEvent e)Unused.PanelHolderfindPanelHolder(java.lang.String id)Find thePanelHolderfrom its identifier.floatgetDpi()Get dots per inch value.PagegetPage()Get Page parentjava.awt.ColorgetPageBackgroundColor()Get the background color forPage.java.awt.DimensiongetPageSize()GetPagesize.intgetPanelCount()Get number ofPanelHolderobjects inMap.java.util.MapgetPanelList()GetMapcontainingPanelHolderobjects.intgetPrintHAlign()Get horizontal alignment for printing.java.awt.PointgetPrintOrigin()Get page origin for printing.intgetPrintScaleMode()Get printing scale mode.intgetPrintVAlign()Get vertical alignment for printing.booleanhasPanelHolder(java.lang.String id)Does thePanelModelcontain thisPanelHolder?booleanisBatch()Is batching turned on?booleanisPrintBorders()Print borders?booleanisPrintWhitePage()Print with white background?static PanelModelloadFromXML(java.io.InputStream is)Create a newPanelModelfrom an object serialized usingXMLEncoder.java.util.IteratorpanelIterator()GetIteratorofPanelHolderobjects.voidpropertyChange(java.beans.PropertyChangeEvent evt)voidremoveChangeListener(javax.swing.event.ChangeListener l)Remove changelistener.voidremoveDesignChangeListeners()Remove allChangeListeners that implement theDesignListenerinterface.voidremovePanel(PanelHolder ph)Remove Panel fromPanelModel.voidremovePropertyChangeListener(java.beans.PropertyChangeListener l)Remove property change listener.voidremovePropertyChangeListener(java.lang.String name, java.beans.PropertyChangeListener l)Remove specific property change listenervoidsaveToXML(java.io.OutputStream os)SavePanelModeland its supporting classes as a XML stream using theXMLEncoder.voidsetBatch(boolean batch)Set batching for changes toPanelModel.voidsetDpi(float dpi)Set dots per inch.voidsetPage(Page page)SetPageparent.voidsetPageBackgroundColor(java.awt.Color pageBackgroundColor)SetPagebackground color.voidsetPageSize(java.awt.Dimension pageSize)SetPagesize.voidsetPanelList(java.util.Map panelList)SetPanelHolderMap.voidsetPrintBorders(boolean printBorders)Set the print borders property.voidsetPrintHAlign(int printHAlign)Set horizontal alignment for printing.voidsetPrintOrigin(java.awt.Point printOrigin)Set page origin for printing.voidsetPrintScaleMode(int mode)Set printing scale mode.voidsetPrintVAlign(int printVAlign)Set vertical alignment for printing.voidsetPrintWhitePage(boolean printWhitePage)Set the print on white background property.voidstateChanged(javax.swing.event.ChangeEvent e)ChangeListnercallback.
-
-
-
Method Detail
-
loadFromXML
public static PanelModel loadFromXML(java.io.InputStream is) throws java.io.InvalidObjectException
Create a newPanelModelfrom an object serialized usingXMLEncoder. For example,PanelModel pModel; Page page = new Page(); try { pModel = PanelModel.loadFromXML(new BufferedInputStream( new FileInputStream(outpath))); page.setPanelModel(pModel); } catch (FileNotFoundException fnfe) { JOptionPane.showMessageDialog(this, "Error openning file", "File Open Error", JOptionPane.ERROR_MESSAGE); } catch (InvalidObjectException ioe) { JOptionPane.showMessageDialog(this, "File does not contain a PanelModel", "PanelModel Not Found", JOptionPane.ERROR_MESSAGE); }- Parameters:
is- InputStream- Returns:
- PanelModel object
- Throws:
java.io.InvalidObjectException- See Also:
XMLEncoder
-
saveToXML
public void saveToXML(java.io.OutputStream os)
SavePanelModeland its supporting classes as a XML stream using theXMLEncoder.- Parameters:
os- OutputStream
-
addPanel
public void addPanel(java.lang.String id, java.awt.Rectangle bounds, java.util.Map labels, java.util.Map dataGroups, java.util.Map legends)Create a newPaneland add toPanelModel.- Parameters:
id- Panel identifierbounds- bounds of Panellabels- Label MapdataGroups- DataGroup Maplegends- Legend Map
-
addPanel
public void addPanel(PanelHolder ph)
Add aPanelHoldertoPanelModel.- Parameters:
ph- PanelHolder
-
removePanel
public void removePanel(PanelHolder ph)
Remove Panel fromPanelModel.- Parameters:
ph- PanelHolder
-
panelIterator
public java.util.Iterator panelIterator()
GetIteratorofPanelHolderobjects.- Returns:
- Iterator
-
getPanelCount
public int getPanelCount()
Get number ofPanelHolderobjects inMap.- Returns:
- count
-
hasPanelHolder
public boolean hasPanelHolder(java.lang.String id)
Does thePanelModelcontain thisPanelHolder?- Parameters:
id- PanelHolder identifier- Returns:
- true, if PanelHolder exists.
-
findPanelHolder
public PanelHolder findPanelHolder(java.lang.String id)
Find thePanelHolderfrom its identifier.- Parameters:
id- PanelHolder identifier- Returns:
- PanelHolder
-
addPropertyChangeListener
public void addPropertyChangeListener(java.beans.PropertyChangeListener l)
Add property change listener.- Parameters:
l- property change listener
-
addPropertyChangeListener
public void addPropertyChangeListener(java.lang.String name, java.beans.PropertyChangeListener l)Listen for specific property change.- Parameters:
name- property namel- property change listner
-
removePropertyChangeListener
public void removePropertyChangeListener(java.beans.PropertyChangeListener l)
Remove property change listener.- Parameters:
l- property change listener
-
removePropertyChangeListener
public void removePropertyChangeListener(java.lang.String name, java.beans.PropertyChangeListener l)Remove specific property change listener- Parameters:
name- property namel- property change listener
-
getDpi
public float getDpi()
Get dots per inch value.- Returns:
- dots per inch
-
setDpi
public void setDpi(float dpi)
Set dots per inch. Fires property "dpi" when changed.- Parameters:
dpi- dots per inch
-
stateChanged
public void stateChanged(javax.swing.event.ChangeEvent e)
ChangeListnercallback.- Specified by:
stateChangedin interfacejavax.swing.event.ChangeListener- Parameters:
e- ChangeEvent
-
setBatch
public void setBatch(boolean batch)
Set batching for changes toPanelModel. Fires property "batch" whenPanelModelhas changed and batch is set to false.- Parameters:
batch- batch value
-
isBatch
public boolean isBatch()
Is batching turned on?- Returns:
- true, if batch is on
-
setPage
public void setPage(Page page)
SetPageparent. Called fromPagewhen added toPageobject.- Parameters:
page- Page
-
getPage
public Page getPage()
Get Page parent- Returns:
- Page
-
getPanelList
public java.util.Map getPanelList()
GetMapcontainingPanelHolderobjects.- Returns:
- Map
-
setPanelList
public void setPanelList(java.util.Map panelList)
SetPanelHolderMap.- Parameters:
panelList- Map
-
getPageSize
public java.awt.Dimension getPageSize()
GetPagesize.- Returns:
- Page dimensions
-
setPageSize
public void setPageSize(java.awt.Dimension pageSize)
SetPagesize.- Parameters:
pageSize- Page dimension
-
componentResized
public void componentResized(java.awt.event.ComponentEvent e)
Listener to updatePagesize if it changes.- Specified by:
componentResizedin interfacejava.awt.event.ComponentListener- Parameters:
e- ComponentEvent
-
componentMoved
public void componentMoved(java.awt.event.ComponentEvent e)
Unused.- Specified by:
componentMovedin interfacejava.awt.event.ComponentListener
-
componentShown
public void componentShown(java.awt.event.ComponentEvent e)
Unused.- Specified by:
componentShownin interfacejava.awt.event.ComponentListener
-
componentHidden
public void componentHidden(java.awt.event.ComponentEvent e)
Unused.- Specified by:
componentHiddenin interfacejava.awt.event.ComponentListener
-
getPageBackgroundColor
public java.awt.Color getPageBackgroundColor()
Get the background color forPage.- Returns:
- color
-
setPageBackgroundColor
public void setPageBackgroundColor(java.awt.Color pageBackgroundColor)
SetPagebackground color.- Parameters:
pageBackgroundColor- background color
-
isPrintBorders
public boolean isPrintBorders()
Print borders?- Returns:
- true, if borders will be printed
-
isPrintWhitePage
public boolean isPrintWhitePage()
Print with white background?- Returns:
- true, print on white background
-
setPrintBorders
public void setPrintBorders(boolean printBorders)
Set the print borders property. Default = false.- Parameters:
printBorders- true to print borders
-
setPrintWhitePage
public void setPrintWhitePage(boolean printWhitePage)
Set the print on white background property. Default = true.- Parameters:
printWhitePage- true to use white for background color
-
propertyChange
public void propertyChange(java.beans.PropertyChangeEvent evt)
- Specified by:
propertyChangein interfacejava.beans.PropertyChangeListener
-
removeChangeListener
public void removeChangeListener(javax.swing.event.ChangeListener l)
Remove changelistener.- Parameters:
l- changelistener
-
removeDesignChangeListeners
public void removeDesignChangeListeners()
Remove allChangeListeners that implement theDesignListenerinterface.- See Also:
DesignListener
-
addChangeListener
public void addChangeListener(javax.swing.event.ChangeListener l)
Add changelistener- Parameters:
l- changelistener
-
getPrintHAlign
public int getPrintHAlign()
Get horizontal alignment for printing.- Returns:
- horizontal alignment
-
setPrintHAlign
public void setPrintHAlign(int printHAlign)
Set horizontal alignment for printing. Legal values are AbstractPane.LEFT, AbstractPane.CENTER, AbstractPane.RIGHT, and AbstractPane.SPECIFIED_LOCATION. Default = AbstractPane.CENTER.- Parameters:
pageHAlign- horizontal alignment- See Also:
AbstractPane.LEFT,AbstractPane.CENTER,AbstractPane.RIGHT,AbstractPane.SPECIFIED_LOCATION
-
setPrintOrigin
public void setPrintOrigin(java.awt.Point printOrigin)
Set page origin for printing. Will be used if the horizontal or vertical alignment is AbstractPane.SPECIFIED_LOCATION. Default = (0,0).- Parameters:
pageOrigin- page origin- See Also:
AbstractPane
-
getPrintOrigin
public java.awt.Point getPrintOrigin()
Get page origin for printing.- Returns:
- page origin.
-
getPrintVAlign
public int getPrintVAlign()
Get vertical alignment for printing.- Returns:
- vertical alignment.
-
setPrintVAlign
public void setPrintVAlign(int printVAlign)
Set vertical alignment for printing. Legal values are AbstractPane.TOP, AbstractPane.MIDDLE, AbstractPane.BOTTOM, and AbstractPane.SPECIFIED_LOCATION. Default = AbstractPane.TOP;- Parameters:
pageVAlign- vertical alignment- See Also:
AbstractPane.TOP,AbstractPane.MIDDLE,AbstractPane.BOTTOM,AbstractPane.SPECIFIED_LOCATION
-
getPrintScaleMode
public int getPrintScaleMode()
Get printing scale mode.- Returns:
- scale mode
-
setPrintScaleMode
public void setPrintScaleMode(int mode)
Set printing scale mode. Legal values are AbstractPane.DEFAULT_SCALE, AbstractPane.TO_FIT, and AbstractPane.SHRINK_TO_FIT. Default = AbstractPane.DEFAULT_SCALE.- Parameters:
mode- scale mode- See Also:
AbstractPane.DEFAULT_SCALE,AbstractPane.TO_FIT,AbstractPane.SHRINK_TO_FIT
-
-
DMelt 3.0 © DataMelt by jWork.ORG