255#define WM_OP_CONTEXT_HAS_AREA(type) \
256 (CHECK_TYPE_INLINE(type, blender::wm::OpCallContext), \
257 !ELEM(type, blender::wm::OpCallContext::InvokeScreen, blender::wm::OpCallContext::ExecScreen))
258#define WM_OP_CONTEXT_HAS_REGION(type) \
259 (WM_OP_CONTEXT_HAS_AREA(type) && \
260 !ELEM(type, blender::wm::OpCallContext::InvokeArea, blender::wm::OpCallContext::ExecArea))
266#define OP_PROP_TAG_ADVANCED ((eOperatorPropTags)OP_PROP_TAG_ADVANCED)
348#define WM_UI_HANDLER_CONTINUE 0
349#define WM_UI_HANDLER_BREAK 1
372#define NOTE_CATEGORY 0xFF000000
373#define NOTE_CATEGORY_TAG_CLEARED NOTE_CATEGORY
374#define NC_WM (1 << 24)
375#define NC_WINDOW (2 << 24)
376#define NC_WORKSPACE (3 << 24)
377#define NC_SCREEN (4 << 24)
378#define NC_SCENE (5 << 24)
379#define NC_OBJECT (6 << 24)
380#define NC_MATERIAL (7 << 24)
381#define NC_TEXTURE (8 << 24)
382#define NC_LAMP (9 << 24)
383#define NC_GROUP (10 << 24)
384#define NC_IMAGE (11 << 24)
385#define NC_BRUSH (12 << 24)
386#define NC_TEXT (13 << 24)
387#define NC_WORLD (14 << 24)
388#define NC_ANIMATION (15 << 24)
392#define NC_SPACE (16 << 24)
393#define NC_GEOM (17 << 24)
394#define NC_NODE (18 << 24)
395#define NC_ID (19 << 24)
396#define NC_PAINTCURVE (20 << 24)
397#define NC_MOVIECLIP (21 << 24)
398#define NC_MASK (22 << 24)
399#define NC_GPENCIL (23 << 24)
400#define NC_LINESTYLE (24 << 24)
401#define NC_CAMERA (25 << 24)
402#define NC_LIGHTPROBE (26 << 24)
404#define NC_ASSET (27 << 24)
406#define NC_VIEWER_PATH (28 << 24)
409#define NOTE_DATA 0x00FF0000
412#define ND_FILEREAD (1 << 16)
413#define ND_FILESAVE (2 << 16)
414#define ND_DATACHANGED (3 << 16)
415#define ND_HISTORY (4 << 16)
416#define ND_JOB (5 << 16)
417#define ND_UNDO (6 << 16)
418#define ND_XR_DATA_CHANGED (7 << 16)
419#define ND_LIB_OVERRIDE_CHANGED (8 << 16)
422#define ND_LAYOUTBROWSE (1 << 16)
423#define ND_LAYOUTDELETE (2 << 16)
424#define ND_ANIMPLAY (4 << 16)
425#define ND_GPENCIL (5 << 16)
426#define ND_LAYOUTSET (6 << 16)
427#define ND_SKETCH (7 << 16)
428#define ND_WORKSPACE_SET (8 << 16)
429#define ND_WORKSPACE_DELETE (9 << 16)
432#define ND_SCENEBROWSE (1 << 16)
433#define ND_MARKERS (2 << 16)
434#define ND_FRAME (3 << 16)
435#define ND_RENDER_OPTIONS (4 << 16)
436#define ND_NODES (5 << 16)
437#define ND_SEQUENCER (6 << 16)
440#define ND_OB_ACTIVE (7 << 16)
442#define ND_OB_SELECT (8 << 16)
443#define ND_OB_VISIBLE (9 << 16)
444#define ND_OB_RENDER (10 << 16)
445#define ND_MODE (11 << 16)
446#define ND_RENDER_RESULT (12 << 16)
447#define ND_COMPO_RESULT (13 << 16)
448#define ND_KEYINGSET (14 << 16)
449#define ND_TOOLSETTINGS (15 << 16)
450#define ND_LAYER (16 << 16)
451#define ND_FRAME_RANGE (17 << 16)
452#define ND_WORLD (92 << 16)
453#define ND_LAYER_CONTENT (101 << 16)
456#define ND_TRANSFORM (18 << 16)
457#define ND_OB_SHADING (19 << 16)
458#define ND_POSE (20 << 16)
459#define ND_BONE_ACTIVE (21 << 16)
460#define ND_BONE_SELECT (22 << 16)
461#define ND_DRAW (23 << 16)
462#define ND_MODIFIER (24 << 16)
463#define ND_KEYS (25 << 16)
464#define ND_CONSTRAINT (26 << 16)
465#define ND_PARTICLE (27 << 16)
466#define ND_POINTCACHE (28 << 16)
467#define ND_PARENT (29 << 16)
468#define ND_LOD (30 << 16)
470#define ND_DRAW_RENDER_VIEWPORT (31 << 16)
471#define ND_SHADERFX (32 << 16)
473#define ND_DRAW_ANIMVIZ (33 << 16)
474#define ND_BONE_COLLECTION (34 << 16)
477#define ND_SHADING (30 << 16)
478#define ND_SHADING_DRAW (31 << 16)
479#define ND_SHADING_LINKS (32 << 16)
480#define ND_SHADING_PREVIEW (33 << 16)
483#define ND_LIGHTING (40 << 16)
484#define ND_LIGHTING_DRAW (41 << 16)
487#define ND_WORLD_DRAW (45 << 16)
490#define ND_CURSOR (50 << 16)
491#define ND_DISPLAY (51 << 16)
494#define ND_KEYFRAME (70 << 16)
495#define ND_KEYFRAME_PROP (71 << 16)
496#define ND_ANIMCHAN (72 << 16)
497#define ND_NLA (73 << 16)
498#define ND_NLA_ACTCHANGE (74 << 16)
499#define ND_FCURVES_ORDER (75 << 16)
500#define ND_NLA_ORDER (76 << 16)
501#define ND_KEYFRAME_AUTO (77 << 16)
504#define ND_GPENCIL_EDITMODE (85 << 16)
508#define ND_SELECT (90 << 16)
509#define ND_DATA (91 << 16)
510#define ND_VERTEX_GROUP (92 << 16)
515#define ND_NODE_ASSET_DATA (1 << 16)
516#define ND_NODE_GIZMO (2 << 16)
519#define ND_SPACE_CONSOLE (1 << 16)
520#define ND_SPACE_INFO_REPORT (2 << 16)
521#define ND_SPACE_INFO (3 << 16)
522#define ND_SPACE_IMAGE (4 << 16)
523#define ND_SPACE_FILE_PARAMS (5 << 16)
524#define ND_SPACE_FILE_LIST (6 << 16)
525#define ND_SPACE_ASSET_PARAMS (7 << 16)
526#define ND_SPACE_NODE (8 << 16)
527#define ND_SPACE_OUTLINER (9 << 16)
528#define ND_SPACE_VIEW3D (10 << 16)
529#define ND_SPACE_PROPERTIES (11 << 16)
530#define ND_SPACE_TEXT (12 << 16)
531#define ND_SPACE_TIME (13 << 16)
532#define ND_SPACE_GRAPH (14 << 16)
533#define ND_SPACE_DOPESHEET (15 << 16)
534#define ND_SPACE_NLA (16 << 16)
535#define ND_SPACE_SEQUENCER (17 << 16)
536#define ND_SPACE_NODE_VIEW (18 << 16)
538#define ND_SPACE_CHANGED (19 << 16)
539#define ND_SPACE_CLIP (20 << 16)
540#define ND_SPACE_FILE_PREVIEW (21 << 16)
541#define ND_SPACE_SPREADSHEET (22 << 16)
543#define ND_REGIONS_ASSET_SHELF (23 << 16)
548#define ND_ASSET_LIST (1 << 16)
549#define ND_ASSET_LIST_PREVIEW (2 << 16)
550#define ND_ASSET_LIST_READING (3 << 16)
554#define ND_ASSET_CATALOGS (4 << 16)
557#define NOTE_SUBTYPE 0x0000FF00
560#define NS_MODE_OBJECT (1 << 8)
562#define NS_EDITMODE_MESH (2 << 8)
563#define NS_EDITMODE_CURVE (3 << 8)
564#define NS_EDITMODE_SURFACE (4 << 8)
565#define NS_EDITMODE_TEXT (5 << 8)
566#define NS_EDITMODE_MBALL (6 << 8)
567#define NS_EDITMODE_LATTICE (7 << 8)
568#define NS_EDITMODE_ARMATURE (8 << 8)
569#define NS_MODE_POSE (9 << 8)
570#define NS_MODE_PARTICLE (10 << 8)
571#define NS_EDITMODE_CURVES (11 << 8)
572#define NS_EDITMODE_GREASE_PENCIL (12 << 8)
573#define NS_EDITMODE_POINTCLOUD (13 << 8)
576#define NS_VIEW3D_GPU (16 << 8)
577#define NS_VIEW3D_SHADING (17 << 8)
580#define NS_LAYER_COLLECTION (24 << 8)
583#define NOTE_ACTION (0x000000FF)
585#define NA_EVALUATED 2
590#define NA_ACTIVATED 7
592#define NA_JOB_FINISHED 9
601#define WM_GESTURE_LINES 1
602#define WM_GESTURE_RECT 2
603#define WM_GESTURE_CROSS_RECT 3
604#define WM_GESTURE_LASSO 4
605#define WM_GESTURE_CIRCLE 5
606#define WM_GESTURE_STRAIGHTLINE 6
607#define WM_GESTURE_POLYLINE 7
844#define WM_EVENT_CURSOR_MOTION_THRESHOLD ((float)U.move_threshold * UI_SCALE_FAC)
858#ifdef WITH_INPUT_NDOF
859struct wmNDOFMotionData {
892 float orientation_quat[4];
895struct wmXrActionState {
899 float state_vector2f[2];
905struct wmXrActionData {
913 char user_path_other[64];
919 float state_other[2];
922 float float_threshold;
925 float controller_loc[3];
926 float controller_rot[4];
928 float controller_loc_other[3];
929 float controller_rot_other[4];
1170#ifdef WITH_INPUT_IME
1180 std::string composite;
#define ATTR_WARN_UNUSED_RESULT
#define ENUM_OPERATORS(_type, _max)
struct IDProperty IDProperty
These structs are the foundation for all linked lists in the library system.
struct AssetRepresentationHandle AssetRepresentationHandle
CLG_LogRef * WM_LOG_MSGBUS_PUB
@ WM_EVENT_FORCE_DRAG_THRESHOLD
@ WM_EVENT_IS_CONSECUTIVE
CLG_LogRef * WM_LOG_OPERATORS
std::string(*)(bContext *C, wmDrag *drag, const int xy[2], wmDropBox *drop) WMDropboxTooltipFunc
@ WM_DRAG_GREASE_PENCIL_LAYER
@ WM_DRAG_BONE_COLLECTION
@ WM_DRAG_GREASE_PENCIL_GROUP
@ WM_DRAG_NODE_TREE_INTERFACE
CLG_LogRef * WM_LOG_EVENTS
@ OPTYPE_DEPENDS_ON_CURSOR
blender::asset_system::AssetRepresentation AssetRepresentationHandle
#define OP_PROP_TAG_ADVANCED
void(*)(void *data) wmGenericUserDataFreeFn
void(*)(bContext *C, const blender::int2 &xy, const blender::float2 &tilt, void *customdata) wmPaintCursorDraw
void(*)(bContext *C, void *user_data) wmGenericCallbackFn
CLG_LogRef * WM_LOG_TOOL_GIZMO
@ WM_POPUP_POSITION_MOUSE
@ WM_POPUP_POSITION_CENTER
@ WM_TIMER_TAGGED_FOR_REMOVAL
@ WM_TIMER_NO_FREE_CUSTOM_DATA
CLG_LogRef * WM_LOG_MSGBUS_SUB
BMesh const char void * data
constexpr float POLYLINE_CLICK_RADIUS
VecBase< int32_t, 2 > int2
VecBase< float, 2 > float2
Universally Unique Identifier according to RFC4122.
const char * disabled_info
std::unique_ptr< bContextStore > ui_context
wmDropBox * active_dropbox
wmDragAsset * external_info
wmDragAssetListItem * prev
union wmDragAssetListItem::@356367110101130017201161164010115362272120017131 asset_data
wmDragAssetListItem * next
const AssetRepresentationHandle * asset
AssetImportSettings import_settings
GreasePencil * grease_pencil
GreasePencilLayerTreeNode * node
blender::Vector< int > file_types
blender::Vector< std::string > paths
wmDragActiveDropState drop_state
WMDropboxTooltipFunc tooltip
bool(* poll)(bContext *C, wmDrag *drag, const wmEvent *event)
void(* on_drag_start)(bContext *C, wmDrag *drag)
void(* on_exit)(wmDropBox *drop, wmDrag *drag)
void(* on_enter)(wmDropBox *drop, wmDrag *drag)
void(* cancel)(Main *bmain, wmDrag *drag, wmDropBox *drop)
void(* draw_in_view)(bContext *C, wmWindow *win, wmDrag *drag, const int xy[2])
void(* draw_droptip)(bContext *C, wmWindow *win, wmDrag *drag, const int xy[2])
void(* copy)(bContext *C, wmDrag *drag, wmDropBox *drop)
wmEventModifierFlag modifier
wmEventType prev_press_type
wmEventType prev_press_keymodifier
wmEventModifierFlag prev_press_modifier
wmGenericUserDataFreeFn free_user_data
wmGenericUserDataFreeFn free_fn
wmGenericUserData user_data
blender::wm::OpCallContext opcontext
bool(* poll_property)(const bContext *C, wmOperator *op, const PropertyRNA *prop) ATTR_WARN_UNUSED_RESULT
wmOperatorStatus(* exec)(bContext *C, wmOperator *op) ATTR_WARN_UNUSED_RESULT
bool(* poll)(bContext *C) ATTR_WARN_UNUSED_RESULT
std::string(* get_description)(bContext *C, wmOperatorType *ot, PointerRNA *ptr)
bool(* depends_on_cursor)(bContext &C, wmOperatorType &ot, PointerRNA *ptr)
bool(* check)(bContext *C, wmOperator *op)
bool(* pyop_poll)(bContext *C, wmOperatorType *ot) ATTR_WARN_UNUSED_RESULT
std::string(* get_name)(wmOperatorType *ot, PointerRNA *ptr)
bool(* ui_poll)(wmOperatorType *ot, PointerRNA *ptr)
const char * translation_context
IDProperty * last_properties
wmOperatorStatus(* invoke)(bContext *C, wmOperator *op, const wmEvent *event) ATTR_WARN_UNUSED_RESULT
void(* ui)(bContext *C, wmOperator *op)
wmOperatorStatus(* modal)(bContext *C, wmOperator *op, const wmEvent *event) ATTR_WARN_UNUSED_RESULT
void(* cancel)(bContext *C, wmOperator *op)