t3.portfolios.commonbehaviours
Class RotateNTranslate

java.lang.Object
  extended by t3.portfolios.commonbehaviours.RotateNTranslate
All Implemented Interfaces:
PortfolioCommonBehaviour

public class RotateNTranslate
extends java.lang.Object
implements PortfolioCommonBehaviour

This class allows portfolios to be translated and rotated by dragging with a specified pid type and button, using the RotateNTranslate idea. However, in this implementation there is no "translation-only" region at the centre. See: Kruger, R., Carpendale, S., Scott, S.D., Tang, A. (2005). Fluid Integration of Rotation and Translation. In Proceedings of the ACM Conference on Human Factors in Computing Systems (CHI)'05, April 2-7, 2005, Portland, Oregon, USA.

Author:
pjt40

Field Summary
 PointInputDeviceTypeAndButtonSet pidtbs
           
 
Constructor Summary
RotateNTranslate()
           
RotateNTranslate(PointInputDeviceTypeAndButton pidTypeAndButton)
           
RotateNTranslate(PointInputDeviceTypeAndButtonSet pidtbs)
           
 
Method Summary
 boolean customProcessEndOfFDOPmode(Portfolio p, PointInputDevice pid, int button)
          Implement this method to be notified when a PID stops being in FDOP mode.
 boolean customProcessEventForThisPortfolioNotChildren(Portfolio p, PortfolioEvent e, boolean bubbled)
          Implement this method to receive events.
 boolean customProcessFDOPevent(Portfolio p, PortfolioEvent e, double PORTxWhenEnteredFDOPmode, double PORTyWhenEnteredFDOPmode)
          Implement this method to receive FDOP mode events.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

pidtbs

public final PointInputDeviceTypeAndButtonSet pidtbs
Constructor Detail

RotateNTranslate

public RotateNTranslate()

RotateNTranslate

public RotateNTranslate(PointInputDeviceTypeAndButton pidTypeAndButton)

RotateNTranslate

public RotateNTranslate(PointInputDeviceTypeAndButtonSet pidtbs)
Method Detail

customProcessEventForThisPortfolioNotChildren

public boolean customProcessEventForThisPortfolioNotChildren(Portfolio p,
                                                             PortfolioEvent e,
                                                             boolean bubbled)
Description copied from interface: PortfolioCommonBehaviour
Implement this method to receive events. See PortfolioServer for more information on the event model.

Specified by:
customProcessEventForThisPortfolioNotChildren in interface PortfolioCommonBehaviour
e - Event
bubbled - True iff the event did not occur on this portfolio's tile but has been bubbled from one of its children.
Returns:
True iff the event should not be passed to the portfolio.

customProcessFDOPevent

public boolean customProcessFDOPevent(Portfolio p,
                                      PortfolioEvent e,
                                      double PORTxWhenEnteredFDOPmode,
                                      double PORTyWhenEnteredFDOPmode)
Description copied from interface: PortfolioCommonBehaviour
Implement this method to receive FDOP mode events. See PortfolioServer for more information on the event model.

Specified by:
customProcessFDOPevent in interface PortfolioCommonBehaviour
e - Event
PORTxWhenEnteredFDOPmode - PORT space coordinate of the PID when it entered FDOP mode.
PORTyWhenEnteredFDOPmode - PORT space coordinate of the PID when it entered FDOP mode.
Returns:
True iff the event should not be passed to the portfolio.

customProcessEndOfFDOPmode

public boolean customProcessEndOfFDOPmode(Portfolio p,
                                          PointInputDevice pid,
                                          int button)
Description copied from interface: PortfolioCommonBehaviour
Implement this method to be notified when a PID stops being in FDOP mode. See PortfolioServer for more information on the event model.

Specified by:
customProcessEndOfFDOPmode in interface PortfolioCommonBehaviour
Returns:
True iff the event should not be passed to the portfolio.