Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/screen/workspace_layout_edit.c
| Show First 20 Lines • Show All 62 Lines • ▼ Show 20 Lines | WorkSpaceLayout *ED_workspace_layout_duplicate(Main *bmain, | ||||
| const char *name = BKE_workspace_layout_name_get(layout_old); | const char *name = BKE_workspace_layout_name_get(layout_old); | ||||
| bScreen *screen_new; | bScreen *screen_new; | ||||
| WorkSpaceLayout *layout_new; | WorkSpaceLayout *layout_new; | ||||
| layout_new = ED_workspace_layout_add(bmain, workspace, win, name); | layout_new = ED_workspace_layout_add(bmain, workspace, win, name); | ||||
| screen_new = BKE_workspace_layout_screen_get(layout_new); | screen_new = BKE_workspace_layout_screen_get(layout_new); | ||||
| if (BKE_screen_is_fullscreen_area(screen_old)) { | if (BKE_screen_is_fullscreen_area(screen_old)) { | ||||
| for (ScrArea *area_old = screen_old->areabase.first; area_old; area_old = area_old->next) { | LISTBASE_FOREACH (ScrArea *, area_old, &screen_old->areabase) { | ||||
| if (area_old->full) { | if (area_old->full) { | ||||
| ScrArea *area_new = (ScrArea *)screen_new->areabase.first; | ScrArea *area_new = (ScrArea *)screen_new->areabase.first; | ||||
| ED_area_data_copy(area_new, area_old, true); | ED_area_data_copy(area_new, area_old, true); | ||||
| ED_area_tag_redraw(area_new); | ED_area_tag_redraw(area_new); | ||||
| break; | break; | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 123 Lines • Show Last 20 Lines | |||||