Blender
V3.3
|
#include <cmath>
#include <cstdlib>
#include <cstring>
#include "DNA_listBase.h"
#include "DNA_scene_types.h"
#include "DNA_screen_types.h"
#include "DNA_userdef_types.h"
#include "DNA_windowmanager_types.h"
#include "MEM_guardedalloc.h"
#include "CLG_log.h"
#include "GHOST_C-api.h"
#include "BLI_blenlib.h"
#include "BLI_dynstr.h"
#include "BLI_math.h"
#include "BLI_timer.h"
#include "BLI_utildefines.h"
#include "BKE_context.h"
#include "BKE_customdata.h"
#include "BKE_global.h"
#include "BKE_idprop.h"
#include "BKE_lib_remap.h"
#include "BKE_main.h"
#include "BKE_report.h"
#include "BKE_scene.h"
#include "BKE_screen.h"
#include "BKE_workspace.h"
#include "BKE_sound.h"
#include "BLT_translation.h"
#include "ED_asset.h"
#include "ED_fileselect.h"
#include "ED_info.h"
#include "ED_render.h"
#include "ED_screen.h"
#include "ED_undo.h"
#include "ED_util.h"
#include "ED_view3d.h"
#include "RNA_access.h"
#include "UI_interface.h"
#include "PIL_time.h"
#include "WM_api.h"
#include "WM_message.h"
#include "WM_toolsystem.h"
#include "WM_types.h"
#include "wm.h"
#include "wm_event_system.h"
#include "wm_event_types.h"
#include "wm_surface.h"
#include "wm_window.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_query.h"
Go to the source code of this file.
Classes | |
struct | uiOperatorWaitForInput |
struct | wmEvent_ModalMapStore |
struct | CursorKeymapInfo_State |
struct | CursorKeymapInfo |
Macros | |
#define | USE_GIZMO_MOUSE_PRIORITY_HACK |
Handle events and notifiers from GHOST input (mouse, keyboard, tablet, NDOF).
Also some operator reports utility functions.
Definition in file wm_event_system.cc.
#define PRINT |
Definition at line 2793 of file wm_event_system.cc.
#define USE_GIZMO_MOUSE_PRIORITY_HACK |
When a gizmo is highlighted and uses click/drag events, this prevents mouse button press events from being passed through to other key-maps which would obscure those events.
This allows gizmos that only use drag to co-exist with tools that use click.
Without tools using press events which would prevent click/drag events getting to the gizmos.
This is not a fool proof solution since it's possible the gizmo operators would pass through these events when called, see: T65479.
Definition at line 90 of file wm_event_system.cc.
Definition at line 3473 of file wm_event_system.cc.
References blender::compositor::area(), BLI_rcti_isect_pt_v(), C, CTX_wm_screen(), CTX_wm_window(), ED_screen_areas_iter, and xy.
Referenced by wm_event_do_handlers(), and wm_paintcursor_test().
|
static |
Definition at line 4637 of file wm_event_system.cc.
References BLI_assert_unreachable, CLOG_WARN, EVENT_NONE, EVT_ACCENTGRAVEKEY, EVT_AKEY, EVT_APPKEY, EVT_BACKSLASHKEY, EVT_BACKSPACEKEY, EVT_CAPSLOCKKEY, EVT_COMMAKEY, EVT_DELKEY, EVT_DOWNARROWKEY, EVT_ENDKEY, EVT_EQUALKEY, EVT_ESCKEY, EVT_F1KEY, EVT_GRLESSKEY, EVT_HOMEKEY, EVT_INSERTKEY, EVT_LEFTALTKEY, EVT_LEFTARROWKEY, EVT_LEFTBRACKETKEY, EVT_LEFTCTRLKEY, EVT_LEFTSHIFTKEY, EVT_LINEFEEDKEY, EVT_MEDIAFIRST, EVT_MEDIALAST, EVT_MEDIAPLAY, EVT_MEDIASTOP, EVT_MINUSKEY, EVT_OSKEY, EVT_PAD0, EVT_PADASTERKEY, EVT_PADENTER, EVT_PADMINUS, EVT_PADPERIOD, EVT_PADPLUSKEY, EVT_PADSLASHKEY, EVT_PAGEDOWNKEY, EVT_PAGEUPKEY, EVT_PAUSEKEY, EVT_PERIODKEY, EVT_PLUSKEY, EVT_QUOTEKEY, EVT_RETKEY, EVT_RIGHTALTKEY, EVT_RIGHTARROWKEY, EVT_RIGHTBRACKETKEY, EVT_RIGHTCTRLKEY, EVT_RIGHTSHIFTKEY, EVT_SEMICOLONKEY, EVT_SLASHKEY, EVT_SPACEKEY, EVT_TABKEY, EVT_UNKNOWNKEY, EVT_UPARROWKEY, EVT_ZEROKEY, GHOST_kKey0, GHOST_kKey9, GHOST_kKeyA, GHOST_kKeyAccentGrave, GHOST_kKeyApp, GHOST_kKeyBackslash, GHOST_kKeyBackSpace, GHOST_kKeyCapsLock, GHOST_kKeyClear, GHOST_kKeyComma, GHOST_kKeyDelete, GHOST_kKeyDownArrow, GHOST_kKeyDownPage, GHOST_kKeyEnd, GHOST_kKeyEnter, GHOST_kKeyEqual, GHOST_kKeyEsc, GHOST_kKeyF1, GHOST_kKeyF24, GHOST_kKeyGrLess, GHOST_kKeyHome, GHOST_kKeyInsert, GHOST_kKeyLeftAlt, GHOST_kKeyLeftArrow, GHOST_kKeyLeftBracket, GHOST_kKeyLeftControl, GHOST_kKeyLeftShift, GHOST_kKeyLinefeed, GHOST_kKeyMediaFirst, GHOST_kKeyMediaLast, GHOST_kKeyMediaPlay, GHOST_kKeyMediaStop, GHOST_kKeyMinus, GHOST_kKeyNumLock, GHOST_kKeyNumpad0, GHOST_kKeyNumpad9, GHOST_kKeyNumpadAsterisk, GHOST_kKeyNumpadEnter, GHOST_kKeyNumpadMinus, GHOST_kKeyNumpadPeriod, GHOST_kKeyNumpadPlus, GHOST_kKeyNumpadSlash, GHOST_kKeyOS, GHOST_kKeyPause, GHOST_kKeyPeriod, GHOST_kKeyPlus, GHOST_kKeyPrintScreen, GHOST_kKeyQuote, GHOST_kKeyRightAlt, GHOST_kKeyRightArrow, GHOST_kKeyRightBracket, GHOST_kKeyRightControl, GHOST_kKeyRightShift, GHOST_kKeyScrollLock, GHOST_kKeySemicolon, GHOST_kKeySlash, GHOST_kKeySpace, GHOST_kKeyTab, GHOST_kKeyUnknown, GHOST_kKeyUpArrow, GHOST_kKeyUpPage, GHOST_kKeyZ, and WM_LOG_EVENTS.
Referenced by wm_event_add_ghostevent().
Definition at line 4431 of file wm_event_system.cc.
References BLI_rcti_isect_pt_v(), MOUSEMOVE, wmEvent::prev_xy, wmEvent::type, and wmEvent::xy.
Referenced by handler_region_v2d_mask_test().
Definition at line 4442 of file wm_event_system.cc.
References BLI_rcti_translate(), event_or_prev_in_rect(), View2D::mask, ARegion::v2d, ARegion::winrct, rcti::xmin, and rcti::ymin.
Referenced by WM_event_add_keymap_handler_v2d_mask().
|
static |
Definition at line 2748 of file wm_event_system.cc.
References WM_HANDLER_BREAK, and WM_HANDLER_HANDLED.
Referenced by wm_handlers_do_keymap_with_keymap_handler().
|
static |
Definition at line 2759 of file wm_event_system.cc.
References WM_keymap_item_to_string().
Referenced by wm_handlers_do_keymap_with_keymap_handler().
|
static |
Definition at line 2770 of file wm_event_system.cc.
References BLI_snprintf(), C, wmKeyMapItem::idname, IDP_reprN(), MEM_freeN, ot, wmKeyMapItem::properties, wmKeyMapItem::ptr, RNA_pointer_as_string_keywords(), and WM_operatortype_find().
Referenced by wm_handlers_do_keymap_with_keymap_handler().
Definition at line 3488 of file wm_event_system.cc.
References blender::compositor::area(), BLI_rcti_isect_pt_v(), C, CTX_wm_area(), CTX_wm_screen(), LISTBASE_FOREACH, and xy.
Referenced by wm_event_do_handlers(), and wm_paintcursor_test().
|
static |
Definition at line 1763 of file wm_event_system.cc.
References C, uiOperatorWaitForInput::context, CTX_store_set(), CTX_wm_window(), EVT_ESCKEY, EVT_RETKEY, EVT_SPACEKEY, KM_PRESS, LEFTMOUSE, wmWindow::modalhandlers, wmOperatorCallParams::opcontext, wmOperatorCallParams::opptr, wmOperatorCallParams::optype, uiOperatorWaitForInput::optype_params, RIGHTMOUSE, state, wmEvent::type, ui_handler_wait_for_input_remove(), wmEvent::val, WM_cursor_modal_restore(), WM_event_remove_ui_handler(), WM_operator_name_call_ptr(), WM_UI_HANDLER_BREAK, and WM_UI_HANDLER_CONTINUE.
Referenced by WM_operator_name_call_ptr_with_depends_on_cursor().
Definition at line 1740 of file wm_event_system.cc.
References uiOperatorWaitForInput::area, C, uiOperatorWaitForInput::context, CTX_store_free(), PointerRNA::data, ED_area_status_text(), ED_workspace_status_text(), IDP_FreeProperty(), MEM_freeN, wmOperatorCallParams::opptr, and uiOperatorWaitForInput::optype_params.
Referenced by ui_handler_wait_for_input(), and WM_operator_name_call_ptr_with_depends_on_cursor().
|
static |
Definition at line 2743 of file wm_event_system.cc.
References WM_HANDLER_BREAK, WM_HANDLER_CONTINUE, and WM_HANDLER_MODAL.
Referenced by wm_event_do_handlers(), and wm_handlers_do().
|
static |
Definition at line 835 of file wm_event_system.cc.
References BLI_movelisttolist(), ListBase::first, ReportList::flag, G_MAIN, ReportList::list, wmWindowManager::reports, RPT_OP_HOLD, and WM_report_banner_show().
Referenced by wm_handler_operator_call(), wm_operator_reports(), and WM_report().
Definition at line 134 of file wm_event_system.cc.
References wm_event_add_ex().
Referenced by actionzone_apply(), ghost_event_proc(), UI_but_focus_on_enter_event(), wm_event_add_ghostevent(), wm_event_add_mousemove(), wm_event_add_mousemove_to_head(), WM_event_add_simulate(), wm_event_add_trackpad(), wm_event_do_handlers(), WM_event_fileselect_event(), and wm_window_timer().
wmEventHandler_Dropbox* WM_event_add_dropbox_handler | ( | ListBase * | handlers, |
ListBase * | dropboxes | ||
) |
Definition at line 4564 of file wm_event_system.cc.
References BLI_addhead(), dropboxes, wmEventHandler_Dropbox::dropboxes, wmEventHandler_Dropbox::head, LISTBASE_FOREACH, wmEventHandler::type, and WM_HANDLER_TYPE_DROPBOX.
Referenced by clip_init(), console_main_region_init(), ed_default_handlers(), image_init(), blender::ed::space_node::node_main_region_init(), outliner_main_region_init(), sequencer_main_region_init(), sequencer_preview_region_init(), text_main_region_init(), view3d_main_region_init(), and wm_window_ghostwindow_ensure().
wmEvent* wm_event_add_ex | ( | wmWindow * | win, |
const wmEvent * | event_to_add, | ||
const wmEvent * | event_to_add_after | ||
) |
Definition at line 115 of file wm_event_system.cc.
References BLI_addtail(), BLI_insertlinkafter(), and wmWindow::event_queue.
Referenced by wm_event_add().
void WM_event_add_fileselect | ( | struct bContext * | C, |
struct wmOperator * | op | ||
) |
The idea here is to keep a handler alive on window queue, owning the operator. The file window can send event to make it execute, thus ensuring executing happens outside of lower level queues, with UI refreshed. Should also allow multi-window solutions.
Definition at line 4088 of file wm_event_system.cc.
References wmEventHandler_Op::area, BLI_addhead(), BLI_assert, C, wmOperatorType::check, wmEventHandler_Op::context, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_region(), CTX_wm_window(), CTX_wm_window_set(), ED_fileselect_handler_area_find(), wmWindow::eventstate, EVT_FILESELECT_CANCEL, EVT_FILESELECT_EXTERNAL_CANCEL, EVT_FILESELECT_FULL_OPEN, wmEventHandler_Op::head, wmEventHandler_Op::is_fileselect, LISTBASE_FOREACH_MUTABLE, wmWindow::modalhandlers, wmEventHandler_Op::op, wmEventHandler_Op::region, wmOperator::type, wmEventHandler::type, UI_popup_handlers_remove_all(), wmEventHandler_Op::win, WM_event_fileselect_event(), wm_event_find_fileselect_root_window_from_context(), wm_handler_fileselect_do(), wm_handler_op_context_get_if_valid(), and WM_HANDLER_TYPE_OP.
Referenced by asset_bundle_install_invoke(), cachefile_layer_open_invoke(), cachefile_open_invoke(), clip_filesel(), file_browse_invoke(), find_missing_files_invoke(), image_filesel(), multires_external_save_invoke(), open_invoke(), paste_from_file_invoke(), preferences_asset_library_add_invoke(), rigidbody_world_export_invoke(), screenshot_invoke(), sequencer_add_image_strip_invoke(), sequencer_add_movie_strip_invoke(), sequencer_add_sound_strip_invoke(), sequencer_change_path_invoke(), sequencer_export_subtitles_invoke(), text_open_invoke(), text_save_as_invoke(), volume_import_invoke(), wm_lib_relocate_invoke(), wm_link_append_invoke(), wm_open_mainfile__select_file_path(), WM_operator_filesel(), wm_recover_auto_save_invoke(), wm_save_as_mainfile_invoke(), and wm_save_mainfile_invoke().
void wm_event_add_ghostevent | ( | wmWindowManager * | wm, |
wmWindow * | win, | ||
int | type, | ||
void * | customdata | ||
) |
Windows store own event queues wmWindow.event_queue (no bContext here).
Having both, event and event_state, can be highly confusing to work with, but is necessary for our current event system, so let's clear things up a bit:
Always support accessing the last key press/release. This is set from win->eventstate
, so it will always be a valid event type to store in the previous state.
Note that these values are intentionally not set in the win->eventstate
, as copying these values only makes sense when win->eventstate->{val/type}
would be written to (which only happens for some kinds of events). If this was done it could leave win->eventstate
previous and current value set to the same key press/release state which doesn't make sense.
Definition at line 5193 of file wm_event_system.cc.
References BLI_assert, BLI_assert_unreachable, BLI_str_utf8_from_unicode(), BLI_str_utf8_size(), GHOST_TEventButtonData::button, BUTTON4MOUSE, BUTTON5MOUSE, BUTTON6MOUSE, BUTTON7MOUSE, Freestyle::c, CLOG_ERROR, CLOG_INFO, CLOG_WARN, convert_key(), copy_v2_v2_int(), GHOST_TEventTrackpadData::deltaX, GHOST_TEventTrackpadData::deltaY, e, EVENT_NONE, wmWindow::eventstate, EVT_DATA_TIMER, EVT_ESCKEY, EVT_LEFTALTKEY, EVT_LEFTCTRLKEY, EVT_LEFTSHIFTKEY, EVT_OSKEY, EVT_RIGHTALTKEY, EVT_RIGHTCTRLKEY, EVT_RIGHTSHIFTKEY, EVT_UNKNOWNKEY, wmEvent::flag, G, G_FLAG_EVENT_SIMULATE, GHOST_kButtonMaskButton4, GHOST_kButtonMaskButton5, GHOST_kButtonMaskButton6, GHOST_kButtonMaskButton7, GHOST_kButtonMaskLeft, GHOST_kButtonMaskRight, GHOST_kEventButtonDown, GHOST_kEventButtonUp, GHOST_kEventCursorMove, GHOST_kEventImeComposition, GHOST_kEventImeCompositionEnd, GHOST_kEventImeCompositionStart, GHOST_kEventKeyDown, GHOST_kEventKeyUp, GHOST_kEventTimer, GHOST_kEventTrackpad, GHOST_kEventUnknown, GHOST_kEventWheel, GHOST_kEventWindowDeactivate, GHOST_kNumEventTypes, GHOST_kTrackpadEventMagnify, GHOST_kTrackpadEventRotate, GHOST_kTrackpadEventScroll, GHOST_kTrackpadEventSmartMagnify, wmWindow::ime_data, wmTabletData::is_motion_absolute, GHOST_TEventKeyData::is_repeat, GHOST_TEventTrackpadData::isDirectionInverted, ISKEYBOARD_OR_BUTTON, GHOST_TEventKeyData::key, wmEvent::keymodifier, KM_ALT, KM_CTRL, KM_NOTHING, KM_OSKEY, KM_PRESS, KM_RELEASE, KM_SHIFT, LEFTMOUSE, MIDDLEMOUSE, wmEvent::modifier, MOUSEMOVE, MOUSEPAN, MOUSEROTATE, MOUSESMARTZOOM, MOUSEZOOM, NDOF_BUTTON_NONE, NDOF_MOTION, wmEvent::prev_type, wmEvent::prev_val, RIGHTMOUSE, SET_FLAG_FROM_TEST, GHOST_TEventTrackpadData::subtype, GHOST_TEventCursorData::tablet, GHOST_TEventButtonData::tablet, wmEvent::tablet, TIMER, type, wmEvent::type, UNLIKELY, GHOST_TEventKeyData::utf8_buf, wmEvent::utf8_buf, wmEvent::val, WHEELDOWNMOUSE, WHEELUPMOUSE, WINDEACTIVATE, wm_event_add(), wm_event_add_mousemove(), wm_event_add_trackpad(), wm_event_cursor_other_windows(), wm_event_is_ignorable_key_press(), WM_EVENT_IS_REPEAT, WM_event_print(), WM_EVENT_SCROLL_INVERT, wm_event_state_update_and_click_set(), wm_eventemulation(), WM_IME_COMPOSITE_END, WM_IME_COMPOSITE_EVENT, WM_IME_COMPOSITE_START, WM_LOG_EVENTS, WM_LOG_HANDLERS, wm_stereo3d_mouse_offset_apply(), wm_tablet_data_from_ghost(), GHOST_TEventCursorData::x, GHOST_TEventTrackpadData::x, wmEvent::xy, GHOST_TEventTrackpadData::y, and GHOST_TEventWheelData::z.
Referenced by ghost_event_proc().
wmEventHandler_Keymap* WM_event_add_keymap_handler | ( | ListBase * | handlers, |
wmKeyMap * | keymap | ||
) |
Definition at line 4243 of file wm_event_system.cc.
References BLI_addtail(), CLOG_WARN, wmEventHandler_Keymap::head, wmEventHandler_Keymap::keymap, LISTBASE_FOREACH, wmEventHandler::type, WM_HANDLER_TYPE_KEYMAP, and WM_LOG_HANDLERS.
Referenced by action_buttons_area_init(), action_channel_region_init(), action_main_region_init(), buttons_main_region_init(), clip_properties_region_init(), clip_tools_region_init(), ed_default_handlers(), ED_region_panels_init(), graph_channel_region_init(), graph_main_region_init(), image_buttons_region_init(), image_main_region_init(), image_tools_region_init(), info_main_region_init(), nla_main_region_init(), blender::ed::space_node::node_buttons_region_init(), blender::ed::space_node::node_main_region_init(), blender::ed::space_node::node_toolbar_region_init(), spreadsheet_main_region_init(), spreadsheet_sidebar_init(), topbar_main_region_init(), view3d_buttons_region_init(), view3d_header_region_init(), view3d_main_region_init(), view3d_tools_region_init(), WM_event_add_keymap_handler_poll(), and wm_window_ghostwindow_ensure().
wmEventHandler_Keymap* WM_event_add_keymap_handler_dynamic | ( | ListBase * | handlers, |
wmEventHandler_KeymapDynamicFn * | keymap_fn, | ||
void * | user_data | ||
) |
Definition at line 4387 of file wm_event_system.cc.
References BLI_addtail(), CLOG_WARN, wmEventHandler_Keymap::dynamic, wmEventHandler_Keymap::head, wmEventHandler_KeymapDynamic::keymap_fn, LISTBASE_FOREACH, wmEventHandler::type, user_data, wmEventHandler_KeymapDynamic::user_data, WM_HANDLER_TYPE_KEYMAP, and WM_LOG_HANDLERS.
Referenced by ed_default_handlers().
wmEventHandler_Keymap* WM_event_add_keymap_handler_poll | ( | ListBase * | handlers, |
wmKeyMap * | keymap, | ||
EventHandlerPoll | poll | ||
) |
Definition at line 4449 of file wm_event_system.cc.
References wmEventHandler_Keymap::head, wmEventHandler::poll, and WM_event_add_keymap_handler().
Referenced by clip_preview_region_init(), ed_default_handlers(), and WM_event_add_keymap_handler_v2d_mask().
wmEventHandler_Keymap* WM_event_add_keymap_handler_priority | ( | ListBase * | handlers, |
wmKeyMap * | keymap, | ||
int | UNUSEDpriority | ||
) |
Definition at line 4416 of file wm_event_system.cc.
References BLI_addhead(), wmEventHandler_Keymap::head, wmEventHandler_Keymap::keymap, wmEventHandler::type, WM_event_remove_keymap_handler(), and WM_HANDLER_TYPE_KEYMAP.
Referenced by UI_popover_end().
wmEventHandler_Keymap* WM_event_add_keymap_handler_v2d_mask | ( | ListBase * | handlers, |
wmKeyMap * | keymap | ||
) |
Definition at line 4462 of file wm_event_system.cc.
References handler_region_v2d_mask_test(), and WM_event_add_keymap_handler_poll().
Referenced by action_channel_region_init(), action_main_region_init(), clip_channels_region_init(), clip_main_region_init(), clip_preview_region_init(), console_main_region_init(), file_execution_region_init(), file_header_region_init(), file_main_region_init(), file_tools_region_init(), file_ui_region_init(), graph_buttons_region_init(), graph_channel_region_init(), graph_main_region_init(), image_main_region_init(), nla_buttons_region_init(), nla_channel_region_init(), nla_main_region_init(), blender::ed::space_node::node_main_region_init(), outliner_main_region_init(), script_main_region_init(), sequencer_buttons_region_init(), sequencer_channel_region_init(), sequencer_main_region_init(), sequencer_preview_region_init(), sequencer_tools_region_init(), text_main_region_init(), and text_properties_region_init().
wmEventHandler_Op* WM_event_add_modal_handler | ( | bContext * | C, |
wmOperator * | op | ||
) |
Definition at line 4181 of file wm_event_system.cc.
References wmEventHandler_Op::area, BLI_addhead(), C, wmEventHandler_Op::context, CTX_wm_area(), CTX_wm_region(), CTX_wm_window(), wmEventHandler_Op::head, wmWindow::modalhandlers, wmOperatorType::modalkeymap, wmEventHandler_Op::op, wmOperator::opm, wmEventHandler_Op::region, wmEventHandler_Op::region_type, ARegion::regiontype, wmOperator::type, wmEventHandler::type, WM_HANDLER_TYPE_OP, and WM_window_status_area_tag_redraw().
Referenced by actionzone_invoke(), add_marker_at_click_invoke(), animchannels_select_filter_invoke(), annotation_draw_invoke(), area_join_invoke(), area_move_invoke(), area_split_invoke(), area_swap_invoke(), bake_invoke(), brush_edit_invoke(), change_frame_invoke(), clip_prefetch_invoke(), console_modal_select_invoke(), curve_draw_invoke(), curve_pen_invoke(), datadropper_invoke(), depthdropper_invoke(), driverdropper_invoke(), dyntopo_detail_size_edit_invoke(), ED_imbuf_sample_invoke(), ed_marker_move_invoke(), edbm_bevel_invoke(), edbm_inset_invoke(), edbm_point_normals_invoke(), eyedropper_colorband_invoke(), eyedropper_gpencil_invoke(), eyedropper_invoke(), face_set_extract_invoke(), fluid_bake_invoke(), fly_invoke(), gizmo_tweak_invoke(), gpencil_draw_invoke(), gpencil_fill_invoke(), gpencil_interpolate_invoke(), gpencil_primitive_invoke(), gpencil_sculpt_brush_invoke(), gpencil_transform_fill_invoke(), gpencil_vertexpaint_brush_invoke(), gpencil_weightpaint_brush_invoke(), grab_clone_invoke(), graph_slider_invoke(), graphview_cursor_invoke(), image_view_pan_init(), image_view_zoom_init(), knifetool_invoke(), light_cache_bake_invoke(), lineart_gpencil_bake_common(), loopcut_init(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_invoke(), minimize_stretch_invoke(), multiresbake_image_exec(), blender::ed::space_node::node_insert_offset_invoke(), blender::ed::space_node::node_link_invoke(), blender::ed::space_node::node_resize_init(), object_transform_axis_target_invoke(), op_generic_value_invoke(), outliner_item_openclose_invoke(), blender::ed::sculpt_paint::image::ops::paint::paint_invoke(), paintcurve_slide_invoke(), pose_slide_invoke_common(), poselib_blend_invoke(), poselib_preview_invoke(), ptcache_bake_invoke(), radial_control_invoke(), region_scale_invoke(), sample_color_invoke(), blender::ed::space_node::sample_invoke(), screen_opengl_render_invoke(), screen_render_invoke(), scroller_activate_invoke(), sculpt_brush_stroke_invoke(), sculpt_cloth_filter_invoke(), sculpt_color_filter_invoke(), blender::ed::sculpt_paint::sculpt_curves_stroke_invoke(), sculpt_expand_invoke(), sculpt_mask_expand_invoke(), sculpt_mesh_filter_invoke(), sculpt_sample_detail_size_invoke(), blender::ed::sculpt_paint::select_grow::select_grow_invoke(), sequencer_slip_invoke(), slide_marker_invoke(), slide_plane_marker_invoke(), slide_point_invoke(), slide_spline_curvature_invoke(), blender::ed::space_node::snode_bg_viewmove_invoke(), solve_camera_invoke(), stencil_control_invoke(), stitch_invoke(), text_autocomplete_invoke(), text_scroll_bar_invoke(), text_scroll_invoke(), text_selection_set_invoke(), track_markers(), transform_invoke(), uv_sculpt_stroke_invoke(), view3d_interactive_add_invoke(), view_edge_pan_invoke(), view_pan_init(), view_pan_invoke(), view_zoom_init(), view_zoomdrag_invoke(), viewdolly_invoke(), viewmove_invoke(), viewroll_invoke(), viewrotate_invoke(), viewzoom_invoke(), voxel_size_edit_invoke(), vpaint_invoke(), walk_invoke(), WM_generic_select_modal(), WM_gesture_box_invoke(), WM_gesture_circle_invoke(), WM_gesture_lasso_invoke(), WM_gesture_lines_invoke(), WM_gesture_straightline_invoke(), wm_xr_navigation_fly_invoke(), wm_xr_navigation_grab_invoke(), wm_xr_navigation_teleport_invoke(), and wpaint_invoke().
Definition at line 4623 of file wm_event_system.cc.
References wmWindow::addmousemove.
Referenced by button_activate_exit(), datadropper_exit(), ED_area_newspace(), ED_area_swapspace(), ed_undo_redo_exec(), ed_undo_refresh_for_op(), ED_view3d_smooth_view_ex(), edbm_polybuild_delete_at_cursor_invoke(), edbm_polybuild_dissolve_at_cursor_invoke(), edbm_polybuild_face_at_cursor_invoke(), edbm_polybuild_split_at_cursor_invoke(), edbm_polybuild_transform_at_cursor_invoke(), edge_pan_apply_delta(), file_select_all_exec(), file_select_exec(), file_view_selected_exec(), file_walk_select_selection_set(), gizmo_arrow_modal(), gizmo_cage2d_modal(), gizmo_cage3d_modal(), poselib_blend_cleanup(), region_flip_exec(), screen_change_update(), ui_but_extra_operator_icon_apply(), ui_button_press_invoke(), ui_do_but_BLOCK(), ui_handle_menu_event(), ui_handler_region_drag_toggle(), UI_pie_menu_end(), UI_popover_end(), ui_popover_panel_create(), UI_popup_block_ex(), UI_popup_block_invoke_ex(), ui_popup_handler(), ui_popup_menu_create(), UI_popup_menu_end(), UI_view2d_edge_pan_cancel(), view2d_smoothview_invoke(), view3d_smoothview_apply_ex(), view_pan_apply_ex(), wm_drags_exit(), wm_exit_schedule_delayed(), wm_gizmomap_modal_set(), and WM_gizmomap_select_all().
Definition at line 5020 of file wm_event_system.cc.
References copy_v2_v2_int(), wmWindow::event_queue, wmWindow::eventstate, wmEvent::flag, INBETWEEN_MOUSEMOVE, ListBase::last, MOUSEMOVE, wmEvent::prev_xy, wmEvent::type, wm_event_add(), and wmEvent::xy.
Referenced by wm_event_add_ghostevent().
Definition at line 5041 of file wm_event_system.cc.
References BLI_addhead(), BLI_remlink(), copy_v2_v2_int(), wmWindow::event_last_handled, wmWindow::event_queue, wmEvent::flag, KM_NOTHING, MOUSEMOVE, wmEvent::prev_xy, wmEvent::type, wmEvent::utf8_buf, wmEvent::val, wm_event_add(), wm_event_custom_clear(), and wmEvent::xy.
Referenced by wm_event_do_handlers().
Definition at line 288 of file wm_event_system.cc.
References C, CTX_wm_manager(), CTX_wm_window(), type, and WM_event_add_notifier_ex().
Referenced by achannel_nlatrack_solo_widget_cb(), achannel_setting_flush_widget_cb(), achannel_setting_slider_cb(), achannel_setting_slider_nla_curve_cb(), achannel_setting_slider_shapekey_cb(), achannel_setting_widget_cb(), act_markers_make_local_exec(), action_circle_select_exec(), action_new_exec(), action_pushdown_exec(), action_stash_create_exec(), action_stash_exec(), actkeys_box_select_exec(), actkeys_clean_exec(), actkeys_clickselect_exec(), actkeys_columnselect_exec(), actkeys_delete_exec(), actkeys_deselectall_exec(), actkeys_duplicate_exec(), actkeys_easing_exec(), actkeys_expo_exec(), actkeys_framejump_exec(), actkeys_handletype_exec(), actkeys_insertkey_exec(), actkeys_ipo_exec(), actkeys_keytype_exec(), actkeys_lassoselect_exec(), actkeys_mirror_exec(), actkeys_paste_exec(), actkeys_previewrange_exec(), actkeys_sample_exec(), actkeys_select_leftright_exec(), actkeys_select_less_exec(), actkeys_select_linked_exec(), actkeys_select_more_exec(), actkeys_snap_exec(), add_default_keyingset_exec(), add_driver_button_invoke(), add_driver_button_none(), add_feather_vertex_exec(), add_keyingset_button_exec(), add_marker_at_click_modal(), add_marker_exec(), add_simple_uvs_exec(), add_vertex_exec(), add_vertex_extrude(), add_vertex_handle_cyclic_at_point(), add_vertex_new(), add_vertex_subdivide(), ANIM_channel_draw_widgets(), anim_set_efra_exec(), anim_set_sfra_exec(), animchannels_box_select_exec(), animchannels_channel_select_keys_invoke(), animchannels_clean_empty_exec(), animchannels_collapse_exec(), animchannels_delete_exec(), animchannels_enable_exec(), animchannels_expand_exec(), animchannels_group_exec(), animchannels_mouseclick_invoke(), animchannels_rearrange_exec(), animchannels_rename_invoke(), animchannels_select_filter_modal(), animchannels_selectall_exec(), animchannels_setflag_exec(), animchannels_ungroup_exec(), annotation_draw_exec(), annotation_draw_invoke(), annotation_draw_modal(), apply_armature_pose2bones_exec(), apply_objects_internal(), area_close_exec(), area_dupli_invoke(), area_join_cancel(), area_join_modal(), area_move_apply_do(), area_split_apply(), area_split_exit(), area_swap_modal(), armature_align_bones_exec(), armature_autoside_names_exec(), armature_bone_layers_exec(), armature_bone_primitive_add_exec(), armature_calc_roll_exec(), armature_click_extrude_exec(), armature_de_select_all_exec(), armature_de_select_less_exec(), armature_de_select_more_exec(), armature_delete_selected_exec(), armature_dissolve_selected_exec(), armature_duplicate_selected_exec(), armature_extrude_exec(), armature_fill_bones_exec(), armature_flip_names_exec(), armature_hide_exec(), armature_layers_exec(), armature_parent_clear_exec(), armature_parent_set_exec(), armature_reveal_exec(), armature_roll_clear_exec(), armature_select_hierarchy_exec(), armature_select_mirror_exec(), armature_shortest_path_pick_invoke(), armature_split_exec(), armature_subdivide_exec(), armature_switch_direction_exec(), armature_symmetrize_exec(), armature_undosys_step_decode(), asset_catalog_redo_exec(), asset_catalog_undo_exec(), asset_library_refresh_exec(), average_islands_scale_exec(), average_tracks_exec(), background_image_add_invoke(), background_image_remove_exec(), bake_image_exec(), bake_invoke(), blend_to_default_exec(), blend_to_default_modal_update(), blend_to_neighbor_exec(), blend_to_neighbor_modal_update(), bone_select_menu_exec(), bookmark_select_exec(), box_select_exec(), box_select_graph_exec(), breakdown_exec(), breakdown_modal_update(), brush_colors_flip_exec(), brush_edit_apply(), brush_reset_exec(), change_frame_apply(), change_frame_seq_preview_end(), childof_clear_inverse_exec(), childof_set_inverse_exec(), circle_select_exec(), clean_tracks_exec(), clear_anim_v3d_exec(), clear_edited_exec(), clear_key_button_exec(), clear_override_library_exec(), clear_render_border_exec(), clear_solution_exec(), clear_tilt_exec(), clear_track_path_exec(), blender::ed::space_node::clear_viewer_border_exec(), click_select_channel_gplayer(), clip_delete_marker(), clip_delete_track(), clip_set_2d_cursor_exec(), clip_set_scene_frames_exec(), collection_add_exec(), collection_create_exec(), collection_drop_invoke(), collection_link_exec(), collection_objects_remove_all_exec(), collection_objects_remove_exec(), collection_remove_exec(), collection_unlink_exec(), connect_hair_exec(), constraint_add_exec(), constraint_apply_exec(), constraint_copy_exec(), constraint_copy_to_selected_exec(), constraint_delete_exec(), constraint_fn(), constraint_move_down_exec(), constraint_move_up_exec(), copy_particle_dupliob_exec(), correctivesmooth_bind_exec(), create_orientation_exec(), create_plane_track_tracks_exec(), create_primitive_from_points(), cube_project_exec(), curve_decimate_exec(), curve_delete_exec(), curve_dissolve_exec(), curve_draw_exec(), curve_extrude_exec(), curve_normals_make_consistent_exec(), curve_pen_modal(), curve_select_less_exec(), curve_select_more_exec(), curve_select_random_exec(), curve_select_similar_exec(), curve_smooth_radius_exec(), curve_smooth_tilt_exec(), curve_smooth_weight_exec(), curve_split_exec(), curve_undosys_step_decode(), blender::ed::curves::disable_selection::curves_disable_selection_exec(), blender::ed::sculpt_paint::curves_sculptmode_enter(), blender::ed::sculpt_paint::curves_sculptmode_toggle_exec(), blender::ed::curves::set_selection_domain::curves_set_selection_domain_exec(), curvesurf_prim_add(), cyclic_toggle_exec(), cylinder_project_exec(), dash_segment_add_exec(), dash_segment_move_exec(), dash_segment_remove_exec(), data_transfer_exec(), datalayout_transfer_exec(), de_select_all_exec(), de_select_first_exec(), de_select_last_exec(), decimate_exec(), decimate_modal_update(), delete_exec(), delete_fmodifier_cb(), delete_key_button_exec(), delete_key_using_keying_set(), delete_key_v3d_without_keying_set(), delete_metaelems_exec(), delete_orientation_exec(), delete_track_exec(), detect_features_exec(), disable_markers_exec(), disconnect_hair_exec(), do_graph_region_driver_buttons(), do_graph_region_modifier_buttons(), do_lasso_select_marker(), do_lasso_select_mask(), blender::ed::space_node::do_lasso_select_node(), do_nla_region_buttons(), do_object_box_select(), do_outliner_item_activate_tree_element(), do_outliner_item_editmode_toggle(), do_outliner_item_posemode_toggle(), do_pose_box_select(), do_preview_buttons(), do_set_scale(), do_uvedit_vertex(), do_view3d_region_buttons(), do_view3d_vgroup_buttons(), dopesheet_select_channel_exec(), draw_channel_labels(), driverdropper_sample(), drop_named_material_invoke(), drop_world_exec(), duplicate_exec(), duplicate_metaelems_exec(), dupliob_move_down_exec(), dupliob_move_up_exec(), dupliob_refresh_exec(), ED_area_newspace(), ED_area_prevspace(), ED_armature_edit_select_pick_bone(), ED_armature_join_objects_exec(), ED_autokeyframe_property(), ED_curve_editfont_select_pick(), ED_curve_editnurb_select_pick(), ED_curve_join_objects_exec(), ED_gpencil_join_objects_exec(), ED_lattice_select_pick(), ed_marker_add_exec(), ed_marker_box_select_exec(), ed_marker_delete_exec(), ed_marker_move_apply(), ed_marker_move_modal(), ed_marker_rename_exec(), ed_marker_select(), ed_marker_select_all_exec(), ed_marker_select_leftright_exec(), ED_mask_deselect_all(), ED_mball_select_pick(), ED_mesh_join_objects_exec(), ED_mesh_shapes_join_objects_exec(), ED_mesh_update(), ED_mesh_uv_loop_reset(), ED_object_add_type_with_obdata(), ED_object_jump_to_object(), ED_object_modifier_link(), ED_object_posemode_enter(), ED_object_posemode_exit(), ED_object_select_linked_by_id(), ed_object_select_pick(), ed_object_select_pick_camera_track(), ED_object_shape_key_add(), ED_outliner_select_sync_from_outliner(), ED_scene_add(), ED_scene_sequencer_add(), ED_screen_animation_play(), ED_screen_animation_timer(), ED_space_clip_set_clip(), ED_space_clip_set_mask(), ED_space_image_set_mask(), ED_undo_gpencil_step(), ed_undo_step_post(), ED_view3d_cursor3d_update(), ED_wpaint_ensure_data(), edbm_delete_exec(), edbm_dupli_extrude_cursor_invoke(), edbm_faces_select_interior_exec(), edbm_loop_multiselect_exec(), edbm_loop_to_region_exec(), edbm_region_to_loop_exec(), edbm_select_all_exec(), edbm_select_axis_exec(), edbm_select_face_by_sides_exec(), edbm_select_less_exec(), edbm_select_linked_exec(), edbm_select_linked_flat_faces_exec(), edbm_select_linked_pick_exec(), edbm_select_linked_pick_invoke(), edbm_select_loose_exec(), edbm_select_mirror_exec(), edbm_select_more_exec(), edbm_select_non_manifold_exec(), EDBM_select_pick(), edbm_select_random_exec(), edbm_select_sharp_edges_exec(), edbm_select_similar_region_exec(), edbm_select_ungrouped_exec(), EDBM_selectmode_set_multi(), EDBM_selectmode_to_scene(), EDBM_selectmode_toggle_multi(), edbm_separate_exec(), edcu_shortest_path_pick_invoke(), EEVEE_lightprobes_cache_finish(), empty_drop_named_image_invoke(), explode_refresh_exec(), face_map_add_exec(), face_map_assign_exec(), face_map_deselect_exec(), face_map_move_exec(), face_map_remove_exec(), face_map_remove_from_exec(), face_map_select_exec(), file_box_select_exec(), file_box_select_modal(), file_column_sort_ui_context_invoke(), file_delete_exec(), file_directory_enter_handle(), file_directory_new_exec(), file_filename_enter_handle(), file_hidedot_exec(), file_next_exec(), file_parent_exec(), file_previous_exec(), file_refresh_exec(), file_select_exec(), file_walk_select_invoke(), filelist_readjob_start(), filepath_drop_exec(), DocumentImporter::finish(), fly_modal(), fmodifier_reorder(), followpath_path_animate_exec(), font_undosys_step_decode(), forcefield_toggle_exec(), frame_jump_exec(), frame_offset_exec(), geometry_extract_apply(), geometry_node_tree_copy_assign_exec(), geometry_nodes_input_attribute_toggle_exec(), ghost_event_proc(), gpencil_actframe_delete_all_exec(), gpencil_actframe_delete_exec(), gpencil_bake_grease_pencil_animation_exec(), gpencil_blank_frame_add_exec(), gpencil_circle_select_exec(), gpencil_convert_layer_exec(), gpencil_convert_old_files_exec(), gpencil_cutter_lasso_select(), gpencil_data_add_exec(), gpencil_data_unlink_exec(), gpencil_delete_selected_points(), gpencil_delete_selected_strokes(), gpencil_dissolve_selected_points(), gpencil_draw_exec(), gpencil_draw_invoke(), gpencil_draw_modal(), gpencil_duplicate_exec(), gpencil_editcurve_set_handle_type_exec(), gpencil_editmode_toggle_exec(), gpencil_extrude_exec(), gpencil_fill_exit(), gpencil_fill_invoke(), gpencil_fill_modal(), gpencil_frame_clean_duplicate_exec(), gpencil_frame_clean_fill_exec(), gpencil_frame_clean_loose_exec(), gpencil_frame_duplicate_exec(), gpencil_generate_weights_exec(), gpencil_generic_select_exec(), gpencil_guide_event_handling(), gpencil_hide_exec(), gpencil_hideselect_toggle_exec(), gpencil_interpolate_exit(), gpencil_interpolate_invoke(), gpencil_interpolate_reverse_exec(), gpencil_interpolate_seq_exec(), gpencil_interpolate_update_strokes(), gpencil_isolate_layer_exec(), gpencil_layer_active_exec(), gpencil_layer_add_exec(), gpencil_layer_change_exec(), gpencil_layer_copy_exec(), gpencil_layer_duplicate_object_exec(), gpencil_layer_mask_add_exec(), gpencil_layer_mask_move_exec(), gpencil_layer_mask_remove_exec(), gpencil_layer_move_exec(), gpencil_layer_remove_exec(), gpencil_lock_all_exec(), gpencil_lock_layer_exec(), gpencil_material_hide_exec(), gpencil_material_isolate_exec(), gpencil_material_lock_all_exec(), gpencil_material_lock_unsused_exec(), gpencil_material_reveal_exec(), gpencil_material_select_exec(), gpencil_material_set_exec(), gpencil_material_to_vertex_exec(), gpencil_material_unlock_all_exec(), gpencil_materials_copy_to_object_exec(), gpencil_merge_by_distance_exec(), gpencil_merge_layer_exec(), gpencil_modifier_add_exec(), gpencil_modifier_apply_exec(), gpencil_modifier_copy_exec(), gpencil_modifier_copy_to_selected_exec(), gpencil_modifier_move_down_exec(), gpencil_modifier_move_up_exec(), gpencil_modifier_remove_exec(), gpencil_paintmode_toggle_exec(), gpencil_primitive_exit(), gpencil_primitive_invoke(), gpencil_primitive_update_strokes(), gpencil_recalc_geometry_exec(), gpencil_reset_transform_fill_exec(), gpencil_reveal_exec(), gpencil_sculpt_brush_apply(), gpencil_sculpt_brush_init_stroke(), gpencil_sculpt_brush_modal(), gpencil_sculptmode_toggle_exec(), gpencil_select_all_exec(), gpencil_select_alternate_exec(), gpencil_select_exec(), gpencil_select_first_exec(), gpencil_select_grouped_exec(), gpencil_select_last_exec(), gpencil_select_less_exec(), gpencil_select_linked_exec(), gpencil_select_more_exec(), gpencil_select_random_exec(), gpencil_select_vertex_color_exec(), gpencil_selectmode_toggle_exec(), gpencil_session_init_fill(), gpencil_session_initdata(), gpencil_set_active_material_exec(), gpencil_snap_cursor_to_sel(), gpencil_snap_to_cursor(), gpencil_snap_to_grid(), gpencil_stroke_apply_thickness_exec(), gpencil_stroke_arrange_exec(), gpencil_stroke_caps_set_exec(), gpencil_stroke_change_color_exec(), gpencil_stroke_cyclical_set_exec(), gpencil_stroke_enter_editcurve_mode_exec(), gpencil_stroke_flip_exec(), gpencil_stroke_join_exec(), gpencil_stroke_merge_exec(), gpencil_stroke_merge_material_exec(), gpencil_stroke_normalize_exec(), gpencil_stroke_path_animation(), gpencil_stroke_reset_vertex_color_exec(), gpencil_stroke_sample_exec(), gpencil_stroke_separate_exec(), gpencil_stroke_simplify_exec(), gpencil_stroke_simplify_fixed_exec(), gpencil_stroke_smooth_exec(), gpencil_stroke_split_exec(), gpencil_stroke_subdivide_exec(), gpencil_stroke_trim_exec(), gpencil_strokes_copy_exec(), gpencil_strokes_paste_exec(), gpencil_strokes_reproject_exec(), gpencil_unlock_all_exec(), gpencil_update_extend(), gpencil_uv_transform_calc(), gpencil_vertex_group_assign_exec(), gpencil_vertex_group_deselect_exec(), gpencil_vertex_group_invert_exec(), gpencil_vertex_group_normalize_all_exec(), gpencil_vertex_group_normalize_exec(), gpencil_vertex_group_remove_from_exec(), gpencil_vertex_group_select_exec(), gpencil_vertex_group_smooth_exec(), gpencil_vertexmode_toggle_exec(), gpencil_vertexpaint_brightness_contrast_exec(), gpencil_vertexpaint_brush_apply(), gpencil_vertexpaint_brush_modal(), gpencil_vertexpaint_hsv_exec(), gpencil_vertexpaint_invert_exec(), gpencil_vertexpaint_levels_exec(), gpencil_vertexpaint_set_exec(), gpencil_weightmode_toggle_exec(), gpencil_weightpaint_brush_apply(), gpencil_weightpaint_brush_modal(), graph_circle_select_exec(), graph_disable_markers_exec(), graph_driver_delete_invalid_exec(), graph_driver_vars_paste_exec(), graph_fmodifier_add_exec(), graph_fmodifier_paste_exec(), graph_select_all_markers_exec(), graph_slider_modal(), graphkeys_bake_exec(), graphkeys_box_select_exec(), graphkeys_clean_exec(), graphkeys_click_insert_exec(), graphkeys_clickselect_exec(), graphkeys_columnselect_exec(), graphkeys_delete_exec(), graphkeys_deselectall_exec(), graphkeys_duplicate_exec(), graphkeys_easing_exec(), graphkeys_equalize_handles_exec(), graphkeys_euler_filter_exec(), graphkeys_expo_exec(), graphkeys_framejump_exec(), graphkeys_handletype_exec(), graphkeys_insertkey_exec(), graphkeys_ipo_exec(), graphkeys_lassoselect_exec(), graphkeys_mirror_exec(), graphkeys_paste_exec(), graphkeys_previewrange_exec(), graphkeys_sample_exec(), graphkeys_select_leftright_exec(), graphkeys_select_less_exec(), graphkeys_select_linked_exec(), graphkeys_select_more_exec(), graphkeys_smooth_exec(), graphkeys_snap_exec(), graphkeys_unbake_exec(), graphview_cursor_apply(), graphview_cursor_modal(), graphview_curves_hide_exec(), graphview_curves_reveal_exec(), group_move_exec(), group_sort_exec(), header_toggle_menus_exec(), hide_exec(), hide_metaelems_exec(), hide_tracks_clear_exec(), hide_tracks_exec(), id_delete_tag(), id_override_library_resync_hierarchy_process(), image_add_render_slot_exec(), image_clear_render_slot_exec(), image_cycle_render_slot_exec(), image_flip_exec(), image_invert_exec(), image_multi_cb(), image_multiview_cb(), image_new_exec(), image_open_exec(), image_pack_exec(), image_read_viewlayers_exec(), image_reload_exec(), image_remove_render_slot_exec(), image_replace_exec(), image_sample_apply(), image_scale_exec(), image_unpack_exec(), insert_key_button_exec(), insert_key_exec(), join_tracks_exec(), keyframe_jump_exec(), keyframe_set_flag(), keyingset_active_menu_exec(), laplaciandeform_bind_exec(), lattice_flip_exec(), lattice_select_all_exec(), lattice_select_mirror_exec(), lattice_select_more_less(), lattice_select_random_exec(), lattice_select_ungrouped_exec(), lattice_undosys_step_decode(), lib_id_generate_preview_exec(), lib_id_generate_preview_from_object_exec(), lib_id_load_custom_preview_exec(), light_cache_bake_exec(), light_cache_free_exec(), limitdistance_reset_exec(), lineart_gpencil_bake_startjob(), lineart_gpencil_clear_strokes_all_exec(), lineart_gpencil_clear_strokes_exec(), localview_exec(), localview_remove_from_exec(), lock_selection_toggle_exec(), lock_tracks_exec(), loop_to_vertex_colors_exec(), make_links_data_exec(), make_links_scene_exec(), make_local_exec(), make_override_library_exec(), make_prim_finish(), make_regular_exec(), make_segment_exec(), make_single_user_exec(), marker_block_handler(), marker_jump_exec(), marker_update_cb(), mask_duplicate_exec(), mask_feather_weight_clear_exec(), mask_hide_view_clear_exec(), mask_hide_view_set_exec(), mask_layer_move_exec(), mask_layer_new_exec(), mask_layer_remove_exec(), mask_new_exec(), mask_normals_make_consistent_exec(), mask_parent_clear_exec(), mask_parent_set_exec(), mask_select_linked_exec(), mask_select_linked_pick_invoke(), mask_select_more_less(), mask_shape_key_clear_exec(), mask_shape_key_feather_reset_exec(), mask_shape_key_insert_exec(), mask_shape_key_rekey_exec(), mask_switch_direction_exec(), match_texture_space_exec(), material_drop_invoke(), material_slot_add_exec(), material_slot_assign_exec(), material_slot_copy_exec(), material_slot_de_select(), material_slot_move_exec(), material_slot_remove_exec(), material_slot_remove_unused_exec(), mball_select_all_exec(), mball_select_similar_exec(), mball_undosys_step_decode(), memfile_undosys_step_decode(), mesh_customdata_clear_exec__internal(), mesh_customdata_custom_splitnormals_add_exec(), mesh_customdata_skin_add_exec(), mesh_undosys_step_decode(), mesh_uv_texture_add_exec(), mesh_uv_texture_remove_exec(), meshdeform_bind_exec(), minimize_stretch_exit(), minimize_stretch_iteration(), mirror_exec(), mode_set_exec(), modifier_add_exec(), modifier_apply_exec_ex(), modifier_convert_exec(), modifier_copy_exec(), modifier_copy_to_selected_exec(), modifier_fn(), modifier_move_down_exec(), modifier_move_up_exec(), modifier_remove_exec(), modifier_set_active_exec(), mouse_mesh_loop(), mouse_select(), move_lines_exec(), move_to_collection_exec(), multires_base_apply_exec(), multires_higher_levels_delete_exec(), multires_rebuild_subdiv_exec(), multires_reshape_exec(), multires_subdivide_exec(), multires_unsubdivide_exec(), namebutton_fn(), new_image_from_plane_marker_exec(), new_material_exec(), blender::ed::space_node::new_node_tree_exec(), new_particle_settings_exec(), new_particle_target_exec(), new_texture_exec(), new_world_exec(), nla_fmodifier_add_exec(), nla_fmodifier_paste_exec(), nlachannels_mouseclick_invoke(), nlachannels_pushdown_exec(), nlaedit_add_actionclip_exec(), nlaedit_add_meta_exec(), nlaedit_add_sound_exec(), nlaedit_add_tracks_exec(), nlaedit_add_transition_exec(), nlaedit_apply_scale_exec(), nlaedit_box_select_exec(), nlaedit_clear_scale_exec(), nlaedit_clickselect_exec(), nlaedit_delete_exec(), nlaedit_delete_tracks_exec(), nlaedit_deselectall_exec(), nlaedit_duplicate_exec(), nlaedit_enable_tweakmode_exec(), nlaedit_make_single_user_exec(), nlaedit_move_down_exec(), nlaedit_move_up_exec(), nlaedit_objects_add_exec(), nlaedit_previewrange_exec(), nlaedit_remove_meta_exec(), nlaedit_select_leftright_exec(), nlaedit_snap_exec(), nlaedit_split_exec(), nlaedit_swap_exec(), nlaedit_sync_actlen_exec(), nlaedit_toggle_mute_exec(), blender::ed::space_node::node_add_file_exec(), blender::ed::space_node::node_attach_invoke(), blender::ed::space_node::node_box_select_exec(), blender::ed::space_node::node_circleselect_exec(), blender::ed::space_node::node_copy_color_exec(), blender::ed::space_node::node_detach_exec(), blender::ed::space_node::node_group_edit_exec(), blender::ed::space_node::node_group_make_exec(), blender::ed::space_node::node_hide_toggle_exec(), blender::ed::space_node::node_join_exec(), blender::ed::space_node::node_mouse_select(), blender::ed::space_node::node_options_toggle_exec(), blender::ed::space_node::node_parent_set_exec(), blender::ed::space_node::node_select_all_exec(), blender::ed::space_node::node_select_grouped_exec(), blender::ed::space_node::node_select_linked_from_exec(), blender::ed::space_node::node_select_linked_to_exec(), blender::ed::space_node::node_select_single(), blender::ed::space_node::node_socket_toggle_exec(), blender::ed::space_node::ntree_socket_add_exec(), blender::ed::space_node::ntree_socket_change_type_exec(), blender::ed::space_node::ntree_socket_move_exec(), blender::ed::space_node::ntree_socket_remove_exec(), object_add_hook_newob_exec(), object_add_hook_selob_exec(), object_add_named_exec(), object_calculate_paths_exec(), object_clear_paths_exec(), object_clear_transform_generic_exec(), object_constraint_copy_exec(), object_constraints_clear_exec(), object_convert_exec(), object_delete_exec(), object_duplicates_make_real_exec(), object_gpencil_add_exec(), object_hide_collection_exec(), object_hide_view_clear_exec(), object_hide_view_set_exec(), object_hook_assign_exec(), object_hook_recenter_exec(), object_hook_remove_exec(), object_hook_reset_exec(), object_hook_select_exec(), object_metaball_add_exec(), object_origin_clear_exec(), object_origin_set_exec(), object_parent_inverse_apply_exec(), object_rand_verts_exec(), object_select_all_exec(), object_select_by_type_exec(), object_select_grouped_exec(), object_select_less_exec(), object_select_linked_exec(), object_select_menu_exec(), object_select_mirror_exec(), object_select_more_exec(), object_select_random_exec(), object_select_same_collection_exec(), object_shape_key_mirror(), object_speaker_add_exec(), object_track_clear_exec(), object_transfer_mode_to_base(), object_transform_axis_target_cancel(), object_transform_axis_target_modal(), object_update_all_paths_exec(), object_update_paths_exec(), object_warp_verts_exec(), objects_add_active_exec(), objects_bake_render_invoke(), objects_remove_active_exec(), objectsolver_clear_inverse_exec(), objectsolver_set_inverse_exec(), ocean_bake_exec(), open_exec(), outliner_action_set_exec(), outliner_animdata_operation_exec(), outliner_box_select_exec(), outliner_buttons(), outliner_color_tag_set_exec(), outliner_data_operation_exec(), outliner_delete_exec(), outliner_drivers_addsel_exec(), outliner_drivers_deletesel_exec(), outliner_id_operation_exec(), outliner_id_paste_exec(), outliner_id_remap_exec(), outliner_keyingset_additems_exec(), outliner_keyingset_removeitems_exec(), outliner_lib_operation_exec(), outliner_liboverride_operation_exec(), outliner_object_operation_exec(), outliner_orphans_purge_exec(), outliner_select_all_exec(), override_idtemplate_clear_exec(), override_idtemplate_make_exec(), paint_2d_bucket_fill(), paint_2d_gradient_fill(), paint_2d_redraw(), paint_mask_slice_exec(), paint_proj_redraw(), paint_weight_gradient_exec(), paint_weight_gradient_modal(), paintcurve_cursor_invoke(), paintcurve_new_exec(), paintface_flush_flags(), paintvert_tag_select_update(), palette_color_move_exec(), palette_join_exec(), palette_sort_exec(), parent_clear_exec(), parent_clear_invoke(), parent_drop_set_parents(), parent_noinv_set_exec(), parent_set_exec(), particle_system_add_exec(), particle_system_remove_exec(), paste_driver_button_exec(), paste_material_exec(), paste_mtex_exec(), paste_splines_exec(), paste_tracks_exec(), PE_box_select(), PE_circle_select(), PE_lasso_select(), PE_mouse_particles(), pe_select_all_exec(), pose_armature_layers_showall_exec(), pose_autoside_names_exec(), pose_bone_layers_exec(), pose_bone_rotmode_exec(), pose_calculate_paths_exec(), pose_clear_paths_exec(), pose_clear_transform_generic_exec(), pose_clear_user_transforms_exec(), pose_constraint_copy_exec(), pose_constraints_clear_exec(), pose_de_select_all_exec(), pose_flip_names_exec(), pose_flip_quats_exec(), pose_group_add_exec(), pose_group_assign_exec(), pose_group_deselect_exec(), pose_group_remove_exec(), pose_group_select_exec(), pose_group_unassign_exec(), pose_hide_exec(), pose_ik_clear_exec(), pose_paste_exec(), pose_reveal_exec(), pose_select_mirror_exec(), pose_update_paths_exec(), pose_update_paths_range_exec(), pose_visual_transform_apply_exec(), poseAnim_mapping_refresh(), poselib_blend_apply(), poselib_blend_cleanup(), poselib_keytag_pose(), poselib_move_exec(), poselib_new_exec(), poselib_preview_apply(), poselib_preview_cleanup(), poselib_remove_exec(), poselib_rename_exec(), poselib_sanitize_exec(), poselib_unlink_exec(), preferences_reset_default_theme_exec(), previewrange_clear_exec(), previewrange_define_exec(), proj_paint_add_slot(), ptcache_add_new_exec(), ptcache_bake_from_cache_exec(), ptcache_free_bake_all_exec(), ptcache_free_bake_exec(), ptcache_remove_exec(), pyrna_struct_driver_add(), pyrna_struct_driver_remove(), pyrna_struct_keyframe_insert(), radial_control_cancel(), refine_marker_exec(), region_flip_exec(), region_quadview_exec(), region_scale_modal(), rekey_exec(), reload_exec(), remove_active_keyingset_exec(), remove_doubles_exec(), remove_driver_button_exec(), remove_keyingset_button_exec(), remove_particle_dupliob_exec(), remove_particle_target_exec(), render_border_exec(), render_view_add_exec(), render_view_remove_exec(), reset_exec(), reset_override_library_exec(), restrictbutton_bone_select_fn(), restrictbutton_ebone_select_fn(), restrictbutton_ebone_visibility_fn(), restrictbutton_gp_layer_flag_fn(), restrictbutton_r_lay_fn(), reveal_exec(), reveal_metaelems_exec(), rigidbody_con_add_exec(), rigidbody_con_remove_exec(), rigidbody_object_add_exec(), rigidbody_object_remove_exec(), rigidbody_objects_add_exec(), rigidbody_objects_calc_mass_exec(), rigidbody_objects_remove_exec(), rigidbody_objects_shape_change_exec(), ringsel_finish(), row_filter_add_exec(), row_filter_remove_exec(), sample_color_exec(), sample_color_invoke(), sample_color_modal(), scene_delete_exec(), scene_fn(), screen_animation_cancel_exec(), screen_change_update(), screen_delete_exec(), screen_new_exec(), screen_opengl_render_end(), screen_opengl_render_exec(), screen_opengl_render_modal(), screen_render_exec(), screen_render_invoke(), sculpt_detail_flood_fill_exec(), sculpt_dirty_mask_exec(), sculpt_expand_reposition_pivot(), sculpt_face_set_edit_modify_geometry(), sculpt_mask_expand_modal(), sculpt_mode_toggle_exec(), sculpt_optimize_exec(), sculpt_sample_color_invoke(), sculpt_set_pivot_position_exec(), sculpt_stroke_done(), sculpt_symmetrize_exec(), SCULPT_tag_update_overlays(), sculpt_undo_restore_coords(), blender::ed::curves::select_all::select_all_exec(), select_all_exec(), blender::ed::sculpt_paint::select_end::select_end_exec(), select_exec(), select_grouped_exec(), blender::ed::sculpt_paint::select_grow::select_grow_modal(), blender::ed::sculpt_paint::select_grow::select_grow_update(), select_less_exec(), select_linked_exec(), select_linked_pick_exec(), select_linked_pick_invoke(), select_marker_camera_switch(), select_more_exec(), select_next_exec(), select_nth_exec(), select_orientation_exec(), select_previous_exec(), select_random_exec(), blender::ed::sculpt_paint::select_random::select_random_exec(), select_random_metaelems_exec(), select_roots_exec(), select_row_exec(), select_similar_children(), select_similar_children_immediate(), select_similar_data_pchan(), select_similar_direction(), select_similar_layer(), select_similar_length(), select_similar_prefix(), select_similar_siblings(), select_similar_suffix(), select_tips_exec(), separate_armature_exec(), separate_exec(), seq_prefetch_wm_notify(), sequencer_add_duplicate_exec(), sequencer_add_effect_strip_exec(), sequencer_add_image_strip_exec(), sequencer_add_mask_strip_exec(), sequencer_add_movie_strip_exec(), sequencer_add_movieclip_strip_exec(), sequencer_add_scene_strip_exec(), sequencer_add_scene_strip_new_exec(), sequencer_add_sound_strip_exec(), sequencer_change_effect_input_exec(), sequencer_change_effect_type_exec(), sequencer_change_path_exec(), sequencer_change_scene_exec(), sequencer_de_select_all_exec(), sequencer_delete_exec(), sequencer_delete_strip_data(), sequencer_enable_proxies_exec(), sequencer_gap_insert_exec(), sequencer_gap_remove_exec(), sequencer_lock_exec(), sequencer_meta_make_exec(), sequencer_meta_separate_exec(), sequencer_meta_toggle_exec(), sequencer_mute_exec(), sequencer_offset_clear_exec(), sequencer_paste_exec(), sequencer_reassign_inputs_exec(), sequencer_refresh_all_exec(), sequencer_reload_exec(), sequencer_rename_channel_invoke(), sequencer_rendersize_exec(), sequencer_select_do_updates(), sequencer_select_grouped_exec(), sequencer_select_handles_exec(), sequencer_select_inverse_exec(), sequencer_select_less_exec(), sequencer_select_linked_exec(), sequencer_select_linked_pick_invoke(), sequencer_select_more_exec(), sequencer_select_side_exec(), sequencer_select_side_of_frame_exec(), sequencer_separate_images_exec(), sequencer_set_2d_cursor_exec(), sequencer_set_range_to_strips_exec(), sequencer_slip_exec(), sequencer_slip_invoke(), sequencer_slip_modal(), sequencer_snap_exec(), sequencer_split_exec(), sequencer_strip_color_tag_set_exec(), sequencer_strip_jump_exec(), sequencer_strip_transform_clear_exec(), sequencer_strip_transform_fit_exec(), sequencer_swap_data_exec(), sequencer_swap_exec(), sequencer_swap_inputs_exec(), sequencer_thumbnail_init_job(), sequencer_thumbnail_start_job_if_necessary(), sequencer_unlock_exec(), sequencer_unmute_exec(), set_active_group_exec(), set_axis_exec(), set_center_principal_exec(), set_goal_weight_exec(), set_handle_type_exec(), set_origin_exec(), set_plane_exec(), set_radius_exec(), set_solver_keyframe_exec(), set_spline_type_exec(), set_style(), shade_smooth_exec(), shaderfx_add_exec(), shaderfx_move_down_exec(), shaderfx_move_up_exec(), shaderfx_remove_exec(), shape_cut_exec(), shape_key_clear_exec(), shape_key_move_exec(), shape_key_remove_exec(), shape_key_retime_exec(), skin_armature_create_exec(), skin_loose_mark_clear_exec(), skin_radii_equalize_exec(), skin_root_mark_exec(), slide_marker_invoke(), slide_marker_modal(), slide_plane_marker_invoke(), slide_plane_marker_modal(), slide_point_customdata(), slide_point_invoke(), slide_point_modal(), slide_spline_curvature_invoke(), slide_spline_curvature_modal(), smooth_exec(), snap_curs_to_active_exec(), snap_curs_to_center_exec(), snap_curs_to_grid_exec(), snap_curs_to_sel_exec(), blender::ed::curves::snap_curves_to_surface::snap_curves_to_surface_exec(), snap_sel_to_grid_exec(), snap_selected_to_location(), solve_camera_invoke(), sort_bmelem_flag(), space_workspace_cycle_invoke(), special_aftertrans_update__mask(), special_aftertrans_update__movieclip(), special_aftertrans_update__nla(), sphere_project_exec(), spin_exec(), stabilize_2d_add_exec(), stabilize_2d_remove_exec(), stabilize_2d_rotation_add_exec(), stabilize_2d_rotation_remove_exec(), stabilize_2d_rotation_select_exec(), stabilize_2d_select_exec(), stencil_control_modal(), stencil_fit_image_aspect_exec(), stencil_reset_transform_exec(), stitch_exit(), stitch_invoke(), stretchto_reset_exec(), strip_modifier_add_exec(), strip_modifier_copy_exec(), strip_modifier_move_exec(), strip_modifier_remove_exec(), subdivide_exec(), blender::ed::curves::surface_set::surface_set_exec(), surface_slot_remove_exec(), surfacedeform_bind_exec(), switch_direction_exec(), target_move_down_exec(), target_move_up_exec(), template_id_cb(), template_texture_select(), text_comment_exec(), text_convert_whitespace_exec(), text_cursor_set_apply(), text_cursor_set_exec(), text_cursor_set_exit(), text_cut_exec(), text_delete_exec(), text_duplicate_line_exec(), text_find_and_replace(), text_indent_exec(), text_insert_exec(), text_jump_exec(), text_line_break_exec(), text_line_number_invoke(), text_make_internal_exec(), text_move_cursor(), text_new_exec(), text_open_exec(), text_paste_exec(), text_properties_region_draw(), text_reload_exec(), text_replace_all(), text_run_script(), text_save_as_exec(), text_save_exec(), text_select_all_exec(), text_select_line_exec(), text_select_word_exec(), text_toggle_overwrite_exec(), text_undosys_step_decode(), text_unindent_exec(), text_unlink_exec(), text_update_edited(), textbox_add_exec(), textbox_remove_exec(), texture_paint_camera_project_exec(), blender::ed::sculpt_paint::image::ops::paint::texture_paint_init(), texture_slot_move_exec(), tile_add_exec(), tile_fill_exec(), tile_remove_exec(), toggle_cyclic_exec(), toggle_matcap_flip(), toggle_shading_exec(), toggle_xray_exec(), track_copy_color_exec(), track_set_exec(), tracking_object_new_exec(), tracking_object_remove_exec(), transform_exec(), tree_element_active_ebone__sel(), tree_element_bone_activate(), tree_element_camera_activate(), tree_element_constraint_activate(), tree_element_defgroup_activate(), tree_element_gplayer_activate(), tree_element_material_activate(), tree_element_modifier_activate(), tree_element_object_activate(), tree_element_posechannel_activate(), tree_element_posegroup_activate(), tree_element_psys_activate(), tree_element_sequence_activate(), tree_element_viewlayer_activate(), txt_add_object(), type_toggle_exec(), ui_apply_but_autokey(), ui_but_anim_expression_create(), ui_but_anim_expression_set(), ui_drop_material_exec(), ui_imageuser_layer_menu_step(), ui_imageuser_pass_menu_step(), ui_imageuser_slot_menu_step(), ui_numedit_but_TRACKPREVIEW(), ui_template_id_liboverride_hierarchy_make(), undo_history_exec(), unify_length_exec(), update_autoflags_fcurve(), update_image_from_plane_marker_exec(), update_reports_display_invoke(), uv_from_view_exec(), uv_hide_exec(), uv_mark_seam_exec(), uv_pin_exec(), uv_remove_doubles_to_selected(), uv_remove_doubles_to_unselected(), uv_reveal_exec(), uv_rip_exec(), uv_sculpt_stroke_modal(), uv_seams_from_islands_exec(), uv_select_linked_internal(), uv_select_more_less(), uv_select_split_exec(), uv_set_2d_cursor_exec(), uv_snap_cursor_exec(), uv_snap_selection_exec(), uv_weld_align(), vertex_color_brightness_contrast_exec(), vertex_color_hsv_exec(), vertex_color_invert_exec(), vertex_color_levels_exec(), vertex_color_set_exec(), vertex_color_smooth_exec(), vertex_group_add_exec(), vertex_group_assign_exec(), vertex_group_clean_exec(), vertex_group_copy_exec(), vertex_group_copy_to_selected_exec(), vertex_group_deselect_exec(), vertex_group_fix_exec(), vertex_group_invert_exec(), vertex_group_levels_exec(), vertex_group_limit_total_exec(), vertex_group_lock_exec(), vertex_group_mirror_exec(), vertex_group_normalize_all_exec(), vertex_group_normalize_exec(), vertex_group_quantize_exec(), vertex_group_remove_exec(), vertex_group_remove_from_exec(), vertex_group_select_exec(), vertex_group_smooth_exec(), vertex_group_sort_exec(), vertex_paint_from_weight_exec(), vertex_parent_set_exec(), vertex_to_loop_colors_exec(), vertex_weight_copy_exec(), vertex_weight_delete_exec(), vertex_weight_normalize_active_vertex_exec(), vertex_weight_paste_exec(), vertex_weight_set_active_exec(), vgroup_move_exec(), view3d_box_select_exec(), view3d_camera_to_view_exec(), view3d_camera_to_view_selected_exec(), view3d_center_camera_exec(), view3d_center_lock_exec(), view3d_circle_select_exec(), view3d_collection_drop_copy_external_asset(), view3d_lasso_select(), view3d_ob_drop_copy_external_asset(), view3d_pastebuffer_exec(), view3d_select_exec(), view3d_setobjectascamera_exec(), view3d_smoothview_apply_ex(), view3d_zoom_1_to_1_camera_exec(), view_cursor_center_exec(), view_ghost_border_exec(), view_layer_add_aov_exec(), view_layer_add_exec(), view_layer_add_lightgroup_exec(), view_layer_add_used_lightgroups_exec(), view_layer_remove_aov_exec(), view_layer_remove_exec(), view_layer_remove_lightgroup_exec(), view_layer_remove_unused_lightgroups_exec(), view_lock_clear_exec(), view_lock_to_active_exec(), view_zoomdrag_apply(), view_zoomstep_apply_ex(), blender::ed::space_node::viewer_border_exec(), viewRedrawForce(), viewRedrawPost(), visual_transform_apply_exec(), voxel_remesh_exec(), voxel_size_edit_modal(), vpaint_mode_toggle_exec(), vpaint_stroke_done(), walk_modal(), weight_from_bones_exec(), weight_sample_group_exec(), weight_set_exec(), wm_debug_menu_exec(), wm_event_do_handlers(), wm_event_do_notifiers(), wm_file_read_opwrap(), wm_file_read_post(), WM_lib_reload(), wm_lib_relocate_exec_do(), wm_link_append_exec(), wm_operator_register(), wm_operator_reports(), wm_save_as_mainfile_exec(), wm_stereo3d_set_exec(), wm_userpref_read_exec(), wm_window_close(), WM_window_set_active_scene(), wm_xr_session_toggle_exec(), workspace_append_activate_exec(), workspace_delete_exec(), workspace_new_exec(), workspace_reorder_to_back_exec(), workspace_reorder_to_front_exec(), workspace_scene_pin_toggle(), wpaint_mode_toggle_exec(), wpaint_stroke_done(), and wpaint_stroke_update_step().
void WM_event_add_notifier_ex | ( | wmWindowManager * | wm, |
const wmWindow * | win, | ||
uint | type, | ||
void * | reference | ||
) |
Definition at line 267 of file wm_event_system.cc.
References wmNotifier::action, BLI_addtail(), wmNotifier::category, wmNotifier::data, NOTE_ACTION, NOTE_CATEGORY, NOTE_DATA, NOTE_SUBTYPE, wmWindowManager::notifier_queue, wmNotifier::reference, wmNotifier::subtype, type, wmNotifier::window, and wm_test_duplicate_notifier().
Referenced by asset_catalog_delete_exec(), asset_catalog_new_exec(), asset_catalogs_save_exec(), file_draw_list(), WM_event_add_notifier(), wm_jobs_timer(), and wm_window_copy_test().
Definition at line 139 of file wm_event_system.cc.
References BLI_assert_unreachable, copy_v2_v2_int(), wmWindow::eventstate, G, G_FLAG_EVENT_SIMULATE, ISKEYBOARD, ISKEYBOARD_OR_BUTTON, MOUSEMOVE, wmEvent::prev_xy, wm_event_add(), wm_event_state_update_and_click_set_ex(), and wmEvent::xy.
|
static |
Definition at line 5073 of file wm_event_system.cc.
References wmWindow::event_queue, ListBase::last, wmEvent::prev_xy, wmEvent::type, wm_event_add(), wm_event_free_last(), and wmEvent::xy.
Referenced by wm_event_add_ghostevent().
wmEventHandler_UI* WM_event_add_ui_handler | ( | const bContext * | C, |
ListBase * | handlers, | ||
wmUIHandlerFunc | handle_fn, | ||
wmUIHandlerRemoveFunc | remove_fn, | ||
void * | user_data, | ||
const char | flag | ||
) |
Definition at line 4491 of file wm_event_system.cc.
References wmEventHandler_UI::area, BLI_addhead(), BLI_assert, C, wmEventHandler_UI::context, CTX_wm_area(), CTX_wm_menu(), CTX_wm_region(), wmEventHandler::flag, wmEventHandler_UI::handle_fn, wmEventHandler_UI::head, wmEventHandler_UI::menu, wmEventHandler_UI::region, wmEventHandler_UI::remove_fn, wmEventHandler::type, user_data, wmEventHandler_UI::user_data, WM_HANDLER_DO_FREE, and WM_HANDLER_TYPE_UI.
Referenced by button_activate_state(), panel_handle_data_ensure(), ui_but_drag_init(), ui_panel_drag_collapse_handler_add(), UI_popup_handlers_add(), UI_region_handlers_add(), wm_exit_schedule_delayed(), and WM_operator_name_call_ptr_with_depends_on_cursor().
|
static |
Definition at line 660 of file wm_event_system.cc.
References ISTIMER, wmEvent::type, and WINDEACTIVATE.
Referenced by wm_event_do_handlers_area_regions(), wm_event_handler_return_value_check(), wm_event_inside_rect(), wm_handler_operator_call(), wm_handler_ui_call(), and wm_handlers_do_intern().
|
static |
Definition at line 4948 of file wm_event_system.cc.
References copy_v2_v2_int(), ELEM, ListBase::first, GHOST_SupportsWindowPosition(), ListBase::last, LISTBASE_FOREACH, wmWindow::modalhandlers, UNPACK2, wmWindowManager::windows, WM_HANDLER_TYPE_OP, WM_HANDLER_TYPE_UI, WM_window_find_under_cursor(), WM_window_pixels_x(), WM_window_pixels_y(), and wmEvent::xy.
Referenced by wm_event_add_ghostevent().
|
static |
Definition at line 5770 of file wm_event_system.cc.
References state.
Referenced by WM_window_cursor_keymap_status_refresh().
Definition at line 177 of file wm_event_system.cc.
Referenced by wm_event_add_mousemove_to_head(), wm_event_drag_and_drop_test(), wm_event_free_last_handled(), and wm_handlers_do_intern().
Definition at line 161 of file wm_event_system.cc.
References wmEvent::custom, wmEvent::customdata, wmEvent::customdata_free, EVT_DATA_DRAGDROP, MEM_freeN, and WM_drag_free_list().
Referenced by wm_event_drag_and_drop_test(), wm_event_free(), and wm_event_free_last_handled().
Definition at line 379 of file wm_event_system.cc.
References BKE_scene_ensure_depsgraph(), BKE_scene_graph_update_tagged(), C, CTX_data_main(), CTX_wm_manager(), Scene::customdata_mask, Scene::customdata_mask_modal, CustomData_MeshMasks_update(), DEG_graph_tag_on_visible_update(), DEG_make_active(), depsgraph, ED_view3d_screen_datamask(), wmWindowManager::is_interface_locked, LISTBASE_FOREACH, scene, wmWindowManager::windows, wm_surfaces_do_depsgraph(), WM_window_get_active_scene(), WM_window_get_active_screen(), and WM_window_get_active_view_layer().
Referenced by wm_event_do_refresh_wm_and_depsgraph(), and wm_file_read_post().
Goes over entire hierarchy: events -> window -> screen -> area -> region.
Definition at line 3744 of file wm_event_system.cc.
References wmWindow::addmousemove, blender::compositor::area(), area_event_inside(), AREA_FLAG_ACTIONZONES_UPDATE, BKE_scene_get_depsgraph(), BKE_sound_scene_playing(), BKE_sound_sync_scene(), BLI_assert, BLI_remlink(), C, RenderData::cfra, CLOG_INFO, copy_v2_v2_int(), CTX_data_main(), CTX_data_scene(), CTX_data_scene_set(), CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_region_set(), CTX_wm_screen(), CTX_wm_screen_set(), CTX_wm_window(), CTX_wm_window_set(), wmEvent::customdata, DEG_get_evaluated_scene(), depsgraph, ED_area_azones_update(), ED_screen_animation_play(), ED_screen_animation_playing(), ED_screen_areas_iter, ED_screen_set_active_region(), ED_undo_is_state_valid(), ED_update_for_newframe(), wmWindow::event_queue, wmWindow::event_queue_check_click, wmWindow::event_queue_check_drag, wmWindow::event_queue_check_drag_handled, wmTooltipState::event_xy, wmWindow::eventstate, EVT_XR_ACTION, wmTooltipState::exit_on_event, ListBase::first, wmEvent::flag, FPS, G, G_DEBUG_EVENTS, G_DEBUG_HANDLERS, wmWindow::handlers, Scene::id, ID_RECALC_FRAME_CHANGE, CCL_NAMESPACE_BEGIN::isfinite(), ISKEYBOARD_OR_BUTTON, ISMOUSE_BUTTON, ISMOUSE_MOTION, KM_NOTHING, KM_PRESS, len_manhattan_v2v2_int(), LISTBASE_FOREACH, wmWindow::modalhandlers, MOUSEMOVE, NC_WINDOW, NDOF_MOTION, wmEvent::prev_press_type, wmEvent::prev_xy, Scene::r, ID::recalc, region_event_inside(), scene, bScreen::skip_handling, time, TIMER, wmTooltipState::timer, bScreen::tool_tip, wmEvent::type, wmEvent::val, wmWindowManager::windows, wm_action_not_handled(), wm_event_add(), wm_event_add_mousemove_to_head(), WM_event_add_notifier(), WM_EVENT_CURSOR_MOTION_THRESHOLD, wm_event_do_handlers_area_regions(), wm_event_drag_and_drop_test(), WM_EVENT_FORCE_DRAG_THRESHOLD, wm_event_free_all(), wm_event_free_and_remove_from_queue_if_valid(), wm_event_free_last_handled(), wm_event_inside_rect(), WM_EVENT_IS_REPEAT, wm_event_pie_filter(), WM_event_print(), WM_gizmoconfig_update(), WM_HANDLER_BREAK, WM_HANDLER_CONTINUE, wm_handlers_do(), WM_keyconfig_update(), WM_LOG_HANDLERS, wm_paintcursor_test(), wm_region_mouse_co(), wm_region_tag_draw_on_gizmo_delay_refresh_for_tweak(), WM_tooltip_clear(), WM_tooltip_init(), WM_window_get_active_scene(), WM_window_get_active_screen(), WM_window_get_active_view_layer(), WM_window_get_active_workspace(), wm_window_make_drawable(), and wmEvent::xy.
Referenced by ghost_event_proc(), and WM_main().
|
static |
Send event to region handlers in area.
Two cases: 1) Always pass events (wm_event_always_pass()) are sent to all regions. 2) Event is passed to the region visually under the cursor (ED_area_find_region_xy_visual()).
Definition at line 3721 of file wm_event_system.cc.
References blender::compositor::area(), C, ED_area_find_region_xy_visual(), LISTBASE_FOREACH, RGN_TYPE_ANY, wm_event_always_pass(), wm_event_do_region_handlers(), wm_event_handler_return_value_check(), WM_HANDLER_CONTINUE, and wmEvent::xy.
Referenced by wm_event_do_handlers().
Called in main-loop.
Definition at line 456 of file wm_event_system.cc.
References blender::compositor::area(), BKE_workspace_layout_screen_get(), BLI_pophead(), C, wmNotifier::category, CTX_data_depsgraph_pointer(), CTX_data_main(), CTX_data_view_layer(), CTX_wm_manager(), CTX_wm_window_set(), depsgraph, ED_area_do_listen(), ED_info_stats_clear(), ED_preview_restart_queue_work(), ED_region_do_listen(), ED_screen_areas_iter, ED_screen_change(), ED_screen_do_listen(), ED_update_for_newframe(), ED_workspace_delete(), ED_workspace_layout_delete(), ELEM, wmWindowManager::file_saved, G, G_DEBUG_EVENTS, LISTBASE_FOREACH, LISTBASE_FOREACH_MUTABLE, MEM_freeN, wmWindowManager::message_bus, NC_GEOM, NC_OBJECT, NC_SCENE, NC_SCREEN, NC_SPACE, NC_WM, ND_DATACHANGED, ND_FILEREAD, ND_FILESAVE, ND_FRAME, ND_LAYOUTBROWSE, ND_LAYOUTDELETE, ND_SPACE_INFO, ND_UNDO, ND_WORKSPACE_DELETE, ND_WORKSPACE_SET, wmWindowManager::notifier_queue, wmNotifier::reference, bScreen::regionbase, scene, wmWindow::scene, UI_popup_handlers_remove_all(), wmWindowManager::winactive, wmSpaceTypeListenerParams::window, wmRegionListenerParams::window, wmWindowManager::windows, WM_event_add_notifier(), wm_event_do_refresh_wm_and_depsgraph(), wm_event_execute_timers(), WM_msgbus_handle(), wm_test_autorun_warning(), WM_window_cursor_keymap_status_refresh(), WM_window_get_active_layout(), WM_window_get_active_scene(), WM_window_get_active_screen(), WM_window_get_active_workspace(), WM_window_set_active_workspace(), and wm_window_title().
Referenced by ghost_event_proc(), and WM_main().
Was part of wm_event_do_notifiers, split out so it can be called once before entering the WM_main loop. This ensures operators don't run before the UI and depsgraph are initialized.
Definition at line 420 of file wm_event_system.cc.
References blender::compositor::area(), bScreen::areabase, C, CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_window_set(), ED_area_do_refresh(), LISTBASE_FOREACH, wmWindowManager::windows, wm_event_do_depsgraph(), and WM_window_get_active_screen().
Referenced by redraw_timer_step(), wm_event_do_notifiers(), and WM_main().
Definition at line 3695 of file wm_event_system.cc.
References BLI_listbase_is_empty(), C, CTX_wm_manager(), CTX_wm_region_set(), wmWindowManager::drags, ELEM, EVT_DROP, ARegion::handlers, ISKEYMODIFIER, MOUSEMOVE, wmEvent::type, wm_drags_check_ops(), wm_handlers_do(), and wm_region_mouse_co().
Referenced by wm_event_do_handlers_area_regions().
|
static |
Definition at line 3547 of file wm_event_system.cc.
References BLI_listbase_is_empty(), bScreen::do_draw_drag, wmWindowManager::drags, ELEM, EVT_DATA_DRAGDROP, EVT_DROP, EVT_ESCKEY, ISKEYMODIFIER, KM_RELEASE, LEFTMOUSE, MOUSEMOVE, RIGHTMOUSE, wmEvent::type, wmEvent::val, WM_drag_free_list(), wm_drags_exit(), wm_event_custom_clear(), wm_event_custom_free(), WM_HANDLER_BREAK, WM_HANDLER_CONTINUE, and WM_window_get_active_screen().
Referenced by wm_event_do_handlers().
Definition at line 441 of file wm_event_system.cc.
References BLI_timer_execute(), C, CTX_wm_manager(), CTX_wm_window_set(), ListBase::first, UNLIKELY, and wmWindowManager::windows.
Referenced by wm_event_do_notifiers().
void WM_event_fileselect_event | ( | wmWindowManager * | wm, |
void * | ophandle, | ||
int | eventval | ||
) |
Definition at line 4028 of file wm_event_system.cc.
References wmWindow::eventstate, EVT_FILESELECT, LISTBASE_FOREACH, wmEvent::type, wmWindowManager::windows, and wm_event_add().
Referenced by ED_fileselect_exit(), file_cancel_exec(), file_execute(), and WM_event_add_fileselect().
From the context window, try to find a window that is appropriate for use as root window of a modal File Browser (modal means: there is a SpaceFile.op to execute). The root window will become the parent of the File Browser and provides a context to execute the file operator in, even after closing the File Browser.
An appropriate window is either of the following:
If no appropriate parent window can be found from the context window, return the first registered window (which can be assumed to be a regular window, e.g. no modal File Browser; this is asserted).
Definition at line 4061 of file wm_event_system.cc.
References BLI_assert, C, CTX_wm_manager(), CTX_wm_window(), ED_fileselect_handler_area_find_any_with_op(), ListBase::first, ScrArea::full, wmWindow::parent, and wmWindowManager::windows.
Referenced by WM_event_add_fileselect().
Definition at line 184 of file wm_event_system.cc.
References wmEvent::flag, ISKEYBOARD, ISMOUSE_MOTION, KM_NOTHING, MEM_freeN, wmEvent::type, wmEvent::val, wm_event_custom_free(), WM_EVENT_IS_REPEAT, and WM_event_print().
Referenced by wm_event_free_all(), wm_event_free_and_remove_from_queue_if_valid(), wm_event_free_last(), and wm_event_free_last_handled().
Definition at line 236 of file wm_event_system.cc.
References BLI_pophead(), wmWindow::event_queue, and wm_event_free().
Referenced by wm_event_do_handlers(), and wm_window_free().
Account for the special case when events are being handled and a file is loaded. In this case event handling exits early, however when "Load UI" is disabled the even will still be in wmWindow.event_queue.
Without this it's possible to continuously handle the same event, see: T76484.
Definition at line 3609 of file wm_event_system.cc.
References BLI_remlink_safe(), G_MAIN, LISTBASE_FOREACH, and wm_event_free().
Referenced by wm_event_do_handlers().
void wm_event_free_handler | ( | wmEventHandler * | handler | ) |
Definition at line 1907 of file wm_event_system.cc.
References MEM_freeN.
Referenced by WM_event_free_ui_handler_all(), WM_event_remove_area_handler(), WM_event_remove_handlers(), WM_event_remove_keymap_handler(), WM_event_remove_ui_handler(), wm_handler_fileselect_do(), wm_handler_operator_call(), wm_handlers_do_intern(), and wm_macro_modal().
Definition at line 228 of file wm_event_system.cc.
References BLI_poptail(), wmWindow::event_queue, and wm_event_free().
Referenced by wm_event_add_trackpad().
A version of wm_event_free that holds the last handled event.
Definition at line 205 of file wm_event_system.cc.
References wmWindow::event_last_handled, MEM_dupallocN, MEM_freeN, wm_event_custom_clear(), wm_event_custom_free(), and wm_event_free().
Referenced by wm_event_do_handlers().
void WM_event_free_ui_handler_all | ( | bContext * | C, |
ListBase * | handlers, | ||
wmUIHandlerFunc | handle_fn, | ||
wmUIHandlerRemoveFunc | remove_fn | ||
) |
Definition at line 4547 of file wm_event_system.cc.
References BLI_remlink(), C, wmEventHandler_UI::handle_fn, wmEventHandler_UI::head, LISTBASE_FOREACH_MUTABLE, wmEventHandler_UI::remove_fn, wmEventHandler_UI::user_data, wm_event_free_handler(), and WM_HANDLER_TYPE_UI.
Referenced by ui_popup_handler(), and UI_popup_handlers_remove_all().
void WM_event_get_keymap_from_toolsystem | ( | wmWindowManager * | wm, |
wmWindow * | win, | ||
wmEventHandler_Keymap * | handler, | ||
wmEventHandler_KeymapResult * | km_result | ||
) |
Definition at line 4379 of file wm_event_system.cc.
References wm_event_get_keymap_from_toolsystem_ex().
Referenced by ed_default_handlers().
|
static |
Implements fallback tool when enabled by: SCE_WORKSPACE_TOOL_FALLBACK, WM_GIZMOGROUPTYPE_TOOL_FALLBACK_KEYMAP.
This runs before WM_event_get_keymap_from_toolsystem, allowing both the fallback-tool and active-tool to be activated providing the key-map is configured so the keys don't conflict. For example one mouse button can run the active-tool, another button for the fallback-tool. See T72567.
Follow wmEventHandler_KeymapDynamicFn signature.
Definition at line 4280 of file wm_event_system.cc.
References blender::compositor::area(), ARRAY_SIZE, BLI_assert, BLI_assert_msg, wmEventHandler_Keymap::dynamic, bToolRef_Runtime::flag, wmGizmoGroupType::flag, bToolRef_Runtime::gizmo_group, ARegion::gizmo_map, bToolRef_Runtime::keymap, bToolRef_Runtime::keymap_fallback, wmEventHandler_Keymap::keymap_tool, wmKeyConfig::keymaps, wmEventHandler_KeymapResult::keymaps, wmEventHandler_KeymapResult::keymaps_len, LISTBASE_FOREACH, RGN_TYPE_WINDOW, SCE_WORKSPACE_TOOL_FALLBACK, scene, wmWindow::scene, SWAP, TOOLREF_FLAG_FALLBACK_KEYMAP, Scene::toolsettings, wmGizmoGroup::type, wmEventHandler_KeymapDynamic::user_data, wmWindowManager::userconf, WM_GIZMOGROUPTYPE_TOOL_FALLBACK_KEYMAP, WM_gizmomap_group_find(), wm_gizmomap_highlight_get(), WM_keymap_list_find_spaceid_or_empty(), and ToolSettings::workspace_tool_type.
Referenced by WM_event_get_keymap_from_toolsystem(), and WM_event_get_keymap_from_toolsystem_with_gizmos().
void WM_event_get_keymap_from_toolsystem_with_gizmos | ( | wmWindowManager * | wm, |
wmWindow * | win, | ||
wmEventHandler_Keymap * | handler, | ||
wmEventHandler_KeymapResult * | km_result | ||
) |
Definition at line 4371 of file wm_event_system.cc.
References wm_event_get_keymap_from_toolsystem_ex().
Referenced by ed_default_handlers().
void WM_event_get_keymaps_from_handler | ( | wmWindowManager * | wm, |
wmWindow * | win, | ||
wmEventHandler_Keymap * | handler, | ||
wmEventHandler_KeymapResult * | km_result | ||
) |
Definition at line 5680 of file wm_event_system.cc.
References BLI_assert, wmEventHandler_Keymap::dynamic, wmEventHandler_Keymap::keymap, wmEventHandler_KeymapDynamic::keymap_fn, wmEventHandler_KeymapResult::keymaps, wmEventHandler_KeymapResult::keymaps_len, and WM_keymap_active().
Referenced by menu_types_add_from_keymap_items(), WM_event_match_keymap_item_from_handlers(), wm_handlers_do_intern(), and wm_keymap_item_find_handlers().
BLI_INLINE void wm_event_handler_return_value_check | ( | const bContext * | C, |
const wmEvent * | event, | ||
const int | action | ||
) |
Debug only sanity check for the return value of event handlers. Checks that "always pass" events don't cause non-passing handler return values, and thus actually pass.
C | Pass in the context to check if it's "window" was cleared. The event check can't be executed if the handler just loaded a file or closed the window. (typically identified by CTX_wm_window(C) returning null), because the event will have been freed then. When null, always check the event (assume the caller knows the event was not freed). |
Definition at line 676 of file wm_event_system.cc.
References BLI_assert_msg, C, CTX_wm_window(), UNUSED_VARS_NDEBUG, wm_event_always_pass(), and WM_HANDLER_BREAK.
Referenced by wm_event_do_handlers_area_regions(), wm_handlers_do(), and wm_handlers_do_intern().
Definition at line 791 of file wm_event_system.cc.
References C, CTX_wm_region(), CTX_wm_window(), and wm_event_handler_ui_cancel_ex().
Referenced by wm_operator_invoke().
void wm_event_handler_ui_cancel_ex | ( | bContext * | C, |
wmWindow * | win, | ||
ARegion * | region, | ||
bool | reactivate_button | ||
) |
Definition at line 768 of file wm_event_system.cc.
References BLI_assert, C, EVT_BUT_CANCEL, wmEventHandler_UI::handle_fn, ARegion::handlers, LISTBASE_FOREACH_MUTABLE, wmEventHandler_UI::user_data, wm_event_init_from_window(), and WM_HANDLER_TYPE_UI.
Referenced by UI_context_active_but_clear(), and wm_event_handler_ui_cancel().
Definition at line 244 of file wm_event_system.cc.
References wmWindow::eventstate.
Referenced by actionzone_apply(), ghost_event_proc(), ui_but_activate_event(), UI_but_focus_on_enter_event(), wm_event_handler_ui_cancel_ex(), and wm_window_timer().
Definition at line 3462 of file wm_event_system.cc.
References BLI_rcti_isect_pt_v(), wm_event_always_pass(), and wmEvent::xy.
Referenced by wm_event_do_handlers().
Definition at line 4984 of file wm_event_system.cc.
References ISMOUSE_BUTTON, KM_PRESS, KM_RELEASE, PIL_check_seconds_timer(), wmEvent::prev_press_time, wmEvent::prev_press_xy, wmEvent::prev_type, wmEvent::prev_val, wmEvent::type, wmEvent::val, and WM_event_drag_test().
Referenced by wm_event_state_update_and_click_set_ex().
Returns true if the event is a key press event which is to be ignored and not added to the event queue.
A key press event will be ignored if there is already matched key press in the queue. This avoids the event queue "clogging" in the situations when there is an operator bound to a key press event and the execution time of the operator is longer than the key repeat.
Definition at line 5169 of file wm_event_system.cc.
References BLI_listbase_is_empty(), wmWindow::event_queue, wmEvent::flag, ListBase::last, WM_EVENT_IS_REPEAT, and wm_event_is_same_key_press().
Referenced by wm_event_add_ghostevent().
Definition at line 5148 of file wm_event_system.cc.
References KM_PRESS, wmEvent::modifier, wmEvent::type, and wmEvent::val.
Referenced by wm_event_is_ignorable_key_press().
wmKeyMapItem* WM_event_match_keymap_item | ( | bContext * | C, |
wmKeyMap * | keymap, | ||
const wmEvent * | event | ||
) |
Definition at line 5699 of file wm_event_system.cc.
References C, wmKeyMap::items, LISTBASE_FOREACH, ot, wm_eventmatch(), WM_OP_INVOKE_DEFAULT, WM_operator_poll_context(), and WM_operatortype_find().
Referenced by WM_event_match_keymap_item_from_handlers().
wmKeyMapItem* WM_event_match_keymap_item_from_handlers | ( | bContext * | C, |
wmWindowManager * | wm, | ||
wmWindow * | win, | ||
ListBase * | handlers, | ||
const wmEvent * | event | ||
) |
Definition at line 5712 of file wm_event_system.cc.
References C, CTX_wm_region(), wmEventHandler_KeymapResult::keymaps, wmEventHandler_KeymapResult::keymaps_len, LISTBASE_FOREACH, WM_event_get_keymaps_from_handler(), WM_event_match_keymap_item(), WM_HANDLER_DO_FREE, WM_HANDLER_TYPE_KEYMAP, and WM_keymap_poll().
Referenced by WM_window_cursor_keymap_status_refresh().
void WM_event_modal_handler_area_replace | ( | wmWindow * | win, |
const ScrArea * | old_area, | ||
ScrArea * | new_area | ||
) |
Definition at line 4212 of file wm_event_system.cc.
References wmEventHandler_Op::area, wmEventHandler_Op::context, wmEventHandler_Op::is_fileselect, LISTBASE_FOREACH, wmWindow::modalhandlers, and WM_HANDLER_TYPE_OP.
Referenced by area_offscreen_exit(), and ED_area_exit().
void WM_event_modal_handler_region_replace | ( | wmWindow * | win, |
const ARegion * | old_region, | ||
ARegion * | new_region | ||
) |
Definition at line 4226 of file wm_event_system.cc.
References wmEventHandler_Op::context, wmEventHandler_Op::is_fileselect, LISTBASE_FOREACH, wmWindow::modalhandlers, wmEventHandler_Op::region, wmEventHandler_Op::region_type, ARegion::regiontype, RGN_TYPE_WINDOW, and WM_HANDLER_TYPE_OP.
Referenced by area_offscreen_exit(), and ED_region_exit().
|
static |
This function prepares events for use with wmOperatorType.modal by:
Converting double click events into press events, allowing them to be restored when the events aren't handled.
This is done since we only want to use double click events to match key-map items, allowing modal functions to check for press/release events without having to interpret them.
Definition at line 2212 of file wm_event_system.cc.
References BLI_assert, C, CTX_wm_manager(), wmEvent_ModalMapStore::dbl_click_disabled, EVT_MODAL_MAP, KM_DBL_CLICK, KM_PRESS, wmOperatorType::modalkeymap, wmOperator::opm, wmEvent_ModalMapStore::prev_type, wmEvent::prev_type, wmEvent_ModalMapStore::prev_val, wmKeyMapItem::propvalue, wmOperator::type, wmEvent::type, wmEvent::val, wm_eventmatch_modal_keymap_items(), and WM_keymap_active().
Referenced by wm_handler_operator_call().
|
static |
Restore changes from wm_event_modalkeymap_begin
Definition at line 2279 of file wm_event_system.cc.
References wmEvent_ModalMapStore::dbl_click_disabled, EVT_MODAL_MAP, KM_DBL_CLICK, wmEvent_ModalMapStore::prev_type, wmEvent_ModalMapStore::prev_val, and wmEvent::type.
Referenced by wm_handler_operator_call().
Filter out all events of the pie that spawned the last pie unless it's a release event.
Definition at line 3590 of file wm_event_system.cc.
References EVENT_NONE, KM_RELEASE, wmWindow::pie_event_type_lock, wmEvent::type, and wmEvent::val.
Referenced by wm_event_do_handlers().
Definition at line 5010 of file wm_event_system.cc.
References wmEvent::keymodifier, wmEvent::modifier, PIL_check_seconds_timer(), wmEvent::prev_press_keymodifier, wmEvent::prev_press_modifier, wmEvent::prev_press_time, wmEvent::prev_press_type, wmEvent::prev_press_xy, wmEvent::type, and wmEvent::xy.
Referenced by wm_event_state_update_and_click_set_ex().
Copy the current state to the previous event state.
Definition at line 5004 of file wm_event_system.cc.
References wmEvent::prev_type, wmEvent::prev_val, wmEvent::type, and wmEvent::val.
Referenced by wm_event_state_update_and_click_set_ex().
Definition at line 4586 of file wm_event_system.cc.
References blender::compositor::area(), wmEventHandler_UI::area, BLI_remlink(), wmEventHandler_UI::context, LISTBASE_FOREACH_MUTABLE, wm_event_free_handler(), and WM_HANDLER_TYPE_UI.
Referenced by screen_change_prepare().
Called on exit or remove area, only here call cancel callback.
Definition at line 1996 of file wm_event_system.cc.
References blender::compositor::area(), wmEventHandler_UI::area, BLI_assert, BLI_pophead(), C, wmOperatorType::cancel, wmEventHandler_UI::context, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_menu(), CTX_wm_menu_set(), CTX_wm_region(), CTX_wm_region_set(), CTX_wm_window(), ED_area_exit(), ED_fileselect_handler_area_find(), wmWindow::eventstate, wmOperatorType::flag, wmEventHandler_Op::is_fileselect, LISTBASE_FOREACH, wmEventHandler_UI::menu, wmEventHandler_Op::op, wmWindowManager::op_undo_depth, OPTYPE_UNDO, wmEventHandler_UI::region, wmEventHandler_UI::remove_fn, wmOperator::type, wmEventHandler::type, wmEventHandler_UI::user_data, wmWindowManager::windows, WM_cursor_grab_disable(), wm_event_free_handler(), wm_handler_op_context(), WM_HANDLER_TYPE_OP, WM_HANDLER_TYPE_UI, WM_operator_free(), and wm_operator_free_for_fileselect().
Referenced by clip_set_region_visible(), ED_area_exit(), ED_region_exit(), ED_region_visibility_change_update(), ED_region_visibility_change_update_animated(), sequencer_refresh(), WM_exit_ex(), wm_window_close(), wm_window_free(), and wm_window_match_init().
Definition at line 4467 of file wm_event_system.cc.
References BLI_remlink(), wmEventHandler_Keymap::head, wmEventHandler_Keymap::keymap, LISTBASE_FOREACH, wm_event_free_handler(), and WM_HANDLER_TYPE_KEYMAP.
Referenced by ui_block_free_func_POPOVER(), and WM_event_add_keymap_handler_priority().
void WM_event_remove_ui_handler | ( | ListBase * | handlers, |
wmUIHandlerFunc | handle_fn, | ||
wmUIHandlerRemoveFunc | remove_fn, | ||
void * | user_data, | ||
bool | postpone | ||
) |
postpone | Enable for win->modalhandlers , this is in a running for () loop in wm_handlers_do(). |
Definition at line 4522 of file wm_event_system.cc.
References BLI_remlink(), wmEventHandler::flag, wmEventHandler_UI::handle_fn, wmEventHandler_UI::head, LISTBASE_FOREACH, wmEventHandler_UI::remove_fn, user_data, wmEventHandler_UI::user_data, wm_event_free_handler(), WM_HANDLER_DO_FREE, and WM_HANDLER_TYPE_UI.
Referenced by button_activate_state(), panel_activate_state(), ui_handler_region_drag_toggle(), ui_handler_wait_for_input(), ui_panel_drag_collapse_handler(), UI_popup_handlers_remove(), and UI_region_handlers_add().
void WM_event_set_keymap_handler_post_callback | ( | wmEventHandler_Keymap * | handler, |
void(keymap_tag)(wmKeyMap *keymap, wmKeyMapItem *kmi, void *user_data) | , | ||
void * | user_data | ||
) |
Definition at line 4481 of file wm_event_system.cc.
References wmEventHandler_Keymap::post, wmEventHandler_KeymapPost::post_fn, user_data, and wmEventHandler_KeymapPost::user_data.
Referenced by UI_popover_end().
|
static |
Definition at line 5137 of file wm_event_system.cc.
References ELEM, GHOST_kEventKeyDown, GHOST_kEventKeyUp, type, and wm_event_state_update_and_click_set_ex().
Referenced by wm_event_add_ghostevent().
|
static |
Update the event-state for any kind of event that supports KM_PRESS / KM_RELEASE.
check_double_click | Optionally skip checking for double-click events. Needed for event simulation where the time of click events is not so predictable. |
Definition at line 5099 of file wm_event_system.cc.
References BLI_assert, CLOG_INFO, ELEM, wmEvent::flag, ISKEYBOARD_OR_BUTTON, KM_DBL_CLICK, KM_PRESS, KM_RELEASE, wmEvent::modifier, wmEvent::type, wmEvent::val, wm_event_is_double_click(), WM_EVENT_IS_REPEAT, wm_event_prev_click_set(), wm_event_prev_values_set(), and WM_LOG_HANDLERS.
Referenced by WM_event_add_simulate(), and wm_event_state_update_and_click_set().
|
constexpr |
Definition at line 4885 of file wm_event_system.cc.
References wmTabletData::active, and EVT_TABLET_NONE.
Referenced by WM_event_tablet_data_default_set(), and wm_tablet_data_from_ghost().
void WM_event_tablet_data_default_set | ( | wmTabletData * | tablet_data | ) |
Definition at line 4896 of file wm_event_system.cc.
References wm_event_tablet_data_default().
Definition at line 4795 of file wm_event_system.cc.
References EVENT_NONE, EVT_BACKSLASHKEY, EVT_EIGHTKEY, EVT_EQUALKEY, EVT_FIVEKEY, EVT_FOURKEY, EVT_MINUSKEY, EVT_NINEKEY, EVT_ONEKEY, EVT_PAD0, EVT_PAD1, EVT_PAD2, EVT_PAD3, EVT_PAD4, EVT_PAD5, EVT_PAD6, EVT_PAD7, EVT_PAD8, EVT_PAD9, EVT_PADMINUS, EVT_PADPLUSKEY, EVT_PADSLASHKEY, EVT_SEVENKEY, EVT_SIXKEY, EVT_THREEKEY, EVT_TWOKEY, EVT_ZEROKEY, KM_ALT, KM_OSKEY, KM_PRESS, KM_RELEASE, LEFTMOUSE, MIDDLEMOUSE, wmEvent::modifier, wmEvent::type, USER_EMU_MMB_MOD_OSKEY, USER_NONUMPAD, USER_TWOBUTTONMOUSE, and wmEvent::val.
Referenced by wm_event_add_ghostevent(), and WM_window_cursor_keymap_status_refresh().
|
static |
Definition at line 2081 of file wm_event_system.cc.
References wmTabletData::active, wmKeyMapItem::alt, wmKeyMapItem::ctrl, wmKeyMapItem::direction, wmEvent::direction, ELEM, EVT_LEFTALTKEY, EVT_LEFTCTRLKEY, EVT_LEFTSHIFTKEY, EVT_OSKEY, EVT_RIGHTALTKEY, EVT_RIGHTCTRLKEY, EVT_RIGHTSHIFTKEY, EVT_TABLET_ERASER, EVT_TABLET_STYLUS, wmKeyMapItem::flag, wmEvent::flag, ISKEYBOARD, wmKeyMapItem::keymodifier, wmEvent::keymodifier, KM_ALT, KM_ANY, KM_CLICK_DRAG, KM_CTRL, KM_OSKEY, KM_PRESS, KM_SHIFT, KM_TEXTINPUT, KMI_INACTIVE, KMI_REPEAT_IGNORE, LEFTMOUSE, wmEvent::modifier, wmKeyMapItem::oskey, wmKeyMapItem::shift, wmEvent::tablet, TABLET_ERASER, TABLET_STYLUS, wmKeyMapItem::type, wmEvent::type, wmEvent::utf8_buf, wmKeyMapItem::val, wmEvent::val, WM_EVENT_IS_REPEAT, and WM_userdef_event_map().
Referenced by WM_event_match_keymap_item(), wm_eventmatch_modal_keymap_items(), wm_handlers_do_gizmo_handler(), wm_handlers_do_keymap_with_gizmo_handler(), and wm_handlers_do_keymap_with_keymap_handler().
|
static |
Definition at line 2179 of file wm_event_system.cc.
References BLI_assert, wmKeyMap::items, LISTBASE_FOREACH, wmKeyMap::poll_modal_item, and wm_eventmatch().
Referenced by wm_event_modalkeymap_begin().
|
static |
Definition at line 2726 of file wm_event_system.cc.
References C, wmEvent::customdata, EVT_FILESELECT, wmEventHandler_Op::op, wmEvent::type, wmEvent::val, WM_HANDLER_CONTINUE, and wm_handler_fileselect_do().
Referenced by wm_handlers_do_intern().
|
static |
File-select handlers are only in the window queue, so it's safe to switch screens or area types.
Definition at line 2503 of file wm_event_system.cc.
References ARegion::alignment, blender::compositor::area(), wmEventHandler_Op::area, bScreen::areabase, BKE_area_find_region_type(), BKE_report(), BKE_report_print_level_set(), BLI_assert, BLI_findindex(), BLI_listbase_is_single(), BLI_movelisttolist(), BLI_remlink(), C, wmOperatorType::cancel, wmEventHandler_Op::context, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_region(), CTX_wm_region_set(), CTX_wm_reports(), CTX_wm_window(), CTX_wm_window_set(), ED_area_do_refresh(), ED_area_prevspace(), ED_fileselect_params_to_userdef(), ED_fileselect_set_params_from_userdef(), ED_fileselect_window_params_get(), ED_screen_full_prevspace(), ED_screen_temp_space_open(), ED_undo_grouped_push_op(), ED_undo_push_op(), wmWindow::eventstate, EVT_FILESELECT_CANCEL, EVT_FILESELECT_EXEC, EVT_FILESELECT_EXTERNAL_CANCEL, EVT_FILESELECT_FULL_OPEN, wmOperatorType::exec, ListBase::first, ARegion::flag, wmOperatorType::flag, ScrArea::full, wmEventHandler_Op::head, IFACE_, ReportList::list, LISTBASE_FOREACH, SpaceFile::op, wmEventHandler_Op::op, wmWindowManager::op_undo_depth, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPTYPE_UNDO, OPTYPE_UNDO_GROUPED, wmEventHandler_Op::region, wmWindowManager::reports, wmOperator::reports, RGN_ALIGN_BOTTOM, RGN_FLAG_HIDDEN, RGN_TYPE_HEADER, RPT_ERROR, RPT_WARNING, SPACE_FILE, ScrArea::spacedata, ScrArea::spacetype, wmOperator::type, UI_DPI_FAC, UI_popup_menu_reports(), wmEventHandler_Op::win, wmWindowManager::winactive, wmWindowManager::windows, wm_cursor_position_get(), wm_event_free_handler(), WM_HANDLER_BREAK, WM_HANDLER_CONTINUE, wm_handler_op_context(), wm_operator_free_for_fileselect(), WM_operator_last_properties_store(), wm_operator_reports(), WM_report_banner_show(), wm_window_close(), WM_window_get_active_screen(), WM_window_is_temp_screen(), wm_window_make_drawable(), WM_window_pixels_x(), WM_window_pixels_y(), and wmEvent::xy.
Referenced by WM_event_add_fileselect(), and wm_handler_fileselect_call().
|
static |
Definition at line 1987 of file wm_event_system.cc.
References blender::compositor::area(), C, CTX_wm_area_set(), CTX_wm_region_set(), and wm_handler_op_context_get_if_valid().
Referenced by WM_event_remove_handlers(), wm_handler_fileselect_do(), and wm_handler_operator_call().
|
static |
Check if the handler's area and/or region are actually part of the screen, and return them if so.
Definition at line 1917 of file wm_event_system.cc.
References blender::compositor::area(), wmEventHandler_Op::area, BKE_area_find_region_xy(), BLI_findindex(), C, CLOG_ERROR, wmEventHandler_Op::context, CTX_wm_screen(), CTX_wm_window(), ED_screen_areas_iter, wmOperator::flag, wmOperatorType::idname, wmEventHandler_Op::op, OP_IS_MODAL_CURSOR_REGION, wmOperator::opm, wmEventHandler_Op::region, wmEventHandler_Op::region_type, wmOperator::type, wmEventHandler_Op::win, WM_LOG_HANDLERS, WM_window_get_active_screen(), and wmEvent::xy.
Referenced by WM_event_add_fileselect(), and wm_handler_op_context().
|
static |
Definition at line 2297 of file wm_event_system.cc.
References blender::compositor::area(), BLI_listbase_is_empty(), BLI_remlink(), C, CLOG_ERROR, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_region(), CTX_wm_region_set(), CTX_wm_window(), wmGizmo::flag, wmGizmoGroupType::flag, wmOperatorType::flag, bToolRef_Runtime::gizmo_group, wmGizmoGroupType::gzmap_params, wmEventHandler_Op::head, wmOperator::idname, ReportList::list, wmOperatorType::modal, wmOperatorType::modalkeymap, wmEventHandler_Op::op, wmWindowManager::op_undo_depth, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, OPERATOR_RETVAL_CHECK, OPERATOR_RUNNING_MODAL, OPTYPE_UNDO, ot, wmOperator::reports, bToolRef::runtime, wmOperator::type, wmEventHandler::type, wm_add_reports(), WM_cursor_grab_disable(), wm_event_always_pass(), wm_event_free_handler(), wm_event_modalkeymap_begin(), wm_event_modalkeymap_end(), WM_gizmo_group_type_ensure_ptr_ex(), WM_GIZMO_OPERATOR_TOOL_INIT, WM_gizmogroup_ensure_init(), WM_gizmogrouptype_find(), WM_GIZMOGROUPTYPE_TOOL_INIT, wm_gizmomap_highlight_get(), wm_gizmomaps_handled_modal_update(), WM_gizmomaptype_ensure(), WM_gizmomaptype_group_init_runtime_with_region(), WM_HANDLER_BREAK, WM_HANDLER_CONTINUE, WM_HANDLER_HANDLED, WM_HANDLER_MODAL, wm_handler_op_context(), WM_HANDLER_TYPE_GIZMO, WM_HANDLER_TYPE_KEYMAP, WM_HANDLER_TYPE_OP, WM_LOG_HANDLERS, wm_operator_check_locked_interface(), wm_operator_finished(), WM_operator_free(), wm_operator_invoke(), WM_operator_properties_free(), wm_operator_reports(), WM_operatortype_find(), wm_region_mouse_co(), WM_toolsystem_ref_from_context(), WM_toolsystem_ref_properties_init_for_keymap(), and WM_window_status_area_tag_redraw().
Referenced by wm_handlers_do_intern(), wm_handlers_do_keymap_with_gizmo_handler(), and wm_handlers_do_keymap_with_keymap_handler().
|
static |
Definition at line 695 of file wm_event_system.cc.
References blender::compositor::area(), wmEventHandler_UI::area, C, wmEventHandler_UI::context, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_menu(), CTX_wm_menu_set(), CTX_wm_region(), CTX_wm_region_set(), ELEM, EVT_FILESELECT, wmEventHandler::flag, wmEventHandler_UI::handle_fn, wmEventHandler_UI::head, ISMOUSE_BUTTON, KM_DBL_CLICK, wmEventHandler_UI::menu, MOUSEPAN, wmEventHandler_UI::region, wmEvent::type, wmEventHandler_UI::user_data, wmEvent::val, WHEELDOWNMOUSE, WHEELUPMOUSE, wm_event_always_pass(), WM_HANDLER_ACCEPT_DBL_CLICK, WM_HANDLER_BREAK, WM_HANDLER_CONTINUE, WM_UI_HANDLER_BREAK, and WM_UI_HANDLER_CONTINUE.
Referenced by wm_handlers_do_intern().
Definition at line 3286 of file wm_event_system.cc.
References C, CLOG_INFO, copy_v2_v2_int(), CTX_wm_window(), wmWindow::event_queue_check_click, wmWindow::event_queue_check_drag, wmWindow::event_queue_check_drag_handled, wmEvent::flag, ISKEYBOARD_OR_BUTTON, ISKEYMODIFIER, ISMOUSE_GESTURE, ISMOUSE_MOTION, ISMOUSE_WHEEL, KM_CLICK, KM_CLICK_DRAG, KM_DBL_CLICK, KM_PRESS, KM_RELEASE, wmEvent::prev_press_keymodifier, wmEvent::prev_press_type, wmEvent::prev_press_xy, wmEvent::prev_type, wmEvent::prev_val, wmEvent::type, UNPACK2, wmEvent::val, wm_action_not_handled(), WM_event_drag_direction(), WM_event_drag_test(), WM_EVENT_FORCE_DRAG_THRESHOLD, wm_event_handler_return_value_check(), WM_EVENT_IS_REPEAT, WM_HANDLER_BREAK, wm_handlers_do_intern(), WM_LOG_HANDLERS, xy, and wmEvent::xy.
Referenced by wm_event_do_handlers(), and wm_event_do_region_handlers().
|
static |
Definition at line 2915 of file wm_event_system.cc.
References blender::compositor::area(), BLI_assert, C, ARegionType::clip_gizmo_events_by_ui, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_region(), CTX_wm_region_set(), CTX_wm_window(), ELEM, EVT_GIZMO_UPDATE, wmGizmo::flag, ARegion::gizmo_map, wmEventHandler_Gizmo::gizmo_map, wmGizmo::highlight_part, ISKEYMODIFIER, wmKeyMap::items, wmGizmo::keymap, wmGizmoGroupType::keymap, KM_CLICK, KM_CLICK_DRAG, KM_PRESS, KMI_INACTIVE, LEFTMOUSE, LISTBASE_FOREACH, MIDDLEMOUSE, MOUSEMOVE, ot, wmGizmo::parent_gzgroup, blender::meshintersect::prev(), RIGHTMOUSE, ARegion::type, wmGizmoGroup::type, wmEvent::type, UI_region_block_find_mouse_over(), USER_TOOLTIPS, wmEvent::val, wm_eventmatch(), WM_GIZMO_EVENT_HANDLE_ALL, WM_GIZMO_HIDDEN_KEYMAP, WM_GIZMO_NO_TOOLTIP, wm_gizmogroup_is_any_selected(), WM_gizmomap_group_list(), wm_gizmomap_handler_context_gizmo(), wm_gizmomap_highlight_find(), wm_gizmomap_highlight_get(), wm_gizmomap_highlight_set(), WM_gizmomap_is_any_selected(), wm_gizmomap_modal_get(), WM_gizmomap_tag_refresh(), WM_gizmomap_tooltip_init(), WM_HANDLER_BREAK, WM_HANDLER_CONTINUE, WM_HANDLER_MODAL, wm_handlers_do_keymap_with_gizmo_handler(), WM_keymap_active(), WM_OP_INVOKE_DEFAULT, WM_operator_poll_context(), WM_operatortype_find(), wm_region_mouse_co(), WM_tooltip_clear(), WM_tooltip_timer_init(), and wmEvent::xy.
Referenced by wm_handlers_do_intern().
|
static |
Definition at line 3102 of file wm_event_system.cc.
References BLI_addtail(), BLI_assert, BLI_assert_unreachable, BLI_findindex(), BLI_remlink(), C, CTX_data_main(), CTX_wm_manager(), CTX_wm_region(), CTX_wm_window(), wmEvent::custom, wmEvent::customdata, wmEventHandler_Dropbox::dropboxes, EVT_DATA_DRAGDROP, EVT_DROP, ListBase::first, G, G_DEBUG_HANDLERS, wmEventHandler_UI::handle_fn, wmEventHandler_Op::is_fileselect, wmWindowManager::is_interface_locked, ISMOUSE_MOTION, wmEventHandler_KeymapResult::keymaps, wmEventHandler_KeymapResult::keymaps_len, LISTBASE_FOREACH, LISTBASE_FOREACH_MUTABLE, OPERATOR_CANCELLED, OPERATOR_RETVAL_CHECK, wmEvent::type, wm_cursor_arrow_move(), WM_drag_free_list(), wm_drags_exit(), wm_drop_end(), wm_drop_operator_context_get(), wm_drop_prepare(), wm_event_always_pass(), wm_event_custom_clear(), wm_event_free_handler(), WM_event_get_keymaps_from_handler(), wm_event_handler_return_value_check(), WM_HANDLER_BLOCKING, WM_HANDLER_BREAK, WM_HANDLER_CONTINUE, WM_HANDLER_DO_FREE, wm_handler_fileselect_call(), WM_HANDLER_MODAL, wm_handler_operator_call(), WM_HANDLER_TYPE_DROPBOX, WM_HANDLER_TYPE_GIZMO, WM_HANDLER_TYPE_KEYMAP, WM_HANDLER_TYPE_OP, WM_HANDLER_TYPE_UI, wm_handler_ui_call(), wm_handlers_do_gizmo_handler(), wm_handlers_do_keymap_with_keymap_handler(), wm_operator_call_internal(), and WM_tooltip_clear().
Referenced by wm_handlers_do().
|
static |
Definition at line 2855 of file wm_event_system.cc.
References C, CTX_wm_gizmo_group_set(), G, G_DEBUG_EVENTS, G_DEBUG_HANDLERS, wmEventHandler_Gizmo::head, wmKeyMap::idname, wmKeyMap::items, LISTBASE_FOREACH, PRINT, wm_eventmatch(), WM_HANDLER_BREAK, WM_HANDLER_CONTINUE, WM_HANDLER_HANDLED, wm_handler_operator_call(), and WM_keymap_poll().
Referenced by wm_handlers_do_gizmo_handler().
|
static |
Definition at line 2797 of file wm_event_system.cc.
References BLI_assert, C, CLOG_INFO, wmEventHandler_Keymap::dynamic, wmEventHandler_Keymap::head, wmKeyMap::idname, wmKeyMap::items, wmEventHandler_KeymapDynamic::keymap_fn, keymap_handler_log_action_str(), keymap_handler_log_kmi_event_str(), keymap_handler_log_kmi_op_str(), LISTBASE_FOREACH, wmEventHandler_Keymap::post, wmEventHandler_KeymapPost::post_fn, PRINT, wmEventHandler_KeymapPost::user_data, wm_eventmatch(), WM_HANDLER_BREAK, WM_HANDLER_CONTINUE, wm_handler_operator_call(), WM_keymap_poll(), and WM_LOG_HANDLERS.
Referenced by wm_handlers_do_intern().
Definition at line 293 of file wm_event_system.cc.
References wmNotifier::action, BLI_addtail(), wmNotifier::category, wmNotifier::data, ListBase::first, G_MAIN, NOTE_ACTION, NOTE_CATEGORY, NOTE_DATA, NOTE_SUBTYPE, wmWindowManager::notifier_queue, wmNotifier::reference, wmNotifier::subtype, type, Main::wm, and wm_test_duplicate_notifier().
Referenced by action_unlink_exec(), blender::ed::asset_browser::AssetCatalogTreeView::activate_catalog_by_id(), ANIM_apply_keyingset(), armature_circle_select(), armature_select_linked_impl(), asset_clear_exec(), asset_mark_exec(), blender::ed::space_node::backimage_fit_exec(), blender::ed::space_node::backimage_zoom_exec(), bpy_app_debug_value_set(), bpy_batch_remove(), bpy_orphans_purge(), bpy_rna_region_from_string(), brush_generic_tool_set(), brush_scale_size_exec(), cachefile_layer_add_exec(), cachefile_layer_move_exec(), cachefile_layer_remove_exec(), blender::ed::asset::AssetList::clear(), collection_duplicate_exec(), collection_flag_exec(), collection_hierarchy_delete_exec(), collection_instance_exec(), collection_isolate_exec(), collection_link_exec(), collection_new_exec(), collection_objects_select_exec(), collection_view_layer_exec(), collection_visibility_exec(), blender::ed::space_node::compo_updatejob(), copy_particle_systems_to_object(), blender::ed::curves::convert_from_particle_system::curves_convert_from_particle_system_exec(), blender::ed::curves::convert_to_particle_system::curves_convert_to_particle_system_exec(), blender::ed::curves::disable_selection::curves_disable_selection_exec(), blender::ed::curves::set_selection_domain::curves_set_selection_domain_exec(), do_lasso_select_armature(), do_lasso_select_objects(), do_lasso_select_pose(), blender::ed::asset_browser::AssetCatalogDropController::drop_asset_catalog_into_catalog(), blender::ed::asset_browser::AssetCatalogDropController::drop_assets_into_catalog(), ED_asset_catalog_add(), ED_asset_catalog_move(), ED_asset_catalog_remove(), ED_asset_catalog_rename(), ED_fileselect_activate_asset_catalog(), ED_fileselect_activate_by_id(), ED_fileselect_activate_by_relpath(), ED_fileselect_clear(), ED_fileselect_deselect_all(), ED_gpencil_set_active_channel(), ED_gpencil_tag_scene_gpencil(), ED_mesh_color_add(), ED_mesh_color_remove_index(), ED_mesh_sculpt_color_add(), ED_mesh_sculpt_color_remove_index(), ED_mesh_uv_add(), ED_mesh_uv_remove_index(), ED_node_set_active(), ED_node_tag_update_id(), ED_node_tree_pop(), ED_node_tree_push(), ED_node_tree_start(), ED_object_base_active_refresh(), ED_object_constraint_copy_for_object(), ED_object_constraint_copy_for_pose(), ED_object_constraint_link(), ED_object_constraint_move_to_index(), ED_object_editmode_enter_ex(), ED_object_editmode_exit_ex(), ED_object_gpencil_modifier_copy_to_object(), ED_object_gpencil_modifier_move_to_index(), ED_object_modifier_copy_to_object(), ED_object_modifier_move_to_index(), ED_object_particle_edit_mode_enter_ex(), ED_object_particle_edit_mode_exit_ex(), ED_object_shaderfx_copy(), ED_object_shaderfx_link(), ED_object_shaderfx_move_to_index(), ED_object_texture_paint_mode_enter_ex(), ED_object_texture_paint_mode_exit_ex(), ED_pose_bone_select_tag_update(), ED_scene_view_layer_delete(), ED_space_image_set(), ED_undo_push(), ED_uvedit_pack_islands_multi(), ED_view3d_camera_lock_sync(), EDBM_selectmode_disable(), EDBM_selectmode_set_multi(), EDBM_selectmode_toggle_multi(), edbm_shortest_path_pick_ex(), EDBM_update(), edgering_select(), blender::ed::sculpt_paint::AddOperationExecutor::execute(), blender::ed::sculpt_paint::CombOperationExecutor::execute(), blender::ed::sculpt_paint::CurvesEffectOperationExecutor::execute(), blender::ed::sculpt_paint::DeleteOperationExecutor::execute(), blender::ed::sculpt_paint::DensitySubtractOperationExecutor::execute(), blender::ed::sculpt_paint::PinchOperationExecutor::execute(), blender::ed::sculpt_paint::PuffOperationExecutor::execute(), blender::ed::sculpt_paint::SelectionPaintOperationExecutor::execute(), blender::ed::sculpt_paint::SlideOperationExecutor::execute(), blender::ed::sculpt_paint::SmoothOperationExecutor::execute(), blender::ed::sculpt_paint::SnakeHookOperatorExecutor::execute(), eyedropper_add_material(), eyedropper_gpencil_modal(), generateStrokes(), blender::ed::geometry::geometry_attribute_add_exec(), blender::ed::geometry::geometry_attribute_convert_exec(), blender::ed::geometry::geometry_attribute_remove_exec(), blender::ed::geometry::geometry_color_attribute_add_exec(), blender::ed::geometry::geometry_color_attribute_duplicate_exec(), blender::ed::geometry::geometry_color_attribute_remove_exec(), blender::ed::geometry::geometry_color_attribute_set_render_exec(), ghost_event_proc(), gizmo_area_light_prop_matrix_set(), gpencil_brush_reset_all_exec(), gpencil_brush_reset_exec(), gpencil_selectmode_toggle_exec(), gpencil_update_geometry(), gpencil_uv_transform_calc(), gpencil_uv_transform_exit(), icon_preview_endjob(), blender::io::usd::import_endjob(), import_endjob(), blender::io::usd::import_startjob(), lib_id_override_editable_toggle_exec(), lineart_gpencil_bake_endjob(), make_paths_absolute_exec(), make_paths_relative_exec(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_modal(), nlaedit_disable_tweakmode(), obedit_circle_select(), object_duplicates_make_real_exec(), outliner_hide_exec(), outliner_orphans_purge_exec(), outliner_select_sync_to_edit_bone(), outliner_select_sync_to_pose_bone(), outliner_unhide_all_exec(), override_remove_button_exec(), override_type_set_button_exec(), posttrans_gpd_clean(), posttrans_mask_clean(), preferences_asset_library_add_exec(), preferences_asset_library_remove_exec(), preview_endjob(), proj_paint_add_slot(), proxy_endjob(), ptcache_job_endjob(), rearrange_gpencil_channels(), render_endjob(), rna_property_update(), save_image_op(), scene_drop_invoke(), sculpt_dynamic_topology_toggle_exec(), sculpt_sample_detail_size_modal(), select_component_domain_invoke(), select_grouped_exec(), blender::ed::space_node::send_notifiers_after_tree_change(), shaderfx_copy_exec(), blender::ed::space_node::snode_bg_viewmove_modal(), solve_camera_freejob(), thumbnail_endjob(), trace_end_job(), track_markers_endjob(), tree_element_layer_collection_activate(), tree_element_master_collection_activate(), ui_rna_update_preferences_dirty(), uv_select_mode_exec(), uv_select_tag_update_for_object(), uv_shortest_path_pick_ex(), uvedit_pack_islands_multi(), uvedit_unwrap_multi(), view3d_collection_drop_copy_external_asset(), view3d_ob_drop_copy_external_asset(), viewRedrawPost(), weight_sample_invoke(), WM_file_tag_modified(), WM_operator_stack_clear(), wm_window_timer(), wm_xr_session_gpu_binding_context_create(), wm_xr_session_gpu_binding_context_destroy(), and wm_xr_session_update_screen().
Definition at line 337 of file wm_event_system.cc.
References ED_assetlist_storage_id_remap().
Referenced by WM_main_remap_editor_id_reference().
void WM_main_remap_editor_id_reference | ( | const IDRemapper * | mappings | ) |
Definition at line 353 of file wm_event_system.cc.
References blender::compositor::area(), BKE_id_remapper_iter(), ED_spacedata_id_remap(), ListBase::first, G_MAIN, LISTBASE_FOREACH, wmWindowManager::message_bus, Main::screens, Main::wm, wm_main_remap_assetlist(), and wm_main_remap_msgbus_notify().
Referenced by WM_init().
Definition at line 342 of file wm_event_system.cc.
References user_data, WM_msg_id_remove(), and WM_msg_id_update().
Referenced by WM_main_remap_editor_id_reference().
Clear notifiers by reference, Used so listeners don't act on freed data.
Definition at line 314 of file wm_event_system.cc.
References ListBase::first, G_MAIN, LISTBASE_FOREACH_MUTABLE, wmWindowManager::message_bus, wmWindowManager::notifier_queue, Main::wm, WM_msg_id_remove(), and wm_notifier_clear().
Referenced by WM_init().
Call an existent menu. The menu can be created in C or Python.
Definition at line 1690 of file wm_event_system.cc.
References C, blender::compositor::context, ot, ptr, RNA_string_set(), WM_operator_name_call_ptr(), WM_operator_properties_create_ptr(), WM_operator_properties_free(), and WM_operatortype_find().
Referenced by do_outliner_operation_event(), and undo_history_invoke().
|
static |
Definition at line 373 of file wm_event_system.cc.
Referenced by WM_main_remove_notifier_reference().
int WM_operator_call | ( | bContext * | C, |
wmOperator * | op | ||
) |
Definition at line 1158 of file wm_event_system.cc.
References C, and WM_operator_call_ex().
int WM_operator_call_ex | ( | struct bContext * | C, |
struct wmOperator * | op, | ||
bool | store | ||
) |
For running operators with frozen context (modal handlers, menus).
store | Store properties for re-use when an operator has finished (unless PROP_SKIP_SAVE is set). |
Definition at line 1153 of file wm_event_system.cc.
References C, and wm_operator_exec().
Referenced by dialog_exec_cb(), WM_operator_call(), and wm_operator_ui_popup_ok().
|
static |
WM_operator_name_call is the main accessor function This is for python to access since its done the operator lookup invokes operator in context.
Definition at line 1509 of file wm_event_system.cc.
References blender::compositor::area(), BKE_area_find_region_active_win(), BKE_area_find_region_type(), C, blender::compositor::context, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_operator_poll_msg_clear(), CTX_wm_operator_poll_msg_set(), CTX_wm_region(), CTX_wm_region_set(), CTX_wm_window(), wmWindow::eventstate, ot, ARegion::regiontype, RGN_TYPE_CHANNELS, RGN_TYPE_PREVIEW, RGN_TYPE_WINDOW, type, WM_OP_EXEC_AREA, WM_OP_EXEC_DEFAULT, WM_OP_EXEC_REGION_CHANNELS, WM_OP_EXEC_REGION_PREVIEW, WM_OP_EXEC_REGION_WIN, WM_OP_EXEC_SCREEN, WM_OP_INVOKE_AREA, WM_OP_INVOKE_DEFAULT, WM_OP_INVOKE_REGION_CHANNELS, WM_OP_INVOKE_REGION_PREVIEW, WM_OP_INVOKE_REGION_WIN, WM_OP_INVOKE_SCREEN, and wm_operator_invoke().
Referenced by wm_handlers_do_intern(), WM_operator_call_py(), WM_operator_name_call_ptr(), and WM_operator_poll_context().
int WM_operator_call_notest | ( | struct bContext * | C, |
struct wmOperator * | op | ||
) |
This is intended to be used when an invoke operator wants to call exec on itself and is basically like running op->type->exec() directly, no poll checks no freeing, since we assume whoever called invoke will take care of that
Definition at line 1163 of file wm_event_system.cc.
References C, and wm_operator_exec_notest().
Referenced by op_generic_value_invoke(), and WM_operator_filesel().
int WM_operator_call_py | ( | struct bContext * | C, |
struct wmOperatorType * | ot, | ||
wmOperatorCallContext | context, | ||
struct PointerRNA * | properties, | ||
struct ReportList * | reports, | ||
bool | is_undo | ||
) |
Similar to WM_operator_name_call called with WM_OP_EXEC_DEFAULT context.
poll()
must be called by python before this runs.Definition at line 1700 of file wm_event_system.cc.
References C, blender::compositor::context, CTX_wm_manager(), wmWindowManager::op_undo_depth, OPERATOR_CANCELLED, ot, and wm_operator_call_internal().
Referenced by pyop_call().
|
static |
Check whether operator is allowed to run in case interface is locked, If interface is unlocked, will always return truth.
Definition at line 5640 of file wm_event_system.cc.
References C, CTX_wm_manager(), wmOperatorType::flag, wmWindowManager::is_interface_locked, OPTYPE_LOCK_BYPASS, and ot.
Referenced by wm_handler_operator_call().
bool WM_operator_check_ui_empty | ( | wmOperatorType * | ot | ) |
Definition at line 910 of file wm_event_system.cc.
References ListBase::first, LISTBASE_FOREACH, wmOperatorType::macro, ot, PROP_HIDDEN, ptr, RNA_property_flag(), RNA_STRUCT_BEGIN, RNA_STRUCT_END, wmOperatorType::ui, WM_operator_properties_create_ptr(), and WM_operatortype_find().
Referenced by last_redo_poll().
|
static |
Definition at line 1217 of file wm_event_system.cc.
References BKE_reports_init(), BLI_addtail(), BLI_strncpy(), PointerRNA::data, ListBase::first, wmWindowManager::id, wmOperatorTypeMacro::idname, wmOperator::idname, wmOperatorType::idname, IDP_CopyProperty(), IDP_GROUP, IDP_New(), IDP_ReplaceGroupInGroup(), LISTBASE_FOREACH, wmOperator::macro, wmOperatorType::macro, wmOperatorTypeMacro::next, OP_MAX_TYPENAME, wmOperator::opm, ot, wmOperatorTypeMacro::properties, wmOperator::properties, wmOperator::ptr, wmOperator::reports, RNA_pointer_create(), RNA_property_identifier(), RNA_property_pointer_get(), RNA_STRUCT_BEGIN, RNA_STRUCT_END, RPT_FREE, RPT_STORE, wmOperatorType::srna, STREQ, wmOperator::type, WM_operator_properties_sanitize(), and WM_operatortype_find().
Referenced by wm_operator_invoke().
|
static |
repeat | When true, it doesn't register again, nor does it free. |
Definition at line 1088 of file wm_event_system.cc.
References C, CTX_wm_manager(), CTX_wm_operator_poll_msg_clear(), wmOperatorType::exec, wmOperatorType::flag, wmWindowManager::op_undo_depth, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_HANDLED, OPERATOR_RETVAL_CHECK, OPTYPE_UNDO, wmOperator::type, wm_operator_finished(), WM_operator_free(), WM_operator_poll(), and wm_operator_reports().
Referenced by WM_operator_call_ex(), WM_operator_repeat(), and WM_operator_repeat_last().
|
static |
Simply calls exec with basic checks.
Definition at line 1139 of file wm_event_system.cc.
References C, wmOperatorType::exec, OPERATOR_CANCELLED, OPERATOR_RETVAL_CHECK, and wmOperator::type.
Referenced by WM_operator_call_notest().
wmOperator* WM_operator_find_modal_by_type | ( | wmWindow * | win, |
const wmOperatorType * | ot | ||
) |
Return the first modal operator of type ot or NULL.
Definition at line 4601 of file wm_event_system.cc.
References LISTBASE_FOREACH, wmWindow::modalhandlers, wmEventHandler_Op::op, ot, wmOperator::type, and WM_HANDLER_TYPE_OP.
Referenced by gizmo_modal().
|
static |
Definition at line 1012 of file wm_event_system.cc.
References blender::compositor::area(), AREA_FLAG_OFFSCREEN, BKE_report(), BLI_assert_unreachable, C, CTX_wm_area(), CTX_wm_manager(), CTX_wm_reports(), wmOperator::customdata, ED_area_type_hud_clear(), ED_area_type_hud_ensure(), ED_undo_grouped_push_op(), ED_undo_push_op(), ReportList::flag, wmOperatorType::flag, G, G_DEBUG_WM, MEM_freeN, wmWindowManager::op_undo_depth, OPTYPE_UNDO, OPTYPE_UNDO_GROUPED, wmOperator::reports, RPT_FREE, RPT_OPERATOR, SET, wmOperator::type, WM_operator_free(), WM_operator_last_properties_store(), WM_operator_last_redo(), WM_operator_pystring(), WM_operator_region_active_win_set(), wm_operator_register(), and wm_operator_register_check().
Referenced by wm_handler_operator_call(), wm_operator_exec(), and wm_operator_invoke().
|
static |
Definition at line 2483 of file wm_event_system.cc.
References blender::compositor::area(), G_MAIN, LISTBASE_FOREACH, SpaceFile::op, SPACE_FILE, and WM_operator_free().
Referenced by WM_event_remove_handlers(), and wm_handler_fileselect_do().
|
static |
Also used for exec when 'event' is nullptr.
Definition at line 1347 of file wm_event_system.cc.
References blender::compositor::area(), BLI_rcti_isect_pt_v(), bounds(), C, CLOG_ERROR, CLOG_INFO, CTX_wm_area(), CTX_wm_manager(), CTX_wm_region(), CTX_wm_screen(), CTX_wm_window(), wmOperatorType::exec, ReportList::flag, wmOperator::flag, wmOperatorType::flag, wmOperator::idname, wmOperatorType::idname, wmOperatorType::invoke, MOUSEMOVE, OP_IS_INVOKE, OP_IS_MODAL_GRAB_CURSOR, wmWindowManager::op_undo_depth, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_HANDLED, OPERATOR_PASS_THROUGH, OPERATOR_RETVAL_CHECK, OPERATOR_RUNNING_MODAL, wmOperator::opm, OPTYPE_BLOCKING, OPTYPE_GRAB_CURSOR_X, OPTYPE_GRAB_CURSOR_XY, OPTYPE_GRAB_CURSOR_Y, OPTYPE_UNDO, ot, ARegion::regiontype, wmOperator::reports, RGN_TYPE_IS_HEADER_ANY, RGN_TYPE_WINDOW, RPT_FREE, wmOperator::type, wmEvent::type, USER_CONTINUOUS_MOUSE, ARegion::winrct, WM_cursor_grab_enable(), WM_CURSOR_WRAP_NONE, WM_CURSOR_WRAP_X, WM_CURSOR_WRAP_XY, WM_CURSOR_WRAP_Y, wm_event_handler_ui_cancel(), WM_LOG_HANDLERS, WM_LOG_OPERATORS, wm_operator_create(), wm_operator_finished(), WM_operator_free(), WM_operator_last_properties_init(), WM_operator_poll(), wm_operator_reports(), wm_region_mouse_co(), blender::bke::image::partial_update::wrap(), rcti::xmax, rcti::xmin, wmEvent::xy, rcti::ymax, and rcti::ymin.
Referenced by wm_handler_operator_call(), and wm_operator_call_internal().
bool WM_operator_is_repeat | ( | const bContext * | C, |
const wmOperator * | op | ||
) |
Definition at line 1203 of file wm_event_system.cc.
References C, CTX_wm_manager(), ListBase::last, wmOperator::next, wmWindowManager::operators, wmOperator::prev, and wmOperator::type.
int WM_operator_name_call | ( | struct bContext * | C, |
const char * | opstring, | ||
wmOperatorCallContext | context, | ||
struct PointerRNA * | properties, | ||
const wmEvent * | event | ||
) |
Definition at line 1653 of file wm_event_system.cc.
References C, blender::compositor::context, ot, WM_operator_name_call_ptr(), and WM_operatortype_find().
Referenced by annotation_draw_modal(), asset_bundle_install_exec(), console_indent_or_autocomplete_exec(), console_main_region_draw(), console_paste_exec(), do_running_jobs(), ED_object_mode_compat_set(), file_smoothscroll_invoke(), gpencil_blank_frame_add_exec(), gpencil_material_to_vertex_exec(), image_save_invoke(), mouse_nla_strips(), nlaedit_select_leftright(), blender::ed::space_node::node_render_changed_exec(), blender::ed::space_node::node_toggle_button_cb(), outliner_animdata_operation_exec(), outliner_id_operation_exec(), paintcurve_draw_exec(), pyop_call(), report_replay_exec(), save_file_forwardcompat_overwrite(), save_file_forwardcompat_saveas(), text_indent_or_autocomplete_exec(), text_save_invoke(), ui_but_anim_copy_driver(), ui_but_anim_paste_driver(), view3d_navigate_invoke(), view3d_ruler_add_invoke(), view_pan_modal(), viewdolly_modal(), viewmove_modal(), viewroll_modal(), viewrotate_modal(), viewzoom_modal(), wm_block_autorun_warning_enable_scripts(), wm_block_autorun_warning_reload_with_scripts(), wm_block_file_close_save(), WM_gizmo_modal_set_from_setup(), and WM_init_splash().
int WM_operator_name_call_ptr | ( | struct bContext * | C, |
struct wmOperatorType * | ot, | ||
wmOperatorCallContext | context, | ||
struct PointerRNA * | properties, | ||
const wmEvent * | event | ||
) |
Invokes operator in context.
event | Optionally pass in an event to use when context uses one of the WM_OP_INVOKE_* values. When left unset the wmWindow.eventstate will be used, this can cause problems for operators that read the events type - for example, storing the key that was pressed so as to be able to detect it's release. In these cases it's necessary to forward the current event being handled. |
Definition at line 1644 of file wm_event_system.cc.
References BLI_assert, C, blender::compositor::context, wmOperatorType::idname, ot, wm_operator_call_internal(), and WM_operatortype_find().
Referenced by add_driver_button_menu_exec(), bone_mouse_select_menu(), constraint_reorder(), doc_view_manual_ui_context_exec(), ED_object_mode_set_ex(), file_browse_invoke(), file_directory_enter_handle(), ghost_event_proc(), gpencil_modifier_reorder(), id_remap_fn(), image_file_browse_invoke(), lib_relocate(), blender::ed::space_node::link_drag_search_exec_fn(), modifier_reorder(), object_mouse_select_menu(), operator_search_exec_fn(), outliner_item_drag_drop_invoke(), sculpt_detail_size_set_radial_control(), shaderfx_reorder(), transform_from_gizmo_invoke(), ui_but_anim_decorate_cb(), ui_handler_wait_for_input(), view3d_interactive_add_modal(), view3d_lightcache_update(), WM_gizmo_operator_invoke(), WM_menu_name_call(), WM_operator_name_call(), WM_operator_name_call_ptr_with_depends_on_cursor(), WM_operator_name_call_with_properties(), wm_test_autorun_revert_action_exec(), and WM_toolsystem_ref_set_by_id_ex().
void WM_operator_name_call_ptr_with_depends_on_cursor | ( | bContext * | C, |
wmOperatorType * | ot, | ||
wmOperatorCallContext | opcontext, | ||
PointerRNA * | properties, | ||
const wmEvent * | event, | ||
const char * | drawstr | ||
) |
Definition at line 1827 of file wm_event_system.cc.
References blender::compositor::area(), uiOperatorWaitForInput::area, C, uiOperatorWaitForInput::context, CTX_IFACE_, CTX_store_copy(), CTX_store_get(), CTX_wm_area(), CTX_wm_window(), wmOperatorType::cursor_pending, PointerRNA::data, ED_area_status_text(), ED_workspace_status_text(), wmOperatorType::flag, IDP_CopyProperty(), IFACE_, LISTBASE_FOREACH, wmOperatorType::macro, wmWindow::modalhandlers, wmOperatorType::name, wmOperatorCallParams::opcontext, wmOperatorCallParams::opptr, wmOperatorCallParams::optype, OPTYPE_DEPENDS_ON_CURSOR, uiOperatorWaitForInput::optype_params, ot, SNPRINTF, wmOperatorType::translation_context, ui_handler_wait_for_input(), ui_handler_wait_for_input_remove(), UI_MAX_DRAW_STR, WM_cursor_modal_set(), WM_event_add_ui_handler(), WM_HANDLER_BLOCKING, WM_OP_CONTEXT_HAS_AREA, WM_operator_name_call_ptr(), and WM_operatortype_find().
Referenced by menu_search_exec_fn(), ui_apply_but_funcs_after(), and ui_but_extra_operator_icon_apply().
int WM_operator_name_call_with_properties | ( | bContext * | C, |
const char * | opstring, | ||
wmOperatorCallContext | context, | ||
IDProperty * | properties, | ||
const wmEvent * | event | ||
) |
Definition at line 1677 of file wm_event_system.cc.
References C, blender::compositor::context, G_MAIN, wmWindowManager::id, ot, RNA_pointer_create(), wmOperatorType::srna, WM_operator_name_call_ptr(), and WM_operatortype_find().
Referenced by wm_homefile_read_after_dialog_callback(), wm_open_mainfile_after_dialog_callback(), and wm_recover_last_session_after_dialog_callback().
Definition at line 1667 of file wm_event_system.cc.
References C, ot, WM_operator_poll(), and WM_operatortype_find().
Referenced by file_panel_asset_catalog_buttons_draw().
bool WM_operator_poll | ( | bContext * | C, |
wmOperatorType * | ot | ||
) |
Definition at line 881 of file wm_event_system.cc.
References C, LISTBASE_FOREACH, wmOperatorType::macro, ot, wmOperatorType::poll, wmOperatorType::pyop_poll, and WM_operatortype_find().
Referenced by ED_undo_operator_repeat(), edbm_point_normals_modal(), last_redo_poll(), menu_items_from_all_operators(), operator_search_update_fn(), wm_operator_exec(), wm_operator_invoke(), and WM_operator_name_poll().
bool WM_operator_poll_context | ( | bContext * | C, |
wmOperatorType * | ot, | ||
short | context | ||
) |
Definition at line 903 of file wm_event_system.cc.
References C, blender::compositor::context, ot, and wm_operator_call_internal().
Referenced by dropbox_active(), pyop_call(), pyop_poll(), ui_but_context_poll_operator_ex(), wm_drop_prepare(), WM_event_match_keymap_item(), and wm_handlers_do_gizmo_handler().
Sets the active region for this space from the context.
Definition at line 941 of file wm_event_system.cc.
References blender::compositor::area(), BLI_findindex(), C, CTX_wm_area(), CTX_wm_region(), ARegion::regiontype, and RGN_TYPE_WINDOW.
Referenced by wm_operator_finished().
|
static |
This function is mainly to check that the rules for freeing an operator are kept in sync.
Definition at line 1005 of file wm_event_system.cc.
References wmOperatorType::flag, wmWindowManager::op_undo_depth, OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by wm_operator_finished().
int WM_operator_repeat | ( | struct bContext * | C, |
struct wmOperator * | op | ||
) |
Execute this operator again, put here so it can share above code
Definition at line 1168 of file wm_event_system.cc.
References C, wmOperator::flag, OP_IS_REPEAT, ret, and wm_operator_exec().
Referenced by ED_undo_operator_repeat(), repeat_history_exec(), and wm_block_redo_cb().
bool WM_operator_repeat_check | ( | const bContext * | UNUSEDC, |
wmOperator * | op | ||
) |
Definition at line 1184 of file wm_event_system.cc.
References wmOperatorType::exec, LISTBASE_FOREACH, wmOperatorType::macro, wmOperator::opm, wmOperator::type, and WM_operatortype_find().
Referenced by ED_undo_operator_repeat(), last_redo_poll(), repeat_history_invoke(), template_operator_property_buts_draw_single(), and uiTemplateOperatorRedoProperties().
int WM_operator_repeat_last | ( | bContext * | C, |
wmOperator * | op | ||
) |
Definition at line 1176 of file wm_event_system.cc.
References C, wmOperator::flag, OP_IS_REPEAT_LAST, ret, and wm_operator_exec().
Referenced by repeat_last_exec().
|
static |
caller_owns_reports | True when called from Python. |
Definition at line 955 of file wm_event_system.cc.
References BKE_report(), BKE_reports_print(), BLI_listbase_is_empty(), C, CLOG_STR_INFO_N, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_region(), CTX_wm_region_set(), CTX_wm_reports(), CTX_wm_window(), CTX_wm_window_set(), ListBase::first, wmOperatorType::flag, G, ReportList::list, MEM_freeN, NC_SPACE, ND_SPACE_INFO_REPORT, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPTYPE_REGISTER, wmOperator::reports, RPT_DEBUG, RPT_OPERATOR, wmOperator::type, UI_popup_menu_reports(), wm_add_reports(), WM_event_add_notifier(), WM_LOG_OPERATORS, and WM_operator_pystring().
Referenced by wm_handler_fileselect_do(), wm_handler_operator_call(), wm_operator_exec(), and wm_operator_invoke().
|
static |
Definition at line 3503 of file wm_event_system.cc.
References C, CTX_wm_window(), wmPaintCursor::next, wmPaintCursor::poll, and WM_paint_cursor_tag_redraw().
Referenced by wm_paintcursor_test().
Called on mouse-move, check updates for wm->paintcursors
.
Definition at line 3520 of file wm_event_system.cc.
References blender::compositor::area(), area_event_inside(), BLI_rcti_isect_pt_v(), C, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_region(), CTX_wm_region_set(), ListBase::first, wmWindowManager::paintcursors, wmEvent::prev_xy, region_event_inside(), ARegion::winrct, and wm_paintcursor_tag().
Referenced by wm_event_do_handlers().
Definition at line 1329 of file wm_event_system.cc.
References C, CTX_wm_region(), ARegion::winrct, rcti::xmin, and rcti::ymin.
Referenced by wm_event_do_handlers(), wm_event_do_region_handlers(), wm_handler_operator_call(), wm_handlers_do_gizmo_handler(), and wm_operator_invoke().
This isn't very nice but needed to redraw gizmos which are hidden while tweaking, See WM_GIZMOGROUPTYPE_DELAY_REFRESH_FOR_TWEAK for details.
Definition at line 1310 of file wm_event_system.cc.
References blender::compositor::area(), ED_region_tag_redraw(), ED_screen_areas_iter, LISTBASE_FOREACH, UNLIKELY, WM_gizmomap_tag_delay_refresh_for_tweak_check(), and WM_window_get_active_screen().
Referenced by wm_event_do_handlers().
void WM_report | ( | eReportType | type, |
const char * | message | ||
) |
Definition at line 848 of file wm_event_system.cc.
References BKE_report(), BKE_reports_clear(), BKE_reports_init(), RPT_STORE, type, and wm_add_reports().
Referenced by action_preview_render_prepare(), button_activate_state(), cachefile_layer_add_exec(), decimate_graph_keys(), dpaint_bake_endjob(), blender::io::alembic::export_startjob(), fmodifier_reorder(), graph_driver_delete_invalid_exec(), graph_slider_invoke(), blender::io::usd::import_endjob(), import_endjob(), lineart_gpencil_bake_common(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_invoke(), quadriflow_end_job(), ui_but_paste_color(), ui_but_paste_normalized_vector(), ui_but_paste_numeric_array(), ui_but_paste_numeric_value(), ui_do_but_HOTKEYEVT(), wm_draw_region_buffer_create(), WM_reportf(), and wm_xr_error_handler().
Show the report in the info header.
Definition at line 806 of file wm_event_system.cc.
References wmTimer::customdata, G_MAIN, wmWindowManager::reports, ReportList::reporttimer, TIMERREPORT, wmWindowManager::winactive, WM_event_add_timer(), and WM_event_remove_timer().
Referenced by renamebutton_cb(), ui_but_string_set(), ui_textedit_end(), wm_add_reports(), wm_block_file_close_save(), wm_file_read_report(), wm_handler_fileselect_do(), and wm_xr_error_handler().
Hide all currently displayed banners and abort their timer.
Definition at line 821 of file wm_event_system.cc.
References BKE_reports_clear(), ListBase::first, wmWindowManager::reports, ReportList::reporttimer, Main::wm, and WM_event_remove_timer().
Referenced by fluid_bake_exec(), fluid_bake_invoke(), and fluid_free_exec().
void WM_reportf | ( | eReportType | type, |
const char * | format, | ||
... | |||
) |
Definition at line 859 of file wm_event_system.cc.
References BLI_dynstr_free(), BLI_dynstr_get_cstring(), BLI_dynstr_new(), BLI_dynstr_vappendf(), MEM_freeN, str, type, and WM_report().
Referenced by action_preview_render_prepare(), blender::io::usd::copy_single_file(), blender::io::usd::copy_tiled_textures(), blender::io::usd::USDVolumeWriter::do_write(), dpaint_bake_endjob(), blender::io::usd::export_in_memory_texture(), blender::io::usd::export_startjob(), fluid_bake_endjob(), fluid_free_endjob(), graph_driver_delete_invalid_exec(), blender::io::usd::import_startjob(), quadriflow_end_job(), renamebutton_cb(), and ui_textedit_end().
void WM_set_locked_interface | ( | struct wmWindowManager * | wm, |
bool | lock | ||
) |
Lock the interface for any communication.
Definition at line 5653 of file wm_event_system.cc.
References BKE_spacedata_draw_locks(), wmWindowManager::is_interface_locked, and lock.
Referenced by dpaint_bake_endjob(), dynamicpaint_bake_exec(), blender::io::alembic::export_endjob(), blender::io::usd::export_endjob(), blender::io::alembic::export_startjob(), blender::io::usd::export_startjob(), flip_pose(), fluid_bake_endjob(), fluid_bake_invoke(), fluid_free_endjob(), fluid_free_exec(), blender::io::usd::import_endjob(), import_endjob(), blender::io::usd::import_startjob(), import_startjob(), lineart_gpencil_bake_common(), lineart_gpencil_bake_endjob(), ptcache_bake_invoke(), ptcache_job_endjob(), ptcache_job_startjob(), quadriflow_end_job(), quadriflow_remesh_exec(), render_endjob(), screen_render_invoke(), solve_camera_freejob(), solve_camera_initjob(), track_markers_freejob(), and track_markers_initjob().
void wm_tablet_data_from_ghost | ( | const GHOST_TabletData * | tablet_data, |
wmTabletData * | wmtab | ||
) |
Definition at line 4901 of file wm_event_system.cc.
References GHOST_TabletData::Active, wmTabletData::active, GHOST_kTabletModeNone, wmTabletData::is_motion_absolute, GHOST_TabletData::Pressure, wmTabletData::pressure, wm_event_tablet_data_default(), wm_pressure_curve(), wmTabletData::x_tilt, GHOST_TabletData::Xtilt, wmTabletData::y_tilt, and GHOST_TabletData::Ytilt.
Referenced by wm_event_add_ghostevent().
|
static |
Definition at line 255 of file wm_event_system.cc.
References LISTBASE_FOREACH, wmWindowManager::notifier_queue, and type.
Referenced by WM_event_add_notifier_ex(), and WM_main_add_notifier().
const char* WM_window_cursor_keymap_status_get | ( | const wmWindow * | win, |
int | button_index, | ||
int | type_index | ||
) |
Definition at line 5782 of file wm_event_system.cc.
References wmWindow::cursor_keymap_status, and CursorKeymapInfo::text.
Referenced by uiTemplateInputStatus().
Definition at line 5820 of file wm_event_system.cc.
References bScreen::active_region, blender::compositor::area(), ARRAY_SIZE, BKE_area_find_region_type(), BLI_findindex(), C, CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_region_set(), CTX_wm_window_set(), wmWindow::cursor_keymap_status, ED_area_tag_redraw(), ED_screen_areas_iter, ELEM, wmWindow::eventstate, wmEvent::flag, ARegion::handlers, wmWindow::handlers, wmKeyMapItem::idname, KM_CLICK, KM_CLICK_DRAG, KM_PRESS, LEFTMOUSE, MEM_callocN, MEM_SAFE_FREE, MIDDLEMOUSE, ot, wmKeyMapItem::ptr, ARegion::regiontype, RGN_TYPE_FOOTER, RGN_TYPE_HEADER, RGN_TYPE_HUD, RGN_TYPE_TEMPORARY, RGN_TYPE_TOOL_HEADER, RGN_TYPE_TOOL_PROPS, RGN_TYPE_TOOLS, RGN_TYPE_WINDOW, RIGHTMOUSE, SPACE_STATUSBAR, SPACE_TOPBAR, bToolKey::space_type, CursorKeymapInfo::state, CursorKeymapInfo::state_event, STRNCPY, CursorKeymapInfo::text, wmEvent::type, UNLIKELY, wmEvent::val, wm_event_cursor_store(), WM_event_match_keymap_item_from_handlers(), wm_eventemulation(), WM_operatortype_find(), WM_operatortype_name(), WM_toolsystem_mode_from_spacetype(), WM_toolsystem_ref_find(), WM_TOOLSYSTEM_SPACE_MASK, WM_window_get_active_screen(), WM_window_get_active_view_layer(), WM_window_get_active_workspace(), and WM_window_status_area_find().
Referenced by wm_event_do_notifiers().
Definition at line 5972 of file wm_event_system.cc.
References BLI_snprintf(), C, CTX_wm_manager(), ListBase::first, EnumPropertyItem::identifier, wmKeyMap::items, KM_RELEASE, LISTBASE_FOREACH, wmKeyMap::modal_items, wmWindow::modalhandlers, wmOperatorType::modalkeymap, wmKeyMapItem::next, wmEventHandler_Op::op, wmKeyMap::poll_modal_item, wmKeyMapItem::propvalue, wmOperator::type, UI_MAX_DRAW_STR, UI_MAX_SHORTCUT_STR, uiItemL(), uiLayoutRow(), uiTemplateEventFromKeymapItem(), wmKeyMapItem::val, EnumPropertyItem::value, WM_HANDLER_TYPE_OP, WM_keymap_active(), and WM_modalkeymap_operator_items_to_string_buf().
Referenced by uiTemplateInputStatus().
Similar to BKE_screen_area_map_find_area_xy and related functions, use here since the area is stored in the window manager.
Definition at line 5796 of file wm_event_system.cc.
References blender::compositor::area(), ScrAreaMap::areabase, wmWindow::global_areas, LISTBASE_FOREACH, SCREENFULL, SPACE_STATUSBAR, and bScreen::state.
Referenced by WM_window_cursor_keymap_status_refresh(), and WM_window_status_area_tag_redraw().
Definition at line 5811 of file wm_event_system.cc.
References blender::compositor::area(), ED_area_tag_redraw(), WM_window_get_active_screen(), and WM_window_status_area_find().
Referenced by transformEvent(), WM_event_add_modal_handler(), and wm_handler_operator_call().