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:
authorChris Want <cwant@ualberta.ca>2006-01-28 19:35:18 +0300
committerChris Want <cwant@ualberta.ca>2006-01-28 19:35:18 +0300
commitc8b48e70e626a351dc3d02122ea413d0046e98b7 (patch)
tree0b4777ce258d751f501ec7ce16c129f01f3d3307 /source/blender/src/drawseq.c
parent45c7b2c5c2bc20296a581e1b6a1cb3908f11732f (diff)
parentdb5f7bd8da580d05c31f6fa65bfea8042deac10e (diff)
Final merge of HEAD (bf-blender) into the orange branch.
Here are my notes on things to look out for as potential problem spots: source/blender/blenkernel/intern/displist.c: + is initfastshade(void) supposed to be empty? I had to make it empty to get the merged tree to compile. source/blender/python/api2_2x/Armature.c: + went with the version that had Armature_getLayers() source/blender/python/api2_2x/Object.c + went with the version of Object_getPose() from bf-blender. (#ifdef 0-ed the other version) source/blender/python/api2_2x/Pose.[ch] + had problems linking due to no Pose_Init() ... copied these two files straight from bf-blender. source/blender/src/drawview.c: + view3d_panel_properties() had things shifted a few things shifted a few pixels, otherwise, things were painless source/blender/src/splash.jpg.c: + went with bf-blender version (orange is dead) source/gameengine: + went with bf-blender version -- does not compile due to IMB_rect* stuff, Ton should look into this.
Diffstat (limited to 'source/blender/src/drawseq.c')
-rw-r--r--source/blender/src/drawseq.c26
1 files changed, 22 insertions, 4 deletions
diff --git a/source/blender/src/drawseq.c b/source/blender/src/drawseq.c
index c06108e1e16..153b304079e 100644
--- a/source/blender/src/drawseq.c
+++ b/source/blender/src/drawseq.c
@@ -825,16 +825,34 @@ void drawseqspace(ScrArea *sa, void *spacedata)
if(ed) {
seq= ed->seqbasep->first;
- while(seq) {
- if(seq->flag & SELECT); else drawseq(seq);
+ while(seq) { /* bound box test, dont draw outside the view */
+ if (seq->flag & SELECT ||
+ seq->start > G.v2d->cur.xmax ||
+ seq->start+seq->len < G.v2d->cur.xmin ||
+ seq->machine+1.0 < G.v2d->cur.ymin ||
+ seq->machine > G.v2d->cur.ymax)
+ {
+ /* dont draw */
+ } else {
+ drawseq(seq);
+ }
seq= seq->next;
}
}
ed= G.scene->ed;
if(ed) {
seq= ed->seqbasep->first;
- while(seq) {
- if(seq->flag & SELECT) drawseq(seq);
+ while(seq) { /* bound box test, dont draw outside the view */
+ if (!(seq->flag & SELECT) ||
+ seq->start > G.v2d->cur.xmax ||
+ seq->start+seq->len < G.v2d->cur.xmin ||
+ seq->machine+1.0 < G.v2d->cur.ymin ||
+ seq->machine > G.v2d->cur.ymax)
+ {
+ /* dont draw */
+ } else {
+ drawseq(seq);
+ }
seq= seq->next;
}
}