cz.cuni.pogamut.shed.presenter
Class SensePresenter

Package class diagram package SensePresenter
java.lang.Object
  extended by cz.cuni.pogamut.shed.presenter.PrimitivePresenter<Sense>
      extended by cz.cuni.pogamut.shed.presenter.SensePresenter
All Implemented Interfaces:
ILapChainListener, PoshElementListener<Sense>, IPresenter, PropertyChangeListener, EventListener

public final class SensePresenter
extends PrimitivePresenter<Sense>

Presenter for sense widget, it is responsible for menu actions and accept actions. Sense shouldn't have a children, so no adding/moving/removing. It updates widget on name mapping, chain changes and property changes of the action.

Author:
HonzaH

Field Summary
protected  ShedPresenter presenter
          Presenter that is mainly used to modify the scene
protected  ShedScene scene
          Scene this presenter is modifying.
 
Fields inherited from class cz.cuni.pogamut.shed.presenter.PrimitivePresenter
primitive, primitiveChain, primitiveWidget
 
Constructor Summary
SensePresenter(ShedScene scene, ShedPresenter presenter, Sense sense, ShedSenseWidget senseWidget, LapChain senseChain)
           
 
Method Summary
protected  TriggeredAction extractAction(List<TriggeredAction> actions, PoshElement action)
           
protected  ActionPattern extractActionPattern(List<ActionPattern> actionPatterns, PoshElement actionPattern)
          Assert that @actionPattern is in the @actionPatterns and return it.
protected  Competence extractCompetence(List<Competence> competences, PoshElement competence)
          Assert that @competence is in the @competences and return it.
protected  DriveElement extractDrive(List<DriveElement> drives, PoshElement drive)
           
protected  CompetenceElement extractChoice(List<CompetenceElement> choices, PoshElement choice)
          Assert that @choice is in the @choices and return it.
protected  Sense extractSense(Trigger<?> trigger, PoshElement sense)
          Assert that sense is a part of the trigger and return it.
 AbstractAcceptAction[] getAcceptProviders()
          Get array of accept providers of this
 org.netbeans.api.visual.action.WidgetAction getEditAction()
          Get edit action that will be invoked upon double click.
 Action[] getMenuActions()
          Get(create) actions that should be displayed in the context menu of the widgets that use this presenter.
protected
<T extends PoshElement>
int
getPosition(List<T> list, T element)
          Get position of the element in the list.
protected  String getTitleText()
          Method used by the PrimitivePresenter.updateWidget() to
protected  boolean isAction(PoshElement element)
           
protected  boolean isActionPattern(PoshElement element)
          Is the element ActionPattern?
protected  boolean isCompetence(PoshElement element)
          Is the element Competence?
protected  boolean isDrive(PoshElement element)
           
protected  boolean isChoice(PoshElement element)
          Is the element CompetenceElement?
protected  boolean isSense(PoshElement element)
          Is passed element a Sense?
 void propertyChange(PropertyChangeEvent evt)
           
 
Methods inherited from class cz.cuni.pogamut.shed.presenter.PrimitivePresenter
childElementAdded, childElementMoved, childElementRemoved, nameMapChanged, notifyLinkChanged, register, unregister, updateWidget
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

scene

protected final ShedScene scene
Scene this presenter is modifying.


presenter

protected final ShedPresenter presenter
Presenter that is mainly used to modify the scene

Constructor Detail

SensePresenter

public SensePresenter(ShedScene scene,
                      ShedPresenter presenter,
                      Sense sense,
                      ShedSenseWidget senseWidget,
                      LapChain senseChain)
Method Detail

propertyChange

public void propertyChange(PropertyChangeEvent evt)

getMenuActions

public Action[] getMenuActions()
Description copied from interface: IPresenter
Get(create) actions that should be displayed in the context menu of the widgets that use this presenter.

Returns:
Actions that will be in the menu or null for no menu.

getAcceptProviders

public AbstractAcceptAction[] getAcceptProviders()
Description copied from interface: IPresenter
Get array of accept providers of this

Specified by:
getAcceptProviders in interface IPresenter
Returns:
Array of accept providers. If null, no accept provider.

getTitleText

protected String getTitleText()
Description copied from class: PrimitivePresenter
Method used by the PrimitivePresenter.updateWidget() to

Specified by:
getTitleText in class PrimitivePresenter<Sense>
Returns:

getEditAction

public org.netbeans.api.visual.action.WidgetAction getEditAction()
Description copied from interface: IPresenter
Get edit action that will be invoked upon double click.

Returns:
Edit action for the widget that is being represented. If null, no edit action.

isSense

protected final boolean isSense(PoshElement element)
Is passed element a Sense?

Parameters:
element - element to check.
Returns:
true if element is sense, false if not.

extractSense

protected final Sense extractSense(Trigger<?> trigger,
                                   PoshElement sense)
Assert that sense is a part of the trigger and return it.

Parameters:
trigger - Trigger against which the method is testing.
sense - tested sense
Returns:
properly typed sense

isAction

protected final boolean isAction(PoshElement element)

extractAction

protected final TriggeredAction extractAction(List<TriggeredAction> actions,
                                              PoshElement action)

isDrive

protected final boolean isDrive(PoshElement element)

extractDrive

protected final DriveElement extractDrive(List<DriveElement> drives,
                                          PoshElement drive)

isChoice

protected final boolean isChoice(PoshElement element)
Is the element CompetenceElement?

Parameters:
element - Tested element
Returns:
true if the @element is CompetenceElement or its subclass, false otherwise.

extractChoice

protected final CompetenceElement extractChoice(List<CompetenceElement> choices,
                                                PoshElement choice)
Assert that @choice is in the @choices and return it.

Parameters:
choices - List of choices that must contain the @choice.
choice - Choice must be contained in the @choices
Returns:
Properly casted @choice.

isActionPattern

protected final boolean isActionPattern(PoshElement element)
Is the element ActionPattern?

Parameters:
element - Tested element
Returns:
true if the @element is ActionPattern or its subclass, false otherwise.

extractActionPattern

protected final ActionPattern extractActionPattern(List<ActionPattern> actionPatterns,
                                                   PoshElement actionPattern)
Assert that @actionPattern is in the @actionPatterns and return it. Basically a checked type conversion from PoshElement to ActionPattern.

Parameters:
actionPatterns - List of ActionPatterns that must contain the @actionPattern.
actionPattern - The ActionPattern that must be contained in the @actionPatterns
Returns:
Properly casted @actionPattern.

isCompetence

protected final boolean isCompetence(PoshElement element)
Is the element Competence?

Parameters:
element - Tested element
Returns:
true if the @element is Competence or its subclass, false otherwise.

extractCompetence

protected final Competence extractCompetence(List<Competence> competences,
                                             PoshElement competence)
Assert that @competence is in the @competences and return it. Basically a checked type conversion from PoshElement to Competence.

Parameters:
competences - List of Competences that must contain the
competence - The Competence that must be contained in the
Returns:
Properly casted @competence.

getPosition

protected final <T extends PoshElement> int getPosition(List<T> list,
                                                        T element)
Get position of the element in the list.

Type Parameters:
T - Type of element
Parameters:
list - list in which we determine position of the elemnt.
element - The element for whic we want position in the list. Must be there, otherwise assert error.
Returns:
Found position.


Copyright © 2013 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.