Merge pull request #75 from abuchanan/path-reverse-segment-siblings

Path.reverse() should adjust segment indices
This commit is contained in:
Jonathan Puckey 2012-03-01 08:01:20 -08:00
commit 0d53b284e3
2 changed files with 11 additions and 1 deletions

View file

@ -828,6 +828,8 @@ var Path = this.Path = PathItem.extend(/** @lends Path# */{
var handleIn = segment._handleIn;
segment._handleIn = segment._handleOut;
segment._handleOut = handleIn;
// Adjust index
segment._index = i;
}
// Flip clockwise state if it's defined
if (this._clockwise !== undefined)

View file

@ -265,6 +265,14 @@ test('Path#reverse', function() {
equals(path.segments.toString(), '{ point: { x: 100, y: 130 }, handleIn: { x: -16.56854, y: 0 }, handleOut: { x: 16.56854, y: 0 } },{ point: { x: 130, y: 100 }, handleIn: { x: 0, y: 16.56854 }, handleOut: { x: 0, y: -16.56854 } },{ point: { x: 100, y: 70 }, handleIn: { x: 16.56854, y: 0 }, handleOut: { x: -16.56854, y: 0 } },{ point: { x: 70, y: 100 }, handleIn: { x: 0, y: -16.56854 }, handleOut: { x: 0, y: 16.56854 } }');
});
test('#reverse should adjust segment indices', function() {
var path = new Path([[0, 0], [10, 10], [20, 20]]);
path.reverse();
equals(path.segments[0]._index, 0);
equals(path.segments[1]._index, 1);
equals(path.segments[2]._index, 2);
});
test('Path#fullySelected', function() {
var path = new Path.Circle([100, 100], 10);
path.fullySelected = true;
@ -272,4 +280,4 @@ test('Path#fullySelected', function() {
equals(function() {
return path.fullySelected;
}, false);
});
});