From 95373e274908615df2e5dbf6243b055ff2c39518 Mon Sep 17 00:00:00 2001 From: Julian Eisel Date: Wed, 18 Sep 2019 14:21:32 +0200 Subject: Refactor temp-space opening for optional fullscreen mode Will be put to use in followup commits. --- source/blender/editors/screen/screen_edit.c | 33 +++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'source/blender/editors/screen/screen_edit.c') diff --git a/source/blender/editors/screen/screen_edit.c b/source/blender/editors/screen/screen_edit.c index b37aa47aba6..20920dc6f84 100644 --- a/source/blender/editors/screen/screen_edit.c +++ b/source/blender/editors/screen/screen_edit.c @@ -1346,6 +1346,39 @@ ScrArea *ED_screen_state_toggle(bContext *C, wmWindow *win, ScrArea *sa, const s return sc->areabase.first; } +/** + * Wrapper to open a temporary space either as fullscreen space, or as separate window, as defined + * by \a display_type. + * + * \param title: Title to set for the window, if a window is spawned. + * \param x, y: Position of the window, if a window is spawned. + * \param sizex, sizey: Dimensions of the window, if a window is spawned. + */ +ScrArea *ED_screen_temp_space_open(bContext *C, + const char *title, + int x, + int y, + int sizex, + int sizey, + eSpace_Type space_type, + int display_type) +{ + ScrArea *sa = NULL; + + switch (display_type) { + case USER_TEMP_SPACE_DISPLAY_WINDOW: + if (WM_window_open_temp(C, title, x, y, sizex, sizey, (int)space_type)) { + sa = CTX_wm_area(C); + } + break; + case USER_TEMP_SPACE_DISPLAY_FULLSCREEN: + sa = ED_screen_full_newspace(C, CTX_wm_area(C), (int)space_type); + break; + } + + return sa; +} + /* update frame rate info for viewport drawing */ void ED_refresh_viewport_fps(bContext *C) { -- cgit v1.2.3