Public Member Functions | Public Attributes

FPFunctionDef Class Reference

Search for all occurrences

Detailed Description

See also:
Class FPInterface, Class FPInterfaceDesc, Class FPActionDef, Class FPParamDef, Template Class Tab, Function Publishing System, List of Param Type Choices, List of ParamType2 Choices.

Description:
This class is available in release 4.0 and later only.

This class stores data about a single function of an FPInterface. A table of pointers to these objects is a data member of Class FPInterfaceDesc.
Data Members:
FunctionID ID;

The interface-local ID (unique to the interface only) used to identify the function in calls.

MSTR internal_name;

The fixed internal name for the function.

StringResID description;

The description string resource.

USHORT flags;

The internal flag bits. One of more of the following values:

FP_ACTION

Indicates this is an action function.

FP_HAS_UI

Indicates the action has UI specified.

FP_ICONRES

Indicates icon via resource ID.

FP_ICONFILE

Indicates icon via bmp file + index.

FP_HAS_SHORTCUT

Indicates has default keyboard shortcut.

FP_HAS_KEYARGS

Indicates function has some optional keyword args defined.

FP_VAR_ARGS

Indicates a variable number of args, pass args directly in a FPParams instance.

FP_NO_REDRAW

Do not flag need for viewport redraw when function is invoked, MAXScript defaults to flag redraw.

ParamType2 result_type;

The type of value returned by the function.

EnumID enumID;

The ID of symbolic enumeration in owning interface if any.

FPActionDef* action_def;

The extra metadata if function in an Action interface.

Tab<FPParamDef*> params;

The descriptors for parameters to this function.

#include <ifnpub.h>

Inheritance diagram for FPFunctionDef:
Inheritance graph
[legend]

List of all members.

Public Member Functions

  FPFunctionDef ()
CoreExport  ~FPFunctionDef ()

Public Attributes

DWORD  cbStruct
FunctionID  ID
MSTR  internal_name
StringResID  description
USHORT  flags
ParamType2  result_type
EnumID  enumID
FPActionDef action_def
Tab< FPParamDef * >  params
SHORT  keyparam_count

Constructor & Destructor Documentation

FPFunctionDef ( ) [inline]
Remarks:
Constructor. The data members are initialized as follows:

flags = 0; description = 0; action_def = NULL; enumID = FP_NO_ENUM;
{cbStruct = sizeof(FPFunctionDef); flags = 0; description = 0; action_def = NULL; enumID = FP_NO_ENUM; keyparam_count = 0; }
CoreExport ~FPFunctionDef ( )

Member Data Documentation

DWORD cbStruct
FunctionID ID
StringResID description
USHORT flags
ParamType2 result_type
EnumID enumID

FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef
FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef FPFunctionDef