List of Custom Curve Control Flags

3DS Max Plug-In SDK

List of Custom Curve Control Flags

See Also: Class ICurveCtl.

These flags control various display aspects of the custom curve control. See the methods ICurveCtl::SetCCFlags() and GetCCFlags().

Developers can easily review these by running the curve control utility CCUtil in \MAXSDK\SAMPLES\UTILITIES\CCUTIL.

One or more of the following values:

CC_DRAWBG

Specifies to draw the white background in the graph window.

CC_DRAWGRID

Specifies to draw the grid lines and coordinates in the graph window.

CC_DRAWUTOOLBAR

Specifies to draw the upper toolbar above the control.

CC_SHOWRESET 

Specifies to display the Reset button in the upper toolbar.

CC_DRAWLTOOLBAR

Specifies to draw the lower toolbar beneath the control.

CC_DRAWSCROLLBARS

Specifies to draw the horizontal and vertical scroll bars for the control.

CC_AUTOSCROLL

Specifies to do auto scrolling. Auto scroll happens when you drag a CurvePoint out of the currently visible range. In case you're zoomed in, the window will automtically scroll.

CC_DRAWRULER 

Specifies to draw a small moveable ruler window (measures horizontal coordinates).

CC_ASPOPUP

Specifies to create the control as a pop-up with a title string. Have the Window as popup window. If this is not set, it's important to set the SetCustomParentWnd(HWND hParent)=0; to the parent of the CurveControl Window.

CC_CONSTRAIN_Y

Specifies that no points (or handles) can be moved out of the value that is set by SetYRange().

CC_HIDE_DISABLED_CURVES

Specifies that disabled curves won't be displayed at all. If this is not set, the disabled curves will be drawn by the color set by SetDisabledPenProperty().

Note: The following flags may be specified to enable a right click menu with choices used to activate the corresponding command mode (for instance if the upper toolbar is not present where these choice are also available).

CC_RCMENU_MOVE_XY

CC_RCMENU_MOVE_X

CC_RCMENU_MOVE_Y

CC_RCMENU_SCALE

CC_RCMENU_INSERT_CORNER

CC_RCMENU_INSERT_BEZIER

CC_RCMENU_DELETE 

CC_SHOW_CURRENTXVAL (a flag to allow a vertical bar to be drawn over the graph to show the current X value)

Also note: One looses the automatic switch from insert to move mode when right-clicking, if a RightClick menu is active. Also note the following 'user' features:

- Pressing Control key while inserting keys will insert the opposite type of key than what's currently selected (bezier or corner).

  • Pressing the Shift key while moving a tangent convertes a bezier key into a bezier corner key.

CC_SINGLESELECT

This flag allows the user to single select a point normally if a bunch of points are stacked in area if you click on the area you get all of them with this flag you get the first one.

CC_NOFILTERBUTTONS

This flag turns off the curve visible/editable toggle in the top of the menu bar useful for when you have lots of curves and want to do the display management yourself.