Public Types | Public Member Functions | List of all members
i2d::ISceneController Class Referenceabstract

Interface for scene manipulation and query the restrictions. More...

#include <ISceneController.h>

Inheritance diagram for i2d::ISceneController:
istd::IPolymorphic

Public Types

enum  RestrictionFlags {
  SR_NONE = 0x0, SR_ROTATE = 0x1, SR_SHIFT = 0x2, SR_SCALE = 0x4,
  SR_ALL = 0xff
}
 
enum  FitMode { FM_NONE, FM_ISOTROPIC_REDUCTION, FM_ISOTROPIC, FM_ANISOTROPIC }
 Vieport scale fitting mode. More...
 
enum  ScaleMode {
  SM_SET, SM_COMBINE, SM_RESET, SM_ZOOM_IN,
  SM_ZOOM_OUT, SM_FIT_ISOTROPIC_REDUCTION, SM_FIT_ISOTROPIC, SM_FIT_ANISOTROPIC
}
 Describe mode for setting of scale value. More...
 

Public Member Functions

virtual int GetSceneRestrictionFlags () const =0
 Get the restriction flags, to tell the scene manipulator, what can be changed on the scene. More...
 
virtual FitMode GetFitMode () const =0
 Get vieport scale fitting mode. More...
 
virtual bool SetFitMode (FitMode fitMode)=0
 Set vieport scale fitting mode. More...
 
virtual bool IsFullScreenMode () const =0
 Check if full screen mode is enabled. More...
 
virtual bool SetFullScreenMode (bool isFullScreen)=0
 Set full screen mode on/off. More...
 
virtual double GetScale () const =0
 Get actual scale factor. More...
 
virtual bool SetScale (int scaleMode=SM_SET, double value=1.0)=0
 Set or modify scale factor. More...
 
- Public Member Functions inherited from istd::IPolymorphic
virtual ~IPolymorphic ()
 

Detailed Description

Interface for scene manipulation and query the restrictions.

Definition at line 17 of file ISceneController.h.

Member Enumeration Documentation

Vieport scale fitting mode.

Enumerator
FM_NONE 

No fitting will be done.

FM_ISOTROPIC_REDUCTION 

Isotropic scale will be done, but only scale reduction is allowed.

FM_ISOTROPIC 

Complete isotropic scale will be done.

FM_ANISOTROPIC 

Anisotropic scale will be done to fit whole viewport area.

Definition at line 51 of file ISceneController.h.

Enumerator
SR_NONE 

All operations on scene object are allowed.

SR_ROTATE 

Rotation operaration is prohibited.

SR_SHIFT 

Translation operaration is prohibited.

SR_SCALE 

Translation operaration is prohibited.

SR_ALL 

All operations on scene object are prohibited.

Definition at line 20 of file ISceneController.h.

Describe mode for setting of scale value.

Enumerator
SM_SET 

Simple set, old scale will be replaced with the new value.

SM_COMBINE 

Old scale will be mutliplied by the new value.

SM_RESET 

Zoom will be reset, parameter value will be ignored.

SM_ZOOM_IN 

Zoom in will be done, parameter value will be ignored.

SM_ZOOM_OUT 

Zoom out will be done, parameter value will be ignored.

SM_FIT_ISOTROPIC_REDUCTION 

Isotropic scale will be done, but only scale reduction is allowed.

SM_FIT_ISOTROPIC 

Complete isotropic scale will be done.

SM_FIT_ANISOTROPIC 

Anisotropic scale will be done to fit whole viewport area.

Definition at line 73 of file ISceneController.h.

Member Function Documentation

virtual FitMode i2d::ISceneController::GetFitMode ( ) const
pure virtual

Get vieport scale fitting mode.

virtual double i2d::ISceneController::GetScale ( ) const
pure virtual

Get actual scale factor.

virtual int i2d::ISceneController::GetSceneRestrictionFlags ( ) const
pure virtual

Get the restriction flags, to tell the scene manipulator, what can be changed on the scene.

virtual bool i2d::ISceneController::IsFullScreenMode ( ) const
pure virtual

Check if full screen mode is enabled.

In full screen mode scene is shown on whole screen area.

virtual bool i2d::ISceneController::SetFitMode ( FitMode  fitMode)
pure virtual

Set vieport scale fitting mode.

Returns
true if fitting mode was set correctly.
See Also
RestrictionFlags
virtual bool i2d::ISceneController::SetFullScreenMode ( bool  isFullScreen)
pure virtual

Set full screen mode on/off.

In full screen mode scene is shown on whole screen area.

Returns
true if full screen mode was set correctly.
See Also
RestrictionFlags
virtual bool i2d::ISceneController::SetScale ( int  scaleMode = SM_SET,
double  value = 1.0 
)
pure virtual

Set or modify scale factor.

See ScaleMode for possible modes.


The documentation for this class was generated from the following file:

© 2007-2017 Witold Gantzke and Kirill Lepskiy