Package weka.gui
Class CostMatrixEditor
- java.lang.Object
-
- weka.gui.CostMatrixEditor
-
- All Implemented Interfaces:
java.beans.PropertyEditor
public class CostMatrixEditor extends java.lang.Object implements java.beans.PropertyEditor
Class for editing CostMatrix objects. Brings up a custom editing panel with which the user can edit the matrix interactively, as well as save load cost matrices from files.- Version:
- $Revision: 7059 $
- Author:
- Richard Kirkby (rkirkby@cs.waikato.ac.nz)
-
-
Constructor Summary
Constructors Constructor Description CostMatrixEditor()
Constructs a new CostMatrixEditor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Adds an object to the list of those that wish to be informed when the cost matrix changes.java.lang.String
getAsText()
Some objects can be represented as text, but a cost matrix cannot.java.awt.Component
getCustomEditor()
Gets a GUI component with which the user can edit the cost matrix.java.lang.String
getJavaInitializationString()
Returns the Java code that generates an object the same as the one being edited.java.lang.String[]
getTags()
Some objects can return tags, but a cost matrix cannot.java.lang.Object
getValue()
Gets the cost matrix that is being edited.boolean
isPaintable()
Indicates whether the object can be represented graphically.void
paintValue(java.awt.Graphics gfx, java.awt.Rectangle box)
Paints a graphical representation of the object.void
removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Removes an object from the list of those that wish to be informed when the cost matrix changes.void
setAsText(java.lang.String text)
Some objects can be represented as text, but a cost matrix cannot.void
setValue(java.lang.Object value)
Sets the value of the CostMatrix to be edited.boolean
supportsCustomEditor()
Indicates whether the cost matrix can be edited in a GUI, which it can.
-
-
-
Method Detail
-
setValue
public void setValue(java.lang.Object value)
Sets the value of the CostMatrix to be edited.- Specified by:
setValue
in interfacejava.beans.PropertyEditor
- Parameters:
value
- a CostMatrix object to be edited
-
getValue
public java.lang.Object getValue()
Gets the cost matrix that is being edited.- Specified by:
getValue
in interfacejava.beans.PropertyEditor
- Returns:
- the edited CostMatrix object
-
isPaintable
public boolean isPaintable()
Indicates whether the object can be represented graphically. In this case it can.- Specified by:
isPaintable
in interfacejava.beans.PropertyEditor
- Returns:
- true
-
paintValue
public void paintValue(java.awt.Graphics gfx, java.awt.Rectangle box)
Paints a graphical representation of the object. For the cost matrix it prints out the text "X x X matrix", where X is the size of the matrix.- Specified by:
paintValue
in interfacejava.beans.PropertyEditor
- Parameters:
gfx
- the graphics context to draw the representation tobox
- the bounds within which the representation should fit.
-
getJavaInitializationString
public java.lang.String getJavaInitializationString()
Returns the Java code that generates an object the same as the one being edited. Unfortunately this can't be done in a single line of code, so the code returned will only build a default cost matrix of the same size.- Specified by:
getJavaInitializationString
in interfacejava.beans.PropertyEditor
- Returns:
- the initialization string
-
getAsText
public java.lang.String getAsText()
Some objects can be represented as text, but a cost matrix cannot.- Specified by:
getAsText
in interfacejava.beans.PropertyEditor
- Returns:
- null
-
setAsText
public void setAsText(java.lang.String text)
Some objects can be represented as text, but a cost matrix cannot.- Specified by:
setAsText
in interfacejava.beans.PropertyEditor
- Parameters:
text
- ignored- Throws:
java.lang.IllegalArgumentException
- always throws an IllegalArgumentException
-
getTags
public java.lang.String[] getTags()
Some objects can return tags, but a cost matrix cannot.- Specified by:
getTags
in interfacejava.beans.PropertyEditor
- Returns:
- null
-
getCustomEditor
public java.awt.Component getCustomEditor()
Gets a GUI component with which the user can edit the cost matrix.- Specified by:
getCustomEditor
in interfacejava.beans.PropertyEditor
- Returns:
- an editor GUI component
-
supportsCustomEditor
public boolean supportsCustomEditor()
Indicates whether the cost matrix can be edited in a GUI, which it can.- Specified by:
supportsCustomEditor
in interfacejava.beans.PropertyEditor
- Returns:
- true
-
addPropertyChangeListener
public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Adds an object to the list of those that wish to be informed when the cost matrix changes.- Specified by:
addPropertyChangeListener
in interfacejava.beans.PropertyEditor
- Parameters:
listener
- a new listener to add to the list
-
removePropertyChangeListener
public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Removes an object from the list of those that wish to be informed when the cost matrix changes.- Specified by:
removePropertyChangeListener
in interfacejava.beans.PropertyEditor
- Parameters:
listener
- the listener to remove from the list
-
-