The interface class for max version 9.
This interface should always be retrieved over Interface, Interface7, or Interface8 when programming against version 9 of the application. It features new functionality and deprecates obsolete functions.
#include <maxapi.h>
Public Member Functions |
|
virtual bool | DoMaxBrowseForFolder (HWND aOwner, const MSTR &aInstructions, MSTR &aDir)=0 |
Opens a application-style Open dialog for
generic file types. |
|
virtual unsigned int | DeleteNodes (INodeTab &aNodes, bool aKeepChildTM=true, bool aRedraw=true, bool overrideSlaveTM=false)=0 |
Deletes the specified nodes from the scene.
|
|
Static Public Attributes |
|
static
CoreExport const Interface_ID |
kInterface9InterfaceID |
The ID for this interface. Pass this ID to
Interface::GetInterface
to get an Interface9 pointer.
|
virtual bool DoMaxBrowseForFolder | ( | HWND | aOwner, |
const MSTR & | aInstructions, | ||
MSTR & | aDir | ||
) | [pure virtual] |
Opens a application-style Open dialog for generic file types.
Launches the standard Browse For Folder dialog in max.
[in] | aOwner | The handle to the window to whom this browse dialog should be a child to. |
[in] | aInstructions | An parameter for specifying user instructions which will appear above the main selection area. These instructions can span multiple lines. If this parameter is an empty string, then default instructions will be specified. |
[in,out] | aDir | This parameter is used to specify both the initial browse directory, and the user selection. If the user cancels the selection, then this variable will not be modified. If this parameter is an empty string, or if a non-existing directory is passed in, the Windows control will default to the My Documents directory. |
virtual unsigned int DeleteNodes | ( | INodeTab & | aNodes, |
bool | aKeepChildTM =
true , |
||
bool | aRedraw = true , |
||
bool | overrideSlaveTM =
false |
||
) | [pure virtual] |
Deletes the specified nodes from the scene.
Call this method to delete the specific nodes from the scene. The result of this operation is the same as deleting the nodes interactively or via maxscript's "delete <node>" command. If you need to delete individual nodes, use Interface::DeleteNode.
[in] | aNodes | The nodes to be deleted. This array is expanded with other nodes based on the criteria described above. After this method returns, the nodes in this array are invalid. |
[in] | aKeepChildTM | If true, the child nodes of each deleted node keep their world transformation. Note that this modifies each child node's transformation matrix. If false, the node's transformation matrix is not modified, but that means they'll get transformed relative to the world since their parent node is changing. |
[in] | aRedraw | If false the viewports will not be redrawn after the nodes are deleted. This allows client code to optimize the viewport redraw. |
[in] | overrideSlaveTM | If true, this method will delete nodes whose TM controllers implement Control::PreventNodeDeletion() to return TRUE. Control::PreventNodeDeletion() controls whether the node can be deleted from the scene. This parameter allows a master controller to easily delete slaves nodes if it needs to. |
CoreExport const Interface_ID kInterface9InterfaceID
[static] |
The ID for this interface. Pass this ID to Interface::GetInterface to get an Interface9 pointer.