1 #ifndef __FBMANIPULATOR_H__
2 #define __FBMANIPULATOR_H__
48 #define FBSDK_DLL K_DLLIMPORT
54 #ifdef FBSDKUseNamespace
69 #define FBRegisterManipulator( ClassName, Label, Description, IconFilename ) \
70 HIObject RegisterManipulator##ClassName( HIObject ,const char* pName,void * ) \
72 ClassName *Class = new ClassName( Label ); \
73 if (Class->FBCreate()) { \
74 return Class->GetHIObject(); \
80 FBLibraryModule( ClassName ) \
82 FBRegisterObject( ClassName,"Manipulators",Label,Description,RegisterManipulator##ClassName,true, IconFilename ); \
89 #define FBManipulatorDeclare( ClassName, Parent ) \
90 FBClassDeclare( ClassName,Parent); \
92 ClassName(const char* pName):Parent(pName) { FBClassInit; } \
98 #define FBManipulatorImplementation( ThisComponent ) \
99 FBClassImplementation( ThisComponent )
123 virtual bool FBCreate ();
134 void PickRectMotion();
157 FBModel* PickGetModel(
int pIndex);
168 int GetViewerWidth();
173 int GetViewerHeight();
201 void FBModelRenderBegin(
FBModel* pModel);
204 void FBModelRenderEnd();
215 virtual bool ViewInput(
int pMouseX,
int pMouseY,
FBInputType pAction,
int pButtonKey,
int pModifier);
220 virtual void ViewExpose();
251 virtual void RemoveAt(
int pIndex );
261 virtual int GetCount();
297 #ifdef FBSDKUseNamespace
#define __FBClassDeclare(Name, Parent)
For internal use only.
FBPropertyBool AlwaysActive
Read Write Property: Is manipulator always active?
#define FB_DEFINE_COMPONENT(DllTag, Type)
Define a component and give it the ability to be a property.
#define FB_DEFINE_LIST(DllTag, Type)
Define a component list.
class FBPropertyBaseComponent< FBCamera * > FBPropertyCamera
FBPropertyCamera CurrentCamera
Read Only Property: Current camera.
#define FBSDK_DLL
Be sure that FBSDK_DLL is defined only once...
FBManipulatorPickType
Types of manipulator picking.
FBPropertyString ViewerText
Read Write Property: Text displayed in view.
FBInputType
Types of input events.
PropertyList: Manipulator.
Property class: const char * (String).
#define FB_DEFINE_ENUM(DllTag, Type)
Define an enum and give it the ability to be a property.
Contains the user interface components for the SDK.
MotionBuilder SDK base class.
FBManipulatorTransformType
Manipulator transform stles.
FBPropertyBool Active
Read Write Property: Is manipulator active?
class FBPropertyBase< bool, kFBPT_bool > FBPropertyBool
Property: bool
FBPropertyBool Visible
Read Write Property: Is manipulator visible?
FBPropertyBool DefaultBehavior
Read Write Property: Using default manipulator behavior?
class FBVector4< float > FBVertex
Vertex.
#define __FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.
#define FBSDKNamespace
FBSDKNamespace define.
class FBPropertyBaseEnum< enum FBManipulatorTransformType > FBPropertyManipulatorTransformType
#define FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.
FBPropertyBool ConsumeEvent
Read Write Property: Is manipulator consuming event? If true, this will prevent other manipulators fr...