Blender V4.3
ED_screen.hh File Reference
#include "DNA_screen_types.h"
#include "DNA_space_types.h"
#include "DNA_view2d_types.h"
#include "DNA_view3d_types.h"
#include "DNA_workspace_types.h"
#include "DNA_object_enums.h"
#include "WM_types.hh"
#include "BLI_compiler_attrs.h"

Go to the source code of this file.

Classes

class  WorkspaceStatus
 

Macros

#define ED_screen_areas_iter(win, screen, area_name)
 
#define ED_screen_verts_iter(win, screen, vert_name)
 

Enumerations

enum  {
  ED_KEYMAP_UI = (1 << 1) , ED_KEYMAP_GIZMO = (1 << 2) , ED_KEYMAP_TOOL = (1 << 3) , ED_KEYMAP_VIEW2D = (1 << 4) ,
  ED_KEYMAP_ANIMATION = (1 << 6) , ED_KEYMAP_FRAMES = (1 << 7) , ED_KEYMAP_HEADER = (1 << 8) , ED_KEYMAP_FOOTER = (1 << 9) ,
  ED_KEYMAP_GPENCIL = (1 << 10) , ED_KEYMAP_NAVBAR = (1 << 11) , ED_KEYMAP_ASSET_SHELF = (1 << 12)
}
 
enum  eScreenCycle { SPACE_CONTEXT_CYCLE_PREV , SPACE_CONTEXT_CYCLE_NEXT }
 

Functions

void ED_region_do_listen (wmRegionListenerParams *params)
 
void ED_region_do_layout (bContext *C, ARegion *region)
 
void ED_region_do_draw (bContext *C, ARegion *region)
 
void ED_region_exit (bContext *C, ARegion *region)
 
void ED_region_remove (bContext *C, ScrArea *area, ARegion *region)
 
void ED_region_pixelspace (const ARegion *region)
 
void ED_region_update_rect (ARegion *region)
 
void ED_region_floating_init (ARegion *region)
 
void ED_region_tag_redraw (ARegion *region)
 
void ED_region_tag_redraw_partial (ARegion *region, const rcti *rct, bool rebuild)
 
void ED_region_tag_redraw_cursor (ARegion *region)
 
void ED_region_tag_redraw_no_rebuild (ARegion *region)
 
void ED_region_tag_refresh_ui (ARegion *region)
 
void ED_region_tag_redraw_editor_overlays (ARegion *region)
 
void ED_region_search_filter_update (const ScrArea *area, ARegion *region)
 
const char * ED_area_region_search_filter_get (const ScrArea *area, const ARegion *region)
 
void ED_region_panels_init (wmWindowManager *wm, ARegion *region)
 
void ED_region_panels_ex (const bContext *C, ARegion *region, wmOperatorCallContext op_context, const char *contexts[])
 
void ED_region_panels (const bContext *C, ARegion *region)
 
void ED_region_panels_layout_ex (const bContext *C, ARegion *region, ListBase *paneltypes, wmOperatorCallContext op_context, const char *contexts[], const char *category_override)
 
bool ED_region_property_search (const bContext *C, ARegion *region, ListBase *paneltypes, const char *contexts[], const char *category_override)
 
void ED_region_panels_layout (const bContext *C, ARegion *region)
 
void ED_region_panels_draw (const bContext *C, ARegion *region)
 
void ED_region_header_init (ARegion *region)
 
void ED_region_header (const bContext *C, ARegion *region)
 
void ED_region_header_layout (const bContext *C, ARegion *region)
 
void ED_region_header_draw (const bContext *C, ARegion *region)
 
void ED_region_header_with_button_sections (const bContext *C, ARegion *region, uiButtonSectionsAlign align)
 
void ED_region_header_draw_with_button_sections (const bContext *C, const ARegion *region, uiButtonSectionsAlign align)
 
void ED_region_cursor_set (wmWindow *win, ScrArea *area, ARegion *region)
 
void ED_region_toggle_hidden (bContext *C, ARegion *region)
 
void ED_region_visibility_change_update_ex (bContext *C, ScrArea *area, ARegion *region, bool is_hidden, bool do_init)
 
void ED_region_visibility_change_update (bContext *C, ScrArea *area, ARegion *region)
 
void ED_region_visibility_change_update_animated (bContext *C, ScrArea *area, ARegion *region)
 
void ED_region_clear (const bContext *C, const ARegion *region, int colorid)
 
void ED_region_info_draw (ARegion *region, const char *text, const float fill_color[4], bool full_redraw)
 
void ED_region_info_draw_multiline (ARegion *region, const char *text_array[], const float fill_color[4], bool full_redraw)
 
void ED_region_image_metadata_panel_draw (ImBuf *ibuf, uiLayout *layout)
 
void ED_region_grid_draw (ARegion *region, float zoomx, float zoomy, float x0, float y0)
 
float ED_region_blend_alpha (ARegion *region)
 
const rctiED_region_visible_rect (ARegion *region)
 
bool ED_region_is_overlap (int spacetype, int regiontype)
 
int ED_region_snap_size_test (const ARegion *region)
 
bool ED_region_snap_size_apply (ARegion *region, int snap_flag)
 
void ED_region_do_msg_notify_tag_redraw (bContext *C, wmMsgSubscribeKey *msg_key, wmMsgSubscribeValue *msg_val)
 
void ED_area_do_msg_notify_tag_refresh (bContext *C, wmMsgSubscribeKey *msg_key, wmMsgSubscribeValue *msg_val)
 
void ED_area_do_mgs_subscribe_for_tool_header (const wmRegionMessageSubscribeParams *params)
 
void ED_area_do_mgs_subscribe_for_tool_ui (const wmRegionMessageSubscribeParams *params)
 
void ED_region_message_subscribe (wmRegionMessageSubscribeParams *params)
 
void ED_spacetypes_keymap (wmKeyConfig *keyconf)
 
int ED_area_header_switchbutton (const bContext *C, uiBlock *block, int yco)
 
void ED_area_init (wmWindowManager *wm, wmWindow *win, ScrArea *area)
 
void ED_area_exit (bContext *C, ScrArea *area)
 
blender::StringRefNull ED_area_name (const ScrArea *area)
 
int ED_area_icon (const ScrArea *area)
 
int ED_screen_area_active (const bContext *C)
 
void ED_screen_global_areas_refresh (wmWindow *win)
 
void ED_screen_global_areas_sync (wmWindow *win)
 
void ED_area_do_listen (wmSpaceTypeListenerParams *params)
 
void ED_area_tag_redraw (ScrArea *area)
 
void ED_area_tag_redraw_no_rebuild (ScrArea *area)
 
void ED_area_tag_redraw_regiontype (ScrArea *area, int regiontype)
 
void ED_area_tag_refresh (ScrArea *area)
 
void ED_area_tag_region_size_update (ScrArea *area, ARegion *changed_region)
 
void ED_area_do_refresh (bContext *C, ScrArea *area)
 
AZoneED_area_azones_update (ScrArea *area, const int mouse_xy[2])
 
void ED_area_status_text (ScrArea *area, const char *str)
 
void ED_area_newspace (bContext *C, ScrArea *area, int type, bool skip_region_exit)
 
void ED_area_prevspace (bContext *C, ScrArea *area)
 
void ED_area_swapspace (bContext *C, ScrArea *sa1, ScrArea *sa2)
 
int ED_area_headersize ()
 
int ED_area_footersize ()
 
int ED_area_global_size_y (const ScrArea *area)
 
int ED_area_global_min_size_y (const ScrArea *area)
 
int ED_area_global_max_size_y (const ScrArea *area)
 
bool ED_area_is_global (const ScrArea *area)
 
int ED_region_global_size_y ()
 
void ED_area_update_region_sizes (wmWindowManager *wm, wmWindow *win, ScrArea *area)
 
bool ED_area_has_shared_border (ScrArea *a, ScrArea *b)
 
ScrAreaED_area_offscreen_create (wmWindow *win, eSpace_Type space_type)
 
void ED_area_offscreen_free (wmWindowManager *wm, wmWindow *win, ScrArea *area)
 
ScrAreaED_area_find_under_cursor (const bContext *C, int spacetype, const int event_xy[2])
 
ScrAreaED_screen_areas_iter_first (const wmWindow *win, const bScreen *screen)
 
ScrAreaED_screen_areas_iter_next (const bScreen *screen, const ScrArea *area)
 
void ED_screens_init (bContext *C, Main *bmain, wmWindowManager *wm)
 
void ED_screen_draw_edges (wmWindow *win)
 
void ED_screen_refresh (bContext *C, wmWindowManager *wm, wmWindow *win)
 
void ED_screen_ensure_updated (bContext *C, wmWindowManager *wm, wmWindow *win)
 
void ED_screen_do_listen (bContext *C, const wmNotifier *note)
 
bool ED_screen_change (bContext *C, bScreen *screen)
 Change the active screen.
 
void ED_screen_scene_change (bContext *C, wmWindow *win, Scene *scene, bool refresh_toolsystem)
 
void ED_screen_set_active_region (bContext *C, wmWindow *win, const int xy[2])
 
void ED_screen_exit (bContext *C, wmWindow *window, bScreen *screen)
 
void ED_screen_animation_timer (bContext *C, int redraws, int sync, int enable)
 
void ED_screen_animation_timer_update (bScreen *screen, int redraws)
 
void ED_screen_restore_temp_type (bContext *C, ScrArea *area)
 
ScrAreaED_screen_full_newspace (bContext *C, ScrArea *area, int type)
 
void ED_screen_full_prevspace (bContext *C, ScrArea *area)
 
void ED_screen_full_restore (bContext *C, ScrArea *area)
 
bScreenED_screen_state_maximized_create (bContext *C)
 
ScrAreaED_screen_state_toggle (bContext *C, wmWindow *win, ScrArea *area, short state)
 
ScrAreaED_screen_temp_space_open (bContext *C, const char *title, const rcti *rect_unscaled, eSpace_Type space_type, int display_type, bool dialog) ATTR_NONNULL(1
 
ScrArea void ED_screens_header_tools_menu_create (bContext *C, uiLayout *layout, void *arg)
 
void ED_screens_footer_tools_menu_create (bContext *C, uiLayout *layout, void *arg)
 
void ED_screens_region_flip_menu_create (bContext *C, uiLayout *layout, void *arg)
 
bool ED_screen_stereo3d_required (const bScreen *screen, const Scene *scene)
 
SceneED_screen_scene_find (const bScreen *screen, const wmWindowManager *wm)
 
SceneED_screen_scene_find_with_window (const bScreen *screen, const wmWindowManager *wm, wmWindow **r_window)
 
ScrAreaED_screen_area_find_with_spacedata (const bScreen *screen, const SpaceLink *sl, bool only_visible)
 
wmWindowED_screen_window_find (const bScreen *screen, const wmWindowManager *wm)
 
WorkSpaceED_workspace_add (Main *bmain, const char *name) ATTR_NONNULL()
 
bool ED_workspace_change (WorkSpace *workspace_new, bContext *C, wmWindowManager *wm, wmWindow *win) ATTR_NONNULL()
 Change the active workspace.
 
WorkSpaceED_workspace_duplicate (WorkSpace *workspace_old, Main *bmain, wmWindow *win)
 
bool ED_workspace_delete (WorkSpace *workspace, Main *bmain, bContext *C, wmWindowManager *wm) ATTR_NONNULL()
 
void ED_workspace_scene_data_sync (WorkSpaceInstanceHook *hook, Scene *scene) ATTR_NONNULL()
 
WorkSpaceLayoutED_workspace_screen_change_ensure_unused_layout (Main *bmain, WorkSpace *workspace, WorkSpaceLayout *layout_new, const WorkSpaceLayout *layout_fallback_base, wmWindow *win) ATTR_NONNULL()
 
WorkSpaceLayoutED_workspace_layout_add (Main *bmain, WorkSpace *workspace, wmWindow *win, const char *name) ATTR_NONNULL()
 
WorkSpaceLayoutED_workspace_layout_duplicate (Main *bmain, WorkSpace *workspace, const WorkSpaceLayout *layout_old, wmWindow *win) ATTR_NONNULL()
 
bool ED_workspace_layout_delete (WorkSpace *workspace, WorkSpaceLayout *layout_old, bContext *C) ATTR_NONNULL()
 
bool ED_workspace_layout_cycle (WorkSpace *workspace, short direction, bContext *C) ATTR_NONNULL()
 
void ED_workspace_status_text (bContext *C, const char *str)
 
void ED_workspace_do_listen (bContext *C, const wmNotifier *note)
 
void ED_update_for_newframe (Main *bmain, Depsgraph *depsgraph)
 
int ED_screen_animation_play (bContext *C, int sync, int mode)
 
bScreenED_screen_animation_playing (const wmWindowManager *wm)
 
bScreenED_screen_animation_no_scrub (const wmWindowManager *wm)
 
void ED_operatortypes_screen ()
 
void ED_keymap_screen (wmKeyConfig *keyconf)
 
void ED_operatortypes_workspace ()
 
bool ED_operator_screenactive (bContext *C)
 
bool ED_operator_screenactive_nobackground (bContext *C)
 
bool ED_operator_screen_mainwinactive (bContext *C)
 
bool ED_operator_areaactive (bContext *C)
 
bool ED_operator_regionactive (bContext *C)
 
bool ED_operator_scene (bContext *C)
 
bool ED_operator_scene_editable (bContext *C)
 
bool ED_operator_objectmode (bContext *C)
 
bool ED_operator_objectmode_poll_msg (bContext *C)
 
bool ED_operator_objectmode_with_view3d_poll_msg (bContext *C)
 
bool ED_operator_view3d_active (bContext *C)
 
bool ED_operator_region_view3d_active (bContext *C)
 
bool ED_operator_region_gizmo_active (bContext *C)
 
bool ED_operator_animview_active (bContext *C)
 
bool ED_operator_outliner_active (bContext *C)
 
bool ED_operator_region_outliner_active (bContext *C)
 
bool ED_operator_outliner_active_no_editobject (bContext *C)
 
bool ED_operator_file_active (bContext *C)
 
bool ED_operator_file_browsing_active (bContext *C)
 
bool ED_operator_asset_browsing_active (bContext *C)
 
bool ED_operator_spreadsheet_active (bContext *C)
 
bool ED_operator_action_active (bContext *C)
 
bool ED_operator_buttons_active (bContext *C)
 
bool ED_operator_node_active (bContext *C)
 
bool ED_operator_node_editable (bContext *C)
 
bool ED_operator_graphedit_active (bContext *C)
 
bool ED_operator_sequencer_active (bContext *C)
 
bool ED_operator_sequencer_active_editable (bContext *C)
 
bool ED_operator_image_active (bContext *C)
 
bool ED_operator_nla_active (bContext *C)
 
bool ED_operator_info_active (bContext *C)
 
bool ED_operator_console_active (bContext *C)
 
bool ED_operator_object_active (bContext *C)
 
bool ED_operator_object_active_editable_ex (bContext *C, const Object *ob)
 
bool ED_operator_object_active_editable (bContext *C)
 
bool ED_operator_object_active_local_editable_ex (bContext *C, const Object *ob)
 
bool ED_operator_object_active_local_editable (bContext *C)
 
bool ED_operator_object_active_editable_mesh (bContext *C)
 
bool ED_operator_object_active_editable_font (bContext *C)
 
bool ED_operator_editable_mesh (bContext *C)
 
bool ED_operator_editmesh (bContext *C)
 
bool ED_operator_editmesh_view3d (bContext *C)
 
bool ED_operator_editmesh_region_view3d (bContext *C)
 
bool ED_operator_editarmature (bContext *C)
 
bool ED_operator_editcurve (bContext *C)
 
bool ED_operator_editcurve_3d (bContext *C)
 
bool ED_operator_editsurf (bContext *C)
 
bool ED_operator_editsurfcurve (bContext *C)
 
bool ED_operator_editsurfcurve_region_view3d (bContext *C)
 
bool ED_operator_editfont (bContext *C)
 
bool ED_operator_editlattice (bContext *C)
 
bool ED_operator_editmball (bContext *C)
 
bool ED_operator_uvedit (bContext *C)
 
bool ED_operator_uvedit_space_image (bContext *C)
 
bool ED_operator_uvmap (bContext *C)
 
bool ED_operator_posemode_exclusive (bContext *C)
 
bool ED_operator_object_active_local_editable_posemode_exclusive (bContext *C)
 
bool ED_operator_posemode_context (bContext *C)
 
bool ED_operator_posemode (bContext *C)
 
bool ED_operator_posemode_local (bContext *C)
 
bool ED_operator_camera_poll (bContext *C)
 
bUserMenu ** ED_screen_user_menus_find (const bContext *C, uint *r_len)
 
bUserMenuED_screen_user_menu_ensure (bContext *C)
 
bUserMenuItem_OpED_screen_user_menu_item_find_operator (ListBase *lb, const wmOperatorType *ot, IDProperty *prop, const char *op_prop_enum, wmOperatorCallContext opcontext)
 
bUserMenuItem_MenuED_screen_user_menu_item_find_menu (ListBase *lb, const MenuType *mt)
 
bUserMenuItem_PropED_screen_user_menu_item_find_prop (ListBase *lb, const char *context_data_path, const char *prop_id, int prop_index)
 
void ED_screen_user_menu_item_add_operator (ListBase *lb, const char *ui_name, const wmOperatorType *ot, const IDProperty *prop, const char *op_prop_enum, wmOperatorCallContext opcontext)
 
void ED_screen_user_menu_item_add_menu (ListBase *lb, const char *ui_name, const MenuType *mt)
 
void ED_screen_user_menu_item_add_prop (ListBase *lb, const char *ui_name, const char *context_data_path, const char *prop_id, int prop_index)
 
void ED_screen_user_menu_item_remove (ListBase *lb, bUserMenuItem *umi)
 
void ED_screen_user_menu_register ()
 
void ED_region_cache_draw_background (ARegion *region)
 
void ED_region_cache_draw_curfra_label (int framenr, float x, float y)
 
void ED_region_cache_draw_cached_segments (ARegion *region, int num_segments, const int *points, int sfra, int efra)
 
void ED_region_generic_tools_region_message_subscribe (const wmRegionMessageSubscribeParams *params)
 
int ED_region_generic_tools_region_snap_size (const ARegion *region, int size, int axis)
 
bool ED_region_overlap_isect_x (const ARegion *region, int event_x)
 
bool ED_region_overlap_isect_y (const ARegion *region, int event_y)
 
bool ED_region_overlap_isect_xy (const ARegion *region, const int event_xy[2])
 
bool ED_region_overlap_isect_any_xy (const ScrArea *area, const int event_xy[2])
 
bool ED_region_overlap_isect_x_with_margin (const ARegion *region, int event_x, int margin)
 
bool ED_region_overlap_isect_y_with_margin (const ARegion *region, int event_y, int margin)
 
bool ED_region_overlap_isect_xy_with_margin (const ARegion *region, const int event_xy[2], int margin)
 
bool ED_region_panel_category_gutter_calc_rect (const ARegion *region, rcti *r_region_gutter)
 
bool ED_region_panel_category_gutter_isect_xy (const ARegion *region, const int event_xy[2])
 
bool ED_region_contains_xy (const ARegion *region, const int event_xy[2])
 
ARegionED_area_find_region_xy_visual (const ScrArea *area, int regiontype, const int event_xy[2])
 
ARegionTypeED_area_type_hud (int space_type)
 
void ED_area_type_hud_clear (wmWindowManager *wm, ScrArea *area_keep)
 
void ED_area_type_hud_ensure (bContext *C, ScrArea *area)
 
ARegionED_area_type_hud_redo_region_find (const ScrArea *area, const ARegion *hud_region)
 

Macro Definition Documentation

◆ ED_screen_areas_iter

#define ED_screen_areas_iter ( win,
screen,
area_name )
Value:
for (ScrArea *area_name = ED_screen_areas_iter_first(win, screen); area_name != NULL; \
area_name = ED_screen_areas_iter_next(screen, area_name))
ScrArea * ED_screen_areas_iter_next(const bScreen *screen, const ScrArea *area)
Definition area.cc:3742
ScrArea * ED_screen_areas_iter_first(const wmWindow *win, const bScreen *screen)
Definition area.cc:3729
#define NULL

Iterate over all areas visible in the screen (screen as in everything visible in the window, not just bScreen).

Note
Skips global areas with flag GLOBAL_AREA_IS_HIDDEN.

Definition at line 281 of file ED_screen.hh.

Referenced by area_event_inside(), area_join_dock_cb_window(), area_move_apply_do(), ED_editors_init(), ED_fileselect_handler_area_find(), ED_fileselect_handler_area_find_any_with_op(), ED_screen_set_active_region(), region_cursor_set(), screen_refresh(), screen_regions_poll(), UI_screen_free_active_but_highlight(), wm_draw_update_clear_window(), wm_draw_update_test_window(), wm_draw_window_offscreen(), wm_draw_window_onscreen(), wm_dropbox_invoke(), wm_event_do_handlers(), wm_event_do_notifiers(), wm_handler_op_context_get_if_valid(), wm_region_tag_draw_on_gizmo_delay_refresh_for_tweak(), and WM_window_cursor_keymap_status_refresh().

◆ ED_screen_verts_iter

#define ED_screen_verts_iter ( win,
screen,
vert_name )
Value:
for (ScrVert *vert_name = (win)->global_areas.vertbase.first ? \
(ScrVert *)(win)->global_areas.vertbase.first : \
(ScrVert *)(screen)->vertbase.first; \
vert_name != NULL; \
vert_name = (vert_name == (win)->global_areas.vertbase.last) ? \
(ScrVert *)(screen)->vertbase.first : \
vert_name->next)

Definition at line 284 of file ED_screen.hh.

Referenced by area_move_apply_do(), area_move_init(), area_split_apply(), screen_geom_select_connected_edge(), screen_verts_halign(), and screen_verts_valign().

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Default key-maps, bit-flags (matches order of evaluation).

Enumerator
ED_KEYMAP_UI 
ED_KEYMAP_GIZMO 
ED_KEYMAP_TOOL 
ED_KEYMAP_VIEW2D 
ED_KEYMAP_ANIMATION 
ED_KEYMAP_FRAMES 
ED_KEYMAP_HEADER 
ED_KEYMAP_FOOTER 
ED_KEYMAP_GPENCIL 
ED_KEYMAP_NAVBAR 
ED_KEYMAP_ASSET_SHELF 

Definition at line 724 of file ED_screen.hh.

◆ eScreenCycle

SCREEN_OT_space_context_cycle direction.

Enumerator
SPACE_CONTEXT_CYCLE_PREV 
SPACE_CONTEXT_CYCLE_NEXT 

Definition at line 739 of file ED_screen.hh.

Function Documentation

◆ ED_area_azones_update()

AZone * ED_area_azones_update ( ScrArea * area,
const int mouse_xy[2] )

◆ ED_area_do_listen()

void ED_area_do_listen ( wmSpaceTypeListenerParams * params)

Only exported for WM.

Definition at line 159 of file area.cc.

References params.

Referenced by wm_event_do_notifiers().

◆ ED_area_do_mgs_subscribe_for_tool_header()

◆ ED_area_do_mgs_subscribe_for_tool_ui()

◆ ED_area_do_msg_notify_tag_refresh()

void ED_area_do_msg_notify_tag_refresh ( bContext * C,
wmMsgSubscribeKey * msg_key,
wmMsgSubscribeValue * msg_val )

Definition at line 404 of file area.cc.

References ED_area_tag_refresh(), and wmMsgSubscribeValue::user_data.

Referenced by file_main_region_message_subscribe().

◆ ED_area_do_refresh()

void ED_area_do_refresh ( bContext * C,
ScrArea * area )

Only exported for WM.

Definition at line 167 of file area.cc.

Referenced by wm_event_do_refresh_wm_and_depsgraph(), and wm_handler_fileselect_do().

◆ ED_area_exit()

◆ ED_area_find_region_xy_visual()

ARegion * ED_area_find_region_xy_visual ( const ScrArea * area,
int regiontype,
const int event_xy[2] )

Similar to BKE_area_find_region_xy() but when event_xy intersects an overlapping region, this returns the region that is visually under the cursor. E.g. when over the transparent part of the region, it returns the region underneath.

The overlapping region is determined using the ED_region_contains_xy() query.

Definition at line 177 of file area_query.cc.

References ED_region_contains_xy(), ELEM, LISTBASE_FOREACH, and RGN_TYPE_ANY.

Referenced by wm_drags_draw(), and wm_event_do_handlers_area_regions().

◆ ED_area_find_under_cursor()

ScrArea * ED_area_find_under_cursor ( const bContext * C,
int spacetype,
const int event_xy[2] )

Search all screens, even non-active or overlapping (multiple windows), return the most-likely area of interest. xy is relative to active window, like all similar functions.

Definition at line 3698 of file area.cc.

References BKE_screen_find_area_xy(), CTX_wm_screen(), CTX_wm_window(), wmWindow::parent, WM_window_find_under_cursor(), and WM_window_get_active_screen().

Referenced by area_join_update_data(), and area_swap_modal().

◆ ED_area_footersize()

int ED_area_footersize ( )

Definition at line 3672 of file area.cc.

References ED_area_headersize().

Referenced by region_rect_recursive().

◆ ED_area_global_max_size_y()

int ED_area_global_max_size_y ( const ScrArea * area)

Definition at line 3687 of file area.cc.

References BLI_assert, ED_area_is_global(), round_fl_to_int(), and UI_SCALE_FAC.

Referenced by area_move_set_limits().

◆ ED_area_global_min_size_y()

int ED_area_global_min_size_y ( const ScrArea * area)

Definition at line 3682 of file area.cc.

References BLI_assert, ED_area_is_global(), round_fl_to_int(), and UI_SCALE_FAC.

Referenced by area_move_set_limits().

◆ ED_area_global_size_y()

int ED_area_global_size_y ( const ScrArea * area)
Returns
the final height of a global area, accounting for DPI.

Definition at line 3677 of file area.cc.

References BLI_assert, ED_area_is_global(), round_fl_to_int(), and UI_SCALE_FAC.

Referenced by screen_geom_vertices_scale(), and WM_window_screen_rect_calc().

◆ ED_area_has_shared_border()

bool ED_area_has_shared_border ( ScrArea * a,
ScrArea * b )

Definition at line 1998 of file area.cc.

References area_getorientation(), and b.

Referenced by ED_buttons_should_sync_with_outliner().

◆ ED_area_header_switchbutton()

int ED_area_header_switchbutton ( const bContext * C,
uiBlock * block,
int yco )

Returns offset for next button in header.

Definition at line 2766 of file area.cc.

References CTX_wm_area(), CTX_wm_screen(), RNA_pointer_create(), UI_BTYPE_MENU, and uiDefButR().

Referenced by uiTemplateHeader().

◆ ED_area_headersize()

◆ ED_area_icon()

int ED_area_icon ( const ScrArea * area)

◆ ED_area_init()

◆ ED_area_is_global()

◆ ED_area_name()

◆ ED_area_newspace()

◆ ED_area_offscreen_create()

ScrArea * ED_area_offscreen_create ( wmWindow * win,
eSpace_Type space_type )

◆ ED_area_offscreen_free()

void ED_area_offscreen_free ( wmWindowManager * wm,
wmWindow * win,
ScrArea * area )

Definition at line 2184 of file area.cc.

References area_offscreen_exit(), BKE_screen_area_free(), and MEM_freeN().

Referenced by wm_xr_runtime_data_free().

◆ ED_area_prevspace()

◆ ED_area_region_search_filter_get()

const char * ED_area_region_search_filter_get ( const ScrArea * area,
const ARegion * region )

Returns the search string if the space type and region type support property search.

Definition at line 777 of file area.cc.

References ED_buttons_search_string_get(), RGN_TYPE_WINDOW, and SPACE_PROPERTIES.

Referenced by ED_region_panels_layout_ex(), ED_region_property_search(), and ED_region_search_filter_update().

◆ ED_area_status_text()

void ED_area_status_text ( ScrArea * area,
const char * str )

Show the given text in the area's header, instead of its regular contents. Use NULL to disable this and show the regular header contents again.

Definition at line 803 of file area.cc.

References BLI_str_rstrip(), BLI_strncpy(), ED_region_tag_redraw(), ARegion::headerstr, LISTBASE_FOREACH, MEM_mallocN, MEM_SAFE_FREE, RGN_TYPE_HEADER, RGN_TYPE_TOOL_HEADER, str, and UI_MAX_DRAW_STR.

Referenced by apply_shear(), apply_value_impl(), applyAlign(), applyBakeTime(), applyBoneEnvelope(), applyBoneRoll(), applyBoneSize(), applyCurveShrinkFatten(), applyEdgeSlide(), applyGPOpacity(), applyGPShrinkFatten(), applyMaskShrinkFatten(), applyMirror(), applyNormalRotation(), applyPushPull(), applyResize(), applyRotation(), applySeqSlide(), applyShrinkFatten(), applySkinResize(), applyTilt(), applyTimeScale(), applyTimeSlide(), applyTimeTranslate(), applyToSphere(), applyTrackball(), applyTranslation(), applyVertSlide(), Bend(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_cancel(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_modal(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_update_header(), ed_marker_move_exit(), ed_marker_move_update_header(), ED_screen_state_toggle(), ED_slider_create(), ED_slider_destroy(), edbm_bevel_exit(), edbm_bevel_update_status_text(), edbm_inset_exit(), edbm_inset_update_header(), graph_slider_exit(), blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_exit(), blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_modal(), blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_status_indicators(), interactive_value_exit(), interactive_value_update(), loopcut_finish(), loopcut_init(), loopcut_modal(), minimize_stretch_exit(), minimize_stretch_iteration(), point_normals_cancel(), point_normals_update_header(), pose_slide_draw_status(), pose_slide_modal(), poselib_blend_cleanup(), radial_control_cancel(), radial_control_update_header(), sequencer_slip_modal(), sequencer_slip_update_header(), ui_handler_wait_for_input_remove(), viewRedrawPost(), and WM_operator_name_call_ptr_with_depends_on_cursor().

◆ ED_area_swapspace()

◆ ED_area_tag_redraw()

void ED_area_tag_redraw ( ScrArea * area)

Definition at line 708 of file area.cc.

References ED_region_tag_redraw(), and LISTBASE_FOREACH.

Referenced by action_listener(), action_refresh(), actkeys_viewall(), area_actionzone_refresh_xy(), area_dupli_fn(), area_join_dock_cb_window(), area_join_exec(), area_join_modal(), area_move_apply_do(), area_split_apply(), area_split_exit(), area_split_modal(), area_swap_modal(), blender::ui::bonedropper_exit(), box_select_exec(), buttons_area_listener(), buttons_area_redraw(), buttons_clear_filter_exec(), clip_listener(), clip_rebuild_proxy_exec(), console_clear_exec(), console_clear_line_exec(), console_copy_exec(), console_delete_exec(), console_history_append_exec(), console_history_cycle_exec(), console_indent_exec(), console_insert_exec(), console_modal_select(), console_modal_select_all_invoke(), console_modal_select_apply(), console_move_exec(), console_paste_exec(), console_scrollback_append_exec(), console_selectword_invoke(), console_unindent_exec(), do_view3d_region_buttons(), ED_area_newspace(), ED_area_prevspace(), ED_area_swapspace(), ED_area_type_hud_clear(), ED_editors_init(), ED_imbuf_sample_exit(), ED_region_visibility_change_update_ex(), ED_screen_restore_temp_type(), ED_view3d_quadview_update(), ED_workspace_layout_duplicate(), file_draw_check_ex(), file_filenum_exec(), file_highlight_invoke(), file_refresh(), file_rename_exec(), file_select_all_exec(), file_view_selected_exec(), fsmenu_write_file_and_refresh_or_report_error(), gesture_modal_end(), graph_listener(), graph_refresh(), graphkeys_clear_ghostcurves_exec(), graphkeys_create_ghostcurves_exec(), header_toggle_menus_exec(), image_listener(), image_sample_apply(), image_sample_line_exec(), localview_exec(), nla_listener(), nlaedit_viewall(), blender::ed::space_node::node_area_listener(), blender::ed::outliner::outliner_clear_filter_exec(), blender::ed::outliner::outliner_id_remap(), blender::ed::space_node::pick_input_link_by_link_intersect(), previewrange_clear_exec(), proj_paint_add_slot(), redraw_timer_window_swap(), region_blend_end(), region_flip_exec(), region_quadview_exec(), region_scale_modal(), report_delete_exec(), report_replay_exec(), report_select_all_exec(), reset_exec(), blender::ed::space_node::sample_apply(), blender::ed::space_node::sample_exit(), scene_range_frame_exec(), scroll_exit(), select_report_pick_exec(), seq_build_proxy(), seq_proxy_build_job(), sequencer_listener(), sequencer_preview_add_sound(), sequencer_refresh(), sequencer_sample_apply(), sequencer_view_all_preview_exec(), template_texture_show(), text_autocomplete_invoke(), text_autocomplete_modal(), text_listener(), text_scroll_apply(), text_scroll_exec(), text_scroll_modal(), toggle_pin_exec(), toggle_xray_exec(), blender::ed::spreadsheet::view_active_object(), view_curve_in_graph_editor_exec(), view_zoomdrag_apply(), view_zoomstep_apply_ex(), viewRedrawForce(), WM_keyconfig_update_ex(), WM_window_cursor_keymap_status_refresh(), WM_window_status_area_tag_redraw(), and WorkspaceStatus::WorkspaceStatus().

◆ ED_area_tag_redraw_no_rebuild()

void ED_area_tag_redraw_no_rebuild ( ScrArea * area)

Definition at line 717 of file area.cc.

References ED_region_tag_redraw_no_rebuild(), and LISTBASE_FOREACH.

Referenced by area_actionzone_refresh_xy(), and area_move_apply_do().

◆ ED_area_tag_redraw_regiontype()

void ED_area_tag_redraw_regiontype ( ScrArea * area,
int regiontype )

◆ ED_area_tag_refresh()

◆ ED_area_tag_region_size_update()

void ED_area_tag_region_size_update ( ScrArea * area,
ARegion * changed_region )

For regions that change the region size in their ARegionType.layout() callback: Mark the area as having a changed region size, requiring refitting of regions within the area.

Definition at line 744 of file area.cc.

References ARegion::alignment, AREA_FLAG_REGION_SIZE_UPDATE, ED_region_tag_redraw(), ARegion::next, ARegion::overlap, and RGN_ALIGN_FLOAT.

Referenced by ED_area_type_hud_ensure(), ED_region_header_layout(), ED_region_panels_layout_ex(), and blender::ed::asset::shelf::region_resize_to_preferred().

◆ ED_area_type_hud()

◆ ED_area_type_hud_clear()

◆ ED_area_type_hud_ensure()

◆ ED_area_type_hud_redo_region_find()

ARegion * ED_area_type_hud_redo_region_find ( const ScrArea * area,
const ARegion * hud_region )

Lookup the region the operation was executed in, and which should be used to redo the operation. The lookup is based on the region type, so it can return a different region when the same region type is present multiple times.

Definition at line 388 of file interface_region_hud.cc.

References BKE_area_find_region_type(), BLI_assert, ARegion::regiondata, HudRegionData::regionid, ARegion::regiontype, and RGN_TYPE_HUD.

Referenced by ED_undo_operator_repeat().

◆ ED_area_update_region_sizes()

◆ ED_keymap_screen()

◆ ED_operator_action_active()

◆ ED_operator_animview_active()

bool ED_operator_animview_active ( bContext * C)

◆ ED_operator_areaactive()

◆ ED_operator_asset_browsing_active()

◆ ED_operator_buttons_active()

bool ED_operator_buttons_active ( bContext * C)

◆ ED_operator_camera_poll()

bool ED_operator_camera_poll ( bContext * C)

◆ ED_operator_console_active()

◆ ED_operator_editable_mesh()

bool ED_operator_editable_mesh ( bContext * C)

◆ ED_operator_editarmature()

◆ ED_operator_editcurve()

◆ ED_operator_editcurve_3d()

bool ED_operator_editcurve_3d ( bContext * C)

◆ ED_operator_editfont()

◆ ED_operator_editlattice()

◆ ED_operator_editmball()

◆ ED_operator_editmesh()

bool ED_operator_editmesh ( bContext * C)

Definition at line 474 of file screen_ops.cc.

References BKE_editmesh_from_object(), CTX_data_edit_object(), OB_MESH, and Object::type.

Referenced by ED_keymap_mesh(), ED_operator_editmesh_region_view3d(), ED_operator_editmesh_view3d(), edbm_select_by_attribute_poll(), edbm_select_ungrouped_poll(), edbm_separate_exec(), EDBM_view3d_poll(), blender::ed::object::hook_op_edit_poll(), blender::ed::mesh::mesh_active_attribute_poll(), MESH_OT_average_normals(), MESH_OT_beautify_fill(), MESH_OT_bevel(), MESH_OT_bisect(), MESH_OT_blend_from_shape(), MESH_OT_bridge_edge_loops(), MESH_OT_colors_reverse(), MESH_OT_colors_rotate(), MESH_OT_decimate(), MESH_OT_delete(), MESH_OT_delete_edgeloop(), MESH_OT_delete_loose(), MESH_OT_dissolve_degenerate(), MESH_OT_dissolve_edges(), MESH_OT_dissolve_faces(), MESH_OT_dissolve_limited(), MESH_OT_dissolve_mode(), MESH_OT_dissolve_verts(), MESH_OT_duplicate(), MESH_OT_edge_collapse(), MESH_OT_edge_face_add(), MESH_OT_edge_rotate(), MESH_OT_edge_split(), MESH_OT_edges_select_sharp(), MESH_OT_extrude_context(), MESH_OT_extrude_edges_indiv(), MESH_OT_extrude_faces_indiv(), MESH_OT_extrude_region(), MESH_OT_extrude_repeat(), MESH_OT_extrude_verts_indiv(), MESH_OT_face_make_planar(), MESH_OT_face_split_by_edges(), MESH_OT_faces_select_linked_flat(), MESH_OT_faces_shade_flat(), MESH_OT_faces_shade_smooth(), MESH_OT_fill(), MESH_OT_fill_grid(), MESH_OT_fill_holes(), MESH_OT_flip_normals(), MESH_OT_flip_quad_tessellation(), MESH_OT_hide(), MESH_OT_inset(), MESH_OT_intersect(), MESH_OT_intersect_boolean(), MESH_OT_loop_multi_select(), MESH_OT_loop_to_region(), MESH_OT_loopcut(), MESH_OT_mark_seam(), MESH_OT_mark_sharp(), MESH_OT_merge(), MESH_OT_merge_normals(), MESH_OT_mod_weighted_strength(), MESH_OT_normals_make_consistent(), MESH_OT_normals_tools(), MESH_OT_offset_edge_loops(), MESH_OT_point_normals(), MESH_OT_poke(), MESH_OT_quads_convert_to_tris(), MESH_OT_region_to_loop(), MESH_OT_remove_doubles(), MESH_OT_reveal(), MESH_OT_screw(), MESH_OT_select_all(), MESH_OT_select_axis(), MESH_OT_select_face_by_sides(), MESH_OT_select_interior_faces(), MESH_OT_select_less(), MESH_OT_select_linked(), MESH_OT_select_linked_pick(), MESH_OT_select_loose(), MESH_OT_select_mirror(), MESH_OT_select_mode(), MESH_OT_select_more(), MESH_OT_select_nth(), MESH_OT_select_random(), MESH_OT_select_similar(), MESH_OT_select_similar_region(), MESH_OT_set_normals_from_faces(), blender::ed::mesh::MESH_OT_set_sharpness_by_angle(), MESH_OT_shape_propagate_to_all(), MESH_OT_shortest_path_select(), MESH_OT_smooth_normals(), MESH_OT_solidify(), MESH_OT_sort_elements(), MESH_OT_spin(), MESH_OT_split(), MESH_OT_split_normals(), MESH_OT_subdivide(), MESH_OT_subdivide_edgering(), MESH_OT_symmetrize(), MESH_OT_symmetry_snap(), MESH_OT_tris_convert_to_quads(), MESH_OT_unsubdivide(), MESH_OT_uvs_reverse(), MESH_OT_uvs_rotate(), MESH_OT_vert_connect(), MESH_OT_vert_connect_concave(), MESH_OT_vert_connect_nonplanar(), MESH_OT_vert_connect_path(), MESH_OT_vertices_smooth(), MESH_OT_vertices_smooth_laplacian(), MESH_OT_wireframe(), TRANSFORM_OT_edge_bevelweight(), TRANSFORM_OT_edge_crease(), TRANSFORM_OT_edge_slide(), TRANSFORM_OT_rotate_normal(), TRANSFORM_OT_shrink_fatten(), TRANSFORM_OT_skin_resize(), TRANSFORM_OT_vert_crease(), TRANSFORM_OT_vert_slide(), and blender::ed::object::vertex_parent_set_poll().

◆ ED_operator_editmesh_region_view3d()

◆ ED_operator_editmesh_view3d()

bool ED_operator_editmesh_view3d ( bContext * C)

◆ ED_operator_editsurf()

bool ED_operator_editsurf ( bContext * C)

Definition at line 658 of file screen_ops.cc.

References CTX_data_edit_object(), Object::data, OB_SURF, and Object::type.

Referenced by CURVE_OT_select_row(), and CURVE_OT_spin().

◆ ED_operator_editsurfcurve()

◆ ED_operator_editsurfcurve_region_view3d()

bool ED_operator_editsurfcurve_region_view3d ( bContext * C)

◆ ED_operator_file_active()

bool ED_operator_file_active ( bContext * C)

◆ ED_operator_file_browsing_active()

◆ ED_operator_graphedit_active()

◆ ED_operator_image_active()

bool ED_operator_image_active ( bContext * C)

Definition at line 385 of file screen_ops.cc.

References ed_spacetype_test(), and SPACE_IMAGE.

Referenced by RENDER_OT_view_cancel().

◆ ED_operator_info_active()

◆ ED_operator_nla_active()

◆ ED_operator_node_active()

◆ ED_operator_node_editable()

bool ED_operator_node_editable ( bContext * C)

◆ ED_operator_object_active()

◆ ED_operator_object_active_editable()

bool ED_operator_object_active_editable ( bContext * C)

Definition at line 437 of file screen_ops.cc.

References blender::ed::object::context_active_object(), and ED_operator_object_active_editable_ex().

Referenced by ED_operator_rigidbody_active_poll(), ED_operator_rigidbody_add_poll(), ED_operator_rigidbody_con_active_poll(), ED_operator_rigidbody_con_add_poll(), FLUID_OT_bake_all(), FLUID_OT_bake_data(), FLUID_OT_bake_guides(), FLUID_OT_bake_mesh(), FLUID_OT_bake_noise(), FLUID_OT_bake_particles(), FLUID_OT_free_all(), FLUID_OT_free_data(), FLUID_OT_free_guides(), FLUID_OT_free_mesh(), FLUID_OT_free_noise(), FLUID_OT_free_particles(), FLUID_OT_pause_bake(), blender::ed::object::modifiers_copy_to_selected_poll(), blender::ed::object::OBJECT_OT_constraint_add(), blender::ed::object::OBJECT_OT_constraint_add_with_targets(), blender::ed::object::OBJECT_OT_constraints_copy(), blender::ed::object::OBJECT_OT_forcefield_toggle(), blender::ed::object::OBJECT_OT_light_linking_blocker_collection_new(), blender::ed::object::OBJECT_OT_light_linking_blockers_link(), blender::ed::object::OBJECT_OT_light_linking_receiver_collection_new(), blender::ed::object::OBJECT_OT_light_linking_receivers_link(), blender::ed::object::OBJECT_OT_light_linking_unlink_from_collection(), blender::ed::object::OBJECT_OT_modifier_add(), blender::ed::object::OBJECT_OT_modifier_add_node_group(), blender::ed::object::OBJECT_OT_parent_no_inverse_set(), blender::ed::object::OBJECT_OT_paths_calculate(), blender::ed::object::OBJECT_OT_paths_clear(), blender::ed::object::OBJECT_OT_posemode_toggle(), and blender::ed::object::object_update_paths_poll().

◆ ED_operator_object_active_editable_ex()

◆ ED_operator_object_active_editable_font()

bool ED_operator_object_active_editable_font ( bContext * C)

◆ ED_operator_object_active_editable_mesh()

◆ ED_operator_object_active_local_editable()

◆ ED_operator_object_active_local_editable_ex()

bool ED_operator_object_active_local_editable_ex ( bContext * C,
const Object * ob )

Object must be editable and fully local (i.e. not an override).

Definition at line 443 of file screen_ops.cc.

References ED_operator_object_active_editable_ex(), and ID_IS_OVERRIDE_LIBRARY.

Referenced by object_materials_supported_poll_ex(), and blender::ed::object::vertex_group_supported_poll_ex().

◆ ED_operator_object_active_local_editable_posemode_exclusive()

bool ED_operator_object_active_local_editable_posemode_exclusive ( bContext * C)

Object must be editable, fully local (i.e. not an override), and exclusively in Pose mode.

Definition at line 533 of file screen_ops.cc.

References blender::ed::object::context_active_object(), CTX_wm_operator_poll_msg_set(), ed_operator_posemode_exclusive_ex(), and ID_IS_OVERRIDE_LIBRARY.

Referenced by blender::ed::object::POSE_OT_constraints_clear(), and blender::ed::object::POSE_OT_ik_clear().

◆ ED_operator_objectmode()

bool ED_operator_objectmode ( bContext * C)

Definition at line 189 of file screen_ops.cc.

References CTX_data_active_object(), CTX_data_edit_object(), CTX_data_scene(), ID_IS_EDITABLE, Object::mode, and OB_MODE_OBJECT.

Referenced by blender::ed::object::COLLECTION_OT_create(), blender::ed::object::COLLECTION_OT_objects_add_active(), blender::ed::object::COLLECTION_OT_objects_remove(), blender::ed::object::COLLECTION_OT_objects_remove_active(), blender::ed::object::COLLECTION_OT_objects_remove_all(), blender::ed::object::collection_unlink_poll(), ED_operator_objectmode_poll_msg(), blender::ed::object::make_override_library_poll(), blender::ed::object::move_to_collection_poll(), blender::ed::object::object_curves_empty_hair_add_poll(), blender::ed::object::object_image_add_poll(), blender::ed::object::OBJECT_OT_add(), blender::ed::object::OBJECT_OT_armature_add(), blender::ed::object::OBJECT_OT_camera_add(), blender::ed::object::OBJECT_OT_collection_add(), blender::ed::object::OBJECT_OT_collection_external_asset_drop(), blender::ed::object::OBJECT_OT_collection_instance_add(), blender::ed::object::OBJECT_OT_collection_link(), blender::ed::object::OBJECT_OT_collection_objects_select(), blender::ed::object::OBJECT_OT_collection_remove(), blender::ed::object::OBJECT_OT_curves_random_add(), blender::ed::object::OBJECT_OT_data_instance_add(), blender::ed::object::OBJECT_OT_delete(), blender::ed::object::OBJECT_OT_duplicate(), blender::ed::object::OBJECT_OT_duplicates_make_real(), blender::ed::object::OBJECT_OT_effector_add(), blender::ed::object::OBJECT_OT_empty_add(), blender::ed::object::OBJECT_OT_grease_pencil_add(), blender::ed::object::OBJECT_OT_light_add(), blender::ed::object::OBJECT_OT_lightprobe_add(), blender::ed::object::OBJECT_OT_make_local(), blender::ed::object::OBJECT_OT_make_single_user(), blender::ed::object::OBJECT_OT_parent_inverse_apply(), blender::ed::object::OBJECT_OT_select_less(), blender::ed::object::OBJECT_OT_select_more(), blender::ed::object::OBJECT_OT_speaker_add(), blender::ed::object::OBJECT_OT_text_add(), blender::ed::object::OBJECT_OT_track_clear(), blender::ed::object::OBJECT_OT_track_set(), blender::ed::object::OBJECT_OT_transform_apply(), blender::ed::object::OBJECT_OT_volume_add(), blender::ed::object::object_pointcloud_add_poll(), and blender::ed::object::reset_clear_override_library_poll().

◆ ED_operator_objectmode_poll_msg()

bool ED_operator_objectmode_poll_msg ( bContext * C)

Same as ED_operator_objectmode() but additionally sets a "disabled hint". That is, a message to be displayed to the user explaining why the operator can't be used in current context.

Definition at line 209 of file screen_ops.cc.

References CTX_wm_operator_poll_msg_set(), and ED_operator_objectmode().

Referenced by ED_operator_objectmode_with_view3d_poll_msg(), blender::ed::object::OBJECT_OT_add_named(), and blender::ed::object::OBJECT_OT_transform_to_mouse().

◆ ED_operator_objectmode_with_view3d_poll_msg()

bool ED_operator_objectmode_with_view3d_poll_msg ( bContext * C)

◆ ED_operator_outliner_active()

◆ ED_operator_outliner_active_no_editobject()

bool ED_operator_outliner_active_no_editobject ( bContext * C)

◆ ED_operator_posemode()

◆ ED_operator_posemode_context()

bool ED_operator_posemode_context ( bContext * C)

Allows for pinned pose objects to be used in the object buttons and the non-active pose object to be used in the 3D view.

Definition at line 549 of file screen_ops.cc.

References BKE_object_pose_context_check(), ED_pose_object_from_context(), Object::mode, and OB_MODE_EDIT.

◆ ED_operator_posemode_exclusive()

◆ ED_operator_posemode_local()

◆ ED_operator_region_gizmo_active()

bool ED_operator_region_gizmo_active ( bContext * C)

Definition at line 254 of file screen_ops.cc.

References CTX_wm_region().

Referenced by GIZMOGROUP_OT_gizmo_select(), and GIZMOGROUP_OT_gizmo_tweak().

◆ ED_operator_region_outliner_active()

◆ ED_operator_region_view3d_active()

◆ ED_operator_regionactive()

◆ ED_operator_scene()

bool ED_operator_scene ( bContext * C)

Definition at line 171 of file screen_ops.cc.

References CTX_data_scene().

Referenced by VIEW3D_OT_copybuffer().

◆ ED_operator_scene_editable()

◆ ED_operator_screen_mainwinactive()

bool ED_operator_screen_mainwinactive ( bContext * C)

When mouse is over area-edge.

Definition at line 156 of file screen_ops.cc.

References CTX_wm_screen(), and CTX_wm_window().

Referenced by SCREEN_OT_area_move(), and SCREEN_OT_area_options().

◆ ED_operator_screenactive()

◆ ED_operator_screenactive_nobackground()

bool ED_operator_screenactive_nobackground ( bContext * C)

◆ ED_operator_sequencer_active()

◆ ED_operator_sequencer_active_editable()

◆ ED_operator_spreadsheet_active()

◆ ED_operator_uvedit()

◆ ED_operator_uvedit_space_image()

◆ ED_operator_uvmap()

◆ ED_operator_view3d_active()

◆ ED_operatortypes_screen()

◆ ED_operatortypes_workspace()

◆ ED_region_blend_alpha()

float ED_region_blend_alpha ( ARegion * region)

◆ ED_region_cache_draw_background()

◆ ED_region_cache_draw_cached_segments()

void ED_region_cache_draw_cached_segments ( ARegion * region,
int num_segments,
const int * points,
int sfra,
int efra )

◆ ED_region_cache_draw_curfra_label()

◆ ED_region_clear()

◆ ED_region_contains_xy()

◆ ED_region_cursor_set()

void ED_region_cursor_set ( wmWindow * win,
ScrArea * area,
ARegion * region )

◆ ED_region_do_draw()

void ED_region_do_draw ( bContext * C,
ARegion * region )

◆ ED_region_do_layout()

void ED_region_do_layout ( bContext * C,
ARegion * region )

◆ ED_region_do_listen()

void ED_region_do_listen ( wmRegionListenerParams * params)

◆ ED_region_do_msg_notify_tag_redraw()

◆ ED_region_exit()

◆ ED_region_floating_init()

void ED_region_floating_init ( ARegion * region)

Externally called for floating regions like menus.

Definition at line 2206 of file area.cc.

References BLI_assert, region_evaulate_visibility(), region_update_rect(), and RGN_ALIGN_FLOAT.

Referenced by ED_area_type_hud_ensure(), ui_popup_block_refresh(), ui_searchbox_create_generic_ex(), and ui_tooltip_create_with_data().

◆ ED_region_generic_tools_region_message_subscribe()

◆ ED_region_generic_tools_region_snap_size()

int ED_region_generic_tools_region_snap_size ( const ARegion * region,
int size,
int axis )

◆ ED_region_global_size_y()

int ED_region_global_size_y ( )

For now we just assume all global areas are made up out of horizontal bars with the same size. A fixed size could be stored in ARegion instead if needed.

Returns
the DPI aware height of a single bar/region in global areas.

Definition at line 3757 of file area.cc.

References ED_area_headersize().

Referenced by region_rect_recursive().

◆ ED_region_grid_draw()

◆ ED_region_header()

◆ ED_region_header_draw()

void ED_region_header_draw ( const bContext * C,
ARegion * region )

◆ ED_region_header_draw_with_button_sections()

void ED_region_header_draw_with_button_sections ( const bContext * C,
const ARegion * region,
uiButtonSectionsAlign align )

◆ ED_region_header_init()

◆ ED_region_header_layout()

◆ ED_region_header_with_button_sections()

void ED_region_header_with_button_sections ( const bContext * C,
ARegion * region,
uiButtonSectionsAlign align )

◆ ED_region_image_metadata_panel_draw()

void ED_region_image_metadata_panel_draw ( ImBuf * ibuf,
uiLayout * layout )

◆ ED_region_info_draw()

void ED_region_info_draw ( ARegion * region,
const char * text,
const float fill_color[4],
bool full_redraw )

Definition at line 3838 of file area.cc.

References ED_region_info_draw_multiline().

Referenced by draw_movieclip_notes(), and draw_render_info().

◆ ED_region_info_draw_multiline()

◆ ED_region_is_overlap()

◆ ED_region_message_subscribe()

void ED_region_message_subscribe ( wmRegionMessageSubscribeParams * params)

Generate subscriptions for this region.

Definition at line 4085 of file area.cc.

References BLI_listbase_is_empty(), params, UI_region_message_subscribe(), and WM_gizmomap_message_subscribe().

Referenced by ED_region_do_draw().

◆ ED_region_overlap_isect_any_xy()

bool ED_region_overlap_isect_any_xy ( const ScrArea * area,
const int event_xy[2] )

◆ ED_region_overlap_isect_x()

bool ED_region_overlap_isect_x ( const ARegion * region,
int event_x )

Definition at line 21 of file area_query.cc.

References BLI_assert, BLI_rctf_isect_x(), and UI_view2d_region_to_view_x().

Referenced by ED_region_overlap_isect_xy().

◆ ED_region_overlap_isect_x_with_margin()

bool ED_region_overlap_isect_x_with_margin ( const ARegion * region,
int event_x,
int margin )

◆ ED_region_overlap_isect_xy()

bool ED_region_overlap_isect_xy ( const ARegion * region,
const int event_xy[2] )

◆ ED_region_overlap_isect_xy_with_margin()

bool ED_region_overlap_isect_xy_with_margin ( const ARegion * region,
const int event_xy[2],
int margin )

◆ ED_region_overlap_isect_y()

bool ED_region_overlap_isect_y ( const ARegion * region,
int event_y )

Definition at line 32 of file area_query.cc.

References BLI_assert, BLI_rctf_isect_y(), and UI_view2d_region_to_view_y().

Referenced by ED_region_overlap_isect_xy().

◆ ED_region_overlap_isect_y_with_margin()

bool ED_region_overlap_isect_y_with_margin ( const ARegion * region,
int event_y,
int margin )

◆ ED_region_panel_category_gutter_calc_rect()

bool ED_region_panel_category_gutter_calc_rect ( const ARegion * region,
rcti * r_region_gutter )

◆ ED_region_panel_category_gutter_isect_xy()

bool ED_region_panel_category_gutter_isect_xy ( const ARegion * region,
const int event_xy[2] )

◆ ED_region_panels()

◆ ED_region_panels_draw()

◆ ED_region_panels_ex()

void ED_region_panels_ex ( const bContext * C,
ARegion * region,
wmOperatorCallContext op_context,
const char * contexts[] )

◆ ED_region_panels_init()

◆ ED_region_panels_layout()

◆ ED_region_panels_layout_ex()

void ED_region_panels_layout_ex ( const bContext * C,
ARegion * region,
ListBase * paneltypes,
wmOperatorCallContext op_context,
const char * contexts[],
const char * category_override )

◆ ED_region_pixelspace()

◆ ED_region_property_search()

bool ED_region_property_search ( const bContext * C,
ARegion * region,
ListBase * paneltypes,
const char * contexts[],
const char * category_override )

◆ ED_region_remove()

void ED_region_remove ( bContext * C,
ScrArea * area,
ARegion * region )

Utility to exit and free an area-region. Screen level regions (menus/popups) need to be treated slightly differently, see ui_region_temp_remove().

Definition at line 817 of file screen_edit.cc.

References BKE_area_region_free(), BLI_freelinkN(), and ED_region_exit().

Referenced by region_quadview_exec().

◆ ED_region_search_filter_update()

void ED_region_search_filter_update ( const ScrArea * area,
ARegion * region )

Set the temporary update flag for property search.

Definition at line 790 of file area.cc.

References ED_area_region_search_filter_get(), RGN_FLAG_SEARCH_FILTER_ACTIVE, RGN_FLAG_SEARCH_FILTER_UPDATE, RGN_TYPE_WINDOW, and SET_FLAG_FROM_TEST.

Referenced by buttons_clear_filter_exec().

◆ ED_region_snap_size_apply()

bool ED_region_snap_size_apply ( ARegion * region,
int snap_flag )

Definition at line 4117 of file area.cc.

Referenced by reset_exec(), view_zoomdrag_apply(), and view_zoomstep_apply_ex().

◆ ED_region_snap_size_test()

int ED_region_snap_size_test ( const ARegion * region)

Definition at line 4104 of file area.cc.

References abs().

Referenced by reset_exec(), view_zoomdrag_apply(), and view_zoomstep_apply_ex().

◆ ED_region_tag_redraw()

void ED_region_tag_redraw ( ARegion * region)

Definition at line 634 of file area.cc.

References RGN_DRAW, RGN_DRAW_EDITOR_OVERLAYS, RGN_DRAW_NO_REBUILD, RGN_DRAW_PARTIAL, and RGN_DRAWING.

Referenced by action_channel_region_listener(), action_header_region_listener(), action_main_region_listener(), action_refresh(), action_region_listener(), blender::ed::space_node::add_dragged_links_to_tree(), animchannels_select_filter_invoke(), annotation_draw_apply_event(), annotation_draw_modal(), blender::ed::asset::shelf::asset_shelf_region_listen(), asset_view_listener(), axis_set_view(), blender::ed::space_node::backimage_fit_exec(), blender::ed::space_node::backimage_zoom_exec(), blender::ui::bonedropper_sample_pt(), blender::ui::bonedropper_set_draw_callback_region(), buttons_main_region_listener(), center_current_frame_exec(), clip_header_region_listener(), clip_main_region_listener(), clip_properties_region_listener(), clip_props_region_listener(), colorband_tools_fn(), console_main_region_listener(), blender::ed::curves::curve_draw_event_add(), curve_draw_event_add(), curve_draw_modal(), curve_profile_presets_fn(), curve_profile_tools_fn(), curve_profile_zoom_in(), curve_profile_zoom_out(), curvemap_buttons_redraw(), curvemap_buttons_zoom_in(), curvemap_buttons_zoom_out(), curvemap_tools_func(), blender::ed::curves::curves_draw_modal(), datadropper_id_sample_pt(), datadropper_set_draw_callback_region(), depthdropper_depth_sample_pt(), blender::ed::outliner::do_item_rename(), dopesheet_view_all_exec(), drop_color_invoke(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_invoke(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_modal(), ED_area_status_text(), ED_area_tag_redraw(), ED_area_tag_redraw_regiontype(), ED_area_tag_region_size_update(), ED_area_type_hud_clear(), ED_area_type_hud_ensure(), ED_region_do_listen(), ED_region_do_msg_notify_tag_redraw(), ED_region_tag_redraw_editor_overlays(), ED_slider_modal(), ED_view3d_smooth_view_ex(), edbm_bevel_cancel(), edbm_inset_cancel(), ViewOpsData::end_navigation(), 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_cryptomatte_sample_fl(), face_select_all_exec(), face_select_hide_exec(), face_vert_reveal_exec(), file_main_region_listener(), file_smoothscroll_invoke(), file_tool_props_region_listener(), file_tools_region_listener(), file_ui_region_listener(), blender::ed::sculpt_paint::flush_update_done(), blender::ed::sculpt_paint::flush_update_step(), fly_modal(), grab_clone_apply(), graph_region_listener(), graphkeys_snap_cursor_value_exec(), blender::ed::greasepencil::grease_pencil_primitive_update_view(), hud_region_layout(), image_buttons_region_listener(), image_header_region_listener(), image_main_region_listener(), image_tools_region_listener(), image_view_all_exec(), image_view_pan_exec(), image_view_pan_exit(), image_view_selected_exec(), image_view_zoom_border_exec(), image_view_zoom_exec(), image_view_zoom_exit(), image_view_zoom_in_exec(), image_view_zoom_invoke(), image_view_zoom_out_exec(), image_view_zoom_ratio_exec(), image_zoom_apply(), info_header_listener(), info_main_region_listener(), ViewOpsData::init_navigation(), knifetool_exit_ex(), knifetool_init(), knifetool_modal(), knifetool_update_mval(), loopcut_finish(), loopcut_modal(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_invoke(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_modal(), nla_main_region_listener(), nla_region_listener(), nla_track_region_listener(), blender::ed::space_node::node_add_file_modal(), blender::ed::space_node::node_insert_offset_modal(), blender::ed::space_node::node_link_modal(), blender::ed::space_node::node_region_listener(), blender::ed::space_node::node_resize_modal(), blender::ed::object::object_transform_axis_target_invoke(), blender::ed::object::object_transform_axis_target_modal(), blender::ed::outliner::outliner_header_region_listener(), blender::ed::outliner::outliner_item_do_activate_from_cursor(), blender::ed::outliner::outliner_main_region_listener(), blender::ed::outliner::outliner_one_level_exec(), blender::ed::outliner::outliner_show_hierarchy_exec(), blender::ed::outliner::outliner_tag_redraw_avoid_rebuild_on_open_change(), blender::ed::outliner::outliner_toggle_expanded_exec(), paint_2d_redraw(), paint_proj_redraw(), paint_proj_stroke(), paint_select_less_exec(), paint_select_linked_exec(), paint_select_linked_pick_invoke(), paint_select_more_exec(), paintface_mouse_select(), paintface_select_loop_invoke(), paintvert_select_less_exec(), paintvert_select_linked_exec(), paintvert_select_linked_pick_invoke(), paintvert_select_more_exec(), panel_activate_state(), pose_slide_modal(), radial_control_modal(), redraw_timer_step(), region_blend_end(), region_blend_invoke(), region_rect_recursive(), region_toggle_exec(), rename_anim_channels(), renamebutton_cb(), reset_exec(), ringsel_exit(), ringsel_init(), run_pyfile_exec(), sclip_zoom_set_factor_exec(), screen_animation_region_tag_redraw(), SCULPT_tag_update_overlays(), select_anim_channel_keys(), sequencer_buttons_region_listener(), sequencer_main_region_listener(), sequencer_preview_region_listener(), sequencer_view_zoom_ratio_exec(), blender::ed::sculpt_paint::set_pivot_position_exec(), blender::ed::space_node::snode_bg_viewmove_modal(), blender::ed::spreadsheet::spreadsheet_dataset_region_listener(), blender::ed::spreadsheet::spreadsheet_header_region_listener(), blender::ed::spreadsheet::spreadsheet_main_region_draw(), blender::ed::spreadsheet::spreadsheet_main_region_listener(), statusbar_header_region_listener(), stencil_control_modal(), stitch_modal(), blender::ed::sculpt_paint::stroke_redraw(), blender::ed::sculpt_paint::hide::tag_update_visibility(), text_text_search_exec(), topbar_header_listener(), topbar_main_region_listener(), ui_block_views_listen(), ui_but_pie_menu_apply(), UI_context_update_anim_flag(), ui_do_animate(), ui_do_but_extra_operator_icon(), ui_do_but_HOTKEYEVT(), ui_do_but_textedit(), ui_do_but_textedit_select(), ui_do_but_VIEW_ITEM(), ui_do_button(), ui_do_drag(), ui_drag_toggle_set(), ui_handle_layout_panel_header(), ui_handle_list_event(), ui_handle_menus_recursive(), ui_handle_panel_category_cycling(), ui_handle_panel_header(), ui_handler_panel_region(), ui_menu_scroll_apply_offset_y(), ui_numedit_apply(), ui_numedit_set_active(), ui_panel_drag_collapse(), ui_pie_handler(), ui_popup_block_refresh(), ui_popup_translate(), ui_searchbox_create_generic_ex(), ui_searchbox_select(), ui_searchbox_update(), ui_tooltip_create_with_data(), ui_view_drop_invoke(), ui_view_item_rename_exec(), ui_view_scroll_invoke(), uv_sculpt_stroke_modal(), vert_select_all_exec(), vert_select_hide_exec(), vert_select_ungrouped_exec(), view3d_all_exec(), view3d_boxview_copy(), view3d_boxview_sync(), view3d_buttons_region_listener(), view3d_clipping_invoke(), view3d_header_region_listener(), view3d_interactive_add_begin(), view3d_interactive_add_exit(), view3d_interactive_add_modal(), view3d_main_region_listener(), view3d_smoothview_apply_from_timer(), view_all_exec(), view_all_exec(), view_center_cursor_exec(), view_center_cursor_exec(), view_pan_exec(), view_pan_exit(), view_selected_exec(), view_zoom_apply(), view_zoom_apply_step(), view_zoom_exec(), view_zoom_exit(), view_zoom_in_exec(), view_zoom_out_exec(), view_zoom_ratio_exec(), viewdolly_apply(), viewdolly_exec(), viewdolly_invoke(), viewmove_apply(), viewpersportho_exec(), viewroll_apply(), viewrotate_apply(), viewzoom_apply_3d(), viewzoom_apply_camera(), blender::ed::object::voxel_size_edit_invoke(), blender::ed::object::voxel_size_edit_modal(), vpaint_stroke_update_step(), walk_modal(), weight_paint_set_exec(), WM_gizmo_do_msg_notify_tag_refresh(), wm_region_tag_draw_on_gizmo_delay_refresh_for_tweak(), WM_reinit_gizmomap_all(), and wpaint_stroke_update_step().

◆ ED_region_tag_redraw_cursor()

void ED_region_tag_redraw_cursor ( ARegion * region)

Definition at line 646 of file area.cc.

References RGN_DRAW.

Referenced by view3d_main_region_listener().

◆ ED_region_tag_redraw_editor_overlays()

◆ ED_region_tag_redraw_no_rebuild()

void ED_region_tag_redraw_no_rebuild ( ARegion * region)

Definition at line 653 of file area.cc.

References RGN_DRAW, RGN_DRAW_EDITOR_OVERLAYS, RGN_DRAW_NO_REBUILD, RGN_DRAW_PARTIAL, and RGN_DRAWING.

Referenced by area_actionzone_refresh_xy(), button_activate_exit(), button_activate_state(), blender::ed::outliner::collection_drop_poll(), blender::ed::outliner::datastack_drop_poll(), blender::ed::outliner::do_outliner_operation_event(), ED_area_tag_redraw_no_rebuild(), ED_screen_set_active_region(), edge_pan_apply_delta(), force_activate_view_item_but(), blender::ed::outliner::outliner_box_select_exec(), blender::ed::outliner::outliner_deactivate(), blender::ed::outliner::outliner_highlight_update_invoke(), blender::ed::outliner::outliner_item_do_activate_from_cursor(), blender::ed::outliner::outliner_main_region_listener(), blender::ed::outliner::outliner_scroll_page_exec(), blender::ed::outliner::outliner_select_all_exec(), blender::ed::outliner::outliner_show_active_exec(), blender::ed::outliner::outliner_tag_redraw_avoid_rebuild_on_open_change(), blender::ed::outliner::parent_drop_poll(), blender::ed::asset::shelf::region_listen(), region_rect_recursive(), scroller_activate_apply(), scroller_activate_exit(), scroller_activate_init(), UI_but_ensure_in_view(), ui_do_but_extra_operator_icons_mousemove(), ui_handle_button_event(), ui_handle_viewlist_items_hover(), UI_view2d_edge_pan_cancel(), UI_view2d_smooth_view(), UI_view2d_sync(), view2d_smoothview_invoke(), view_pan_apply_ex(), view_zoomdrag_apply(), view_zoomstep_apply_ex(), wm_drags_exit(), and wm_region_test_render_do_draw().

◆ ED_region_tag_redraw_partial()

void ED_region_tag_redraw_partial ( ARegion * region,
const rcti * rct,
bool rebuild )

◆ ED_region_tag_refresh_ui()

◆ ED_region_toggle_hidden()

void ED_region_toggle_hidden ( bContext * C,
ARegion * region )

Exported to all editors, uses fading default.

Definition at line 2276 of file area.cc.

References region_toggle_hidden().

Referenced by animchannels_select_filter_invoke(), region_toggle_exec(), and text_text_search_exec().

◆ ED_region_update_rect()

void ED_region_update_rect ( ARegion * region)

Call to move a popup window (keep OpenGL context free!)

Definition at line 2201 of file area.cc.

References region_update_rect().

Referenced by ui_popup_block_refresh(), and ui_popup_translate().

◆ ED_region_visibility_change_update()

◆ ED_region_visibility_change_update_animated()

◆ ED_region_visibility_change_update_ex()

void ED_region_visibility_change_update_ex ( bContext * C,
ScrArea * area,
ARegion * region,
bool is_hidden,
bool do_init )

◆ ED_region_visible_rect()

◆ ED_screen_animation_no_scrub()

◆ ED_screen_animation_play()

◆ ED_screen_animation_playing()

◆ ED_screen_animation_timer()

◆ ED_screen_animation_timer_update()

void ED_screen_animation_timer_update ( bScreen * screen,
int redraws )

◆ ED_screen_area_active()

◆ ED_screen_area_find_with_spacedata()

ScrArea * ED_screen_area_find_with_spacedata ( const bScreen * screen,
const SpaceLink * sl,
bool only_visible )

Definition at line 1973 of file screen_edit.cc.

References BLI_findindex(), and LISTBASE_FOREACH.

◆ ED_screen_areas_iter_first()

ScrArea * ED_screen_areas_iter_first ( const wmWindow * win,
const bScreen * screen )

◆ ED_screen_areas_iter_next()

ScrArea * ED_screen_areas_iter_next ( const bScreen * screen,
const ScrArea * area )

Definition at line 3742 of file area.cc.

References GLOBAL_AREA_IS_HIDDEN, and ScrArea::next.

Referenced by ED_screen_areas_iter_first().

◆ ED_screen_change()

◆ ED_screen_do_listen()

◆ ED_screen_draw_edges()

◆ ED_screen_ensure_updated()

void ED_screen_ensure_updated ( bContext * C,
wmWindowManager * wm,
wmWindow * win )

Definition at line 810 of file screen_edit.cc.

References screen_refresh().

Referenced by wm_draw_update().

◆ ED_screen_exit()

◆ ED_screen_full_newspace()

◆ ED_screen_full_prevspace()

void ED_screen_full_prevspace ( bContext * C,
ScrArea * area )

was_prev_temp for the case previous space was a temporary full-screen as well

Definition at line 1461 of file screen_edit.cc.

References AREA_FLAG_STACKED_FULLSCREEN, BLI_assert, ED_area_prevspace(), and ED_screen_restore_temp_type().

Referenced by ED_screen_full_restore(), fullscreen_back_exec(), render_view_cancel_exec(), render_view_show_invoke(), and wm_handler_fileselect_do().

◆ ED_screen_full_restore()

void ED_screen_full_restore ( bContext * C,
ScrArea * area )

Restore a screen / area back to default operation, after temp full-screen modes.

Definition at line 1490 of file screen_edit.cc.

References CTX_wm_screen(), CTX_wm_window(), ED_screen_full_prevspace(), ED_screen_state_toggle(), SpaceLink::link_flag, SpaceLink::next, SCREENMAXIMIZED, SPACE_FLAG_TYPE_TEMPORARY, and state.

Referenced by ED_workspace_layout_cycle().

◆ ED_screen_global_areas_refresh()

◆ ED_screen_global_areas_sync()

◆ ED_screen_refresh()

void ED_screen_refresh ( bContext * C,
wmWindowManager * wm,
wmWindow * win )

Make this screen usable. for file read and first use, for scaling window, area moves.

Definition at line 784 of file screen_edit.cc.

References screen_refresh().

Referenced by ED_screens_init(), screen_change_update(), wm_debug_menu_exec(), and WM_window_open().

◆ ED_screen_restore_temp_type()

◆ ED_screen_scene_change()

◆ ED_screen_scene_find()

Scene * ED_screen_scene_find ( const bScreen * screen,
const wmWindowManager * wm )

Definition at line 1994 of file screen_edit.cc.

References ED_screen_scene_find_with_window().

◆ ED_screen_scene_find_with_window()

Scene * ED_screen_scene_find_with_window ( const bScreen * screen,
const wmWindowManager * wm,
wmWindow ** r_window )

Find the scene displayed in screen.

Note
Assumes screen to be visible/active!

Definition at line 1956 of file screen_edit.cc.

References LISTBASE_FOREACH, wmWindowManager::windows, WM_window_get_active_scene(), and WM_window_get_active_screen().

Referenced by ED_screen_scene_find().

◆ ED_screen_set_active_region()

◆ ED_screen_state_maximized_create()

bScreen * ED_screen_state_maximized_create ( bContext * C)

Create a new temporary screen with a maximized, empty area. This can be closed with ED_screen_state_toggle().

Use this to just create a new maximized screen/area, rather than maximizing an existing one. Otherwise, maximize with ED_screen_state_toggle().

Definition at line 1599 of file screen_edit.cc.

References CTX_wm_window(), screen_state_to_nonnormal(), and SCREENMAXIMIZED.

Referenced by ED_screen_full_newspace().

◆ ED_screen_state_toggle()

ScrArea * ED_screen_state_toggle ( bContext * C,
wmWindow * win,
ScrArea * area,
short state )

This function toggles: if area is maximized/full then the parent will be restored.

Use ED_screen_state_maximized_create() if you do not want the toggle behavior when changing to a maximized area. I.e. if you just want to open a new maximized screen/area, not maximize a specific area. In the former case, space data of the maximized and non-maximized area should be independent, in the latter it should be the same.

Warning
area may be freed.

Definition at line 1604 of file screen_edit.cc.

References bScreen::animtimer, bScreen::areabase, ScrAreaMap::areabase, BKE_workspace_layout_remove(), BKE_workspace_layout_screen_get(), BLI_assert, CTX_data_main(), CTX_wm_area(), CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_screen(), ED_area_data_swap(), ED_area_status_text(), ED_area_tag_refresh(), ED_screen_change(), ED_workspace_status_text(), ListBase::first, bScreen::flag, ScrArea::full, ScrArea::global, wmWindow::global_areas, LISTBASE_FOREACH, screen_state_to_nonnormal(), SCREENFULL, SCREENNORMAL, state, UI_blocklist_free(), WM_event_timer_remove(), WM_window_get_active_layout(), WM_window_get_active_screen(), and WM_window_get_active_workspace().

Referenced by ED_screen_full_restore(), ED_screen_restore_temp_type(), render_view_cancel_exec(), and screen_maximize_area_exec().

◆ ED_screen_stereo3d_required()

◆ ED_screen_temp_space_open()

ScrArea * ED_screen_temp_space_open ( bContext * C,
const char * title,
const rcti * rect_unscaled,
eSpace_Type space_type,
int display_type,
bool dialog )

Wrapper to open a temporary space either as full-screen space, or as separate window, as defined by display_type.

Parameters
titleTitle to set for the window, if a window is spawned.
rect_unscaledPosition & size of the window, if a window is spawned.

Referenced by wm_handler_fileselect_do().

◆ ED_screen_user_menu_ensure()

◆ ED_screen_user_menu_item_add_menu()

void ED_screen_user_menu_item_add_menu ( ListBase * lb,
const char * ui_name,
const MenuType * mt )

◆ ED_screen_user_menu_item_add_operator()

◆ ED_screen_user_menu_item_add_prop()

void ED_screen_user_menu_item_add_prop ( ListBase * lb,
const char * ui_name,
const char * context_data_path,
const char * prop_id,
int prop_index )

◆ ED_screen_user_menu_item_find_menu()

bUserMenuItem_Menu * ED_screen_user_menu_item_find_menu ( ListBase * lb,
const MenuType * mt )

◆ ED_screen_user_menu_item_find_operator()

bUserMenuItem_Op * ED_screen_user_menu_item_find_operator ( ListBase * lb,
const wmOperatorType * ot,
IDProperty * prop,
const char * op_prop_enum,
wmOperatorCallContext opcontext )

Finds a menu item associated with an operator in user menus (aka Quick Favorites)

Parameters
op_prop_enumname of an operator property when the operator is called with an enum (to be an empty string otherwise)

Definition at line 99 of file screen_user_menu.cc.

References wmOperatorType::idname, IDP_EqualsProperties(), LISTBASE_FOREACH, bUserMenuItem_Op::op_idname, bUserMenuItem_Op::op_prop_enum, bUserMenuItem_Op::opcontext, ot, bUserMenuItem_Op::prop, STREQ, and USER_MENU_TYPE_OPERATOR.

Referenced by ui_but_user_menu_find().

◆ ED_screen_user_menu_item_find_prop()

bUserMenuItem_Prop * ED_screen_user_menu_item_find_prop ( ListBase * lb,
const char * context_data_path,
const char * prop_id,
int prop_index )

◆ ED_screen_user_menu_item_remove()

void ED_screen_user_menu_item_remove ( ListBase * lb,
bUserMenuItem * umi )

◆ ED_screen_user_menu_register()

◆ ED_screen_user_menus_find()

◆ ED_screen_window_find()

wmWindow * ED_screen_window_find ( const bScreen * screen,
const wmWindowManager * wm )

◆ ED_screens_footer_tools_menu_create()

void ED_screens_footer_tools_menu_create ( bContext * C,
uiLayout * layout,
void * arg )

◆ ED_screens_header_tools_menu_create()

◆ ED_screens_init()

◆ ED_screens_region_flip_menu_create()

◆ ED_spacetypes_keymap()

void ED_spacetypes_keymap ( wmKeyConfig * keyconf)

◆ ED_update_for_newframe()

◆ ED_workspace_add()

WorkSpace * ED_workspace_add ( Main * bmain,
const char * name )

Definition at line 56 of file workspace_edit.cc.

References BKE_workspace_add().

Referenced by ED_workspace_duplicate().

◆ ED_workspace_change()

bool ED_workspace_change ( WorkSpace * workspace_new,
bContext * C,
wmWindowManager * wm,
wmWindow * win )

◆ ED_workspace_delete()

◆ ED_workspace_do_listen()

void ED_workspace_do_listen ( bContext * C,
const wmNotifier * note )

Definition at line 40 of file workspace_listen.cc.

References CTX_wm_workspace(), and validate_viewer_paths().

Referenced by wm_event_do_notifiers().

◆ ED_workspace_duplicate()

WorkSpace * ED_workspace_duplicate ( WorkSpace * workspace_old,
Main * bmain,
wmWindow * win )

Duplicate a workspace including its layouts. Does not activate the workspace, but it stores the screen-layout to be activated (BKE_workspace_temp_layout_store)

Definition at line 217 of file workspace_edit.cc.

References BKE_workspace_active_layout_get(), BLI_duplicatelist(), ED_workspace_add(), ED_workspace_layout_duplicate(), WorkSpace::flags, WorkSpace::id, WorkSpace::layouts, LISTBASE_FOREACH, ID::name, WorkSpace::object_mode, WorkSpace::order, WorkSpace::owner_ids, WorkSpace::pin_scene, WorkSpaceInstanceHook::temp_layout_store, and wmWindow::workspace_hook.

Referenced by workspace_new_exec().

◆ ED_workspace_layout_add()

WorkSpaceLayout * ED_workspace_layout_add ( Main * bmain,
WorkSpace * workspace,
wmWindow * win,
const char * name )

Empty screen, with 1 dummy area without space-data. Uses window size.

Definition at line 28 of file workspace_layout_edit.cc.

References BKE_workspace_layout_add(), screen_add(), and WM_window_screen_rect_calc().

Referenced by ED_workspace_layout_duplicate(), screen_state_to_nonnormal(), and WM_window_open().

◆ ED_workspace_layout_cycle()

◆ ED_workspace_layout_delete()

bool ED_workspace_layout_delete ( WorkSpace * workspace,
WorkSpaceLayout * layout_old,
bContext * C )
Warning
Only call outside of area/region loops!
Returns
true if succeeded.

Definition at line 117 of file workspace_layout_edit.cc.

References BKE_screen_is_fullscreen_area(), BKE_workspace_layout_screen_get(), BLI_assert, BLI_findindex(), WorkSpace::layouts, workspace_layout_delete_doit(), and workspace_layout_delete_find_new().

Referenced by wm_event_do_notifiers().

◆ ED_workspace_layout_duplicate()

◆ ED_workspace_scene_data_sync()

void ED_workspace_scene_data_sync ( WorkSpaceInstanceHook * hook,
Scene * scene )

Some editor data may need to be synced with scene data (3D View camera and layers). This function ensures data is synced for editors in active layout of workspace.

Definition at line 270 of file workspace_edit.cc.

References BKE_screen_view3d_scene_sync(), and BKE_workspace_active_screen_get().

Referenced by WM_windows_scene_data_sync().

◆ ED_workspace_screen_change_ensure_unused_layout()

WorkSpaceLayout * ED_workspace_screen_change_ensure_unused_layout ( Main * bmain,
WorkSpace * workspace,
WorkSpaceLayout * layout_new,
const WorkSpaceLayout * layout_fallback_base,
wmWindow * win )

Make sure there is a non-full-screen layout to switch to that isn't used yet by an other window. Needed for workspace or screen switching to ensure valid screens.

Parameters
layout_fallback_baseAs last resort, this layout is duplicated and returned.

Definition at line 167 of file workspace_layout_edit.cc.

References BKE_workspace_layout_find(), BKE_workspace_layout_iter_circular(), BKE_workspace_layout_screen_get(), ED_workspace_layout_duplicate(), screen_fullscreen_find_associated_normal_screen(), screen_is_used_by_other_window(), and workspace_change_find_new_layout_cb().

Referenced by ED_screen_change(), and workspace_change_get_new_layout().

◆ ED_workspace_status_text()

void ED_workspace_status_text ( bContext * C,
const char * str )

Definition at line 966 of file area.cc.

References WorkspaceStatus::item(), and str.

Referenced by blender::ed::space_node::add_dragged_links_to_tree(), add_marker_at_click_invoke(), add_marker_at_click_modal(), annotation_draw_status_indicators(), area_join_exit(), area_move_exit(), area_split_exit(), area_swap_exit(), button_activate_state(), common_draw_status_header(), decimate_draw_status(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_cancel(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_invoke(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_modal(), ease_draw_status_header(), ED_screen_state_toggle(), ED_slider_destroy(), edbm_bevel_invoke(), edbm_bevel_modal(), edbm_inset_exit(), blender::ui::greasepencil::eyedropper_grease_pencil_exit(), blender::ui::greasepencil::eyedropper_grease_pencil_status_indicators(), blender::ed::sculpt_paint::expand::finish(), blender::ed::sculpt_paint::grease_pencil_fill_exit(), blender::ed::sculpt_paint::grease_pencil_fill_status_indicators(), blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_exit(), blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_modal(), blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_status_indicators(), blender::ed::greasepencil::grease_pencil_primitive_exit(), blender::ed::greasepencil::grease_pencil_primitive_status_indicators(), knifetool_modal(), loopcut_finish(), loopcut_modal(), mesh_bisect_invoke(), minimize_stretch_exit(), minimize_stretch_iteration(), pose_slide_draw_status(), pose_slide_modal(), poselib_blend_cleanup(), poselib_blend_modal(), sample_color_modal(), sample_color_update_header(), scale_from_neighbor_draw_status_header(), blender::ed::sculpt_paint::filter::sculpt_mesh_filter_modal(), blender::ed::sculpt_paint::dyntopo::sculpt_sample_detail_size_invoke(), blender::ed::sculpt_paint::dyntopo::sculpt_sample_detail_size_modal(), shear_draw_status_header(), stitch_exit(), stitch_update_header(), ui_block_open_end(), ui_handler_wait_for_input_remove(), UI_popup_block_close(), ui_popup_block_free(), ui_textedit_end(), blender::ed::object::voxel_size_edit_cancel(), blender::ed::object::voxel_size_edit_modal(), and WM_operator_name_call_ptr_with_depends_on_cursor().