Class TrackViewUtility

3DS Max Plug-In SDK

Class TrackViewUtility

See Also: Class ITVUtility, Class Interface, Class Control.

class TrackViewUtility

Description:

This class is available in release 2.0 and later only.

This is the base class for Track View Utility plug-ins. These plug-ins are launched via the 'Track View Utility' icon just to the left of the track view name field in the toolbar. Clicking on this button brings up a dialog of all the track view utilities currently installed in the system. Most utilities will probably be modeless floating dialogs, however modal utilities may be created as well.

The developer will derive their classes from this class. Methods are provided to bracket the beginning and ending of parameter editing, and responding to various changes in Track View (such as key selection, time selection, node selection, etc.). There is also a method to delete this instance of the plug-in class. Sample code is available in \MAXSDK\SAMPLES\UTILITIES\RANDKEYS.CPP, ORTKEYS.CPP and SELKEYS.CPP.

Plug-In Information:

Class Defined In

TVUTIL.H

Super Class ID

TRACKVIEW_UTILITY_CLASS_ID

Standard File Name Extension

DLU

Extra Include File Needed

None

Methods:

Prototype:

virtual void DeleteThis()=0;

Remarks:

This method is called to delete this instance of the plug-in class. This method should free the memory allocated in ClassDesc::Create(). See the Advanced Topics section on Memory Management for more details.

Prototype:

virtual void BeginEditParams(Interface *ip,ITVUtility *iu);

Remarks:

This method is called to begin editing of the Track View utility plug-in's parameters.

Parameters:

Interface *ip

An interface for calling functions provided by 3ds max.

ITVUtility *iu

An interface for allowing track view utilities to access the Track View they are launched from.

Default Implementation:

{}

Prototype:

virtual void EndEditParams(Interface *ip,ITVUtility *iu);

Remarks:

This method is called when the user has closed the Track View utility or Track View itself.

Parameters:

Interface *ip

An interface for calling functions provided by 3ds max.

ITVUtility *iu

An interface for allowing track view utilities to access the Track View they are launched from.

Default Implementation:

{}

Prototype:

virtual void TrackSelectionChanged();

Remarks:

This method is called when the selection of tracks has changed.

Default Implementation:

{}

Prototype:

virtual void NodeSelectionChanged();

Remarks:

This method is called when the selection of nodes has changed.

Default Implementation:

{}

Prototype:

virtual void KeySelectionChanged();

Remarks:

This method is called when the selection of keys has changed.

Default Implementation:

{}

Prototype:

virtual void TimeSelectionChanged();

Remarks:

This method is called when the amount of time selected changes in Edit Time mode. See ITVUtility::GetTimeSelection().

Default Implementation:

{}

Prototype:

virtual void MajorModeChanged();

Remarks:

This method is called if the current mode of Track View changes. These are the modes such as Edit Keys, Edit Time, Edit Ranges, Position Ranges, and Edit Function Curves. See ITVUtility::GetMajorMode().

Default Implementation:

{}

Prototype:

virtual void TrackListChanged();

Remarks:

This method is called when the Track View list is rebuild. This is the list of items that are visible (currently open).

Default Implementation:

{}