MSG Enumeration

详细描述

Groups

  MSG_DESCRIPTION
  MSG_DESCRIPTION_CHECKUPDATE_FLAGS
  MSG_DESCRIPTION_TEXT
  MSG_DOCUMENTINFO_TYPE
  MSG_MULTI
  MULTLINEEDITTEXT_UNDO_CONTAINER

Macros

#define  MSG_POINTS_CHANGED
#define  MSG_POLYGONS_CHANGED
#define  MSG_UPDATE
#define  MSG_SMALLUPDATE
#define  MSG_CHANGE
#define  MSG_BASECONTAINER
#define  MSG_SEGMENTS_CHANGED
#define  MSG_FILTER
#define  MSG_TRANSFERGOALS
#define  MSG_DESCRIPTION_INITUNDO
#define  MSG_DESCRIPTION_CHECKUPDATE
#define  MSG_DESCRIPTION_COMMAND
#define  MSG_DESCRIPTION_POPUP
#define  MSG_DESCRIPTION_POSTSETPARAMETER
#define  MSG_DESCRIPTION_VALIDATE
#define  MSG_DESCRIPTION_SWAP
#define  MSG_EDIT
#define  MSG_MENUPREPARE
#define  MSG_RETRIEVEPRIVATEDATA
#define  MSG_DESCRIPTION_ALLOWOVERRIDE
#define  MSG_DESCRIPTION_TAKECHANGED
#define  MSG_GETOVERRIDEASSETS
#define  MSG_MOVE_FINISHED
#define  MSG_MOVE_START
#define  MSG_EDITABLE_END
#define  MSG_GETCUSTOMICON
#define  MSG_MATERIALDRAGANDDROP
#define  MSG_DRAGANDDROP
#define  MSG_INITIALCHANNEL
#define  MSG_PYTHON_RESET
#define  MSG_DOCUMENTINFO
#define  MSG_MATERIAL_OVERRIDE
#define  MSG_RETRIEVE_NIMBUS_NODESYSTEM
#define  MSG_REQUEST_VIEWPORT_MAPPING
#define  MSG_UPDATE_VIEWPORT_MAPPING
#define  MSG_GETSELECTION
#define  MSG_REDIRECT
#define  MSG_TOOL_TRANSFORM
#define  MSG_GETACTIVEREDIRECT
#define  MSG_TOOL_ASK
#define  MSG_TAG_MODIFY
#define  MSG_TOOL_RESIZE
#define  MSG_CURRENTSTATE_END
#define  MSG_ALLOWXPRESSODROP
#define  MSG_TOOL_SWITCHACTION
#define  MSG_COPYDIRTYPRIVATE
#define  MSG_TRANSLATE_POINTS
#define  MSG_TRANSLATE_POLYGONS
#define  MSG_TRANSLATE_NGONS
#define  MSG_TRANSLATE_SEGMENTS
#define  MSG_PRETRANSLATE_POINTS
#define  MSG_PRETRANSLATE_POLYGONS
#define  MSG_PRETRANSLATE_NGONS
#define  MSG_PRETRANSLATE_SEGMENTS
#define  MSG_UPDATE_NGONS
#define  MSG_DOCUMENT_MODE_CHANGED
#define  MSG_TOOL_RESTART
#define  MSG_DEFORMMODECHANGED
#define  MSG_ANIMATE
#define  MSG_CALCMEMUSAGE
#define  MSG_SCALEDOCUMENT
#define  MSG_GET_INHERITANCECONTAINER
#define  MSG_SOFTTAG_UPDATE
#define  MSG_TRANSFORM_OBJECT
#define  MSG_STRINGUNDO
#define  MSG_GETREALCAMERADATA
#define  MSG_ADAPTVIEW_START
#define  MSG_ADAPTVIEW_END
#define  MSG_GETREALTAGDATA
#define  MSG_DISABLE_SYMMETRY_OBJECTS
#define  MSG_ENABLE_SYMMETRY_OBJECTS
#define  MSG_SYMMETRY_FLIP
#define  MSG_XREFINIT
#define  MSG_XREF_GET_FIRST_MATERIAL
#define  MSG_INVOKE_SCRIPT_FUNCTION

Macro Definition Documentation

◆  MSG_POINTS_CHANGED

#define MSG_POINTS_CHANGED

The points have changed. The corresponding data is VariableChanged .

◆  MSG_POLYGONS_CHANGED

#define MSG_POLYGONS_CHANGED

The polygons have changed. The corresponding data is VariableChanged .

◆  MSG_UPDATE

#define MSG_UPDATE

Must be sent if the bounding box has to be recalculated. (Otherwise use MSG_CHANGE .)

◆  MSG_SMALLUPDATE

#define MSG_SMALLUPDATE

Part of the object has changed that needs no cache rebuilding.

注意
This message should be used very carefully, it is there for (small) performance enhancements, for example if a polygon selection is changed then the caches do not need to be rebuilt, so MSG_SMALLUPDATE can be sent.

◆  MSG_CHANGE

#define MSG_CHANGE

Must be sent if any object data (except for the matrix) has been changed.

注意
For tag parameter changes call C4DAtom::SetDirty ( DIRTYFLAGS::DATA ); 而不是 C4DAtom::Message ( MSG_CHANGE );

◆  MSG_BASECONTAINER

#define MSG_BASECONTAINER

Message with a container, for example from a Python plugin. The corresponding data is BaseContainer .

◆  MSG_SEGMENTS_CHANGED

#define MSG_SEGMENTS_CHANGED

The segments have changed. The corresponding data is VariableChanged .

◆  MSG_FILTER

#define MSG_FILTER

返回 true to let the message pass and false to block it.

A message filter that lets block C4DAtom::MultiMessage() calls. The corresponding data is MessageFilter .

◆  MSG_TRANSFERGOALS

#define MSG_TRANSFERGOALS

Internal message. Private .

◆  MSG_DESCRIPTION_INITUNDO

#define MSG_DESCRIPTION_INITUNDO

Allows elements to create undo actions for the following parameter changes in the attributes manager. This is already automatically handled for keys, tags, objects etc. The corresponding data is DescriptionInitUndo .

◆  MSG_DESCRIPTION_CHECKUPDATE

#define MSG_DESCRIPTION_CHECKUPDATE

Allows elements to determine the type of refresh after a parameter has been changed in the Active manager. This is already automatically handled for keys, tags, objects etc. The corresponding data is DescriptionCheckUpdate .

注意
Currently this message is completely handled by all base data classes.
Most plugins will not need to modify the message data . It is more interesting to start some update action - e.g. deleting data that will be rebuilt with the next access.

◆  MSG_DESCRIPTION_COMMAND

#define MSG_DESCRIPTION_COMMAND

Sent by for example BUTTON description element. The corresponding data is DescriptionCommand .

◆  MSG_DESCRIPTION_POPUP

#define MSG_DESCRIPTION_POPUP

Allows popup menu handling in the Attribute Manager. The corresponding data is DescriptionPopup .

◆  MSG_DESCRIPTION_POSTSETPARAMETER

#define MSG_DESCRIPTION_POSTSETPARAMETER

Sent after a C4DAtom::SetParameter() call. The corresponding data is DescriptionPostSetValue .

◆  MSG_DESCRIPTION_VALIDATE

#define MSG_DESCRIPTION_VALIDATE

For example the light's inner radius always must be smaller than the light's outer radius; this routine checks for it and corrects it.

Allows to update dependencies or to check for invalid values after a parameter has been changed. The corresponding data is DescriptionValidate .

◆  MSG_DESCRIPTION_SWAP

#define MSG_DESCRIPTION_SWAP

A private message sent by the X-Ref system to exchange proxies.

由于
R16.038

◆  MSG_EDIT

#define MSG_EDIT

Allows elements to do some action if the user edits the element (double-click e.g. in object manager).

◆  MSG_MENUPREPARE

#define MSG_MENUPREPARE

Allows tags, objects, shaders etc. to do some setup work when called from the menu. The corresponding data is the current BaseDocument .

◆  MSG_RETRIEVEPRIVATEDATA

#define MSG_RETRIEVEPRIVATEDATA

A generic private message to retrieve data from an object. Specific for every type of object so no public documentation available. The corresponding data is RetrievePrivateData .

◆  MSG_DESCRIPTION_ALLOWOVERRIDE

#define MSG_DESCRIPTION_ALLOWOVERRIDE

Sent before the Take override is added to allow it or not. The corresponding data is DescriptionAllowOverride .

由于
R17.032
另请参阅
Take System Messages .

◆  MSG_DESCRIPTION_TAKECHANGED

#define MSG_DESCRIPTION_TAKECHANGED

Sent to each overridden node when the user changes the current Take. Sent to both the node storing the data in the Take and the node releasing the data to the document. The corresponding data is DescriptionTakeChanged .

由于
R17.032
另请参阅
Take System Messages .

◆  MSG_GETOVERRIDEASSETS

#define MSG_GETOVERRIDEASSETS

Private .

◆  MSG_MOVE_FINISHED

#define MSG_MOVE_FINISHED

Sent after a handle or the object has been moved.

◆  MSG_MOVE_START

#define MSG_MOVE_START

Sent before a handle or the object has been moved.

◆  MSG_EDITABLE_END

#define MSG_EDITABLE_END

Private .

◆  MSG_GETCUSTOMICON

#define MSG_GETCUSTOMICON

Every atom can return a custom icon with this message. The corresponding data is GetCustomIconData .

◆  MSG_MATERIALDRAGANDDROP

#define MSG_MATERIALDRAGANDDROP

Received by a material upon dropping an instance of a material onto an object. The corresponding data is MaterialDragAndDrop .

注意
The material can choose to create a tag of its own, or trigger other actions, instead of letting Cinema 4D create a normal material assignment.
For example Sketch and Toon creates its own type of tag and returns it in MaterialDragAndDrop::result . Cinema 4D creates the undo for it and activates it. Inserting the tag is done by the material.

◆  MSG_DRAGANDDROP

#define MSG_DRAGANDDROP

Received by an element in the Object manager when something is dropped on it. The corresponding data is DragAndDrop .

◆  MSG_INITIALCHANNEL

#define MSG_INITIALCHANNEL

HandleInitialChannel() .

◆  MSG_PYTHON_RESET

#define MSG_PYTHON_RESET

If this message is sent to Python related instances (Python tag, generator, node etc.) the Python scope is freed and reallocated.

◆  MSG_DOCUMENTINFO

#define MSG_DOCUMENTINFO

Sent as broadcast message by the document when it is loaded, saved , merged etc. The corresponding data is DocumentInfoData .

◆  MSG_MATERIAL_OVERRIDE

#define MSG_MATERIAL_OVERRIDE

Sent to each material before the rendering to react to a global material override. The corresponding data is OverrideMaterial .

由于
R17.032

◆  MSG_RETRIEVE_NIMBUS_NODESYSTEM

#define MSG_RETRIEVE_NIMBUS_NODESYSTEM

◆  MSG_REQUEST_VIEWPORT_MAPPING

#define MSG_REQUEST_VIEWPORT_MAPPING

@markprivate

由于
R21 - sent to a BaseMaterial requesting a viewport representation.

◆  MSG_UPDATE_VIEWPORT_MAPPING

#define MSG_UPDATE_VIEWPORT_MAPPING

@markprivate

由于
R21 - sent to a BaseMaterial updating the current viewport representation.

◆  MSG_GETSELECTION

#define MSG_GETSELECTION

Private .

◆  MSG_REDIRECT

#define MSG_REDIRECT

Private .

◆  MSG_TOOL_TRANSFORM

#define MSG_TOOL_TRANSFORM

Private .

◆  MSG_GETACTIVEREDIRECT

#define MSG_GETACTIVEREDIRECT

Private .

◆  MSG_TOOL_ASK

#define MSG_TOOL_ASK

Sent to tools on mouse input to query them on whether they accept/use certain input such as modifier keys, right or middle mouse button. The corresponding data is ToolAskMsgData .

◆  MSG_TAG_MODIFY

#define MSG_TAG_MODIFY

Private .

◆  MSG_TOOL_RESIZE

#define MSG_TOOL_RESIZE

Sent during MMB (MMB (Middle Mouse Button) dragging and the [ and ] shortcuts with brushes if ToolAskMsgData::resize_allowed 被设为 true by the developer in MSG_TOOL_ASK . The corresponding data is ToolResizeData .

◆  MSG_CURRENTSTATE_END

#define MSG_CURRENTSTATE_END

Private .

◆  MSG_ALLOWXPRESSODROP

#define MSG_ALLOWXPRESSODROP

Allow or deny drag&drop of an XPresso node. Return true to allow, false to deny.

◆  MSG_TOOL_SWITCHACTION

#define MSG_TOOL_SWITCHACTION

Sent to tools on mouse input and cursor info if they have the flag PLUGINFLAG_TOOL_SWITCHACTION set to allow to change action on modifier key.

由于
R17.032

◆  MSG_COPYDIRTYPRIVATE

#define MSG_COPYDIRTYPRIVATE

Private .

◆  MSG_TRANSLATE_POINTS

#define MSG_TRANSLATE_POINTS

Sent by the modeling core to let tags etc. update after point changes. The corresponding data is TranslationMaps .

◆  MSG_TRANSLATE_POLYGONS

#define MSG_TRANSLATE_POLYGONS

Sent by the modeling core to let tags etc. update after polygon changes. The corresponding data is TranslationMaps .

◆  MSG_TRANSLATE_NGONS

#define MSG_TRANSLATE_NGONS

Sent by the modeling core to let tags etc. update after N-gon changes. The corresponding data is TranslationMaps .

◆  MSG_TRANSLATE_SEGMENTS

#define MSG_TRANSLATE_SEGMENTS

Sent by the modeling core to let tags etc. update after segment changes. The corresponding data is TranslationMaps .

◆  MSG_PRETRANSLATE_POINTS

#define MSG_PRETRANSLATE_POINTS

Sent before MSG_TRANSLATE_POINTS , before the changes are actually carried out. The corresponding data is TranslationMaps .

◆  MSG_PRETRANSLATE_POLYGONS

#define MSG_PRETRANSLATE_POLYGONS

Sent before MSG_TRANSLATE_POLYGONS , before the changes are actually carried out. The corresponding data is TranslationMaps .

◆  MSG_PRETRANSLATE_NGONS

#define MSG_PRETRANSLATE_NGONS

Sent before MSG_TRANSLATE_NGONS , before the changes are actually carried out. The corresponding data is TranslationMaps .

◆  MSG_PRETRANSLATE_SEGMENTS

#define MSG_PRETRANSLATE_SEGMENTS

Sent before MSG_TRANSLATE_SEGMENTS , before the changes are actually carried out. The corresponding data is TranslationMaps .

◆  MSG_UPDATE_NGONS

#define MSG_UPDATE_NGONS

Should be sent if points are changed and any N-gons need updating. Cinema 4D will then update the N-gons, if the user has this option enabled.

◆  MSG_DOCUMENT_MODE_CHANGED

#define MSG_DOCUMENT_MODE_CHANGED

Sent to the active tool plugin during BaseDocument::SetMode() .

◆  MSG_TOOL_RESTART

#define MSG_TOOL_RESTART

Private . (Handles the tool description apply behavior after mouse clicks.)

◆  MSG_DEFORMMODECHANGED

#define MSG_DEFORMMODECHANGED

Private .

◆  MSG_ANIMATE

#define MSG_ANIMATE

Sent to objects after they have been animated.

◆  MSG_CALCMEMUSAGE

#define MSG_CALCMEMUSAGE

Private .

◆  MSG_SCALEDOCUMENT

#define MSG_SCALEDOCUMENT

Tells the document that another document with different scale has been merged. The corresponding data is MessageScaleDocument .

◆  MSG_GET_INHERITANCECONTAINER

#define MSG_GET_INHERITANCECONTAINER

Private .

◆  MSG_SOFTTAG_UPDATE

#define MSG_SOFTTAG_UPDATE

Private .

◆  MSG_TRANSFORM_OBJECT

#define MSG_TRANSFORM_OBJECT

Private .

◆  MSG_STRINGUNDO

#define MSG_STRINGUNDO

Private .

◆  MSG_GETREALCAMERADATA

#define MSG_GETREALCAMERADATA

Sent to get a real camera object from a generator. The corresponding data is GetRealCameraData .

◆  MSG_ADAPTVIEW_START

#define MSG_ADAPTVIEW_START

Sent to the camera object when the viewport transition starts.

◆  MSG_ADAPTVIEW_END

#define MSG_ADAPTVIEW_END

Sent to the camera object when the viewport transition ends.

◆  MSG_GETREALTAGDATA

#define MSG_GETREALTAGDATA

Sent to get a real tag object from a virtual "generator" tag. The corresponding data is GetRealTagData .

由于
R18

◆  MSG_DISABLE_SYMMETRY_OBJECTS

#define MSG_DISABLE_SYMMETRY_OBJECTS

Private .

◆  MSG_ENABLE_SYMMETRY_OBJECTS

#define MSG_ENABLE_SYMMETRY_OBJECTS

Private .

◆  MSG_SYMMETRY_FLIP

#define MSG_SYMMETRY_FLIP

Private .

由于
R18

◆  MSG_XREFINIT

#define MSG_XREFINIT

Sent to each node if any special operation has to be done on ref. The corresponding data is XrefInitData .

◆  MSG_XREF_GET_FIRST_MATERIAL

#define MSG_XREF_GET_FIRST_MATERIAL

Sent to an X-Ref object to get its first material. The corresponding data is BaseMaterial*..

◆  MSG_INVOKE_SCRIPT_FUNCTION

#define MSG_INVOKE_SCRIPT_FUNCTION

Sent to invoke a function within a script on the target object. The corresponding data is InvokeScriptData .

DIRTYFLAGS::DATA
@ DATA
Container changed.
C4DAtom::Message
Bool Message(Int32 type, void *data=nullptr)
定义: c4d_baselist.h:1394
C4DAtom::SetDirty
void SetDirty(DIRTYFLAGS flags)
定义: c4d_baselist.h:1550
MSG_CHANGE
#define MSG_CHANGE
定义: c4d_baselist.h:343

Copyright  © 2014-2025 乐数软件    

工业和信息化部: 粤ICP备14079481号-1