added everything
This commit is contained in:
93
lib/maxsdk70/include/tvutil.h
Executable file
93
lib/maxsdk70/include/tvutil.h
Executable file
@@ -0,0 +1,93 @@
|
||||
/**********************************************************************
|
||||
*<
|
||||
FILE: tvutil.h
|
||||
|
||||
DESCRIPTION: Track view utility plug-in class
|
||||
|
||||
CREATED BY: Rolf Berteig
|
||||
|
||||
HISTORY: 12/18/96
|
||||
03/11/02 -- Adam Felt. Expanded the interfaces.
|
||||
|
||||
WARNING: Plugin compatibility is not preserved between R4.x and R5
|
||||
for TrackviewUtility plugins. R4.x TrackViewUtility plugins need
|
||||
to be recompiled before running on R5.x and later. R5 and later
|
||||
plugins will not run properly on previous versions.
|
||||
|
||||
|
||||
*> Copyright (c) 1996-2002, All Rights Reserved.
|
||||
**********************************************************************/
|
||||
|
||||
#ifndef __TVUTIL_H__
|
||||
#define __TVUTIL_H__
|
||||
|
||||
class TrackViewUtility;
|
||||
#include "ref.h"
|
||||
|
||||
// The five track view major modes
|
||||
#define TVMODE_EDITKEYS 0
|
||||
#define TVMODE_EDITTIME 1
|
||||
#define TVMODE_EDITRANGES 2
|
||||
#define TVMODE_POSRANGES 3
|
||||
#define TVMODE_EDITFCURVE 4
|
||||
|
||||
// This is an interface that is given to track view utilities
|
||||
// that allows them to access the track view they were launched from.
|
||||
class ITVUtility : public InterfaceServer {
|
||||
public:
|
||||
virtual int GetNumTracks()=0;
|
||||
virtual Animatable *GetAnim(int i)=0;
|
||||
virtual Animatable *GetClient(int i)=0;
|
||||
virtual int GetSubNum(int i)=0;
|
||||
virtual TSTR GetTrackName(int i)=0;
|
||||
virtual BOOL IsSelected(int i)=0;
|
||||
virtual void SetSelect(int i,BOOL sel)=0;
|
||||
virtual HWND GetTrackViewHWnd()=0;
|
||||
virtual int GetMajorMode()=0;
|
||||
virtual Interval GetTimeSelection()=0;
|
||||
virtual BOOL SubTreeMode()=0;
|
||||
virtual Animatable *GetTVRoot()=0;
|
||||
|
||||
// This must be called when a track view utility is closing
|
||||
// so that it can be unregistered from notifications
|
||||
virtual void TVUtilClosing(TrackViewUtility *util)=0;
|
||||
|
||||
// Access to the trackview interface. R5 and later only
|
||||
virtual ITreeView* GetTVInterface()=0;
|
||||
};
|
||||
|
||||
// Results for TrackViewUtility::FilterAnim
|
||||
#define FILTER_SUBTREE 0 // Filter out this anim and it's subtree
|
||||
#define FILTER_NONE 1 // Don't filter anything
|
||||
#define FILTER_ANIM -1 // Filter out this anim, but include it's subtree
|
||||
#define FILTER_NODE -2 // Filter out this node and subAnims, but include it's children
|
||||
|
||||
|
||||
// This is the base class for track view utilities. Plug-ins will
|
||||
// derive their classes from this class.
|
||||
class TrackViewUtility : public InterfaceServer {
|
||||
public:
|
||||
|
||||
virtual void DeleteThis()=0;
|
||||
virtual void BeginEditParams(Interface *ip,ITVUtility *iu) {}
|
||||
virtual void EndEditParams(Interface *ip,ITVUtility *iu) {}
|
||||
|
||||
virtual void TrackSelectionChanged() {}
|
||||
virtual void NodeSelectionChanged() {}
|
||||
virtual void KeySelectionChanged() {}
|
||||
virtual void TimeSelectionChanged() {}
|
||||
virtual void MajorModeChanged() {}
|
||||
virtual void TrackListChanged() {}
|
||||
|
||||
// available in R5 and later only
|
||||
virtual int FilterAnim(Animatable* anim, Animatable* client, int subNum) {return FILTER_NONE;}
|
||||
|
||||
// used to identify registered utilities
|
||||
virtual void GetClassName(TSTR& s) { s = TSTR(_T("")); }
|
||||
virtual Class_ID ClassID() { return Class_ID(0,0); }
|
||||
// end of R5 additions
|
||||
};
|
||||
|
||||
|
||||
|
||||
#endif //__TVUTIL_H__
|
||||
Reference in New Issue
Block a user