Fixed Makefile.in WinNT/CE preprocessing command.

Tile manager macros done in BEGIN, END form.
Tile manager macros put to better use.  Small optimizations on begin and endCriticalRect.
Fixed tile pool sorting and eviction so that no extra evict guard is needed on every FORCREATE.
Fixed assorted small bugs throughout (maybe introduced some new ones ;p).
Added sweet sweet tilecache debug to browser.js.
This commit is contained in:
Roy Frostig 2009-07-30 17:31:09 -07:00
parent 84d299c5e4
commit dbd00fb9ae

View File

@ -57,7 +57,7 @@ let Util = {
if (instance[key] instanceof Function)
instance[key] = bind(instance[key], instance);
}
};
@ -213,15 +213,33 @@ Util.Rect.prototype = {
intersects: function(other) {
if (!other) debugger;
let xok = (other.left > this.left && other.left < this.right) ||
(other.right > this.left && other.right < this.right) ||
(other.left <= this.left && other.right >= this.right);
let yok = (other.top > this.top && other.top < this.bottom) ||
(other.bottom > this.top && other.bottom < this.bottom) ||
(other.top <= this.top && other.bottom >= this.bottom);
return xok && yok;
let left = this.left;
let right = this.right;
let otherleft = other.left;
let otherright = otherright;
let xok = (otherleft > left && otherleft < right) ||
(otherright > left && otherright < right) ||
(otherleft <= left && otherright >= right);
if (!xok) return false;
let top = this.top;
let bottom = this.bottom;
let othertop = other.top;
let otherbottom = other.bottom;
let yok = (othertop > top && othertop < bottom) ||
(otherbottom > top && otherbottom < bottom) ||
(othertop <= top && otherbottom >= bottom);
if (!yok) return false;
return true;
},
/**
* Similar to (and most code stolen from) intersect(). A restriction
* is an intersection, but this modifies the receiving object instead
@ -443,13 +461,30 @@ wsRect.prototype = {
intersects: function(other) {
if (!other) debugger;
let xok = (other.left > this.left && other.left < this.right) ||
(other.right > this.left && other.right < this.right) ||
(other.left <= this.left && other.right >= this.right);
let yok = (other.top > this.top && other.top < this.bottom) ||
(other.bottom > this.top && other.bottom < this.bottom) ||
(other.top <= this.top && other.bottom >= this.bottom);
return xok && yok;
let left = this.left;
let right = this.right;
let otherleft = other.left;
let otherright = otherright;
let xok = (otherleft > left && otherleft < right) ||
(otherright > left && otherright < right) ||
(otherleft <= left && otherright >= right);
if (!xok) return false;
let top = this.top;
let bottom = this.bottom;
let othertop = other.top;
let otherbottom = other.bottom;
let yok = (othertop > top && othertop < bottom) ||
(otherbottom > top && otherbottom < bottom) ||
(othertop <= top && otherbottom >= bottom);
if (!yok) return false;
return true;
},
/**