Blender  V3.3
Macros | Typedefs | Enumerations | Functions
ED_screen.h 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.h"
#include "BLI_compiler_attrs.h"

Go to the source code of this file.

Macros

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

Typedefs

typedef enum eScreenCycle eScreenCycle
 

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)
}
 
enum  eScreenCycle { SPACE_CONTEXT_CYCLE_PREV , SPACE_CONTEXT_CYCLE_NEXT }
 

Functions

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

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.c:3498
ScrArea * ED_screen_areas_iter_first(const struct wmWindow *win, const bScreen *screen)

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 267 of file ED_screen.h.

◆ ED_screen_verts_iter

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

Definition at line 270 of file ED_screen.h.

Typedef Documentation

◆ eScreenCycle

typedef enum eScreenCycle eScreenCycle

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 

Definition at line 690 of file ED_screen.h.

◆ eScreenCycle

SCREEN_OT_space_context_cycle direction.

Enumerator
SPACE_CONTEXT_CYCLE_PREV 
SPACE_CONTEXT_CYCLE_NEXT 

Definition at line 704 of file ED_screen.h.

Function Documentation

◆ ED_area_azones_update()

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

◆ ED_area_do_listen()

void ED_area_do_listen ( struct wmSpaceTypeListenerParams params)

Only exported for WM.

Definition at line 159 of file area.c.

References params.

Referenced by wm_event_do_notifiers().

◆ ED_area_do_mgs_subscribe_for_tool_header()

void ED_area_do_mgs_subscribe_for_tool_header ( const struct wmRegionMessageSubscribeParams params)

◆ ED_area_do_mgs_subscribe_for_tool_ui()

void ED_area_do_mgs_subscribe_for_tool_ui ( const struct wmRegionMessageSubscribeParams params)

◆ ED_area_do_msg_notify_tag_refresh()

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

◆ ED_area_do_refresh()

void ED_area_do_refresh ( struct bContext C,
ScrArea area 
)

Only exported for WM.

Definition at line 167 of file area.c.

References blender::compositor::area(), and C.

Referenced by wm_event_do_refresh_wm_and_depsgraph(), and wm_handler_fileselect_do().

◆ ED_area_exit()

void ED_area_exit ( struct bContext C,
struct ScrArea area 
)

◆ 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 178 of file area_query.c.

References blender::compositor::area(), ED_region_contains_xy(), ELEM, LISTBASE_FOREACH, NULL, 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 struct bContext C,
int  spacetype,
const int  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.

Referenced by area_swap_modal().

◆ ED_area_footersize()

int ED_area_footersize ( void  )

Definition at line 3428 of file area.c.

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)

◆ ED_area_global_min_size_y()

int ED_area_global_min_size_y ( const ScrArea area)

◆ 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 3433 of file area.c.

References blender::compositor::area(), BLI_assert, ED_area_is_global(), round_fl_to_int(), and UI_DPI_FAC.

Referenced by screen_geom_vertices_scale(), and WM_window_screen_rect_calc().

◆ ED_area_has_shared_border()

bool ED_area_has_shared_border ( struct ScrArea a,
struct ScrArea b 
)

Definition at line 1897 of file area.c.

References Freestyle::a, area_getorientation(), and usdtokens::b().

Referenced by ED_buttons_should_sync_with_outliner().

◆ ED_area_header_switchbutton()

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

Returns offset for next button in header.

Referenced by uiTemplateHeader().

◆ ED_area_headersize()

int ED_area_headersize ( void  )

◆ ED_area_init()

void ED_area_init ( struct wmWindowManager wm,
struct wmWindow win,
struct ScrArea area 
)

◆ ED_area_is_global()

bool ED_area_is_global ( const ScrArea area)

◆ ED_area_newspace()

void ED_area_newspace ( struct bContext C,
ScrArea area,
int  type,
bool  skip_region_exit 
)

◆ ED_area_offscreen_create()

ScrArea* ED_area_offscreen_create ( struct wmWindow win,
eSpace_Type  space_type 
)

◆ ED_area_offscreen_free()

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

◆ ED_area_prevspace()

void ED_area_prevspace ( struct bContext C,
ScrArea area 
)

◆ ED_area_region_search_filter_get()

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

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

◆ ED_area_status_text()

void ED_area_status_text ( ScrArea area,
const char *  str 
)

Use NULL to disable it.

Definition at line 792 of file area.c.

References blender::compositor::area(), BLI_str_rstrip(), BLI_strncpy(), ED_region_tag_redraw(), LISTBASE_FOREACH, MEM_mallocN, MEM_SAFE_FREE, NULL, RGN_TYPE_HEADER, str, and UI_MAX_DRAW_STR.

Referenced by applyAlign(), applyBakeTime(), applyBevelWeight(), applyBoneEnvelope(), applyBoneRoll(), applyBoneSize(), applyCrease(), applyCurveShrinkFatten(), applyEdgeSlide(), applyGPOpacity(), applyGPShrinkFatten(), applyMaskShrinkFatten(), applyMirror(), applyNormalRotation(), applyPushPull(), applyResize(), applyRotation(), applySeqSlide(), applyShear(), applyShrinkFatten(), applySkinResize(), applyTilt(), applyTimeScale(), applyTimeSlide(), applyTimeTranslate(), applyToSphere(), applyTrackball(), applyTranslation(), applyVertSlide(), Bend(), ed_marker_move_exit(), ed_marker_move_update_header(), ED_screen_state_toggle(), ED_slider_destroy(), edbm_bevel_exit(), edbm_inset_exit(), edbm_inset_update_header(), gpencil_interpolate_exit(), gpencil_interpolate_modal(), gpencil_interpolate_status_indicators(), gpencil_uv_transform_exit(), gpencil_uv_transform_update_header(), graph_slider_exit(), interactive_value_exit(), interactive_value_update(), minimize_stretch_exit(), minimize_stretch_iteration(), point_normals_cancel(), point_normals_update_header(), pose_slide_draw_status(), pose_slide_modal(), poselib_blend_apply(), poselib_blend_cleanup(), poselib_preview_apply(), poselib_preview_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()

void ED_area_swapspace ( struct bContext C,
ScrArea sa1,
ScrArea sa2 
)

◆ ED_area_tag_redraw()

void ED_area_tag_redraw ( ScrArea area)

Definition at line 729 of file area.c.

References blender::compositor::area(), ED_region_tag_redraw(), and LISTBASE_FOREACH.

Referenced by action_listener(), action_refresh(), actkeys_viewall(), area_actionzone_refresh_xy(), area_dupli_invoke(), area_join_modal(), area_move_apply_do(), area_split_apply(), area_split_exit(), area_split_modal(), area_swap_modal(), bookmark_add_exec(), bookmark_cleanup_exec(), bookmark_delete_exec(), bookmark_move_exec(), box_select_exec(), buttons_area_listener(), buttons_area_redraw(), buttons_clear_filter_exec(), clip_listener(), clip_rebuild_proxy_exec(), clip_refresh(), console_clear_exec(), console_clear_line_exec(), console_delete_exec(), console_history_append_exec(), console_history_cycle_exec(), console_indent_exec(), console_insert_exec(), 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(), ED_screen_restore_temp_type(), ED_spreadsheet_context_paths_set_geometry_node(), ED_view3d_quadview_update(), ED_workspace_layout_duplicate(), ED_workspace_status_text(), file_draw_check_ex(), file_filenum_exec(), file_highlight_invoke(), file_refresh(), file_rename_exec(), file_select_all_exec(), file_view_selected_exec(), 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(), 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(), reset_recent_exec(), blender::ed::space_node::sample_apply(), blender::ed::space_node::sample_exit(), 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_thumbnail_init_job(), 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(), update_context_path_from_context(), update_pinned_context_path_if_outdated(), view_zoomdrag_apply(), view_zoomstep_apply_ex(), viewRedrawForce(), WM_window_cursor_keymap_status_refresh(), and WM_window_status_area_tag_redraw().

◆ ED_area_tag_redraw_no_rebuild()

void ED_area_tag_redraw_no_rebuild ( ScrArea area)

◆ ED_area_tag_redraw_regiontype()

void ED_area_tag_redraw_regiontype ( ScrArea area,
int  type 
)

◆ ED_area_tag_refresh()

void ED_area_tag_refresh ( ScrArea area)

◆ ED_area_type_hud()

struct ARegionType* ED_area_type_hud ( int  space_type)

◆ ED_area_type_hud_clear()

void ED_area_type_hud_clear ( struct wmWindowManager wm,
ScrArea area_keep 
)

◆ ED_area_type_hud_ensure()

void ED_area_type_hud_ensure ( struct bContext C,
struct ScrArea area 
)

◆ ED_area_update_region_sizes()

void ED_area_update_region_sizes ( struct wmWindowManager wm,
struct wmWindow win,
struct ScrArea area 
)

◆ ED_keymap_screen()

void ED_keymap_screen ( struct wmKeyConfig keyconf)

◆ ED_operator_action_active()

bool ED_operator_action_active ( struct bContext C)

◆ ED_operator_animview_active()

bool ED_operator_animview_active ( struct bContext C)

◆ ED_operator_areaactive()

bool ED_operator_areaactive ( struct bContext C)

◆ ED_operator_asset_browsing_active()

bool ED_operator_asset_browsing_active ( struct bContext C)

◆ ED_operator_buttons_active()

bool ED_operator_buttons_active ( struct bContext C)

◆ ED_operator_camera_poll()

bool ED_operator_camera_poll ( struct bContext C)

◆ ED_operator_console_active()

bool ED_operator_console_active ( struct bContext C)

◆ ED_operator_editable_mesh()

bool ED_operator_editable_mesh ( struct bContext C)

◆ ED_operator_editarmature()

bool ED_operator_editarmature ( struct bContext C)

◆ ED_operator_editcurve()

bool ED_operator_editcurve ( struct bContext C)

◆ ED_operator_editcurve_3d()

bool ED_operator_editcurve_3d ( struct bContext C)

◆ ED_operator_editfont()

bool ED_operator_editfont ( struct bContext C)

◆ ED_operator_editlattice()

bool ED_operator_editlattice ( struct bContext C)

◆ ED_operator_editmball()

bool ED_operator_editmball ( struct bContext C)

◆ ED_operator_editmesh()

bool ED_operator_editmesh ( struct bContext C)

Definition at line 433 of file screen_ops.c.

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

Referenced by ED_keymap_mesh(), ED_operator_editmesh_region_view3d(), ED_operator_editmesh_view3d(), edbm_select_ungrouped_poll(), edbm_separate_exec(), EDBM_view3d_poll(), hook_op_edit_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_hide(), MESH_OT_inset(), MESH_OT_intersect(), MESH_OT_intersect_boolean(), MESH_OT_loop_multi_select(), MESH_OT_loop_to_region(), 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_non_manifold(), MESH_OT_select_nth(), MESH_OT_select_random(), MESH_OT_select_similar(), MESH_OT_select_similar_region(), MESH_OT_set_normals_from_faces(), 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_rotate_normal(), TRANSFORM_OT_shrink_fatten(), TRANSFORM_OT_skin_resize(), TRANSFORM_OT_vert_crease(), and vertex_parent_set_poll().

◆ ED_operator_editmesh_auto_smooth()

bool ED_operator_editmesh_auto_smooth ( struct bContext C)

◆ ED_operator_editmesh_region_view3d()

bool ED_operator_editmesh_region_view3d ( struct bContext C)

◆ ED_operator_editmesh_view3d()

bool ED_operator_editmesh_view3d ( struct bContext C)

◆ ED_operator_editsurf()

bool ED_operator_editsurf ( struct bContext C)

Definition at line 626 of file screen_ops.c.

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

Referenced by CURVE_OT_select_row(), and CURVE_OT_spin().

◆ ED_operator_editsurfcurve()

bool ED_operator_editsurfcurve ( struct bContext C)

◆ ED_operator_editsurfcurve_region_view3d()

bool ED_operator_editsurfcurve_region_view3d ( struct bContext C)

◆ ED_operator_file_active()

bool ED_operator_file_active ( struct bContext C)

◆ ED_operator_file_browsing_active()

bool ED_operator_file_browsing_active ( struct bContext C)

◆ ED_operator_graphedit_active()

bool ED_operator_graphedit_active ( struct bContext C)

◆ ED_operator_image_active()

bool ED_operator_image_active ( struct bContext C)

Definition at line 344 of file screen_ops.c.

References C, ed_spacetype_test(), and SPACE_IMAGE.

Referenced by RENDER_OT_view_cancel().

◆ ED_operator_info_active()

bool ED_operator_info_active ( struct bContext C)

◆ ED_operator_nla_active()

bool ED_operator_nla_active ( struct bContext C)

◆ ED_operator_node_active()

bool ED_operator_node_active ( struct bContext C)

◆ ED_operator_node_editable()

bool ED_operator_node_editable ( struct bContext C)

Definition at line 318 of file screen_ops.c.

References BKE_id_is_editable(), C, CTX_data_main(), CTX_wm_space_node(), SpaceNode::edittree, and bNodeTree::id.

Referenced by blender::ed::space_node::composite_node_editable(), blender::ed::space_node::node_active_link_viewer_poll(), blender::ed::space_node::node_add_collection_poll(), blender::ed::space_node::node_add_file_poll(), blender::ed::space_node::node_add_group_poll(), blender::ed::space_node::node_add_mask_poll(), blender::ed::space_node::node_add_object_poll(), blender::ed::space_node::node_group_operator_editable(), blender::ed::space_node::NODE_OT_add_reroute(), blender::ed::space_node::NODE_OT_attach(), blender::ed::space_node::NODE_OT_clipboard_paste(), blender::ed::space_node::NODE_OT_delete(), blender::ed::space_node::NODE_OT_delete_reconnect(), blender::ed::space_node::NODE_OT_detach(), blender::ed::space_node::NODE_OT_duplicate(), blender::ed::space_node::NODE_OT_insert_offset(), blender::ed::space_node::NODE_OT_join(), blender::ed::space_node::NODE_OT_link(), blender::ed::space_node::NODE_OT_link_make(), blender::ed::space_node::NODE_OT_links_cut(), blender::ed::space_node::NODE_OT_links_detach(), blender::ed::space_node::NODE_OT_links_mute(), blender::ed::space_node::NODE_OT_mute_toggle(), blender::ed::space_node::NODE_OT_node_copy_color(), blender::ed::space_node::NODE_OT_parent_set(), blender::ed::space_node::NODE_OT_tree_socket_add(), blender::ed::space_node::NODE_OT_tree_socket_change_type(), blender::ed::space_node::NODE_OT_tree_socket_move(), blender::ed::space_node::NODE_OT_tree_socket_remove(), and blender::ed::space_node::node_shader_script_update_poll().

◆ ED_operator_object_active()

bool ED_operator_object_active ( struct bContext C)

◆ ED_operator_object_active_editable()

bool ED_operator_object_active_editable ( struct bContext C)

◆ ED_operator_object_active_editable_ex()

bool ED_operator_object_active_editable_ex ( struct bContext C,
const Object ob 
)

◆ ED_operator_object_active_editable_font()

bool ED_operator_object_active_editable_font ( struct bContext C)

◆ ED_operator_object_active_editable_mesh()

bool ED_operator_object_active_editable_mesh ( struct bContext C)

◆ ED_operator_object_active_local_editable()

bool ED_operator_object_active_local_editable ( struct bContext C)

◆ ED_operator_object_active_local_editable_ex()

bool ED_operator_object_active_local_editable_ex ( struct bContext C,
const Object ob 
)

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

Definition at line 402 of file screen_ops.c.

References C, ED_operator_object_active_editable_ex(), and ID_IS_OVERRIDE_LIBRARY.

Referenced by object_materials_supported_poll_ex(), and vertex_group_supported_poll_ex().

◆ ED_operator_object_active_local_editable_posemode_exclusive()

bool ED_operator_object_active_local_editable_posemode_exclusive ( struct bContext C)

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

Definition at line 501 of file screen_ops.c.

References C, CTX_wm_operator_poll_msg_set(), ED_object_active_context(), ed_operator_posemode_exclusive_ex(), and ID_IS_OVERRIDE_LIBRARY.

Referenced by POSE_OT_constraints_clear(), and POSE_OT_ik_clear().

◆ ED_operator_objectmode()

bool ED_operator_objectmode ( struct bContext C)

◆ ED_operator_objectmode_poll_msg()

bool ED_operator_objectmode_poll_msg ( struct 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 206 of file screen_ops.c.

References C, CTX_wm_operator_poll_msg_set(), and ED_operator_objectmode().

Referenced by OBJECT_OT_add_named(), OBJECT_OT_drop_named_material(), and OBJECT_OT_transform_to_mouse().

◆ ED_operator_outliner_active()

bool ED_operator_outliner_active ( struct bContext C)

◆ ED_operator_outliner_active_no_editobject()

bool ED_operator_outliner_active_no_editobject ( struct bContext C)

◆ ED_operator_posemode()

bool ED_operator_posemode ( struct bContext C)

◆ ED_operator_posemode_context()

bool ED_operator_posemode_context ( struct 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 517 of file screen_ops.c.

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

Referenced by pose_group_poll(), POSE_OT_group_deselect(), and POSE_OT_group_select().

◆ ED_operator_posemode_exclusive()

bool ED_operator_posemode_exclusive ( struct bContext C)

◆ ED_operator_posemode_local()

bool ED_operator_posemode_local ( struct bContext C)

◆ ED_operator_region_view3d_active()

bool ED_operator_region_view3d_active ( struct bContext C)

◆ ED_operator_regionactive()

bool ED_operator_regionactive ( struct bContext C)

◆ ED_operator_scene()

bool ED_operator_scene ( struct bContext C)

Definition at line 168 of file screen_ops.c.

References C, CTX_data_scene(), and scene.

Referenced by VIEW3D_OT_copybuffer().

◆ ED_operator_scene_editable()

bool ED_operator_scene_editable ( struct bContext C)

◆ ED_operator_screen_mainwinactive()

bool ED_operator_screen_mainwinactive ( struct bContext C)

When mouse is over area-edge.

Definition at line 153 of file screen_ops.c.

References bScreen::active_region, C, CTX_wm_screen(), CTX_wm_window(), and NULL.

Referenced by SCREEN_OT_area_move(), and SCREEN_OT_area_options().

◆ ED_operator_screenactive()

bool ED_operator_screenactive ( struct bContext C)

◆ ED_operator_screenactive_nobackground()

bool ED_operator_screenactive_nobackground ( struct bContext C)

◆ ED_operator_sequencer_active()

bool ED_operator_sequencer_active ( struct bContext C)

◆ ED_operator_sequencer_active_editable()

bool ED_operator_sequencer_active_editable ( struct bContext C)

◆ ED_operator_spreadsheet_active()

bool ED_operator_spreadsheet_active ( struct bContext C)

◆ ED_operator_uvedit()

bool ED_operator_uvedit ( struct bContext C)

◆ ED_operator_uvedit_space_image()

bool ED_operator_uvedit_space_image ( struct bContext C)

◆ ED_operator_uvmap()

bool ED_operator_uvmap ( struct bContext C)

◆ ED_operator_view3d_active()

bool ED_operator_view3d_active ( struct bContext C)

◆ ED_operatortypes_screen()

void ED_operatortypes_screen ( void  )

◆ ED_operatortypes_workspace()

void ED_operatortypes_workspace ( void  )

◆ ED_refresh_viewport_fps()

void ED_refresh_viewport_fps ( struct bContext C)

◆ ED_region_blend_alpha()

float ED_region_blend_alpha ( struct ARegion region)

◆ ED_region_cache_draw_background()

void ED_region_cache_draw_background ( struct ARegion region)

◆ ED_region_cache_draw_cached_segments()

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

◆ ED_region_cache_draw_curfra_label()

void ED_region_cache_draw_curfra_label ( int  framenr,
float  x,
float  y 
)

◆ ED_region_contains_xy()

bool ED_region_contains_xy ( const struct ARegion region,
const int  event_xy[2] 
)
Note
This may return true for multiple overlapping regions. If it matters, check overlapped regions first (ARegion.overlap).

Referenced by ED_screen_set_active_region().

◆ ED_region_cursor_set()

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

◆ ED_region_do_draw()

void ED_region_do_draw ( struct bContext C,
struct ARegion region 
)

Only exported for WM.

Definition at line 517 of file area.c.

References ARegion::alignment, blender::compositor::area(), area_is_pseudo_minimized(), BLI_thread_frand(), C, color, wmRegionMessageSubscribeParams::context, CTX_data_scene(), CTX_wm_area(), CTX_wm_manager(), CTX_wm_window(), CTX_wm_workspace(), ARegion::do_draw, ARegionType::do_lock, ARegionType::draw, ARegion::drawrct, ED_area_is_global(), ED_region_do_msg_notify_tag_redraw(), ED_region_draw_cb_draw(), ED_region_message_subscribe(), ED_region_pixelspace(), ELEM, fb(), G, GPU_blend(), GPU_BLEND_ALPHA, GPU_BLEND_NONE, GPU_COMP_F32, GPU_FETCH_FLOAT, GPU_framebuffer_active_get(), GPU_framebuffer_bind(), GPU_line_width(), GPU_SHADER_2D_UNIFORM_COLOR, GPU_vertformat_attr_add(), ARegion::headerstr, bScreen::id, imm_draw_box_wire_2d(), immBindBuiltinProgram(), immRectf(), immUnbindProgram(), immUniformColor4f(), immUniformColor4fv(), immVertexFormat(), wmWindowManager::message_bus, NULL, wmMsgSubscribeValue::owner, pos, ptr, region_draw_azones(), region_draw_emboss(), REGION_DRAW_POST_PIXEL, region_draw_status_text(), REGION_EMBOSS_LEFT, REGION_EMBOSS_RIGHT, ARegionType::regionid, ARegion::regiontype, RGN_ALIGN_QSPLIT, RGN_DRAWING, RGN_TYPE_CHANNELS, RGN_TYPE_TOOLS, RGN_TYPE_UI, RGN_TYPE_WINDOW, RNA_pointer_create(), scene, SCREENFULL, bScreen::state, TH_EDITOR_OUTLINE, ARegion::type, UI_blocklist_free_inactive(), UI_GetThemeColor3fv(), UI_SetTheme(), UI_ThemeClearColor(), ARegion::winrct, WM_msg_subscribe_rna(), WM_msgbus_clear_by_owner(), WM_window_get_active_screen(), wmOrtho2_region_pixelspace(), wmPartialViewport(), rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.

Referenced by ui_region_redraw_immediately(), wm_draw_region_test(), and wm_draw_window_offscreen().

◆ ED_region_do_layout()

void ED_region_do_layout ( struct bContext C,
struct ARegion region 
)

◆ ED_region_do_listen()

void ED_region_do_listen ( struct wmRegionListenerParams params)

◆ ED_region_do_msg_notify_tag_redraw()

void ED_region_do_msg_notify_tag_redraw ( struct bContext C,
struct wmMsgSubscribeKey msg_key,
struct wmMsgSubscribeValue msg_val 
)

◆ ED_region_exit()

void ED_region_exit ( struct bContext C,
struct ARegion region 
)

◆ ED_region_floating_init()

void ED_region_floating_init ( struct ARegion region)

◆ ED_region_generic_tools_region_message_subscribe()

void ED_region_generic_tools_region_message_subscribe ( const struct wmRegionMessageSubscribeParams params)

◆ ED_region_generic_tools_region_snap_size()

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

◆ ED_region_global_size_y()

int ED_region_global_size_y ( void  )

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 3513 of file area.c.

References ED_area_headersize().

Referenced by region_rect_recursive().

◆ ED_region_grid_draw()

void ED_region_grid_draw ( struct ARegion region,
float  zoomx,
float  zoomy,
float  x0,
float  y0 
)

◆ ED_region_header()

void ED_region_header ( const struct bContext C,
struct ARegion region 
)

◆ ED_region_header_draw()

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

◆ ED_region_header_init()

void ED_region_header_init ( struct ARegion region)

◆ ED_region_header_layout()

void ED_region_header_layout ( const struct bContext C,
struct ARegion region 
)

◆ ED_region_image_metadata_panel_draw()

void ED_region_image_metadata_panel_draw ( struct ImBuf ibuf,
struct uiLayout layout 
)

◆ ED_region_info_draw()

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

Definition at line 3591 of file area.c.

References ED_region_info_draw_multiline(), and NULL.

Referenced by draw_movieclip_notes(), and draw_render_info().

◆ ED_region_info_draw_multiline()

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

◆ ED_region_is_overlap()

bool ED_region_is_overlap ( int  spacetype,
int  regiontype 
)

◆ ED_region_message_subscribe()

void ED_region_message_subscribe ( struct wmRegionMessageSubscribeParams params)

◆ 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 
)

◆ 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 
)

◆ 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()

void ED_region_panels ( const struct bContext C,
struct ARegion region 
)

◆ ED_region_panels_draw()

void ED_region_panels_draw ( const struct bContext C,
struct ARegion region 
)

◆ ED_region_panels_ex()

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

◆ ED_region_panels_init()

void ED_region_panels_init ( struct wmWindowManager wm,
struct ARegion region 
)

◆ ED_region_panels_layout()

void ED_region_panels_layout ( const struct bContext C,
struct ARegion region 
)

◆ ED_region_panels_layout_ex()

void ED_region_panels_layout_ex ( const struct bContext C,
struct ARegion region,
struct ListBase paneltypes,
const char *  contexts[],
const char *  category_override 
)
Parameters
contextsA NULL terminated array of context strings to match against. Matching against any of these strings will draw the panel. Can be NULL to skip context checks.

Referenced by buttons_main_region_layout_properties(), ED_view3d_buttons_region_layout_ex(), image_buttons_region_layout(), and userpref_main_region_layout().

◆ ED_region_pixelspace()

void ED_region_pixelspace ( const struct ARegion region)

◆ ED_region_property_search()

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

Build the same panel list as ED_region_panels_layout_ex and checks whether any of the panels contain a search result based on the area / region's search filter.

Referenced by property_search_for_context().

◆ ED_region_remove()

void ED_region_remove ( struct bContext C,
struct ScrArea area,
struct 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 677 of file screen_edit.c.

References blender::compositor::area(), BKE_area_region_free(), BLI_freelinkN(), C, and ED_region_exit().

Referenced by file_ensure_valid_region_state(), and region_quadview_exec().

◆ ED_region_search_filter_update()

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

Set the temporary update flag for property search.

Referenced by buttons_clear_filter_exec().

◆ ED_region_snap_size_apply()

bool ED_region_snap_size_apply ( struct ARegion region,
int  snap_flag 
)

◆ ED_region_snap_size_test()

int ED_region_snap_size_test ( const struct ARegion region)

◆ ED_region_tag_redraw()

void ED_region_tag_redraw ( struct ARegion region)

Definition at line 655 of file area.c.

References ARegion::do_draw, ARegion::drawrct, 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(), animchannels_select_filter_invoke(), annotation_draw_apply_event(), annotation_draw_modal(), asset_view_listener(), axis_set_view(), blender::ed::space_node::backimage_fit_exec(), blender::ed::space_node::backimage_zoom_exec(), 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_dofunc(), console_main_region_listener(), curve_draw_event_add(), curve_draw_modal(), curvemap_buttons_redraw(), curvemap_buttons_zoom_in(), curvemap_buttons_zoom_out(), curvemap_tools_dofunc(), CurveProfile_buttons_zoom_in(), CurveProfile_buttons_zoom_out(), CurveProfile_presets_dofunc(), CurveProfile_tools_dofunc(), datadropper_id_sample_pt(), datadropper_set_draw_callback_region(), depthdropper_depth_sample_pt(), do_item_rename(), dopesheet_view_all_exec(), drop_color_invoke(), dyntopo_detail_size_edit_invoke(), dyntopo_detail_size_edit_modal(), ED_area_status_text(), ED_area_tag_redraw(), ED_area_tag_redraw_regiontype(), 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(), 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_modal(), 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(), fly_modal(), gpencil_draw_apply_event(), gpencil_draw_modal(), gpencil_sculpt_brush_invoke(), gpencil_sculpt_brush_modal(), gpencil_transform_fill_cancel(), gpencil_vertexpaint_brush_invoke(), gpencil_vertexpaint_brush_modal(), gpencil_weightpaint_brush_invoke(), gpencil_weightpaint_brush_modal(), grab_clone_apply(), graph_region_listener(), graphkeys_snap_cursor_value_exec(), hide_show_exec(), 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(), 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_channel_region_listener(), nla_main_region_listener(), nla_region_listener(), blender::ed::space_node::node_insert_offset_modal(), blender::ed::space_node::node_link_exit(), blender::ed::space_node::node_link_modal(), blender::ed::space_node::node_region_listener(), blender::ed::space_node::node_resize_modal(), object_transform_axis_target_invoke(), object_transform_axis_target_modal(), outliner_header_region_listener(), outliner_item_do_activate_from_cursor(), outliner_main_region_listener(), outliner_one_level_exec(), outliner_show_hierarchy_exec(), outliner_tag_redraw_avoid_rebuild_on_open_change(), outliner_toggle_expanded_exec(), paint_2d_redraw(), paint_proj_redraw(), paint_proj_stroke(), paint_select_linked_exec(), paint_select_linked_pick_invoke(), paintface_mouse_select(), 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_dirty_mask_exec(), SCULPT_flush_update_done(), SCULPT_flush_update_step(), sculpt_mask_expand_modal(), sculpt_set_pivot_position_exec(), 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::space_node::snode_bg_viewmove_modal(), spreadsheet_dataset_region_listener(), spreadsheet_header_region_listener(), spreadsheet_main_region_draw(), spreadsheet_main_region_listener(), statusbar_header_region_listener(), stencil_control_modal(), stitch_modal(), 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_list_event(), 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_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_item_rename_exec(), 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_ex(), view_all_exec(), view_center_cursor_exec(), view_pan_exec(), view_pan_exit(), view_selected_exec(), view_zoom_apply(), 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(), viewops_data_create(), viewops_data_free(), viewpersportho_exec(), viewroll_apply(), viewrotate_apply(), viewzoom_apply_3d(), viewzoom_apply_camera(), viewzoom_exec(), voxel_size_edit_invoke(), voxel_size_edit_modal(), vpaint_stroke_update_step_intern(), walk_modal(), weight_paint_set_exec(), WM_gizmo_do_msg_notify_tag_refresh(), wm_region_tag_draw_on_gizmo_delay_refresh_for_tweak(), and wpaint_stroke_update_step().

◆ ED_region_tag_redraw_cursor()

void ED_region_tag_redraw_cursor ( struct ARegion region)

Definition at line 667 of file area.c.

References ARegion::do_draw_paintcursor, and RGN_DRAW.

Referenced by view3d_main_region_listener().

◆ ED_region_tag_redraw_editor_overlays()

void ED_region_tag_redraw_editor_overlays ( struct ARegion region)

◆ ED_region_tag_redraw_no_rebuild()

void ED_region_tag_redraw_no_rebuild ( struct ARegion region)

◆ ED_region_tag_redraw_partial()

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

◆ ED_region_tag_refresh_ui()

void ED_region_tag_refresh_ui ( struct ARegion region)

◆ ED_region_toggle_hidden()

void ED_region_toggle_hidden ( struct bContext C,
struct ARegion region 
)

Exported to all editors, uses fading default.

Definition at line 2117 of file area.c.

References C, and 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 ( struct ARegion region)

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

Definition at line 2052 of file area.c.

References region_update_rect().

Referenced by ui_popup_block_refresh(), and ui_popup_translate().

◆ ED_region_visibility_change_update()

void ED_region_visibility_change_update ( struct bContext C,
struct ScrArea area,
struct ARegion region 
)

◆ ED_region_visibility_change_update_animated()

void ED_region_visibility_change_update_animated ( struct bContext C,
struct ScrArea area,
struct ARegion region 
)

◆ ED_region_visible_rect()

const rcti* ED_region_visible_rect ( ARegion region)

◆ ED_region_visible_rect_calc()

void ED_region_visible_rect_calc ( struct ARegion region,
struct rcti rect 
)

◆ ED_screen_animation_no_scrub()

bScreen* ED_screen_animation_no_scrub ( const struct wmWindowManager wm)

◆ ED_screen_animation_play()

int ED_screen_animation_play ( struct bContext C,
int  sync,
int  mode 
)

◆ ED_screen_animation_playing()

bScreen* ED_screen_animation_playing ( const struct wmWindowManager wm)

◆ ED_screen_animation_timer()

void ED_screen_animation_timer ( struct bContext C,
int  redraws,
int  sync,
int  enable 
)

◆ ED_screen_animation_timer_update()

void ED_screen_animation_timer_update ( struct bScreen screen,
int  redraws 
)

◆ ED_screen_area_active()

int ED_screen_area_active ( const struct bContext C)

◆ ED_screen_area_find_with_spacedata()

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

◆ ED_screen_areas_iter_first()

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

◆ ED_screen_areas_iter_next()

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

◆ ED_screen_change()

bool ED_screen_change ( struct bContext C,
struct bScreen screen 
)

◆ ED_screen_do_listen()

void ED_screen_do_listen ( struct bContext C,
struct wmNotifier note 
)

◆ ED_screen_draw_edges()

void ED_screen_draw_edges ( struct wmWindow win)

◆ ED_screen_ensure_updated()

void ED_screen_ensure_updated ( struct wmWindowManager wm,
struct wmWindow win,
struct bScreen screen 
)

Definition at line 670 of file screen_edit.c.

References bScreen::do_refresh, and ED_screen_refresh().

Referenced by wm_draw_update().

◆ ED_screen_exit()

void ED_screen_exit ( struct bContext C,
struct wmWindow window,
struct bScreen screen 
)

◆ ED_screen_full_newspace()

ScrArea* ED_screen_full_newspace ( struct bContext C,
ScrArea area,
int  type 
)

◆ ED_screen_full_prevspace()

void ED_screen_full_prevspace ( struct bContext C,
ScrArea area 
)

◆ ED_screen_full_restore()

void ED_screen_full_restore ( struct bContext C,
ScrArea area 
)

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

Definition at line 1304 of file screen_edit.c.

References blender::compositor::area(), C, CTX_wm_screen(), CTX_wm_window(), ED_screen_full_prevspace(), ED_screen_state_toggle(), SpaceLink::link_flag, SpaceLink::next, SCREENMAXIMIZED, SPACE_FLAG_TYPE_TEMPORARY, state, and bScreen::state.

Referenced by ED_workspace_layout_cycle().

◆ ED_screen_global_areas_refresh()

void ED_screen_global_areas_refresh ( struct wmWindow win)

◆ ED_screen_global_areas_sync()

void ED_screen_global_areas_sync ( struct wmWindow win)

◆ ED_screen_preview_render()

void ED_screen_preview_render ( const struct bScreen screen,
int  size_x,
int  size_y,
unsigned int *  r_rect 
)

Render the preview for a screen layout in screen.

Referenced by icon_preview_startjob().

◆ ED_screen_refresh()

void ED_screen_refresh ( struct wmWindowManager wm,
struct wmWindow win 
)

◆ ED_screen_restore_temp_type()

void ED_screen_restore_temp_type ( struct bContext C,
ScrArea area 
)

◆ ED_screen_scene_change()

void ED_screen_scene_change ( struct bContext C,
struct wmWindow win,
struct Scene scene,
bool  refresh_toolsystem 
)

◆ ED_screen_scene_find()

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

◆ ED_screen_scene_find_with_window()

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

Find the scene displayed in screen.

Note
Assumes screen to be visible/active!

◆ ED_screen_set_active_region()

void ED_screen_set_active_region ( struct bContext C,
struct wmWindow win,
const int  xy[2] 
)

◆ ED_screen_state_maximized_create()

bScreen* ED_screen_state_maximized_create ( struct 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 1410 of file screen_edit.c.

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

Referenced by ED_screen_full_newspace().

◆ ED_screen_state_toggle()

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

◆ ED_screen_stereo3d_required()

bool ED_screen_stereo3d_required ( const struct bScreen screen,
const struct Scene scene 
)
Returns
true if any active area requires to see in 3D.

Referenced by WM_stereo3d_enabled().

◆ ED_screen_temp_space_open()

ScrArea* ED_screen_temp_space_open ( struct bContext C,
const char *  title,
int  x,
int  y,
int  sizex,
int  sizey,
eSpace_Type  space_type,
int  display_type,
bool  dialog 
)

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

Parameters
titleTitle to set for the window, if a window is spawned.
x,yPosition of the window, if a window is spawned.
sizex,sizeyDimensions of the window, if a window is spawned.

Definition at line 1522 of file screen_edit.c.

References blender::compositor::area(), AREA_FLAG_STACKED_FULLSCREEN, C, CTX_wm_area(), ED_area_newspace(), ED_screen_full_newspace(), ScrArea::full, NULL, SPACE_FLAG_TYPE_TEMPORARY, USER_TEMP_SPACE_DISPLAY_FULLSCREEN, USER_TEMP_SPACE_DISPLAY_WINDOW, WIN_ALIGN_LOCATION_CENTER, WM_window_open(), x, and y.

Referenced by wm_handler_fileselect_do().

◆ ED_screen_user_menu_ensure()

struct bUserMenu* ED_screen_user_menu_ensure ( struct bContext C)

◆ ED_screen_user_menu_item_add_menu()

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

Referenced by ui_but_user_menu_add().

◆ ED_screen_user_menu_item_add_operator()

void ED_screen_user_menu_item_add_operator ( struct ListBase lb,
const char *  ui_name,
const struct wmOperatorType ot,
const struct IDProperty prop,
wmOperatorCallContext  opcontext 
)

Referenced by ui_but_user_menu_add().

◆ 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()

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

◆ ED_screen_user_menu_item_find_operator()

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

Referenced by ui_but_user_menu_find().

◆ ED_screen_user_menu_item_find_prop()

struct bUserMenuItem_Prop* ED_screen_user_menu_item_find_prop ( struct 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 ( struct ListBase lb,
struct bUserMenuItem umi 
)

Definition at line 185 of file screen_user_menu.c.

References BKE_blender_user_menu_item_free(), and BLI_remlink().

Referenced by popup_user_menu_remove_func().

◆ ED_screen_user_menu_register()

void ED_screen_user_menu_register ( void  )

◆ ED_screen_user_menus_find()

bUserMenu** ED_screen_user_menus_find ( const struct bContext C,
uint r_len 
)

◆ ED_screen_window_find()

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

◆ ED_screens_footer_tools_menu_create()

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

◆ ED_screens_header_tools_menu_create()

void ED_screens_header_tools_menu_create ( struct bContext C,
struct uiLayout layout,
void arg 
)

◆ ED_screens_init()

void ED_screens_init ( struct Main bmain,
struct wmWindowManager wm 
)

◆ ED_screens_navigation_bar_tools_menu_create()

void ED_screens_navigation_bar_tools_menu_create ( struct bContext C,
struct uiLayout layout,
void arg 
)

◆ ED_spacetypes_keymap()

void ED_spacetypes_keymap ( struct wmKeyConfig keyconf)

◆ ED_update_for_newframe()

void ED_update_for_newframe ( struct Main bmain,
struct Depsgraph depsgraph 
)

◆ ED_workspace_add()

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

Definition at line 52 of file workspace_edit.c.

References BKE_workspace_add().

Referenced by ED_workspace_duplicate().

◆ ED_workspace_change()

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

◆ ED_workspace_delete()

bool ED_workspace_delete ( struct WorkSpace workspace,
struct Main bmain,
struct bContext C,
struct wmWindowManager wm 
)

◆ ED_workspace_duplicate()

struct WorkSpace* ED_workspace_duplicate ( struct WorkSpace workspace_old,
struct Main bmain,
struct 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 212 of file workspace_edit.c.

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()

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

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

Definition at line 26 of file workspace_layout_edit.c.

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()

bool ED_workspace_layout_cycle ( struct WorkSpace workspace,
short  direction,
struct bContext C 
)

◆ ED_workspace_layout_delete()

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

Definition at line 115 of file workspace_layout_edit.c.

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

Referenced by wm_event_do_notifiers().

◆ ED_workspace_layout_duplicate()

struct WorkSpaceLayout* ED_workspace_layout_duplicate ( struct Main bmain,
struct WorkSpace workspace,
const struct WorkSpaceLayout layout_old,
struct wmWindow win 
)

◆ ED_workspace_scene_data_sync()

void ED_workspace_scene_data_sync ( struct 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 266 of file workspace_edit.c.

References BKE_screen_view3d_scene_sync(), BKE_workspace_active_screen_get(), and scene.

Referenced by WM_windows_scene_data_sync().

◆ ED_workspace_screen_change_ensure_unused_layout()

struct WorkSpaceLayout* ED_workspace_screen_change_ensure_unused_layout ( struct Main bmain,
struct WorkSpace workspace,
struct WorkSpaceLayout layout_new,
const struct WorkSpaceLayout layout_fallback_base,
struct 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.

Referenced by ED_screen_change(), and workspace_change_get_new_layout().

◆ ED_workspace_status_text()

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

Definition at line 816 of file area.c.

References blender::compositor::area(), ScrAreaMap::areabase, BLI_strncpy(), C, CTX_wm_window(), CTX_wm_workspace(), ED_area_tag_redraw(), wmWindow::global_areas, LISTBASE_FOREACH, MEM_mallocN, MEM_SAFE_FREE, NULL, SPACE_STATUSBAR, WorkSpace::status_text, str, and UI_MAX_DRAW_STR.

Referenced by add_marker_at_click_invoke(), add_marker_at_click_modal(), annotation_draw_status_indicators(), blend_to_default_draw_status_header(), blend_to_neighbor_draw_status_header(), breakdown_draw_status_header(), decimate_draw_status(), dyntopo_detail_size_edit_cancel(), dyntopo_detail_size_edit_invoke(), dyntopo_detail_size_edit_modal(), ED_screen_state_toggle(), ED_slider_destroy(), edbm_bevel_invoke(), edbm_bevel_modal(), edbm_bevel_update_status_text(), eyedropper_gpencil_exit(), eyedropper_gpencil_status_indicators(), face_set_extract_invoke(), face_set_extract_modal(), gpencil_draw_status_indicators(), gpencil_fill_exit(), gpencil_fill_status_indicators(), gpencil_interpolate_exit(), gpencil_interpolate_modal(), gpencil_interpolate_status_indicators(), gpencil_primitive_exit(), gpencil_primitive_interaction_end(), gpencil_primitive_modal(), gpencil_primitive_status_indicators(), gpencil_sculpt_brush_exit(), gpencil_sculpt_brush_header_set(), gpencil_vertexpaint_brush_exit(), gpencil_vertexpaint_brush_header_set(), gpencil_weightpaint_brush_exit(), gpencil_weightpaint_brush_header_set(), knife_update_header(), knifetool_modal(), loopcut_finish(), loopcut_init(), loopcut_modal(), mesh_bisect_invoke(), mesh_bisect_modal(), minimize_stretch_exit(), minimize_stretch_iteration(), blender::ed::space_node::node_link_exit(), blender::ed::space_node::node_link_update_header(), pose_slide_draw_status(), pose_slide_modal(), poselib_blend_apply(), poselib_blend_cleanup(), poselib_preview_apply(), poselib_preview_cleanup(), sample_color_modal(), sample_color_update_header(), sculpt_expand_finish(), sculpt_mask_expand_cancel(), sculpt_mask_expand_invoke(), sculpt_mask_expand_modal(), sculpt_sample_detail_size_invoke(), sculpt_sample_detail_size_modal(), stitch_exit(), stitch_update_header(), ui_handler_wait_for_input_remove(), voxel_size_edit_cancel(), voxel_size_edit_invoke(), voxel_size_edit_modal(), and WM_operator_name_call_ptr_with_depends_on_cursor().