3ds Max C++ API Reference
rollouts.h File Reference
#include "../kernel/value.h"
#include "../foundation/streams.h"
#include "../../custcont.h"
#include "../../control.h"
#include "../../maxapi.h"

Classes

struct  layout_data
 
class  Rollout
 
class  RolloutFloater
 
class  RolloutControl
 
class  AnimatableRolloutControl
 
class  AnimatableRolloutControl::ControllerHolder
 
class  PB2Param
 
class  LabelControl
 
class  ButtonControl
 
class  CheckButtonControl
 
class  EditTextControl
 
class  ComboBoxControl
 
class  ListBoxControl
 
class  SpinnerControl
 
class  SliderControl
 
class  PickerControlFilter
 
class  PickerControlMode
 
class  PickerControl
 
class  ColorPickerControl
 
class  RadioControl
 
class  CheckBoxControl
 
class  BitmapControl
 
class  MapButtonControl
 
class  MtlButtonControl
 
class  GroupStartControl
 
class  GroupEndControl
 
class  RolloutChangeCallback
 
class  MXSToolTipExtender
 

Macros

#define TOP_MARGIN   2
 
#define SIDE_MARGIN   4
 
#define RADIO_DOT_WIDTH   23
 
#define CHECK_BOX_WIDTH   24
 
#define LEFT_ALIGN   13
 
#define RIGHT_ALIGN   13
 
#define GROUP_BOX_Y_MARGIN   6
 
#define GROUP_BOX_X_MARGIN   4
 
#define SPACING_BEFORE   5
 
#define is_rollout(v)   ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Rollout))
 
#define RO_NO_CLOSEBUTTON   0x0001
 
#define RO_HIDDEN   0x0002
 
#define RO_ROLLED_UP   0x0004
 
#define RO_IN_FLOATER   0x0008
 
#define RO_INSTALLED   0x0010
 
#define RO_UTIL_MASTER   0x0020
 
#define RO_UTIL_MAIN   0x0020
 
#define RO_SILENT_ERRORS   0x0040
 
#define RO_HIDDEN2   0x0080
 
#define RO_PLUGIN_OWNED   0x0100
 
#define RO_CONTROLS_INSTALLED   0x0200
 
#define RO_AUTO_LAYOUT_ON_RESIZE_ENABLED   0x0400
 
#define RO_SOURCE_SCENE_EMBEDDED   0x0800
 
#define ROF_LOCK_WIDTH   0x0001
 
#define ROF_LOCK_HEIGHT   0x0002
 
#define ROF_AUTO_LAYOUT_ON_RESIZE   0x0004
 
#define is_rolloutfloater(v)   ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(RolloutFloater))
 
#define is_rolloutcontrol(v)   ((v)->_is_rolloutcontrol())
 
#define ROC_FIXED_WIDTH   0x0001
 
#define ROC_MAKING_EDIT   0x0002
 
#define ROC_INVISIBLE   0x0004
 
#define ROC_VAL_CHANGED   0x0008
 
#define ROC_EDITTEXT_MULTILINE   0x0010
 
#define ROC_COLORSWATCH_POINT4   0x0010
 
#define ROC_PICKBUTTON_AUTODISP   0x0010
 
#define ROC_SPINNER_KEYBRACKETS   0x0010
 
#define ROC_IN_HANDLER   0x0020
 
#define ROC_HANDLER_REENTRANT   0x0040
 
#define ROC_EDITTEXT_READONLY   0x0080
 
#define ROC_DELETE_TOOLTIP   0x0100
 
#define CBF_EDIT_FIELD_CHANGING   0x0001
 
#define control_param(key)   _get_control_param(keyparms, keyparm_count, n_##key)
 
#define control_param_or_default(key, def)   _get_control_param_or_default(keyparms, keyparm_count, n_##key##, def)
 
#define int_control_param(key, var, def)   ((var = _get_control_param(keyparms, keyparm_count, n_##key)) == &unsupplied ? def : var->to_int())
 
#define float_control_param(key, var, def)   ((var = _get_control_param(keyparms, keyparm_count, n_##key)) == &unsupplied ? def : var->to_float())
 
#define bool_control_param(key, var, def)   ((var = _get_control_param(keyparms, keyparm_count, n_##key)) == &unsupplied ? def : var->to_bool())
 

Enumerations

enum class  MXSScrollBarPolicy { kScrollBarAsNeeded , kScrollBarAlwaysOff , kScrollBarAlwaysOn }
 

Functions

ScripterExport Value_get_control_param (Value **keyparms, int count, Value *key_name)
 
ScripterExport Value_get_control_param_or_default (Value **keyparms, int count, Value *key_name, Value *def)
 

Variables

LPCMSTR cust_button_class
 

Macro Definition Documentation

◆ TOP_MARGIN

#define TOP_MARGIN   2

◆ SIDE_MARGIN

#define SIDE_MARGIN   4

◆ RADIO_DOT_WIDTH

#define RADIO_DOT_WIDTH   23

◆ CHECK_BOX_WIDTH

#define CHECK_BOX_WIDTH   24

◆ LEFT_ALIGN

#define LEFT_ALIGN   13

◆ RIGHT_ALIGN

#define RIGHT_ALIGN   13

◆ GROUP_BOX_Y_MARGIN

#define GROUP_BOX_Y_MARGIN   6

◆ GROUP_BOX_X_MARGIN

#define GROUP_BOX_X_MARGIN   4

◆ SPACING_BEFORE

#define SPACING_BEFORE   5

◆ is_rollout

#define is_rollout (   v)    ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Rollout))

◆ RO_NO_CLOSEBUTTON

#define RO_NO_CLOSEBUTTON   0x0001

◆ RO_HIDDEN

#define RO_HIDDEN   0x0002

◆ RO_ROLLED_UP

#define RO_ROLLED_UP   0x0004

◆ RO_IN_FLOATER

#define RO_IN_FLOATER   0x0008

◆ RO_INSTALLED

#define RO_INSTALLED   0x0010

◆ RO_UTIL_MASTER

#define RO_UTIL_MASTER   0x0020
Deprecated:
This has been deprecated as of 3ds Max 2022, please use RO_UTIL_MAIN instead [insensitive language]

◆ RO_UTIL_MAIN

#define RO_UTIL_MAIN   0x0020

◆ RO_SILENT_ERRORS

#define RO_SILENT_ERRORS   0x0040

◆ RO_HIDDEN2

#define RO_HIDDEN2   0x0080

◆ RO_PLUGIN_OWNED

#define RO_PLUGIN_OWNED   0x0100

◆ RO_CONTROLS_INSTALLED

#define RO_CONTROLS_INSTALLED   0x0200

◆ RO_AUTO_LAYOUT_ON_RESIZE_ENABLED

#define RO_AUTO_LAYOUT_ON_RESIZE_ENABLED   0x0400

◆ RO_SOURCE_SCENE_EMBEDDED

#define RO_SOURCE_SCENE_EMBEDDED   0x0800

◆ ROF_LOCK_WIDTH

#define ROF_LOCK_WIDTH   0x0001

◆ ROF_LOCK_HEIGHT

#define ROF_LOCK_HEIGHT   0x0002

◆ ROF_AUTO_LAYOUT_ON_RESIZE

#define ROF_AUTO_LAYOUT_ON_RESIZE   0x0004

◆ is_rolloutfloater

#define is_rolloutfloater (   v)    ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(RolloutFloater))

◆ is_rolloutcontrol

#define is_rolloutcontrol (   v)    ((v)->_is_rolloutcontrol())

◆ ROC_FIXED_WIDTH

#define ROC_FIXED_WIDTH   0x0001

◆ ROC_MAKING_EDIT

#define ROC_MAKING_EDIT   0x0002

◆ ROC_INVISIBLE

#define ROC_INVISIBLE   0x0004

◆ ROC_VAL_CHANGED

#define ROC_VAL_CHANGED   0x0008

◆ ROC_EDITTEXT_MULTILINE

#define ROC_EDITTEXT_MULTILINE   0x0010

◆ ROC_COLORSWATCH_POINT4

#define ROC_COLORSWATCH_POINT4   0x0010

◆ ROC_PICKBUTTON_AUTODISP

#define ROC_PICKBUTTON_AUTODISP   0x0010

◆ ROC_SPINNER_KEYBRACKETS

#define ROC_SPINNER_KEYBRACKETS   0x0010

◆ ROC_IN_HANDLER

#define ROC_IN_HANDLER   0x0020

◆ ROC_HANDLER_REENTRANT

#define ROC_HANDLER_REENTRANT   0x0040

◆ ROC_EDITTEXT_READONLY

#define ROC_EDITTEXT_READONLY   0x0080

◆ ROC_DELETE_TOOLTIP

#define ROC_DELETE_TOOLTIP   0x0100

◆ CBF_EDIT_FIELD_CHANGING

#define CBF_EDIT_FIELD_CHANGING   0x0001

◆ control_param

#define control_param (   key)    _get_control_param(keyparms, keyparm_count, n_##key)

◆ control_param_or_default

#define control_param_or_default (   key,
  def 
)    _get_control_param_or_default(keyparms, keyparm_count, n_##key##, def)

◆ int_control_param

#define int_control_param (   key,
  var,
  def 
)    ((var = _get_control_param(keyparms, keyparm_count, n_##key)) == &unsupplied ? def : var->to_int())

◆ float_control_param

#define float_control_param (   key,
  var,
  def 
)    ((var = _get_control_param(keyparms, keyparm_count, n_##key)) == &unsupplied ? def : var->to_float())

◆ bool_control_param

#define bool_control_param (   key,
  var,
  def 
)    ((var = _get_control_param(keyparms, keyparm_count, n_##key)) == &unsupplied ? def : var->to_bool())

Enumeration Type Documentation

◆ MXSScrollBarPolicy

enum MXSScrollBarPolicy
strong
Enumerator
kScrollBarAsNeeded 
kScrollBarAlwaysOff 
kScrollBarAlwaysOn 

Function Documentation

◆ _get_control_param()

ScripterExport Value* _get_control_param ( Value **  keyparms,
int  count,
Value key_name 
)

◆ _get_control_param_or_default()

ScripterExport Value* _get_control_param_or_default ( Value **  keyparms,
int  count,
Value key_name,
Value def 
)

Variable Documentation

◆ cust_button_class

LPCMSTR cust_button_class
extern