# TBasic3DEditorHostPanePart Class Reference
[Base Classes for plugins]

Inheritance diagram for TBasic3DEditorHostPanePart:

List of all members.

## Public Member Functions
virtual | ~TBasic3DEditorHostPanePart ()
virtual MCErr MCCOMAPI | QueryInterface (const MCIID &riid, void **ppvObj)
virtual uint32 MCCOMAPI | AddRef ()
virtual boolean MCCOMAPI | Receive (int32 message, IMFResponder *source, void *data)
virtual TMFEventResult MCCOMAPI | SelfMouseDown (const TMCPoint &inWhere, const TMCPlatformEvent &inEvent)
virtual void MCCOMAPI | SelfDraw (IMCGraphicContext *graphicContext, const TMCRect &inZone)
virtual boolean MCCOMAPI | SelfKeyDown (TMCPlatformEvent *event)
virtual void MCCOMAPI | SelfPrepareToDestroy ()
virtual void MCCOMAPI | SetShown (boolean inShown)
virtual void MCCOMAPI | BaseWindowBecameVisible (boolean inShown)
virtual void MCCOMAPI | Set3DEditorHostPanePart (I3DEditorHostPanePart *editorHostPanePart)
virtual MCCOMErr MCCOMAPI | InvalidateRender (boolean invalidate=true, boolean cameraChanged=false)
virtual MCCOMErr MCCOMAPI | SelfRenderPickDraw (I3DExPickRenderer *pickRenderer)
virtual MCCOMErr MCCOMAPI | GetLocationOfSelectionInGlobal (TVector3 &outGlobalLocation)
virtual boolean MCCOMAPI | GetHitLocationInGlobal (const TMCPoint &inWindowPoint, TVector3 &outGlobalLocation)
virtual void MCCOMAPI | GetCurrentScene (I3DShScene **scene, boolean createIfNone)
| Return the scene that should be renderered in this view ( in case of a modeler,.
virtual void MCCOMAPI | GetCameraToolsStatus (TCameraToolsStatus &outStatus, boolean &outAllowSavePos)
virtual I3DEditorHostPanePart *MCCOMAPI | Get3DEditorHostPanePart () const
virtual void MCCOMAPI | BeginAreaRender ()
virtual void MCCOMAPI | EndAreaRender ()
virtual void MCCOMAPI | CameraMoved ()
void | InternalSelfDraw (IMCGraphicContext *graphicContext, TMCRect *inZone)
void | SetPreviewPart (TBasicPreviewPart *inPart)
virtual ISceneDocument * | GetAssociatedSceneDocument ()=0
## Public Attributes
| STANDARD_RELEASE
## Protected Attributes
TMCCountedPtr< TBasicPreviewPart > | fPreviewPart
TMCCountedPtr< IMFPart > | fPart
TMCCountedPtr < I3DEditorHostPanePart > | f3DEditorHostPanePart

## Detailed Description

Basic 3D editor host pane class. Derive from this for a default implementation of an IEx3DEditorHostPanePart.

See also:
  IEx3DEditorHostPanePart

## Constructor & Destructor Documentation

virtual TBasic3DEditorHostPanePart::~TBasic3DEditorHostPanePart | ( |  | ) | `[virtual]`

## Member Function Documentation

virtual uint32 MCCOMAPI TBasic3DEditorHostPanePart::AddRef | ( |  | ) | `[inline, virtual]`

Increments the reference count of the object

Reimplemented from TBasicPart.

virtual void MCCOMAPI TBasic3DEditorHostPanePart::BaseWindowBecameVisible | ( | boolean | inShown | ) | `[inline, virtual]`

When the window that contains the part just became visible/invisible.

Reimplemented from TBasicPart.

virtual void MCCOMAPI TBasic3DEditorHostPanePart::BeginAreaRender | ( |  | ) | `[virtual]`

Called before starting an area render.

Implements IEx3DEditorHostPanePart.

virtual void MCCOMAPI TBasic3DEditorHostPanePart::CameraMoved | ( |  | ) | `[inline, virtual]`

Alerts the pane part that the camera has moved

Implements IEx3DEditorHostPanePart.

virtual void MCCOMAPI TBasic3DEditorHostPanePart::EndAreaRender | ( |  | ) | `[inline, virtual]`

Called at the end of an area render.

Implements IEx3DEditorHostPanePart.

virtual I3DEditorHostPanePart* MCCOMAPI TBasic3DEditorHostPanePart::Get3DEditorHostPanePart | ( |  | ) | const`[inline, virtual]`

Returns a pointer to the associated pane part.

Implements IEx3DEditorHostPanePart.

virtual ISceneDocument* TBasic3DEditorHostPanePart::GetAssociatedSceneDocument | ( |  | ) | `[pure virtual]`

virtual void MCCOMAPI TBasic3DEditorHostPanePart::GetCameraToolsStatus | ( | TCameraToolsStatus & | outStatus,
|  | boolean & | outAllowSavePos |
| ) |  |  | `[virtual]`

Returns the enable status that the 3deditor host should give to the camera tools

Parameters:

  | outStatus | Status to give to the camera tools
  | outAllowSavePos | True if camera's position should be saved (false for canonical views)

Implements IEx3DEditorHostPanePart.

virtual void MCCOMAPI TBasic3DEditorHostPanePart::GetCurrentScene | ( | I3DShScene ** | scene,
|  | boolean | createIfNone |
| ) |  |  | `[virtual]`

Return the scene that should be renderered in this view ( in case of a modeler,.

Parameters:

  | scene | The scene that is returned.
  | createIfNone | Set this to true to ask a modeler to create its scene ( otherwise the scene returned by a modeler is NULL )

Implements IEx3DEditorHostPanePart.

virtual boolean MCCOMAPI TBasic3DEditorHostPanePart::GetHitLocationInGlobal | ( | const TMCPoint & | inWindowPoint,
|  | TVector3 & | outGlobalLocation |
| ) |  |  | `[inline, virtual]`

Return the location of the hit in global coordinates.

Parameters:

  | inWindowPoint | The position in window coordinates
  | outGlobalLocation | The position in global coordinates

Implements IEx3DEditorHostPanePart.

virtual MCCOMErr MCCOMAPI TBasic3DEditorHostPanePart::GetLocationOfSelectionInGlobal | ( | TVector3 & | outGlobalLocation | ) | `[inline, virtual]`

Implements IEx3DEditorHostPanePart.

void TBasic3DEditorHostPanePart::InternalSelfDraw | ( | IMCGraphicContext * | graphicContext,
|  | TMCRect * | inZone |
| ) |  |  |

virtual MCCOMErr MCCOMAPI TBasic3DEditorHostPanePart::InvalidateRender | ( | boolean | invalidate = `true`,
|  | boolean | cameraChanged = `false` |
| ) |  |  | `[virtual]`

Called by 3DEditorHostPart when something like a camera change causes need for a re-render. If you are using 3DEditorHostPanePartRenderDraw just call 3DEditorHostPanePartInvalidateRender

Parameters:

  | invalidate |
  | cameraChanged |

Implements IEx3DEditorHostPanePart.

virtual MCErr MCCOMAPI TBasic3DEditorHostPanePart::QueryInterface | ( | const MCIID & | riid,
|  | void ** | ppvObj |
| ) |  |  | `[virtual]`

Check if the object supports a given interface and returns a pointer to that interface if it does. Note that QueryInterface will increment the reference count of the object by one if the interface is found.

Parameters:

  | riid | GUID of the interface
  | ppvObj | A pointer to the pointer being returned.

Reimplemented from TBasicPart.

virtual boolean MCCOMAPI TBasic3DEditorHostPanePart::Receive | ( | int32 | message,
|  | IMFResponder * | source,
|  | void * | data |
| ) |  |  | `[inline, virtual]`

Reimplemented from TBasicPart.

virtual void MCCOMAPI TBasic3DEditorHostPanePart::SelfDraw | ( | IMCGraphicContext * | inContext,
|  | const TMCRect & | inUpdateBBox |
| ) |  |  | `[virtual]`

Called to ask the part to draw itself.

Parameters:

  | inContext | The graphic context to use for the drawing.
  | inUpdateBBox | The rectangle that should be drawn.

Reimplemented from TBasicPart.

virtual boolean MCCOMAPI TBasic3DEditorHostPanePart::SelfKeyDown | ( | TMCPlatformEvent * | event | ) | `[inline, virtual]`

Reimplemented from TBasicPart.

virtual TMFEventResult MCCOMAPI TBasic3DEditorHostPanePart::SelfMouseDown | ( | const TMCPoint & | inWhere,
|  | const TMCPlatformEvent & | inEvent |
| ) |  |  | `[virtual]`

Handles a click with the left button of the mouse within the part's bounds

Note: When the previous implementation returned a boolean result, you should now return TMFEventResult(result, result) in most cases.

Parameters:

  | inWhere | point in local coordinates of the mouse down
  | inEvent | event information (like clickcount)

Reimplemented from TBasicPart.

virtual void MCCOMAPI TBasic3DEditorHostPanePart::SelfPrepareToDestroy | ( |  | ) | `[virtual]`

Called when the part is about to be destroyed to give it an opportunity to release all counted references and caches.

Reimplemented from TBasicPart.

virtual MCCOMErr MCCOMAPI TBasic3DEditorHostPanePart::SelfRenderPickDraw | ( | I3DExPickRenderer * | pickRenderer | ) | `[inline, virtual]`

This function is called by 3DEditorHostPanePartPick to allow the extension to create a renderable array for picking and call PickInstances on the pickRenderer

Parameters:

  | pickRenderer |

Implements IEx3DEditorHostPanePart.

virtual void MCCOMAPI TBasic3DEditorHostPanePart::Set3DEditorHostPanePart | ( | I3DEditorHostPanePart * | editorHostPanePart | ) | `[virtual]`

This function is called when the 3DEditorHostPanePart extension is attached

Parameters:

  | editorHostPanePart |

Implements IEx3DEditorHostPanePart.

void TBasic3DEditorHostPanePart::SetPreviewPart | ( | TBasicPreviewPart * | inPart | ) |

virtual void MCCOMAPI TBasic3DEditorHostPanePart::SetShown | ( | boolean | inShown | ) | `[virtual]`

Sets the visibility of the part.

Parameters:

  | inShown |

Reimplemented from TBasicPart.

## Member Data Documentation

TMCCountedPtr<I3DEditorHostPanePart> TBasic3DEditorHostPanePart::f3DEditorHostPanePart`[protected]`

TMCCountedPtr<IMFPart> TBasic3DEditorHostPanePart::fPart`[protected]`

TMCCountedPtr<TBasicPreviewPart> TBasic3DEditorHostPanePart::fPreviewPart`[protected]`

TBasic3DEditorHostPanePart::STANDARD_RELEASE

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

- Basic3DEditorHost.h