Public Member Functions | Public Attributes

PickerControlMode Class Reference

Search for all occurrences

#include <rollouts.h>

Inheritance diagram for PickerControlMode:
Inheritance graph
[legend]

List of all members.

Public Member Functions

  PickerControlMode (PickerControlFilter *ifilter, MCHAR *imsg, PickerControl *ipick)
BOOL  HitTest (IObjParam *ip, HWND hWnd, ViewExp *vpt, IPoint2 m, int flags)
BOOL  Pick (IObjParam *ip, ViewExp *vpt)
PickNodeCallback GetFilter ()
BOOL  RightClick (IObjParam *ip, ViewExp *vpt)
void  EnterMode (IObjParam *ip)
void  ExitMode (IObjParam *ip)

Public Attributes

PickerControlFilter pick_filter
MSTR  msg
PickerControl *  picker

Constructor & Destructor Documentation

PickerControlMode ( PickerControlFilter ifilter,
MCHAR *  imsg,
PickerControl *  ipick 
)

Member Function Documentation

BOOL HitTest ( IObjParam ip,
HWND  hWnd,
ViewExp vpt,
IPoint2  m,
int  flags 
) [virtual]
Remarks:
This method is called whenever the pick mode needs to hit test.
Parameters:
IObjParam *ip

An interface pointer available to call functions defined by 3ds Max.

HWND hWnd

The window handle.

ViewExp *vpt

An interface pointer that may be used to call methods associated with the viewports.

IPoint2 m

Point to check in screen coordinates.

int flags

Scene and Node Hit Testing Flags.
Returns:
Return TRUE if something was hit; otherwise FALSE.
Sample Code:
// This implementation use the Interface::PickNode method

// to perform the hit test.

        {
            return ip->PickNode(hWnd,m,&thePickFilt)? TRUE:FALSE;
        }

Implements PickModeCallback.

BOOL Pick ( IObjParam ip,
ViewExp vpt 
) [virtual]
Remarks:
This method is called when the user picks something.
Parameters:
IObjParam *ip

An interface pointer available to call functions defined by 3ds Max.

ViewExp *vpt

An interface pointer that may be used to call methods associated with the viewports. The vpt should have the result of the hit test in it.
Returns:
Return TRUE to end the pick mode; FALSE to stay in the pick mode. Note that returning TRUE will set the command mode to MOVE. When a plug-in is in the create branch, setting the command mode to move ends the creation process.

Implements PickModeCallback.

PickNodeCallback* GetFilter ( ) [inline, virtual]
Remarks:
This method is called if the user hits the H key while in your pick mode. You can provide a filter to filter the name list. See Class PickNodeCallback.
Returns:
A pointer to an instance of PickNodeCallback.
Default Implementation:
{return NULL;}

Reimplemented from PickModeCallback.

{ return pick_filter; }
BOOL RightClick ( IObjParam ip,
ViewExp vpt 
) [inline, virtual]
Remarks:
This method is called when the user right-clicks or presses ESC.
Parameters:
IObjParam *ip

An interface pointer available to call functions defined by 3ds Max.

ViewExp *vpt

An interface pointer that may be used to call methods associated with the viewports. The vpt should have the result of the hit test in it.
Returns:
TRUE to end the pick mode, FALSE to continue picking.
Default Implementation:
{ return FALSE; }

Reimplemented from PickModeCallback.

{ return TRUE; }
void EnterMode ( IObjParam ip ) [virtual]
Remarks:
Called when the mode is entered. The developer may provide any pre-processing here.
Parameters:
IObjParam *ip

An interface pointer available to call functions defined by 3ds Max.

Reimplemented from PickModeCallback.

void ExitMode ( IObjParam ip ) [virtual]
Remarks:
Called when the mode is exited. The developer may provide any post-processing here.
Parameters:
IObjParam *ip

An interface pointer available to call functions defined by 3ds Max.

Reimplemented from PickModeCallback.


Member Data Documentation

PickerControl* picker

PickerControlMode PickerControlMode PickerControlMode PickerControlMode PickerControlMode PickerControlMode PickerControlMode PickerControlMode PickerControlMode PickerControlMode
PickerControlMode PickerControlMode PickerControlMode PickerControlMode PickerControlMode PickerControlMode PickerControlMode PickerControlMode PickerControlMode PickerControlMode