Jürg Lehni
c533dda7b5
Finally found a better and faster alternative for this.base() calls, by setting base on the function object instead.
...
base can be accessed on named functions very easily, leading to another measurable speed increase. Finally all performance reasons against straps.js are eliminated!
2013-05-27 10:04:05 -07:00
Jürg Lehni
369b329b23
Change straps.js to directly use initialize() as constructor function rather than redirecting calls to it.
...
Should yield some interesting performance improvements.
2013-05-27 09:11:50 -07:00
Jürg Lehni
96d9b6730f
Rename Svg acronyms in API to SVG.
2013-04-23 07:19:08 -07:00
Jürg Lehni
cebeb11301
Rename Json acronyms in API to JSON.
2013-04-23 07:13:51 -07:00
Jürg Lehni
1b61e4333c
Implement Project#clear().
2013-04-22 22:48:36 -07:00
Jürg Lehni
3025c63179
Simplify Style creation.
2013-04-19 20:00:30 -07:00
Jürg Lehni
2e265693ff
Make #drawSelected() protected.
2013-04-18 17:50:53 -07:00
Jürg Lehni
517b2ee27f
Inline Item.drawSelectedBounds() code.
2013-04-18 17:07:32 -07:00
Jürg Lehni
9ee8590a4d
Move Item.draw() to Item#draw().
...
Makes more sense this way.
2013-04-18 17:04:06 -07:00
Jürg Lehni
0f19e72733
Minor tweaks.
2013-04-09 19:12:47 -07:00
Jürg Lehni
90cc10cc4b
Calculate _globalMatrix for all drawn items and use it for the drawing of selections.
2013-04-09 18:52:47 -07:00
Jürg Lehni
b4a99415d0
Merge PathStyle, CharacterStyle and ParagraphStyle into Style.
...
Closes #130 .
2013-04-09 16:46:20 -07:00
Jonathan Puckey
2b7f526c62
Fix hit-testing documentation: change options.guide to options.guides.
2013-03-16 14:16:02 +01:00
Jürg Lehni
5140e8f003
Minor changes on documentation.
2013-03-01 20:24:26 -08:00
Jürg Lehni
c543704115
Define Project#options as a way to configure things.
...
For now, only options.handleSize is in use.
2013-03-01 18:28:22 -08:00
Jürg Lehni
65a9795a8a
Rename #from/#toJson() to #import/#exportJson() and move them to Project / Item.
...
To reflect naming of #import/#exportSvg().
2013-02-25 16:17:33 -08:00
Jürg Lehni
82029652c8
Fix drawing of selected bounds for Path.
2013-02-24 16:26:46 -08:00
Jürg Lehni
0d98727328
Simplify drawing of seleced bounds by having Item#_boundsSelelected default to true for Raster, PlacedSymbol and TextItem.
...
One can now turn it off for these using item.bounds.selected = false;
2013-02-24 15:53:37 -08:00
Jürg Lehni
6b7c6b6c4c
Implement Item#bounds.selected to control drawing of selected item bounds.
2013-02-24 15:41:31 -08:00
Jürg Lehni
9d708f2690
Fix issue in Project#deselectAll().
2013-02-15 18:21:06 -08:00
Jürg Lehni
fdd15e675f
Add options argument to #toJson() methods, and use to implement optional fractional digit precision control.
2013-02-12 14:57:54 -08:00
Jürg Lehni
00dcd05549
Implement support for dictionary definitions and references in JSON serialization.
2013-02-11 18:59:05 -08:00
Jürg Lehni
6d39a91c87
Implement simple Project serialization.
2013-02-11 16:43:31 -08:00
Jürg Lehni
dc35fdbd02
Move named inner functions out of nested scopes, to prepare for 'use strict;' transition.
2013-02-08 18:23:33 -08:00
Jürg Lehni
6c9c16ad3d
Update copyright information comments, and year.
2013-01-28 18:03:27 -08:00
Jürg Lehni
18572276c5
Fix a bug with new _drawCount code.
...
Make sure items are considered selected right away if they are part of the DOM, even before they are getting drawn for the first time.
2013-01-20 15:56:58 -08:00
Jürg Lehni
50ee598bca
Introduce Project#_drawCount mechanism as a better and more efficient way to filter out selected items that are not currently part of the DOM.
2013-01-20 14:01:43 -08:00
Jürg Lehni
2abefee336
Merge Base.readValue() with Base.read() and rename Base.peekValue() to Base.peek().
...
When called directly on Base, read() reads values, otherwise the specific type of the subclass it is called on.
2012-12-30 16:07:20 +01:00
Jürg Lehni
9022bb232b
Simplify getGlobalMatrix().
2012-12-18 00:22:39 +01:00
Jürg Lehni
481b2e00ac
Handle scroll matrices correctly when drawing selections.
...
Closes #82 .
2012-12-17 22:58:55 +01:00
Jürg Lehni
cf5853c8cc
Improve handling of item based onFrame handlers, by moving functionality to View and removing handlers properly when the view is destroyed.
2012-12-03 09:53:47 -08:00
Jürg Lehni
906faf7956
Improve handling of nested matrices in hit-testing.
...
Closes #134 .
2012-11-23 12:41:00 -08:00
Jürg Lehni
2280c0cb94
Fix drawing of selected items in zoomed views.
2011-12-27 16:40:49 +01:00
Jürg Lehni
a8392fbf68
Implement local caching for the calculation of concatenated global matrices in the drawing of selected items in Project#draw().
2011-12-20 23:09:49 +01:00
Jürg Lehni
93ede28f3b
Implement new selection drawing mechanism.
...
Using the new Item#globalMatrix.
2011-12-20 11:42:00 +01:00
Jürg Lehni
010209c70f
Pass on view matrix to Project#draw.
...
So selection drawing is not zoomed.
2011-12-20 11:41:23 +01:00
Jürg Lehni
cadc2e78ca
We can directly access Item#_id.
...
No need to call Item#getId() internally.
2011-11-28 23:14:02 +01:00
Jürg Lehni
719ae2315c
Remove global views list, link View to Project and allow projects to only have one view.
2011-11-12 16:56:23 +01:00
Jürg Lehni
2b5cfa401a
Remove obsolete documentation.
2011-11-12 14:41:27 +01:00
Jonathan Puckey
eb34e058c0
Fix bug in Item#hitTest and Project#hitTest documentation. Closes #57
2011-11-10 15:14:49 +01:00
Jürg Lehni
6052e94a2a
Add basic code for fine-grained change tracking, as required by on-the fly SVG DOM manipulation.
2011-09-22 10:32:17 +02:00
Jürg Lehni
fe97b94340
Define PaperScopeItem as a private base class for all classes that have lists and references in the PaperScope (Project, View, Tool), so they can share functionality (#initialize(), #activate(), #remove()), and add support for multiple tools. Closes #27
2011-08-02 10:08:08 +01:00
Jürg Lehni
022de4d781
Some documentation fixes for v0.2
2011-08-01 14:25:46 +01:00
Jürg Lehni
c8578658ae
Docs: Remove |null from @return, since it's verbally described, and null can also be a HitResult.
2011-08-01 11:48:07 +01:00
Jonathan Puckey
e0650cae73
Document HitResult, Item#hitTest(point, options) and Project#hitTest(point, options).
2011-07-31 22:58:51 +02:00
Jürg Lehni
e197f94669
Fix links and typos.
2011-07-27 22:02:29 +01:00
Jürg Lehni
43cc8e45b2
Clean up and separate PaperScript documetation from JavaScript related classes. Work in progress.
2011-07-25 00:25:23 +01:00
Jürg Lehni
62ba983432
Implement hit-test options: center and bounds.
2011-07-08 23:26:50 +02:00
Jürg Lehni
9db96ae898
Perform point conversion along with HitResult.getOptions().
2011-07-08 23:25:27 +02:00
Jürg Lehni
a580b23f2a
Reverse direction of child-looping in hit-tests, so items that get drawn last are tested first.
2011-07-08 21:15:16 +02:00
Jürg Lehni
69a7d0bfd4
Implement a first version of Item#hitTest(), so far working only for Path items. Work in progress.
2011-07-07 22:14:58 +02:00
Jürg Lehni
79c0ad8cc5
Update copyright notices.
2011-07-01 12:17:45 +02:00
Richard D. Worth
ac39873693
Whitespace. Removed all trailing whitespace from .js files
2011-06-30 06:01:51 -04:00
Jürg Lehni
4c09514a8f
Document Project.
2011-06-27 14:43:39 +02:00
Jürg Lehni
bd5329c537
Undo previous change again and document Project#remove().
2011-06-27 14:43:28 +02:00
Jürg Lehni
d1305ff91c
Remove the associated PaperScope when a Project is removed.
2011-06-27 14:35:30 +02:00
Jürg Lehni
7cd749e63d
Change all documentation to new convention of defining @class outside injection scope, fix some comments and a few errors with examples.
2011-06-22 23:56:05 +01:00
Jürg Lehni
a7e57ada88
Big refactoring of the way Style objects are linked to their owning classes, implemented in a way that works across all sub classes.
2011-06-20 14:58:48 +01:00
Jürg Lehni
596cc8f83b
Implement #_needsRedraw() mechanism in PaperScope and Project, to notify Views of redraws required by changes in appearance.
2011-06-19 23:03:18 +01:00
Jürg Lehni
25b31b6b7d
Remove deprecated Project#redraw().
2011-06-19 23:02:25 +01:00
Jürg Lehni
0df909dd71
Rename ChangeFlags -> ChangeFlag.
2011-06-19 22:21:14 +01:00
Jürg Lehni
cb61e8d452
Implement rest of ChangeFlags.HIERARCHY notifications.
2011-06-19 21:49:26 +01:00
Jürg Lehni
2fe274741a
Assume that _index is always correct and do not check for Base.splice() result in remove functions.
2011-06-19 16:08:51 +01:00
Jürg Lehni
3226147e00
Use a version of Bootstrap that always produces beans and remove all beans: true instructions.
2011-06-17 18:42:29 +01:00
Jürg Lehni
ffa79f4fd1
Clean up white spaces in comments.
2011-06-14 22:59:45 +01:00
Jürg Lehni
a32b687bfd
Bigger refactoring of handling of segment selection: Have Path#_selectedSegmentState be the summed up value of all Segment's states, and compare it to segments.length * SelectionState.POINT in #fullySelected.
2011-06-14 15:37:25 +01:00
Jonathan Puckey
7591ccf285
Improve Project#currentStyle documentation.
2011-06-10 13:44:30 +02:00
Jürg Lehni
29967153c3
Clean up TODO comments...
2011-06-01 10:49:43 +01:00
Jürg Lehni
2a5f885f50
"for var in" is good practise in such a case, as we don't need additional functionality of Base.each().
2011-06-01 09:57:18 +01:00
Jürg Lehni
90631b9dd0
Merge remote-tracking branch 'origin/master'
2011-05-31 22:16:27 +01:00
Jonathan Puckey
17fcb923ff
Documentation: rearrange @example tags, improve examples, rename boolean -> Boolean and misc smaller edits.
2011-05-30 19:42:17 +02:00
Jürg Lehni
6effdcd450
Move comment.
2011-05-30 17:04:15 +01:00
Jürg Lehni
78f43b52b9
Set default styles for Project#currentStyle.
2011-05-29 21:35:46 +01:00
Jonathan Puckey
8e84c79aa6
Documentation: capitalize 'string' and 'number' types.
2011-05-27 20:15:15 +02:00
Jonathan Puckey
b52421c282
Project documentation: use Type[] for 'typed' arrays.
2011-05-26 16:49:19 +02:00
Jonathan Puckey
8ab56a7ebd
Some edits to Project documentation.
2011-05-26 00:57:58 +02:00
Jonathan Puckey
7910d134a7
Documentation: add Project Hierarchy properties.
2011-05-26 00:54:25 +02:00
Jonathan Puckey
14c693aa7c
Add Project documentation.
2011-05-23 18:13:03 +02:00
Jonathan Puckey
1a8e81bc22
Project#selectAll: remove todo.
2011-05-21 21:41:10 +02:00
Jürg Lehni
b461368b18
Found a clean way for Layer#initialize() to call this.base() too, without implicitely calling paper.project.activeLayer.appendTop.
2011-05-21 01:05:22 +01:00
Jürg Lehni
7b4dd222ac
Completely decouple ProjectView from Project.
2011-05-17 13:25:46 +01:00
Jürg Lehni
c4203fe174
Change the way associated PathStyles are created and updated.
2011-05-16 19:21:36 +01:00
Jürg Lehni
cfe968d30e
Rename Document -> Project, DocumentView -> ProjectView, paper.document -> paper.project and paper.documents -> paper.projects, to avoid name clashing with window.document.
2011-05-16 13:33:15 +01:00