Blender V5.0
DNA_windowmanager_types.h File Reference
#include "DNA_windowmanager_enums.h"
#include "DNA_listBase.h"
#include "DNA_screen_types.h"
#include "DNA_xr_types.h"
#include "DNA_ID.h"

Go to the source code of this file.

Classes

struct  ReportTimerInfo
struct  wmXrData
struct  wmWindowManager
struct  wmWindow
struct  wmOperatorTypeMacro
struct  wmKeyMapItem
struct  wmKeyMapDiffItem
struct  wmKeyMap
struct  wmKeyConfigPref
struct  wmKeyConfig
struct  wmOperator

Macros

#define OP_MAX_TYPENAME   64
#define KMAP_MAX_NAME   64
#define WM_KEYCONFIG_ARRAY_P(wm)
#define WM_OUTLINER_SYNC_SELECT_FROM_ALL
#define WM_KEYCONFIG_STR_DEFAULT   "Blender"

Typedefs

typedef struct WindowManagerRuntimeHandle WindowManagerRuntimeHandle
typedef struct WindowRuntimeHandle WindowRuntimeHandle
typedef struct ReportTimerInfo ReportTimerInfo
typedef struct wmXrData wmXrData
typedef struct wmWindowManager wmWindowManager
typedef struct wmWindow wmWindow
typedef struct wmOperatorTypeMacro wmOperatorTypeMacro
typedef struct wmKeyMapItem wmKeyMapItem
typedef struct wmKeyMapDiffItem wmKeyMapDiffItem
typedef struct wmKeyMap wmKeyMap
typedef struct wmKeyConfigPref wmKeyConfigPref
typedef struct wmKeyConfig wmKeyConfig
typedef struct wmOperator wmOperator

Enumerations

enum  { WM_EXTENSIONS_UPDATE_UNSET = -2 , WM_EXTENSIONS_UPDATE_CHECKING = -1 }
enum  { WM_INIT_FLAG_WINDOW = (1 << 0) , WM_INIT_FLAG_KEYCONFIG = (1 << 1) }
enum  { WM_OUTLINER_SYNC_SELECT_FROM_OBJECT = (1 << 0) , WM_OUTLINER_SYNC_SELECT_FROM_EDIT_BONE = (1 << 1) , WM_OUTLINER_SYNC_SELECT_FROM_POSE_BONE = (1 << 2) , WM_OUTLINER_SYNC_SELECT_FROM_SEQUENCE = (1 << 3) }
enum  {
  KMI_INACTIVE = (1 << 0) , KMI_EXPANDED = (1 << 1) , KMI_USER_MODIFIED = (1 << 2) , KMI_UPDATE = (1 << 3) ,
  KMI_REPEAT_IGNORE = (1 << 4)
}
enum  {
  KMI_TYPE_KEYBOARD = 0 , KMI_TYPE_MOUSE = 1 , KMI_TYPE_TEXTINPUT = 3 , KMI_TYPE_TIMER = 4 ,
  KMI_TYPE_NDOF = 5
}
enum  {
  KEYMAP_MODAL = (1 << 0) , KEYMAP_USER = (1 << 1) , KEYMAP_EXPANDED = (1 << 2) , KEYMAP_CHILDREN_EXPANDED = (1 << 3) ,
  KEYMAP_DIFF = (1 << 4) , KEYMAP_USER_MODIFIED = (1 << 5) , KEYMAP_UPDATE = (1 << 6) , KEYMAP_TOOL = (1 << 7)
}
enum  { KEYCONF_USER = (1 << 1) , KEYCONF_INIT_DEFAULT = (1 << 2) }

Macro Definition Documentation

◆ KMAP_MAX_NAME

◆ OP_MAX_TYPENAME

◆ WM_KEYCONFIG_ARRAY_P

#define WM_KEYCONFIG_ARRAY_P ( wm)
Value:
&(wm)->runtime->defaultconf, &(wm)->runtime->addonconf, &(wm)->runtime->userconf

Definition at line 125 of file DNA_windowmanager_types.h.

Referenced by WM_keyconfig_remove().

◆ WM_KEYCONFIG_STR_DEFAULT

#define WM_KEYCONFIG_STR_DEFAULT   "Blender"

◆ WM_OUTLINER_SYNC_SELECT_FROM_ALL

Typedef Documentation

◆ ReportTimerInfo

typedef struct ReportTimerInfo ReportTimerInfo

◆ WindowManagerRuntimeHandle

Workaround to forward-declare C++ type in C header.

Definition at line 28 of file DNA_windowmanager_types.h.

◆ WindowRuntimeHandle

◆ wmKeyConfig

typedef struct wmKeyConfig wmKeyConfig

◆ wmKeyConfigPref

typedef struct wmKeyConfigPref wmKeyConfigPref

This is similar to addon-preferences, however unlike add-ons key-configurations aren't saved to disk.

wmKeyConfigPref is written to DNA, wmKeyConfigPrefType_Runtime has the RNA type.

◆ wmKeyMap

typedef struct wmKeyMap wmKeyMap

Stored in WM, the actively used key-maps.

◆ wmKeyMapDiffItem

typedef struct wmKeyMapDiffItem wmKeyMapDiffItem

Used instead of wmKeyMapItem for diff keymaps.

◆ wmKeyMapItem

typedef struct wmKeyMapItem wmKeyMapItem

Partial copy of the event, for matching by event handler.

◆ wmOperator

typedef struct wmOperator wmOperator

This one is the operator itself, stored in files for macros etc. operator + operator-type should be able to redo entirely, but for different context's.

◆ wmOperatorTypeMacro

typedef struct wmOperatorTypeMacro wmOperatorTypeMacro

◆ wmWindow

typedef struct wmWindow wmWindow

The saveable part, the rest of the data is local in GHOST.

◆ wmWindowManager

typedef struct wmWindowManager wmWindowManager

Window-manager is saved, tag WMAN.

◆ wmXrData

typedef struct wmXrData wmXrData

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

wmWindowManager.outliner_sync_select_dirty

Enumerator
WM_OUTLINER_SYNC_SELECT_FROM_OBJECT 
WM_OUTLINER_SYNC_SELECT_FROM_EDIT_BONE 
WM_OUTLINER_SYNC_SELECT_FROM_POSE_BONE 
WM_OUTLINER_SYNC_SELECT_FROM_SEQUENCE 

Definition at line 141 of file DNA_windowmanager_types.h.

◆ anonymous enum

anonymous enum

wmKeyConfig.flag

Enumerator
KEYCONF_USER 
KEYCONF_INIT_DEFAULT 

Definition at line 522 of file DNA_windowmanager_types.h.

◆ anonymous enum

anonymous enum

wmKeyMapItem.flag

Enumerator
KMI_INACTIVE 
KMI_EXPANDED 
KMI_USER_MODIFIED 
KMI_UPDATE 
KMI_REPEAT_IGNORE 

When set, ignore events with wmEvent.flag & WM_EVENT_IS_REPEAT enabled.

Note
this flag isn't cleared when editing/loading the key-map items, so it may be set in cases which don't make sense (modifier-keys or mouse-motion for example).

Knowing if an event may repeat is something set at the operating-systems event handling level so rely on WM_EVENT_IS_REPEAT being false non keyboard events instead of checking if this flag makes sense.

Only used when: ISKEYBOARD(kmi->type) || (kmi->type == KM_TEXTINPUT) as mouse, 3d-mouse, timer... etc never repeat.

Definition at line 413 of file DNA_windowmanager_types.h.

◆ anonymous enum

anonymous enum

wmKeyMap.flag

Enumerator
KEYMAP_MODAL 

Modal map, not using operator-names.

KEYMAP_USER 

User key-map.

KEYMAP_EXPANDED 
KEYMAP_CHILDREN_EXPANDED 
KEYMAP_DIFF 

Diff key-map for user preferences.

KEYMAP_USER_MODIFIED 

Key-map has user modifications.

KEYMAP_UPDATE 
KEYMAP_TOOL 

key-map for active tool system.

Definition at line 477 of file DNA_windowmanager_types.h.

◆ anonymous enum

anonymous enum

wmWindowManager.extensions_updates

Enumerator
WM_EXTENSIONS_UPDATE_UNSET 
WM_EXTENSIONS_UPDATE_CHECKING 

Definition at line 129 of file DNA_windowmanager_types.h.

◆ anonymous enum

anonymous enum

wmKeyMapItem.maptype

Enumerator
KMI_TYPE_KEYBOARD 
KMI_TYPE_MOUSE 
KMI_TYPE_TEXTINPUT 
KMI_TYPE_TIMER 
KMI_TYPE_NDOF 

Definition at line 435 of file DNA_windowmanager_types.h.

◆ anonymous enum

anonymous enum

wmWindowManager.init_flag

Enumerator
WM_INIT_FLAG_WINDOW 
WM_INIT_FLAG_KEYCONFIG 

Definition at line 135 of file DNA_windowmanager_types.h.