fbsdk/fbmanipulator.h File Reference
 
 
 
fbsdk/fbmanipulator.h File Reference
#include <kaydaradef.h>
#include <fbsdk/fbcomponent.h>
#include <fbcontrols/fbcontrols.h>

File Description

Create new manipulators using the FBManipulator class.

Definition in file fbmanipulator.h.

Classes

class   FBManipulator
  Manipulator class. More...
class   FBPropertyListManipulator
  PropertyList: Manipulator. More...
class   FBManipulatorTransform
  Manipulator class. More...

Defines

#define  FBSDK_DLL   K_DLLIMPORT
  Be sure that FBSDK_DLL is defined only once...
#define  FBRegisterManipulator(ClassName, Label, Description, IconFilename)
  Manipulator class registration.
#define  FBManipulatorDeclare(ClassName, Parent)
  Manipulator class declaration.
#define  FBManipulatorImplementation(ThisComponent)   FBClassImplementation( ThisComponent )
  Manipulator class implementation.

Enumerations

enum   FBManipulatorPickType { FBPickObjects, FBPickPoints, FBPickSurfaces }
  Types of manipulator picking. More...
enum   FBManipulatorTransformType { kFBManipulatorTransformNone, kFBManipulatorTransformTranslation, kFBManipulatorTransformRotation, kFBManipulatorTransformScaling }
  Manipulator transform stles. More...

Functions

  FB_FORWARD (FBModel)
  FB_DEFINE_COMPONENT (K_DLLIMPORT, Manipulator)
  FB_DEFINE_COMPONENT (K_DLLIMPORT, Camera)
  __FB_FORWARD (FBManipulator)
  FB_DEFINE_LIST (K_DLLIMPORT, Manipulator)
  __FB_FORWARD (FBManipulatorTransform)
  FB_DEFINE_COMPONENT (K_DLLIMPORT, ManipulatorTransform)
  FB_DEFINE_ENUM (K_DLLIMPORT, ManipulatorTransformType)

Define Documentation

#define FBSDK_DLL   K_DLLIMPORT

Be sure that FBSDK_DLL is defined only once...

Definition at line 48 of file fbmanipulator.h.

#define FBRegisterManipulator (   ClassName,
  Label,
  Description,
  IconFilename 
)
Value:
HIObject RegisterManipulator##ClassName( HIObject /*pOwner*/,const char* pName,void * /*pData*/) \
        { \
          ClassName *Class = new ClassName( Label ); \
                if (Class->FBCreate()) { \
                        return Class->GetHIObject(); \
                } else { \
                        delete Class; \
                        return NULL; \
                } \
        } \
        FBLibraryModule( ClassName )    \
        {       \
                FBRegisterObject( ClassName,"Manipulators",Label,Description,RegisterManipulator##ClassName,true, IconFilename );       \
        }

Manipulator class registration.

Parameters:
ClassName Manipulator class name.
Label Short description.
Description Long description.
IconFilename Filename of associated icon.

Definition at line 69 of file fbmanipulator.h.

#define FBManipulatorDeclare (   ClassName,
  Parent 
)
Value:
FBClassDeclare( ClassName,Parent); \
  public: \
        ClassName(const char* pName):Parent(pName) { FBClassInit; } \
  private:

Manipulator class declaration.

Parameters:
ClassName Manipulator class name.
Parent Parent class.

Definition at line 89 of file fbmanipulator.h.

#define FBManipulatorImplementation (   ThisComponent )    FBClassImplementation( ThisComponent )

Manipulator class implementation.

Parameters:
ThisComponent Class to implement.

Definition at line 98 of file fbmanipulator.h.


Enumeration Type Documentation

Types of manipulator picking.

Enumerator:
FBPickObjects 

Pick objects.

FBPickPoints 

Pick points.

FBPickSurfaces 

Pick surfaces.

Definition at line 105 of file fbmanipulator.h.

Manipulator transform stles.

Enumerator:
kFBManipulatorTransformNone 

No manipulator.

kFBManipulatorTransformTranslation 

Translation manipulator.

kFBManipulatorTransformRotation 

Rotation manipulator.

kFBManipulatorTransformScaling 

Scaling manipulator.

Definition at line 268 of file fbmanipulator.h.


Function Documentation

FB_DEFINE_COMPONENT ( K_DLLIMPORT  ,
Manipulator   
)
FB_DEFINE_COMPONENT ( K_DLLIMPORT  ,
Camera   
)
FB_DEFINE_LIST ( K_DLLIMPORT  ,
Manipulator   
)
FB_DEFINE_COMPONENT ( K_DLLIMPORT  ,
ManipulatorTransform   
)
FB_DEFINE_ENUM ( K_DLLIMPORT  ,
ManipulatorTransformType   
)

Go to the source code of this file.