Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Leung <aligorith@gmail.com>2008-12-16 14:24:24 +0300
committerJoshua Leung <aligorith@gmail.com>2008-12-16 14:24:24 +0300
commitf518fa8ea76a39078ca43eb06fbfaf5aa9ac31dc (patch)
tree388b8d054697ff04de0a1f1035a5e2c8f55b93ea
parent998e682fc310aa325e54dfcd7c0a9708803ee790 (diff)
View2D: Presets for Initialising Views
Improved the View2D API so that initialising View2D data in init() callbacks (called on new regions and also on resizing regions) for regions is easier. Added a few preset view configurations for use when initialising new views. Views with the V2D_IS_INITIALISED flag set will not be reinitialised in the init() callbacks. Currently, some of these configurations will set/override all settings (like V2D_COMMONVIEW_LIST and V2D_COMMONVIEW_HEADER), while other ones serve a more supplimentary role (i.e. V2D_COMMONVIEW_TIMELINE only sets the x-axis settings, relying on the region to have already set the relevant y-axis settings). The future of such supplimentary configurations is yet to be seen, as I'm currently not sure whether they will cause the code to become too confusing, as you'd have to keep track of which settings belong/are set where. So far, only a few areas have been ported to use this. Tomorrow I'll check on a few more. As this commit touches a lot of files, hopefully there aren't any critical bugs I've missed here.
-rw-r--r--source/blender/blenloader/intern/readfile.c13
-rw-r--r--source/blender/editors/include/UI_view2d.h9
-rw-r--r--source/blender/editors/interface/view2d.c143
-rw-r--r--source/blender/editors/interface/view2d_ops.c2
-rw-r--r--source/blender/editors/space_action/space_action.c27
-rw-r--r--source/blender/editors/space_buttons/space_buttons.c6
-rw-r--r--source/blender/editors/space_file/space_file.c7
-rw-r--r--source/blender/editors/space_image/space_image.c5
-rw-r--r--source/blender/editors/space_info/space_info.c5
-rw-r--r--source/blender/editors/space_ipo/space_ipo.c7
-rw-r--r--source/blender/editors/space_nla/space_nla.c11
-rw-r--r--source/blender/editors/space_node/space_node.c5
-rw-r--r--source/blender/editors/space_outliner/space_outliner.c6
-rw-r--r--source/blender/editors/space_script/space_script.c5
-rw-r--r--source/blender/editors/space_sequencer/space_sequencer.c5
-rw-r--r--source/blender/editors/space_sound/space_sound.c6
-rw-r--r--source/blender/editors/space_text/space_text.c5
-rw-r--r--source/blender/editors/space_time/space_time.c33
-rw-r--r--source/blender/editors/space_view3d/space_view3d.c3
-rw-r--r--source/blender/makesdna/DNA_view2d_types.h2
20 files changed, 170 insertions, 135 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index adc7c657019..5452429e8ea 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -5061,7 +5061,7 @@ static void area_add_header_region(ScrArea *sa, ListBase *lb)
/* is copy from ui_view2d.c */
ar->v2d.keepzoom = (V2D_LOCKZOOM_X|V2D_LOCKZOOM_Y|V2D_KEEPZOOM|V2D_KEEPASPECT);
ar->v2d.keepofs = V2D_LOCKOFS_Y;
- ar->v2d.keeptot = 2; // this keeps the view in place when region size changes...
+ ar->v2d.keeptot = V2D_KEEPTOT_STRICT;
ar->v2d.align = V2D_ALIGN_NO_NEG_X|V2D_ALIGN_NO_NEG_Y;
}
@@ -5116,7 +5116,8 @@ static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
ar->v2d.scroll |= (V2D_SCROLL_RIGHT|V2D_SCROLL_BOTTOM_O);
ar->v2d.align = (V2D_ALIGN_NO_NEG_X|V2D_ALIGN_NO_POS_Y);
ar->v2d.keepzoom |= (V2D_LOCKZOOM_X|V2D_LOCKZOOM_Y|V2D_KEEPASPECT);
- ar->v2d.keeptot = 2;
+ ar->v2d.keeptot = V2D_KEEPTOT_STRICT;
+ ar->v2d.flag |= V2D_IS_INITIALISED;
}
break;
case SPACE_TIME:
@@ -5130,6 +5131,7 @@ static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
ar->v2d.keepzoom |= V2D_LOCKZOOM_Y;
ar->v2d.tot.ymin= ar->v2d.cur.ymin= -10.0;
ar->v2d.min[1]= ar->v2d.max[1]= 20.0;
+ ar->v2d.flag |= V2D_IS_INITIALISED;
}
break;
case SPACE_IPO:
@@ -5139,6 +5141,7 @@ static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
ar->v2d.scroll |= (V2D_SCROLL_BOTTOM|V2D_SCROLL_SCALE_HORIZONTAL);
ar->v2d.scroll |= (V2D_SCROLL_LEFT|V2D_SCROLL_SCALE_VERTICAL);
+ ar->v2d.flag |= V2D_IS_INITIALISED;
break;
}
case SPACE_SOUND:
@@ -5148,6 +5151,7 @@ static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
ar->v2d.scroll |= (V2D_SCROLL_BOTTOM|V2D_SCROLL_SCALE_HORIZONTAL);
ar->v2d.scroll |= (V2D_SCROLL_LEFT);
+ ar->v2d.flag |= V2D_IS_INITIALISED;
break;
}
case SPACE_NLA:
@@ -5157,6 +5161,7 @@ static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
ar->v2d.scroll |= (V2D_SCROLL_BOTTOM|V2D_SCROLL_SCALE_HORIZONTAL);
ar->v2d.scroll |= (V2D_SCROLL_RIGHT);
+ ar->v2d.flag |= V2D_IS_INITIALISED;
break;
}
case SPACE_ACTION:
@@ -5166,6 +5171,7 @@ static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
ar->v2d.scroll |= (V2D_SCROLL_BOTTOM|V2D_SCROLL_SCALE_HORIZONTAL);
ar->v2d.scroll |= (V2D_SCROLL_RIGHT);
+ ar->v2d.flag |= V2D_IS_INITIALISED;
break;
}
case SPACE_SEQ:
@@ -5175,12 +5181,14 @@ static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
ar->v2d.scroll |= (V2D_SCROLL_BOTTOM|V2D_SCROLL_SCALE_HORIZONTAL);
ar->v2d.scroll |= (V2D_SCROLL_LEFT|V2D_SCROLL_SCALE_VERTICAL);
+ ar->v2d.flag |= V2D_IS_INITIALISED;
break;
}
case SPACE_NODE:
{
SpaceNode *snode= (SpaceNode *)sl;
memcpy(&ar->v2d, &snode->v2d, sizeof(View2D));
+ ar->v2d.flag |= V2D_IS_INITIALISED;
break;
}
case SPACE_BUTS:
@@ -5188,6 +5196,7 @@ static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
SpaceButs *sbuts= (SpaceButs *)sl;
memcpy(&ar->v2d, &sbuts->v2d, sizeof(View2D));
ar->v2d.keepzoom |= V2D_KEEPASPECT;
+ ar->v2d.flag |= V2D_IS_INITIALISED;
break;
}
//case SPACE_XXX: // FIXME... add other ones
diff --git a/source/blender/editors/include/UI_view2d.h b/source/blender/editors/include/UI_view2d.h
index 8d8b137732a..09d57901b0b 100644
--- a/source/blender/editors/include/UI_view2d.h
+++ b/source/blender/editors/include/UI_view2d.h
@@ -44,10 +44,14 @@
enum {
/* custom view type (region has defined all necessary flags already) */
V2D_COMMONVIEW_CUSTOM = 0,
+ /* view canvas ('standard' view, view limits/restrictions still need to be set first!) */
+ V2D_COMMONVIEW_VIEWCANVAS,
/* listview (i.e. Outliner) */
V2D_COMMONVIEW_LIST,
/* headers (this is basically the same as listview, but no y-panning) */
V2D_COMMONVIEW_HEADER,
+ /* timegrid (this sets the settings for x/horizontal, but y/vertical settings still need to be set first!) */
+ V2D_COMMONVIEW_TIMELINE,
} eView2D_CommonViewTypes;
/* ---- Defines for Scroller/Grid Arguments ----- */
@@ -125,10 +129,7 @@ typedef struct View2DScrollers View2DScrollers;
/* Prototypes: */
/* refresh and validation (of view rects) */
-void UI_view2d_regiondata_init(struct View2D *v2d, short type, int winx, int winy);
-void UI_view2d_header_default(struct View2D *v2d);
-
-void UI_view2d_size_update(struct View2D *v2d, int winx, int winy);
+void UI_view2d_region_reinit(struct View2D *v2d, short type, int winx, int winy);
void UI_view2d_curRect_validate(struct View2D *v2d);
void UI_view2d_curRect_reset(struct View2D *v2d);
diff --git a/source/blender/editors/interface/view2d.c b/source/blender/editors/interface/view2d.c
index fb5fbf940e8..a5ec52b3d38 100644
--- a/source/blender/editors/interface/view2d.c
+++ b/source/blender/editors/interface/view2d.c
@@ -57,32 +57,18 @@
/* *********************************************************************** */
/* Refresh and Validation */
-/* Initialise all View2D data for a given region */
+/* Initialise all relevant View2D data (including view rects if first time) and/or refresh mask sizes after view resize
+ * - for some of these presets, it is expected that the region will have defined some
+ * additional settings necessary for the customisation of the 2D viewport to its requirements
+ * - this function should only be called from region init() callbacks, where it is expected that
+ * this is called before UI_view2d_size_update(), as this one checks that the rects are properly initialised.
+ */
// eView2D_CommonViewTypes <--- only check handle these types...
-void UI_view2d_regiondata_init(View2D *v2d, short type, int winx, int winy)
-{
-
-}
-
-
-/* allowing horizontal pan */
-// XXX this should become one of 'standard' setups...
-void UI_view2d_header_default(View2D *v2d)
+void UI_view2d_region_reinit(View2D *v2d, short type, int winx, int winy)
{
- v2d->keepzoom = (V2D_LOCKZOOM_X|V2D_LOCKZOOM_Y|V2D_KEEPZOOM|V2D_KEEPASPECT);
- v2d->keepofs = V2D_LOCKOFS_Y;
- v2d->keeptot = 2; // this keeps the view in place when region size changes...
- v2d->align = V2D_ALIGN_NO_NEG_X|V2D_ALIGN_NO_NEG_Y;
+ short tot_changed= 0;
-}
-
-/* Adjust mask size in response to view size changes
- * - This should only be called in region init() callbacks, which are
- * called when the region is resized or area changes...
- */
-// XXX pre2.5 -> this used to be called calc_scrollrcts()
-void UI_view2d_size_update(View2D *v2d, int winx, int winy)
-{
+ /* store view size */
v2d->winx= winx;
v2d->winy= winy;
@@ -138,22 +124,96 @@ void UI_view2d_size_update(View2D *v2d, int winx, int winy)
}
}
- /* cope with unitialized veriables for simple cases, like header or outliner */
- // XXX er... this shouldn't be here??? or at least some extra checks are needed for some things...
- if ((v2d->tot.xmin==v2d->tot.xmax) || (v2d->cur.xmin==v2d->cur.xmax)) {
- if (v2d->keepzoom & (V2D_KEEPZOOM|V2D_LOCKZOOM_X|V2D_LOCKZOOM_Y)) {
- BLI_init_rctf(&v2d->tot, v2d->mask.xmin, v2d->mask.xmax, v2d->mask.ymin, v2d->mask.ymax);
- BLI_init_rctf(&v2d->cur, v2d->mask.xmin, v2d->mask.xmax, v2d->mask.ymin, v2d->mask.ymax);
+ /* initialise data if there is a need for such */
+ if ((v2d->flag & V2D_IS_INITIALISED) == 0) {
+ v2d->flag |= V2D_IS_INITIALISED;
+
+ /* see eView2D_CommonViewTypes in UI_view2d.h for available view presets */
+ switch (type) {
+ /* 'standard view' - from (0,0) to (winx,winy), with other restrictions defined by region already */
+ case V2D_COMMONVIEW_VIEWCANVAS:
+ {
+ /* just set 'tot' rect alignment restictions for now */
+ v2d->align= V2D_ALIGN_NO_NEG_X|V2D_ALIGN_NO_NEG_Y;
+ tot_changed= 1;
+
+ // XXX... should we set min/max here too? probably not essential yet
+ }
+ break;
- v2d->min[0]= v2d->max[0]= winx;
- v2d->min[1]= v2d->max[1]= winy;
- v2d->minzoom= 1.0f;
- v2d->maxzoom= 1.0f;
+ /* 'list/channel view' - zoom, aspect ratio, and alignment restrictions are set here */
+ case V2D_COMMONVIEW_LIST:
+ {
+ /* zoom + aspect ratio are locked */
+ v2d->keepzoom = (V2D_LOCKZOOM_X|V2D_LOCKZOOM_Y|V2D_KEEPZOOM|V2D_KEEPASPECT);
+ v2d->minzoom= v2d->maxzoom= 1.0f;
+
+ /* tot rect has strictly regulated placement, and must only occur in +/- quadrant */
+ v2d->align = (V2D_ALIGN_NO_NEG_X|V2D_ALIGN_NO_POS_Y);
+ v2d->keeptot = V2D_KEEPTOT_STRICT;
+ tot_changed= 1;
+
+ /* scroller settings are currently not set here... that is left for regions... */
+ }
+ break;
+
+ /* 'header' regions - zoom, aspect ratio, alignment, and panning restrictions are set here */
+ case V2D_COMMONVIEW_HEADER:
+ {
+ /* zoom + aspect ratio are locked */
+ v2d->keepzoom = (V2D_LOCKZOOM_X|V2D_LOCKZOOM_Y|V2D_KEEPZOOM|V2D_KEEPASPECT);
+ v2d->minzoom= v2d->maxzoom= 1.0f;
+ v2d->min[0]= v2d->max[0]= winx;
+ v2d->min[1]= v2d->max[1]= winy;
+
+ /* tot rect has strictly regulated placement, and must only occur in +/+ quadrant */
+ v2d->align = (V2D_ALIGN_NO_NEG_X|V2D_ALIGN_NO_NEG_Y);
+ v2d->keeptot = V2D_KEEPTOT_STRICT;
+ tot_changed= 1;
+
+ /* panning in y-axis is prohibited */
+ v2d->keepofs= V2D_LOCKOFS_Y;
+
+ /* absolutely no scrollers allowed */
+ v2d->scroll= 0;
+ }
+ break;
+
+ /* 'timeline/animeditors' - only set x-axis settings (y axis settings have already been set by regions, so don't overwrite! */
+ case V2D_COMMONVIEW_TIMELINE:
+ {
+ /* zoom on x-axis is free, but zoom factors are usually standard */
+ v2d->minzoom= 0.5f;
+ v2d->maxzoom= 10.0f;
+
+ /* size limits on x-axis are also standard */
+ v2d->min[0]= 0.0f; // XXX... would 1.0f be better?
+ v2d->max[0]= MAXFRAMEF;
+
+ /* scrollers for x-axis must be shown, and with scales */
+ v2d->scroll |= (V2D_SCROLL_BOTTOM|V2D_SCROLL_SCALE_HORIZONTAL);
+
+ /* 'tot' rect x-axis size */
+ v2d->tot.xmin= (float)(SFRA - 10);
+ v2d->tot.xmax= (float)(EFRA + 10);
+ v2d->cur.xmin= v2d->mask.xmin;
+ v2d->cur.xmax= v2d->mask.xmax;
+ tot_changed= 0; // er..
+ }
+ break;
+
+ /* other view types are completely defined using their own settings already */
+ default:
+ /* we don't do anything here, as settings should be fine, but just make sure that rect */
+ break;
}
}
- /* make sure that 'cur' rect is in a valid state as a result of these changes */
- UI_view2d_curRect_validate(v2d);
+ /* set 'tot' rect before setting cur? */
+ if (tot_changed)
+ UI_view2d_totRect_set(v2d, winx, winy);
+ else
+ UI_view2d_curRect_validate(v2d);
}
/* Ensure View2D rects remain in a viable configuration
@@ -254,7 +314,7 @@ void UI_view2d_curRect_validate(View2D *v2d)
do_win= do_y;
if (do_cur) {
- if ((v2d->keeptot == 2) && (winx != v2d->oldwinx)) {
+ if ((v2d->keeptot == V2D_KEEPTOT_STRICT) && (winx != v2d->oldwinx)) {
/* special exception for Outliner (and later channel-lists):
* - The view may be moved left to avoid contents being pushed out of view when view shrinks.
* - The keeptot code will make sure cur->xmin will not be less than tot->xmin (which cannot be allowed)
@@ -321,8 +381,8 @@ void UI_view2d_curRect_validate(View2D *v2d)
if (cur->xmin < tot->xmin) cur->xmin= tot->xmin;
if (cur->xmax > tot->xmax) cur->xmax= tot->xmax;
}
- else if (v2d->keeptot == 2) {
- /* This is an exception for the outliner (and later channel-lists)
+ else if (v2d->keeptot == V2D_KEEPTOT_STRICT) {
+ /* This is an exception for the outliner (and later channel-lists, headers)
* - must clamp within tot rect (absolutely no excuses)
* --> therefore, cur->xmin must not be less than tot->xmin
*/
@@ -441,7 +501,9 @@ void UI_view2d_curRect_validate(View2D *v2d)
/* ------------------ */
-/* Restore 'cur' rect to standard orientation (i.e. optimal maximum view of tot) */
+/* Restore 'cur' rect to standard orientation (i.e. optimal maximum view of tot)
+ * This does not take into account if zooming the view on an axis will improve the view (if allowed)
+ */
void UI_view2d_curRect_reset (View2D *v2d)
{
float width, height;
@@ -950,9 +1012,6 @@ View2DScrollers *UI_view2d_scrollers_calc(const bContext *C, View2D *v2d, short
return scrollers;
}
-/* XXX */
-extern void ui_rasterpos_safe(float x, float y, float aspect);
-
/* Print scale marking along a time scrollbar */
static void scroll_printstr(View2DScrollers *scrollers, float x, float y, float val, int power, short unit, char dir)
{
diff --git a/source/blender/editors/interface/view2d_ops.c b/source/blender/editors/interface/view2d_ops.c
index ffc435df4b4..b945e260fb9 100644
--- a/source/blender/editors/interface/view2d_ops.c
+++ b/source/blender/editors/interface/view2d_ops.c
@@ -716,7 +716,7 @@ static int view_zoomdrag_modal(bContext *C, wmOperator *op, wmEvent *event)
float dx, dy;
/* calculate new delta transform, based on zooming mode */
- if (U.viewzoom == USER_ZOOM_SCALE) { // XXX store this setting as RNA prop?
+ if (U.viewzoom == USER_ZOOM_SCALE) {
/* 'scale' zooming */
float dist;
diff --git a/source/blender/editors/space_action/space_action.c b/source/blender/editors/space_action/space_action.c
index bf37f89e187..79e5fe243f8 100644
--- a/source/blender/editors/space_action/space_action.c
+++ b/source/blender/editors/space_action/space_action.c
@@ -79,7 +79,6 @@ static SpaceLink *action_new(void)
BLI_addtail(&saction->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for action");
@@ -92,23 +91,13 @@ static SpaceLink *action_new(void)
ar->v2d.tot.xmax= 1000.0f;
ar->v2d.tot.ymax= 0.0f;
- ar->v2d.cur.xmin= -5.0f;
- ar->v2d.cur.ymin= -75.0f;
- ar->v2d.cur.xmax= 65.0f;
- ar->v2d.cur.ymax= 5.0f;
-
- ar->v2d.min[0]= 0.0f;
ar->v2d.min[1]= 0.0f;
-
- ar->v2d.max[0]= MAXFRAMEF;
ar->v2d.max[1]= 1000.0f;
- ar->v2d.minzoom= 0.01f;
- ar->v2d.maxzoom= 50;
+ ar->v2d.scroll = V2D_SCROLL_RIGHT;
- ar->v2d.scroll |= (V2D_SCROLL_BOTTOM|V2D_SCROLL_SCALE_HORIZONTAL);
- ar->v2d.scroll |= (V2D_SCROLL_RIGHT);
- saction->v2d.keepzoom= V2D_LOCKZOOM_Y;
+ ar->v2d.align= saction->v2d.align= V2D_ALIGN_NO_POS_Y;
+ ar->v2d.keepzoom= saction->v2d.keepzoom= V2D_LOCKZOOM_Y;
/* channel list region XXX */
ar= MEM_callocN(sizeof(ARegion), "area region from do_versions");
@@ -150,7 +139,7 @@ static void action_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_TIMELINE, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "Action", SPACE_ACTION, 0); /* XXX weak? */
@@ -193,7 +182,7 @@ void action_keymap(struct wmWindowManager *wm)
/* add handlers, stuff you only do once or on area/region changes */
static void action_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void action_header_area_draw(const bContext *C, ARegion *ar)
@@ -262,11 +251,11 @@ void ED_spacetype_action(void)
/* regions: channels */
art= MEM_callocN(sizeof(ARegionType), "spacetype action region");
art->regionid = RGN_TYPE_CHANNELS;
- art->minsizex= 80;
+ art->minsizex = 200;
art->keymapflag= ED_KEYMAP_UI|ED_KEYMAP_VIEW2D;
-// art->init= action_channel_area_init;
-// art->draw= action_channel_area_draw;
+ //art->init= action_channel_area_init;
+ //art->draw= action_channel_area_draw;
BLI_addhead(&st->regiontypes, art);
diff --git a/source/blender/editors/space_buttons/space_buttons.c b/source/blender/editors/space_buttons/space_buttons.c
index 9fc7ca123dc..4c29d71f62a 100644
--- a/source/blender/editors/space_buttons/space_buttons.c
+++ b/source/blender/editors/space_buttons/space_buttons.c
@@ -77,7 +77,6 @@ static SpaceLink *buttons_new(void)
BLI_addtail(&sbuts->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for buts");
@@ -102,6 +101,7 @@ static SpaceLink *buttons_new(void)
sbuts->v2d.maxzoom= 1.21f;
sbuts->v2d.scroll= 0; // TODO: will we need scrollbars?
+ sbuts->v2d.align= V2D_ALIGN_NO_NEG_X|V2D_ALIGN_NO_NEG_Y;
sbuts->v2d.keepzoom= V2D_KEEPZOOM|V2D_KEEPASPECT;
sbuts->v2d.keeptot= 1;
sbuts->v2d.cur= sbuts->v2d.tot;
@@ -146,7 +146,7 @@ static void buttons_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_CUSTOM, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "Buttons", SPACE_BUTS, 0); /* XXX weak? */
@@ -189,7 +189,7 @@ void buttons_keymap(struct wmWindowManager *wm)
/* add handlers, stuff you only do once or on area/region changes */
static void buttons_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void buttons_header_area_draw(const bContext *C, ARegion *ar)
diff --git a/source/blender/editors/space_file/space_file.c b/source/blender/editors/space_file/space_file.c
index b6d87ee0224..972e852f481 100644
--- a/source/blender/editors/space_file/space_file.c
+++ b/source/blender/editors/space_file/space_file.c
@@ -81,7 +81,6 @@ static SpaceLink *file_new(void)
BLI_addtail(&sfile->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for file");
@@ -132,7 +131,7 @@ static void file_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_LIST, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "File", SPACE_FILE, 0); /* XXX weak? */
@@ -175,7 +174,7 @@ void file_keymap(struct wmWindowManager *wm)
/* add handlers, stuff you only do once or on area/region changes */
static void file_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void file_header_area_draw(const bContext *C, ARegion *ar)
@@ -233,7 +232,6 @@ void ED_spacetype_file(void)
/* regions: header */
art= MEM_callocN(sizeof(ARegionType), "spacetype file region");
art->regionid = RGN_TYPE_HEADER;
- art->minsizey= HEADERY;
art->keymapflag= ED_KEYMAP_UI|ED_KEYMAP_VIEW2D;
art->init= file_header_area_init;
@@ -244,7 +242,6 @@ void ED_spacetype_file(void)
/* regions: channels */
art= MEM_callocN(sizeof(ARegionType), "spacetype file region");
art->regionid = RGN_TYPE_CHANNELS;
- art->minsizex= 80;
art->keymapflag= ED_KEYMAP_UI|ED_KEYMAP_VIEW2D;
// art->init= file_channel_area_init;
diff --git a/source/blender/editors/space_image/space_image.c b/source/blender/editors/space_image/space_image.c
index 6cefcd8321b..7d34f724de2 100644
--- a/source/blender/editors/space_image/space_image.c
+++ b/source/blender/editors/space_image/space_image.c
@@ -83,7 +83,6 @@ static SpaceLink *image_new(void)
BLI_addtail(&simage->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for image");
@@ -132,7 +131,7 @@ static void image_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_VIEWCANVAS, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "Image", SPACE_IMAGE, 0); /* XXX weak? */
@@ -175,7 +174,7 @@ void image_keymap(struct wmWindowManager *wm)
/* add handlers, stuff you only do once or on area/region changes */
static void image_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void image_header_area_draw(const bContext *C, ARegion *ar)
diff --git a/source/blender/editors/space_info/space_info.c b/source/blender/editors/space_info/space_info.c
index 7a54297a2f3..82bc6949c61 100644
--- a/source/blender/editors/space_info/space_info.c
+++ b/source/blender/editors/space_info/space_info.c
@@ -76,7 +76,6 @@ static SpaceLink *info_new(void)
BLI_addtail(&sinfo->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for info");
@@ -120,7 +119,7 @@ static void info_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_VIEWCANVAS, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "info", SPACE_INFO, 0); /* XXX weak? */
@@ -163,7 +162,7 @@ void info_keymap(struct wmWindowManager *wm)
/* add handlers, stuff you only do once or on area/region changes */
static void info_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void info_header_area_draw(const bContext *C, ARegion *ar)
diff --git a/source/blender/editors/space_ipo/space_ipo.c b/source/blender/editors/space_ipo/space_ipo.c
index 4272f45ea6d..0afe38ea470 100644
--- a/source/blender/editors/space_ipo/space_ipo.c
+++ b/source/blender/editors/space_ipo/space_ipo.c
@@ -77,7 +77,6 @@ static SpaceLink *ipo_new(void)
BLI_addtail(&sipo->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* channels */
ar= MEM_callocN(sizeof(ARegion), "main area for ipo");
@@ -195,7 +194,7 @@ static void ipo_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_TIMELINE, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "Ipo", SPACE_IPO, 0); /* XXX weak? */
@@ -266,7 +265,7 @@ static void ipo_channel_area_draw(const bContext *C, ARegion *ar)
/* add handlers, stuff you only do once or on area/region changes */
static void ipo_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void ipo_header_area_draw(const bContext *C, ARegion *ar)
@@ -335,7 +334,7 @@ void ED_spacetype_ipo(void)
/* regions: channels */
art= MEM_callocN(sizeof(ARegionType), "spacetype ipo region");
art->regionid = RGN_TYPE_CHANNELS;
- art->minsizex= 80;
+ art->minsizex= 200;
art->keymapflag= ED_KEYMAP_UI|ED_KEYMAP_VIEW2D;
// art->init= ipo_channel_area_init;
diff --git a/source/blender/editors/space_nla/space_nla.c b/source/blender/editors/space_nla/space_nla.c
index 71d837249fa..17f92c30502 100644
--- a/source/blender/editors/space_nla/space_nla.c
+++ b/source/blender/editors/space_nla/space_nla.c
@@ -77,7 +77,6 @@ static SpaceLink *nla_new(void)
BLI_addtail(&snla->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for nla");
@@ -149,7 +148,7 @@ static void nla_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_TIMELINE, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "NLA", SPACE_NLA, 0); /* XXX weak? */
@@ -192,7 +191,7 @@ void nla_keymap(struct wmWindowManager *wm)
/* add handlers, stuff you only do once or on area/region changes */
static void nla_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void nla_header_area_draw(const bContext *C, ARegion *ar)
@@ -261,11 +260,11 @@ void ED_spacetype_nla(void)
/* regions: channels */
art= MEM_callocN(sizeof(ARegionType), "spacetype nla region");
art->regionid = RGN_TYPE_CHANNELS;
- art->minsizex= 80;
+ art->minsizex= 200;
art->keymapflag= ED_KEYMAP_UI|ED_KEYMAP_VIEW2D;
-// art->init= nla_channel_area_init;
-// art->draw= nla_channel_area_draw;
+ //art->init= nla_channel_area_init;
+ //art->draw= nla_channel_area_draw;
BLI_addhead(&st->regiontypes, art);
diff --git a/source/blender/editors/space_node/space_node.c b/source/blender/editors/space_node/space_node.c
index 6569200196c..938cd283361 100644
--- a/source/blender/editors/space_node/space_node.c
+++ b/source/blender/editors/space_node/space_node.c
@@ -75,7 +75,6 @@ static SpaceLink *node_new(void)
BLI_addtail(&snode->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for node");
@@ -143,7 +142,7 @@ static void node_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_VIEWCANVAS, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "Node", SPACE_NODE, 0); /* XXX weak? */
@@ -186,7 +185,7 @@ void node_keymap(struct wmWindowManager *wm)
/* add handlers, stuff you only do once or on area/region changes */
static void node_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void node_header_area_draw(const bContext *C, ARegion *ar)
diff --git a/source/blender/editors/space_outliner/space_outliner.c b/source/blender/editors/space_outliner/space_outliner.c
index cb0b29089b7..36afb206ab6 100644
--- a/source/blender/editors/space_outliner/space_outliner.c
+++ b/source/blender/editors/space_outliner/space_outliner.c
@@ -394,8 +394,7 @@ static void rna_table_cell_func(void *userdata, int row, int col, rcti *rct, uiB
static void outliner_main_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
-
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_LIST, ar->winx, ar->winy);
}
static void outliner_main_area_draw(const bContext *C, ARegion *ar)
@@ -505,7 +504,7 @@ static void outliner_main_area_free(ARegion *ar)
/* add handlers, stuff you only do once or on area/region changes */
static void outliner_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void outliner_header_area_draw(const bContext *C, ARegion *ar)
@@ -545,7 +544,6 @@ static SpaceLink *outliner_new(void)
BLI_addtail(&soutliner->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for outliner");
diff --git a/source/blender/editors/space_script/space_script.c b/source/blender/editors/space_script/space_script.c
index 081da6f5505..bb31dd8dc03 100644
--- a/source/blender/editors/space_script/space_script.c
+++ b/source/blender/editors/space_script/space_script.c
@@ -77,7 +77,6 @@ static SpaceLink *script_new(void)
BLI_addtail(&sscript->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for script");
@@ -130,7 +129,7 @@ static void script_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_VIEWCANVAS, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "Script", SPACE_SCRIPT, 0); /* XXX weak? */
@@ -173,7 +172,7 @@ void script_keymap(struct wmWindowManager *wm)
/* add handlers, stuff you only do once or on area/region changes */
static void script_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void script_header_area_draw(const bContext *C, ARegion *ar)
diff --git a/source/blender/editors/space_sequencer/space_sequencer.c b/source/blender/editors/space_sequencer/space_sequencer.c
index b2e2aa67c25..714e6be2416 100644
--- a/source/blender/editors/space_sequencer/space_sequencer.c
+++ b/source/blender/editors/space_sequencer/space_sequencer.c
@@ -79,7 +79,6 @@ static SpaceLink *sequencer_new(void)
BLI_addtail(&sseq->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for sequencer");
@@ -149,7 +148,7 @@ static void sequencer_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_TIMELINE, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "Sequencer", SPACE_SEQ, 0); /* XXX weak? */
@@ -192,7 +191,7 @@ void sequencer_keymap(struct wmWindowManager *wm)
/* add handlers, stuff you only do once or on area/region changes */
static void sequencer_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void sequencer_header_area_draw(const bContext *C, ARegion *ar)
diff --git a/source/blender/editors/space_sound/space_sound.c b/source/blender/editors/space_sound/space_sound.c
index 18e2c01a2e8..e02f7f4be12 100644
--- a/source/blender/editors/space_sound/space_sound.c
+++ b/source/blender/editors/space_sound/space_sound.c
@@ -77,7 +77,6 @@ static SpaceLink *sound_new(void)
BLI_addtail(&ssound->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for sound");
@@ -108,6 +107,7 @@ static SpaceLink *sound_new(void)
ar->v2d.scroll |= (V2D_SCROLL_LEFT);
ar->v2d.keepzoom= 0;
ar->v2d.keeptot= 0;
+ ar->v2d.keepzoom = V2D_LOCKZOOM_Y;
return (SpaceLink *)ssound;
@@ -144,7 +144,7 @@ static void sound_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_TIMELINE, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "Sound", SPACE_SOUND, 0); /* XXX weak? */
@@ -187,7 +187,7 @@ void sound_keymap(struct wmWindowManager *wm)
/* add handlers, stuff you only do once or on area/region changes */
static void sound_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void sound_header_area_draw(const bContext *C, ARegion *ar)
diff --git a/source/blender/editors/space_text/space_text.c b/source/blender/editors/space_text/space_text.c
index 5b52e43d0f2..dee5c4b2d25 100644
--- a/source/blender/editors/space_text/space_text.c
+++ b/source/blender/editors/space_text/space_text.c
@@ -78,7 +78,6 @@ static SpaceLink *text_new(void)
BLI_addtail(&stext->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for text");
@@ -123,7 +122,7 @@ static void text_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_VIEWCANVAS, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "Text", SPACE_TEXT, 0); /* XXX weak? */
@@ -174,7 +173,7 @@ static void text_keymap(struct wmWindowManager *wm)
/* add handlers, stuff you only do once or on area/region changes */
static void text_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void text_header_area_draw(const bContext *C, ARegion *ar)
diff --git a/source/blender/editors/space_time/space_time.c b/source/blender/editors/space_time/space_time.c
index 9667e132e09..29426840653 100644
--- a/source/blender/editors/space_time/space_time.c
+++ b/source/blender/editors/space_time/space_time.c
@@ -109,7 +109,7 @@ static void time_main_area_init(wmWindowManager *wm, ARegion *ar)
{
ListBase *keymap;
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_TIMELINE, ar->winx, ar->winy);
/* own keymap */
keymap= WM_keymap_listbase(wm, "TimeLine", SPACE_TIME, 0); /* XXX weak? */
@@ -178,7 +178,7 @@ static void time_main_area_listener(ARegion *ar, wmNotifier *wmn)
/* add handlers, stuff you only do once or on area/region changes */
static void time_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void time_header_area_draw(const bContext *C, ARegion *ar)
@@ -223,7 +223,6 @@ static SpaceLink *time_new(void)
BLI_addtail(&stime->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for time");
@@ -231,26 +230,18 @@ static SpaceLink *time_new(void)
BLI_addtail(&stime->regionbase, ar);
ar->regiontype= RGN_TYPE_WINDOW;
- ar->v2d.tot.xmin= -4.0;
- ar->v2d.tot.ymin= 0.0;
- ar->v2d.tot.xmax= (float)EFRA + 4.0;
- ar->v2d.tot.ymax= 50.0;
+ /* only need to set y-locks for view2d of main area,
+ * as the rest is taken care of by View2D preset for TimeGrids
+ */
+ ar->v2d.min[1]= 20.0;
+ ar->v2d.max[1]= 20.0;
- ar->v2d.cur= ar->v2d.tot;
+ ar->v2d.cur.ymin= ar->v2d.tot.ymin= 0.0f;
+ ar->v2d.cur.ymax= ar->v2d.tot.ymax= 20.0f;
- ar->v2d.min[0]= 1.0;
- ar->v2d.min[1]= 50.0;
-
- ar->v2d.max[0]= 32000.0;
- ar->v2d.max[1]= 50.0;
-
- ar->v2d.minzoom= 0.1f;
- ar->v2d.maxzoom= 10.0;
-
- ar->v2d.scroll |= (V2D_SCROLL_BOTTOM|V2D_SCROLL_SCALE_HORIZONTAL);
- ar->v2d.align |= V2D_ALIGN_NO_NEG_Y;
- ar->v2d.keepofs |= V2D_LOCKOFS_Y;
- ar->v2d.keepzoom |= V2D_LOCKZOOM_Y;
+ ar->v2d.align = V2D_ALIGN_NO_NEG_Y;
+ ar->v2d.keepofs = V2D_LOCKOFS_Y;
+ ar->v2d.keepzoom = V2D_LOCKZOOM_Y;
return (SpaceLink*)stime;
}
diff --git a/source/blender/editors/space_view3d/space_view3d.c b/source/blender/editors/space_view3d/space_view3d.c
index 015a931d806..9ccc7afe363 100644
--- a/source/blender/editors/space_view3d/space_view3d.c
+++ b/source/blender/editors/space_view3d/space_view3d.c
@@ -101,7 +101,6 @@ static SpaceLink *view3d_new(void)
BLI_addtail(&vd->regionbase, ar);
ar->regiontype= RGN_TYPE_HEADER;
ar->alignment= RGN_ALIGN_BOTTOM;
- UI_view2d_header_default(&ar->v2d);
/* main area */
ar= MEM_callocN(sizeof(ARegion), "main area for view3d");
@@ -202,7 +201,7 @@ static void view3d_main_area_draw(const bContext *C, ARegion *ar)
/* add handlers, stuff you only do once or on area/region changes */
static void view3d_header_area_init(wmWindowManager *wm, ARegion *ar)
{
- UI_view2d_size_update(&ar->v2d, ar->winx, ar->winy);
+ UI_view2d_region_reinit(&ar->v2d, V2D_COMMONVIEW_HEADER, ar->winx, ar->winy);
}
static void view3d_header_area_draw(const bContext *C, ARegion *ar)
diff --git a/source/blender/makesdna/DNA_view2d_types.h b/source/blender/makesdna/DNA_view2d_types.h
index 96b3febf7f3..ff96e9092e5 100644
--- a/source/blender/makesdna/DNA_view2d_types.h
+++ b/source/blender/makesdna/DNA_view2d_types.h
@@ -93,7 +93,7 @@ typedef struct View2D {
/* within region view2d vertical locking */
#define V2D_VIEWSYNC_Y (1<<1)
/* view settings need to be set still... */
-#define V2D_NEEDS_INIT (1<<10)
+#define V2D_IS_INITIALISED (1<<10)
/* scroller flags for View2D (v2d->scroll) */
/* left scrollbar */