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:
authorTon Roosendaal <ton@blender.org>2009-01-22 17:59:49 +0300
committerTon Roosendaal <ton@blender.org>2009-01-22 17:59:49 +0300
commit9cc59fb0c329bb788defe9c56b69d0919caaba96 (patch)
treef6f1c48441ba6de4f2ff1faf19a0540ce1dc6ba5 /source/blender/blenloader
parenta017982074b3b11fd0157d8d604e02858411db70 (diff)
2.5
Added WM Jobs manager - WM can manage threaded jobs for you; just provide a couple of components to get it work: - customdata, free callback for it - timer step, notifier code - start callback, update callback - Once started, each job runs an own timer, and will for every time step check necessary updates, or close the job when ready. - No drawing happens in jobs, that's for notifiers! - Every job stores an owner pointer, and based on this owner it will prevent multiple jobs to enter the stack. Instead it will re-use a running job, signal it to stop and allow caller to re-initialize it even. - Check new wm_jobs.c for more explanation. Jobs API is still under construction. Fun: BLI_addtail(&wm->jobs, steve); :) Put Node shader previews back using wmJobs - Preview calculating is now fully threaded (1 thread still) - Thanks to new event system + notifiers, you can see previews update even while dragging sliders! - Currently it only starts when you change a node setting. Warning: the thread render shares Node data, so don't delete nodes while it renders! This topic is on the todo to make safe. Also: - bug in region initialize (do_versions) showed channel list in node editor wrong. - flagged the channel list 'hidden' now, it was really in the way! This is for later to work on anyway. - recoded Render API callbacks so it gets handlers passed on, no globals to use anymore, remember? - previewrender code gets now so much nicer! Will remove a lot of stuff from code soon.
Diffstat (limited to 'source/blender/blenloader')
-rw-r--r--source/blender/blenloader/intern/readfile.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index 23f22523e19..54ccc66e514 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -4471,7 +4471,7 @@ static void view3d_split_250(View3D *v3d, ListBase *regions)
if(ar->regiontype==RGN_TYPE_WINDOW && ar->regiondata==NULL) {
RegionView3D *rv3d;
- rv3d= ar->regiondata= MEM_callocN(sizeof(RegionView3D), "region v3d");
+ rv3d= ar->regiondata= MEM_callocN(sizeof(RegionView3D), "region v3d patch");
rv3d->persp= v3d->persp;
rv3d->view= v3d->view;
rv3d->dist= v3d->dist;
@@ -5416,6 +5416,7 @@ static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
ar->alignment= RGN_ALIGN_LEFT;
ar->v2d.scroll= (V2D_SCROLL_RIGHT|V2D_SCROLL_BOTTOM);
break;
+
case SPACE_ACTION:
ar= MEM_callocN(sizeof(ARegion), "area region from do_versions");
BLI_addtail(lb, ar);
@@ -5424,6 +5425,7 @@ static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
ar->v2d.scroll= V2D_SCROLL_BOTTOM;
ar->v2d.flag = V2D_VIEWSYNC_AREA_VERTICAL;
break;
+
case SPACE_NLA:
ar= MEM_callocN(sizeof(ARegion), "area region from do_versions");
BLI_addtail(lb, ar);
@@ -5432,6 +5434,7 @@ static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
ar->v2d.scroll= V2D_SCROLL_BOTTOM;
ar->v2d.flag = V2D_VIEWSYNC_AREA_VERTICAL;
break;
+
case SPACE_NODE:
ar= MEM_callocN(sizeof(ARegion), "nodetree area for node");
BLI_addtail(lb, ar);
@@ -5439,6 +5442,10 @@ static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
ar->alignment= RGN_ALIGN_LEFT;
ar->v2d.scroll = (V2D_SCROLL_RIGHT|V2D_SCROLL_BOTTOM);
ar->v2d.flag = V2D_VIEWSYNC_AREA_VERTICAL;
+ /* temporarily hide it */
+ ar->flag = RGN_FLAG_HIDDEN;
+ break;
+
case SPACE_FILE:
/* channel (bookmarks/directories) region */
ar= MEM_callocN(sizeof(ARegion), "area region from do_versions");