databionics.esom.renderer.foreground
Class ForegroundTool

java.lang.Object
  extended by databionics.esom.tool.AbstractTool
      extended by databionics.esom.renderer.foreground.ForegroundTool
All Implemented Interfaces:
BmChangeListener, java.awt.event.ActionListener, java.awt.event.MouseListener, java.util.EventListener

public class ForegroundTool
extends AbstractTool
implements java.awt.event.MouseListener, BmChangeListener

GUI-interface to manage the various foregrounds. Delivers a JPanel for the ControlPanel.


Field Summary
protected  javax.swing.JCheckBox chkDrawCircular
           
protected  java.util.ArrayList foregroundList
          foregrounds
protected  java.util.ArrayList foregroundLists
           
protected  StringList foregroundNames
          foreground names
protected  java.awt.Color frameColor
          color of Frame
protected  FrameRenderer frameRenderer
          special case: frame renderer
protected  javax.swing.JLabel lblFGColor
           
protected static org.apache.log4j.Logger log
          interface to log4j system
protected  ForegroundList maskForegrounds
           
protected  int minBMSize
           
protected  javax.swing.JMenuItem mnuFGColor
           
protected  javax.swing.JMenuItem mnuFrameColor
           
protected  javax.swing.JPanel pnlBmSize
          extra Panel for the BestmatchSize slider.
protected  javax.swing.JPanel pnlFGColor
           
protected  javax.swing.JPanel pnlForeground
           
protected  javax.swing.JPanel pnlForegroundChooser
           
protected  javax.swing.JPanel pnlMenu
           
protected  ForegroundList postTileForegrounds
           
protected  ForegroundList preTileForegrounds
           
 
Fields inherited from class databionics.esom.tool.AbstractTool
application, bottomBar, bottomTab, btnClear, btnLoad, btnPaint, btnSave, clearItm, clickMode, controlButton, creatorPanel, dataTable, dataTableModel, displayPanel, dragMode, drawing, fileMenu, filename, gui, loader, loadItm, moveCallback, pnlControl, polygonMode, popMenu, removeItm, renderer, renderPanel, saveItm, toolBar, toolRenderer
 
Constructor Summary
ForegroundTool(boolean gui, Application application)
          Constructor with application
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
          GUI event handling
 void addForeground(AbstractToolRenderer ar)
          Add an AbstractToolRenderer.
 void addForeground(ForegroundRenderer fg)
          Add a foreground.
 void bmChanged()
          Called when the bestmatches have changed.
 void displayForeground(ForegroundRenderer fg)
          Show a foreground.
 void displayForeground(java.lang.String name)
          Show a foreground by name.
 StringList getBMRendererNames()
           
 ForegroundRenderer getForegroundByName(java.lang.String name)
          Get foreground by name
 StringList getForegroundNames()
          Get the foreground names
 java.awt.Color getFrameColor()
          Get frame color
 javax.swing.JMenuItem getMnuFrameColor()
           
 javax.swing.JPanel getPnlBmSize()
           
 javax.swing.JPanel getPnlFGColor()
          Get the fg color panel
 javax.swing.JPanel getPnlForeground()
          Getr the panel
 javax.swing.JPanel getPnlFrame()
           
 javax.swing.JPanel getPnlMenu()
          Get the panel menu
 java.lang.String getShortTitle()
           
 void init()
          Initialize what needs to be Initialized.
 void initForegrounds()
          This is a quick and dirty workaround, Loading Bestmatch- and OpinionBestmatchRenderer.
 void initGui(RenderPanel renderPanel, BottomBar bottomBar)
          Init GUI elements
 void initRenderer(Renderer renderer)
           
 boolean isEmtpy(int rndPosition)
          Check if list of foregrounds at this position is empty
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent e)
           
 void mouseReleased(java.awt.event.MouseEvent e)
           
protected  void reFore(int layer)
          Redraw foregrounds.
 void reset()
          reset the tool.
 boolean setBMRenderers(StringList strlist)
           
 void setBmSize(int size)
           
protected  void setCircularBestmatches(boolean circular)
           
 void setForegroundNames(StringList foregroundNames)
          Set the foreground names
 void setFrame(boolean frame)
           
 void setFrameColor(java.awt.Color color)
          Set frame color
 void setPnlFGColor(javax.swing.JPanel pnlFGColor)
          Set the fg color panel
 void setTiledMode(boolean tiled)
          Set tiled flag
 void setUmxLoaded(boolean umx)
          Set flag whether umx instead of wts is loaded With umx no opinion foreground can be used.
 void undisplayForeground(ForegroundRenderer fg)
          Hide a foreground.
 void undisplayForeground(java.lang.String name)
          Hide a foreground by name.
 void update()
          Update enabled status of GUI elements.
 
Methods inherited from class databionics.esom.tool.AbstractTool
callback, getApplication, getBottomTab, getCallback, getControlButton, getCreatorPanel, getDataTable, getDataTableModel, getDisplayPanel, getFileMenu, getFilename, getLoader, getMessage, getMoveCallback, getPnlControl, getPopMenu, getRenderer, getToolBar, getToolRenderer, isClickMode, isDragMode, isDrawing, isGui, isPolygonMode, moveSelection, reAreas, reColorize, reDraw, reFore, reMask, rePostFore, rePreFore, reRender, reTile, reZoom, select, setApplication, setBottomTab, setCallback, setClickMode, setControlButton, setCreatorPanel, setCtrlAccelerator, setDataTable, setDataTableModel, setDisplayPanel, setDragMode, setDrawing, setFilename, setLoader, setMoveCallback, setPolygonMode, setRenderer, setToolBar
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

protected static final org.apache.log4j.Logger log
interface to log4j system


foregroundList

protected java.util.ArrayList foregroundList
foregrounds


foregroundNames

protected StringList foregroundNames
foreground names


frameRenderer

protected FrameRenderer frameRenderer
special case: frame renderer


pnlBmSize

protected javax.swing.JPanel pnlBmSize
extra Panel for the BestmatchSize slider. Layout Reasons


frameColor

protected java.awt.Color frameColor
color of Frame


pnlForegroundChooser

protected javax.swing.JPanel pnlForegroundChooser

pnlForeground

protected javax.swing.JPanel pnlForeground

pnlFGColor

protected javax.swing.JPanel pnlFGColor

lblFGColor

protected javax.swing.JLabel lblFGColor

mnuFGColor

protected javax.swing.JMenuItem mnuFGColor

chkDrawCircular

protected javax.swing.JCheckBox chkDrawCircular

mnuFrameColor

protected javax.swing.JMenuItem mnuFrameColor

pnlMenu

protected javax.swing.JPanel pnlMenu

foregroundLists

protected java.util.ArrayList foregroundLists

preTileForegrounds

protected ForegroundList preTileForegrounds

postTileForegrounds

protected ForegroundList postTileForegrounds

maskForegrounds

protected ForegroundList maskForegrounds

minBMSize

protected int minBMSize
Constructor Detail

ForegroundTool

public ForegroundTool(boolean gui,
                      Application application)
Constructor with application

Parameters:
gui - flag whether GUI is running
application - application object
Method Detail

init

public void init()
Description copied from class: AbstractTool
Initialize what needs to be Initialized.

Specified by:
init in class AbstractTool

initForegrounds

public void initForegrounds()
This is a quick and dirty workaround, Loading Bestmatch- and OpinionBestmatchRenderer. It will be replaced by findForegrounds() soon.


addForeground

public void addForeground(AbstractToolRenderer ar)
Add an AbstractToolRenderer. This Method is for convinience this.addForeground(ar.getFgRenderer()) will be called.

Parameters:
ar - An AbstractToolRenderer

addForeground

public void addForeground(ForegroundRenderer fg)
Add a foreground.

Parameters:
fg - foreground renderer

undisplayForeground

public void undisplayForeground(ForegroundRenderer fg)
Hide a foreground.

Parameters:
fg - foreground renderer

undisplayForeground

public void undisplayForeground(java.lang.String name)
Hide a foreground by name.

Parameters:
fg - foreground renderer name

displayForeground

public void displayForeground(ForegroundRenderer fg)
Show a foreground.

Parameters:
fg - foreground renderer

displayForeground

public void displayForeground(java.lang.String name)
Show a foreground by name.

Parameters:
fg - foreground renderer name

isEmtpy

public boolean isEmtpy(int rndPosition)
Check if list of foregrounds at this position is empty

Parameters:
rndPosition - rendering pipeline position

reFore

protected void reFore(int layer)
Redraw foregrounds.

Parameters:
layer - the foreground layer to be rerendered.

setUmxLoaded

public void setUmxLoaded(boolean umx)
Set flag whether umx instead of wts is loaded With umx no opinion foreground can be used.

Parameters:
umx - flag

setTiledMode

public void setTiledMode(boolean tiled)
Set tiled flag

Parameters:
tiled - flag

update

public void update()
Update enabled status of GUI elements.

Overrides:
update in class AbstractTool

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
GUI event handling

Specified by:
actionPerformed in interface java.awt.event.ActionListener
Overrides:
actionPerformed in class AbstractTool
Parameters:
e - an ActionEvent

initGui

public void initGui(RenderPanel renderPanel,
                    BottomBar bottomBar)
Init GUI elements

Overrides:
initGui in class AbstractTool

getForegroundByName

public ForegroundRenderer getForegroundByName(java.lang.String name)
Get foreground by name


initRenderer

public void initRenderer(Renderer renderer)

reset

public void reset()
Description copied from class: AbstractTool
reset the tool.

Specified by:
reset in class AbstractTool

setBmSize

public void setBmSize(int size)

setCircularBestmatches

protected void setCircularBestmatches(boolean circular)

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Specified by:
mouseReleased in interface java.awt.event.MouseListener

setBMRenderers

public boolean setBMRenderers(StringList strlist)

getBMRendererNames

public StringList getBMRendererNames()

getShortTitle

public java.lang.String getShortTitle()
Specified by:
getShortTitle in class AbstractTool

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Specified by:
mouseClicked in interface java.awt.event.MouseListener

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Specified by:
mouseEntered in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Specified by:
mouseExited in interface java.awt.event.MouseListener

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Specified by:
mousePressed in interface java.awt.event.MouseListener

getFrameColor

public java.awt.Color getFrameColor()
Get frame color

Returns:
frame color

setFrameColor

public void setFrameColor(java.awt.Color color)
Set frame color

Parameters:
color -

getForegroundNames

public StringList getForegroundNames()
Get the foreground names

Returns:
names

setForegroundNames

public void setForegroundNames(StringList foregroundNames)
Set the foreground names

Parameters:
foregroundNames - names

getPnlForeground

public javax.swing.JPanel getPnlForeground()
Getr the panel

Returns:
Returns the pnlForeground.

getMnuFrameColor

public javax.swing.JMenuItem getMnuFrameColor()

getPnlMenu

public javax.swing.JPanel getPnlMenu()
Get the panel menu

Returns:
Returns the pnlMenu.

getPnlFGColor

public javax.swing.JPanel getPnlFGColor()
Get the fg color panel

Returns:
Returns the pnlFGColor.

setPnlFGColor

public void setPnlFGColor(javax.swing.JPanel pnlFGColor)
Set the fg color panel

Parameters:
pnlFGColor - The pnlFGColor to set.

bmChanged

public void bmChanged()
Description copied from interface: BmChangeListener
Called when the bestmatches have changed.

Specified by:
bmChanged in interface BmChangeListener

getPnlBmSize

public javax.swing.JPanel getPnlBmSize()
Returns:
Returns the pnlBmSize.

setFrame

public void setFrame(boolean frame)

getPnlFrame

public javax.swing.JPanel getPnlFrame()
Returns:
Returns the pnlFrame.


Copyright © 2005-2006 Databionics Research Group. All Rights Reserved.