Package net.sf.tweety.beliefdynamics.gui
Class RevisionComparePresenter
- java.lang.Object
-
- net.sf.tweety.beliefdynamics.gui.RevisionComparePresenter
-
- All Implemented Interfaces:
java.awt.event.ActionListener
,java.awt.event.ItemListener
,java.util.EventListener
,javax.swing.event.ChangeListener
public class RevisionComparePresenter extends java.lang.Object implements java.awt.event.ItemListener, javax.swing.event.ChangeListener, java.awt.event.ActionListener
This class couples the RevisionCompare View and Model, it needs to know the implementation used to load external belief base files, see FileHandler interface. The presenter reacts to user inputs on the view and proofs if the changes are valid and then delegates them to the model. It also registers the view as a PropertyListener to the correct model.- Author:
- Tim Janus
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
RevisionComparePresenter.DefaultFileHandler
does not try to load the file but only return nullstatic interface
RevisionComparePresenter.FileHandler
This interface is used by the RevisionComparePresenter to handle the file loading.private static class
RevisionComparePresenter.MockFormula
Mock formula used for functional test.private static class
RevisionComparePresenter.MockOperator
Mock revision operator for functional test.
-
Field Summary
Fields Modifier and Type Field Description private RevisionComparePresenter.FileHandler
fileHandler
the default file handler cannot load any files and has to be replacedprivate RevisionCompareModel
model
the data model for the revision compareprivate RevisionCompareView
view
the view showing the revision compare
-
Constructor Summary
Constructors Constructor Description RevisionComparePresenter(RevisionCompareModel model, RevisionCompareView view)
Default Ctor: registers the view as listener to the correct model.
-
Method Summary
Modifier and Type Method Description void
actionPerformed(java.awt.event.ActionEvent ev)
void
itemStateChanged(java.awt.event.ItemEvent ev)
static void
main(java.lang.String[] args)
Functional Test method: Only shows the view in a JFrame to test resize behavior.private void
registerAsViewListener()
Helper method: Registers the presenter as swing listener at the view components.void
setFileHandler(RevisionComparePresenter.FileHandler handler)
Sets a file handler which is responsible to filter the open file dialog and to load the selected file.void
stateChanged(javax.swing.event.ChangeEvent ev)
-
-
-
Field Detail
-
model
private RevisionCompareModel model
the data model for the revision compare
-
view
private RevisionCompareView view
the view showing the revision compare
-
fileHandler
private RevisionComparePresenter.FileHandler fileHandler
the default file handler cannot load any files and has to be replaced
-
-
Constructor Detail
-
RevisionComparePresenter
public RevisionComparePresenter(RevisionCompareModel model, RevisionCompareView view)
Default Ctor: registers the view as listener to the correct model.- Parameters:
model
- a revision compare modelview
- a view
-
-
Method Detail
-
setFileHandler
public void setFileHandler(RevisionComparePresenter.FileHandler handler)
Sets a file handler which is responsible to filter the open file dialog and to load the selected file.- Parameters:
handler
- An implementation of the FileHandler interface or null. If null is given then the default handler is used which cannot open any files.
-
registerAsViewListener
private void registerAsViewListener()
Helper method: Registers the presenter as swing listener at the view components.
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent ev)
- Specified by:
actionPerformed
in interfacejava.awt.event.ActionListener
-
stateChanged
public void stateChanged(javax.swing.event.ChangeEvent ev)
- Specified by:
stateChanged
in interfacejavax.swing.event.ChangeListener
-
itemStateChanged
public void itemStateChanged(java.awt.event.ItemEvent ev)
- Specified by:
itemStateChanged
in interfacejava.awt.event.ItemListener
-
main
public static void main(java.lang.String[] args)
Functional Test method: Only shows the view in a JFrame to test resize behavior.- Parameters:
args
- arguments
-
-