changeset 631:6d6e3a8caa03

prepare new svg-edit version
author Reimar Bauer <rb.proj AT googlemail DOT com>
date Thu, 05 Feb 2015 16:36:56 +0100
parents f3676743483d
children 8c00e2be925e
files htdocs/svg-edit/AUTHORS htdocs/svg-edit/CHANGES htdocs/svg-edit/CHANGES.current htdocs/svg-edit/LICENSE htdocs/svg-edit/Makefile htdocs/svg-edit/README htdocs/svg-edit/build/tools/closure-compiler.jar htdocs/svg-edit/build/tools/yuicompressor.jar htdocs/svg-edit/clipart/moon.svg htdocs/svg-edit/clipart/star.svg htdocs/svg-edit/clipart/sun.svg htdocs/svg-edit/docs/files/svgcanvas-js.html htdocs/svg-edit/docs/index.html htdocs/svg-edit/docs/index/Files.html htdocs/svg-edit/docs/index/Functions.html htdocs/svg-edit/docs/index/General.html htdocs/svg-edit/docs/javascript/main.js htdocs/svg-edit/docs/javascript/searchdata.js htdocs/svg-edit/docs/search/FilesS.html htdocs/svg-edit/docs/search/FunctionsA.html htdocs/svg-edit/docs/search/FunctionsC.html htdocs/svg-edit/docs/search/FunctionsD.html htdocs/svg-edit/docs/search/FunctionsG.html htdocs/svg-edit/docs/search/FunctionsM.html htdocs/svg-edit/docs/search/FunctionsO.html htdocs/svg-edit/docs/search/FunctionsR.html htdocs/svg-edit/docs/search/FunctionsS.html htdocs/svg-edit/docs/search/GeneralA.html htdocs/svg-edit/docs/search/GeneralC.html htdocs/svg-edit/docs/search/GeneralD.html htdocs/svg-edit/docs/search/GeneralF.html htdocs/svg-edit/docs/search/GeneralG.html htdocs/svg-edit/docs/search/GeneralL.html htdocs/svg-edit/docs/search/GeneralM.html htdocs/svg-edit/docs/search/GeneralO.html htdocs/svg-edit/docs/search/GeneralR.html htdocs/svg-edit/docs/search/GeneralS.html htdocs/svg-edit/docs/search/NoResults.html htdocs/svg-edit/docs/styles/main.css htdocs/svg-edit/editor/embedapi.js htdocs/svg-edit/editor/extensions/closepath_icons.svg htdocs/svg-edit/editor/extensions/ext-arrows.js htdocs/svg-edit/editor/extensions/ext-closepath.js htdocs/svg-edit/editor/extensions/ext-connector.js htdocs/svg-edit/editor/extensions/ext-eyedropper.js htdocs/svg-edit/editor/extensions/ext-foreignobject.js htdocs/svg-edit/editor/extensions/ext-helloworld.js htdocs/svg-edit/editor/extensions/eyedropper-icon.xml htdocs/svg-edit/editor/extensions/eyedropper.png htdocs/svg-edit/editor/extensions/foreignobject-icons.xml htdocs/svg-edit/editor/extensions/helloworld-icon.xml htdocs/svg-edit/editor/images/README.txt htdocs/svg-edit/editor/images/align-bottom.png htdocs/svg-edit/editor/images/align-bottom.svg htdocs/svg-edit/editor/images/align-center.png htdocs/svg-edit/editor/images/align-center.svg htdocs/svg-edit/editor/images/align-left.png htdocs/svg-edit/editor/images/align-left.svg htdocs/svg-edit/editor/images/align-middle.png htdocs/svg-edit/editor/images/align-middle.svg htdocs/svg-edit/editor/images/align-right.png htdocs/svg-edit/editor/images/align-right.svg htdocs/svg-edit/editor/images/align-top.png htdocs/svg-edit/editor/images/align-top.svg htdocs/svg-edit/editor/images/bold.png htdocs/svg-edit/editor/images/cancel.png htdocs/svg-edit/editor/images/circle.png htdocs/svg-edit/editor/images/clear.png htdocs/svg-edit/editor/images/clone.png htdocs/svg-edit/editor/images/conn.svg htdocs/svg-edit/editor/images/copy.png htdocs/svg-edit/editor/images/cut.png htdocs/svg-edit/editor/images/delete.png htdocs/svg-edit/editor/images/document-properties.png htdocs/svg-edit/editor/images/dropdown.gif htdocs/svg-edit/editor/images/ellipse.png htdocs/svg-edit/editor/images/eye.png htdocs/svg-edit/editor/images/fhpath.png htdocs/svg-edit/editor/images/flyouth.png htdocs/svg-edit/editor/images/flyup.gif htdocs/svg-edit/editor/images/freehand-circle.png htdocs/svg-edit/editor/images/freehand-square.png htdocs/svg-edit/editor/images/go-down.png htdocs/svg-edit/editor/images/go-up.png htdocs/svg-edit/editor/images/image.png htdocs/svg-edit/editor/images/italic.png htdocs/svg-edit/editor/images/line.png htdocs/svg-edit/editor/images/link_controls.png htdocs/svg-edit/editor/images/logo.png htdocs/svg-edit/editor/images/logo.svg htdocs/svg-edit/editor/images/move_bottom.png htdocs/svg-edit/editor/images/move_top.png htdocs/svg-edit/editor/images/none.png htdocs/svg-edit/editor/images/open.png htdocs/svg-edit/editor/images/paste.png htdocs/svg-edit/editor/images/path.png htdocs/svg-edit/editor/images/polygon.png htdocs/svg-edit/editor/images/polygon.svg htdocs/svg-edit/editor/images/rect.png htdocs/svg-edit/editor/images/redo.png htdocs/svg-edit/editor/images/reorient.png htdocs/svg-edit/editor/images/rotate.png htdocs/svg-edit/editor/images/save.png htdocs/svg-edit/editor/images/select.png htdocs/svg-edit/editor/images/select_node.png htdocs/svg-edit/editor/images/sep.png htdocs/svg-edit/editor/images/shape_group.png htdocs/svg-edit/editor/images/shape_ungroup.png htdocs/svg-edit/editor/images/source.png htdocs/svg-edit/editor/images/spinbtn_updn_big.png htdocs/svg-edit/editor/images/square.png htdocs/svg-edit/editor/images/svg_edit_icons.svg htdocs/svg-edit/editor/images/svg_edit_icons.svgz htdocs/svg-edit/editor/images/text.png htdocs/svg-edit/editor/images/text.svg htdocs/svg-edit/editor/images/to_path.png htdocs/svg-edit/editor/images/undo.png htdocs/svg-edit/editor/images/view-refresh.png htdocs/svg-edit/editor/images/wave.png htdocs/svg-edit/editor/images/wireframe.png htdocs/svg-edit/editor/images/zoom.png htdocs/svg-edit/editor/jgraduate/LICENSE htdocs/svg-edit/editor/jgraduate/README htdocs/svg-edit/editor/jgraduate/css/jPicker-1.0.12.css htdocs/svg-edit/editor/jgraduate/css/jgraduate.css htdocs/svg-edit/editor/jgraduate/images/AlphaBar.png htdocs/svg-edit/editor/jgraduate/images/Bars.png htdocs/svg-edit/editor/jgraduate/images/Maps.png htdocs/svg-edit/editor/jgraduate/images/NoColor.png htdocs/svg-edit/editor/jgraduate/images/bar-opacity.png htdocs/svg-edit/editor/jgraduate/images/map-opacity.png htdocs/svg-edit/editor/jgraduate/images/mappoint.gif htdocs/svg-edit/editor/jgraduate/images/mappoint_c.png htdocs/svg-edit/editor/jgraduate/images/mappoint_f.png htdocs/svg-edit/editor/jgraduate/images/picker.gif htdocs/svg-edit/editor/jgraduate/images/preview-opacity.png htdocs/svg-edit/editor/jgraduate/images/rangearrows.gif htdocs/svg-edit/editor/jgraduate/images/rangearrows2.gif htdocs/svg-edit/editor/jgraduate/jpicker-1.0.12.min.js htdocs/svg-edit/editor/jgraduate/jquery.jgraduate.js htdocs/svg-edit/editor/jgraduate/jquery.jgraduate.min.js htdocs/svg-edit/editor/jquery-ui/jquery-ui-1.8.custom.min.js htdocs/svg-edit/editor/jquery.js htdocs/svg-edit/editor/jquerybbq/jquery.bbq.min.js htdocs/svg-edit/editor/js-hotkeys/README.md htdocs/svg-edit/editor/js-hotkeys/jquery.hotkeys.min.js htdocs/svg-edit/editor/locale/README.txt htdocs/svg-edit/editor/locale/lang.af.js htdocs/svg-edit/editor/locale/lang.ar.js htdocs/svg-edit/editor/locale/lang.az.js htdocs/svg-edit/editor/locale/lang.be.js htdocs/svg-edit/editor/locale/lang.bg.js htdocs/svg-edit/editor/locale/lang.ca.js htdocs/svg-edit/editor/locale/lang.cs.js htdocs/svg-edit/editor/locale/lang.cy.js htdocs/svg-edit/editor/locale/lang.da.js htdocs/svg-edit/editor/locale/lang.de.js htdocs/svg-edit/editor/locale/lang.el.js htdocs/svg-edit/editor/locale/lang.en.js htdocs/svg-edit/editor/locale/lang.es.js htdocs/svg-edit/editor/locale/lang.et.js htdocs/svg-edit/editor/locale/lang.fa.js htdocs/svg-edit/editor/locale/lang.fi.js htdocs/svg-edit/editor/locale/lang.fr.js htdocs/svg-edit/editor/locale/lang.fy.js htdocs/svg-edit/editor/locale/lang.ga.js htdocs/svg-edit/editor/locale/lang.gl.js htdocs/svg-edit/editor/locale/lang.he.js htdocs/svg-edit/editor/locale/lang.hi.js htdocs/svg-edit/editor/locale/lang.hr.js htdocs/svg-edit/editor/locale/lang.hu.js htdocs/svg-edit/editor/locale/lang.hy.js htdocs/svg-edit/editor/locale/lang.id.js htdocs/svg-edit/editor/locale/lang.is.js htdocs/svg-edit/editor/locale/lang.it.js htdocs/svg-edit/editor/locale/lang.ja.js htdocs/svg-edit/editor/locale/lang.ko.js htdocs/svg-edit/editor/locale/lang.lt.js htdocs/svg-edit/editor/locale/lang.lv.js htdocs/svg-edit/editor/locale/lang.mk.js htdocs/svg-edit/editor/locale/lang.ms.js htdocs/svg-edit/editor/locale/lang.mt.js htdocs/svg-edit/editor/locale/lang.nl.js htdocs/svg-edit/editor/locale/lang.no.js htdocs/svg-edit/editor/locale/lang.pl.js htdocs/svg-edit/editor/locale/lang.pt-PT.js htdocs/svg-edit/editor/locale/lang.ro.js htdocs/svg-edit/editor/locale/lang.ru.js htdocs/svg-edit/editor/locale/lang.sk.js htdocs/svg-edit/editor/locale/lang.sl.js htdocs/svg-edit/editor/locale/lang.sq.js htdocs/svg-edit/editor/locale/lang.sr.js htdocs/svg-edit/editor/locale/lang.sv.js htdocs/svg-edit/editor/locale/lang.sw.js htdocs/svg-edit/editor/locale/lang.th.js htdocs/svg-edit/editor/locale/lang.tl.js htdocs/svg-edit/editor/locale/lang.tr.js htdocs/svg-edit/editor/locale/lang.uk.js htdocs/svg-edit/editor/locale/lang.vi.js htdocs/svg-edit/editor/locale/lang.yi.js htdocs/svg-edit/editor/locale/lang.zh-CN.js htdocs/svg-edit/editor/locale/lang.zh-HK.js htdocs/svg-edit/editor/locale/lang.zh-TW.js htdocs/svg-edit/editor/locale/locale.js htdocs/svg-edit/editor/spinbtn/JQuerySpinBtn.css htdocs/svg-edit/editor/spinbtn/JQuerySpinBtn.js htdocs/svg-edit/editor/spinbtn/JQuerySpinBtn.min.js htdocs/svg-edit/editor/spinbtn/spinbtn_updn.png htdocs/svg-edit/editor/svg-editor.css htdocs/svg-edit/editor/svg-editor.html htdocs/svg-edit/editor/svg-editor.js htdocs/svg-edit/editor/svg-editor.manifest htdocs/svg-edit/editor/svgcanvas.js htdocs/svg-edit/editor/svgicons/jquery.svgicons.js htdocs/svg-edit/examples/arbelos.svg htdocs/svg-edit/examples/mickey.svg htdocs/svg-edit/extras/server-save/README htdocs/svg-edit/extras/server-save/svg-editor-save.js htdocs/svg-edit/extras/server-save/svg-editor-save.php htdocs/svg-edit/extras/tojson.py htdocs/svg-edit/extras/topo.py htdocs/svg-edit/extras/update-langs.py htdocs/svg-edit/firefox-extension/chrome.manifest htdocs/svg-edit/firefox-extension/content/svg-edit-overlay.css htdocs/svg-edit/firefox-extension/content/svg-edit-overlay.js htdocs/svg-edit/firefox-extension/content/svg-edit-overlay.xul htdocs/svg-edit/firefox-extension/handlers.js htdocs/svg-edit/firefox-extension/install.rdf htdocs/svg-edit/opera-widget/config.xml htdocs/svg-edit/opera-widget/handlers.js htdocs/svg-edit/opera-widget/index.html htdocs/svg-edit/opera-widget/style.css htdocs/svg-edit/test/qunit/qunit.css htdocs/svg-edit/test/qunit/qunit.js htdocs/svg-edit/test/test1.html htdocs/svg-edit/wave/json2.js htdocs/svg-edit/wave/manifest.xml htdocs/svg-edit/wave/svg-edit.xml htdocs/svg-edit/wave/wave.js
diffstat 239 files changed, 0 insertions(+), 35963 deletions(-) [+]
line wrap: on
line diff
--- a/htdocs/svg-edit/AUTHORS	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,22 +0,0 @@
-Narendra Sisodiya <narendra.sisodiya@gmail.com>
-Pavol Rusnak <rusnakp@gmail.com>
-Jeff Schiller <codedread@gmail.com>
-Vidar Hokstad <vidar.hokstad@gmail.com>
-Alexis Deveria <adeveria@gmail.com>
-
-Translation credits:
-
-ar: Tarik Belaam <dubraise@gmail.com> (العربية)
-cs: Jan Ptacek <jan.ptacek@gmail.com> (Čeština)
-de: Reimar Bauer <rb.proj@googlemail.com> (Deutsch)
-es: Alicia Puerto <alicia.puerto.g@gmail.com> (Español)
-fa: Payman Delshad <payman@opera.com> (فارسی)
-fr: wormsxulla <wormsxulla@yahoo.com> (Français)
-fy: Wander Nauta <info@wandernauta.nl> (Frysk)
-hi: Tavish Naruka <tavishnaruka@gmail.com> (हिन्दी)
-ja: Dong <iwadon@yarhalla.jpn.org> (日本語)
-nl: Jaap Blom <jaap.blom@gmail.com> (Nederlands)
-ro: Christian Tzurcanu <christian.tzurcanu@gmail.com> (Româneşte)
-ru: Laurent Dufloux <laurent.dufloux@etu.upmc.fr> (Русский)
-sk: Pavol Rusnak <rusnakp@gmail.com> (Slovenčina)
-zh-TW: 黃瀚生(han sheng Huang) <zenixls2@gmail.com> (台灣正體)
--- a/htdocs/svg-edit/CHANGES	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,72 +0,0 @@
-2.4 - January 11, 2010
--------------------
-* Zoom
-* Layers
-* UI Localization
-* Wireframe Mode
-* Resizable UI (SVG icons)
-* Set background color and/or image (for tracing)
-* Convert Shapes to Paths  
-* X, Y coordinates for all elements
-* Draggable Dialog boxes
-* Select Non-Adjacent Elements
-* Fixed-ratio resize
-* Automatic Tool Switching
-* Raster Images
-* Group elements
-* Add/Remove path nodes
-* Curved Paths
-* Floating point values for all attributes
-* Text fields for all attributes 
-* Title element
-    
-2.3 - September 08, 2009
--------------------
-* Align Objects 
-* Rotate Objects 
-* Clone Objects 
-* Select Next/Prev Object 
-* Edit SVG Source 
-* Gradient picking 
-* Polygon Mode (Path Editing, Phase 1)
-
-2.2 - July 08, 2009
--------------------
-* Multiselect Mode 
-* Undo/Redo Actions 
-* Resize Elements 
-* Contextual tools for rect, circle, ellipse, line, text elements 
-* Some updated button images 
-* Stretched the UI to fit the browser window 
-* Resizing of the SVG canvas 
-* Upgraded to jPicker 1.0.8 
-
-2.1 - June 17, 2009
--------------------
-* tooltips added to all UI elements
-* fix flyout menus
-* ask before clearing the drawing (suggested by martin.vidner)
-* control group, fill and stroke opacity
-* fix flyouts when using color picker
-* change license from GPLv2 to Apache License v2.0
-* replaced Farbtastic with jPicker, because of the license issues
-* removed dependency on svgcanvas.svg, now created in JavaScript
-* added Select tool
-* using jQuery hosted by Google instead of local version
-* allow dragging of elements
-* save SVG file to separate tab
-* create and edit text elements
-* context panel tools
-* change rect radius, font-family, font-size
-* added keystroke shortcuts for all tools
-* move to top/bottom
-
-2.0 - June 03, 2009
--------------------
-* rewritten SVG-edit, so now it uses OOP
-* draw ellipse, square
-* created HTML interface similar to Inkscape
-
-1.0 - February 06, 2009
--------------------
-* SVG-Edit released
\ No newline at end of file
--- a/htdocs/svg-edit/CHANGES.current	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-
-SVG-edit is a lightweight, web-based, Javascript-driven SVG editor that works in any modern browser: version of svg-edit Revision r1310, 2.5alpha (http://code.google.com/p/svg-edit/) for moin-1.9
-
-htdocs/svg-edit must be linked into MoinMoin/web/static/htdocs
---------------------------------------------------------------
-
-Status current svg-edit r1502:
-==============================
-small modification on svg-editor.js for loading from url (cs 516:2b7a77acc967) and save (cs 517:aed9bccfe159) to moin-1.9
-
-
-Status current svg-edit r1310:
-==============================
-
-Since the svg-edit editor could be called by an url parameter pointing to an existing drawing I changed the deploying from sending the html data by the action to calling the svg-editor.html by an object data tag.
-
-The reason for this change is that it becomes much easier to update to a newer svg-edit version as by the other method.
-
-By this currently only the modifcation of svg-editor.js is necessary to save to the wiki instead to a new window.
-
-ToDo:
- * Link Syntax for attachments
-
-Known Issues:
- * changing locale to a different language than english does not work, see 
-   http://code.google.com/p/svg-edit/issues/detail?id=451
-
-
-Status svg-edit r1200:
-======================
- 
- * css adapted for moinmoin
- * action SVG-Editor added
-   This action can currenly save to the page where it is called
- * target parameter addded
-   by adding the target name a file could be saved to this name
-   e.g. http://localhost:8080/Test?action=SvgEditor&target=example.svg
-   or <<Action(SvgEditor,target=test.svg)>>{{attachment:test.svg}}
-   and go to the page after saving
-
-ToDo
- * url_prefix paramter needs to be used in some more js functions 
-   of locale.js, svgcanvas.js and svg-edit.js instead of hardcoding it.
-   (search for '/moin_static191/svg-edit/editor')
- * Link Syntax for attachments
-
-Known Issues in svg-edit
- * after changing locale in svg-edit properties a mysterious word
-   translated from "page" appears on the upper and bottom left corner.
-   see http://code.google.com/p/svg-edit/issues/detail?id=418
-
--- a/htdocs/svg-edit/LICENSE	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,202 +0,0 @@
-
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "[]"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright [yyyy] [name of copyright owner]
-
-   Licensed under the Apache License, Version 2.0 (the "License");
-   you may not use this file except in compliance with the License.
-   You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.
--- a/htdocs/svg-edit/Makefile	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-NAME=svg-edit
-VERSION=2.5
-PACKAGE=$(NAME)-$(VERSION)
-MAKEDOCS=naturaldocs/NaturalDocs
-CLOSURE=build/tools/closure-compiler.jar
-YUICOMPRESS=build/tools/yuicompressor.jar
-ZIP=zip
-
-all: release firefox opera
-
-build/$(PACKAGE):
-	rm -rf config
-	mkdir config
-	if [ -x $(MAKEDOCS) ] ; then $(MAKEDOCS) -i editor/ -o html docs/ -p config/ -oft -r ; fi
-	mkdir -p build/$(PACKAGE)
-	cp -r editor/* build/$(PACKAGE)
-	-find build/$(PACKAGE) -name .svn -type d -exec rm -rf {} \;
-# minify spin button
-	java -jar $(YUICOMPRESS)  build/$(PACKAGE)/spinbtn/JQuerySpinBtn.js                > build/$(PACKAGE)/spinbtn/JQuerySpinBtn.min.js
-	java -jar $(CLOSURE) --js build/$(PACKAGE)/spinbtn/JQuerySpinBtn.js --js_output_file build/$(PACKAGE)/spinbtn/JQuerySpinBtn.min-closure.js
-# minify SVG-edit files
-	java -jar $(YUICOMPRESS)  build/$(PACKAGE)/svg-editor.js                > build/$(PACKAGE)/svg-editor.min.js
-	java -jar $(CLOSURE) --js build/$(PACKAGE)/svg-editor.js --js_output_file build/$(PACKAGE)/svg-editor.min-closure.js
-	java -jar $(YUICOMPRESS)  build/$(PACKAGE)/svgcanvas.js                 > build/$(PACKAGE)/svgcanvas.min.js
-	java -jar $(CLOSURE) --js build/$(PACKAGE)/svgcanvas.js  --js_output_file build/$(PACKAGE)/svgcanvas.min-closure.js
-# CSS files do not work remotely
-# java -jar $(YUICOMPRESS) build/$(PACKAGE)/spinbtn/JQuerySpinBtn.css > build/$(PACKAGE)/spinbtn/JQuerySpinBtn.min.css
-# java -jar $(YUICOMPRESS) build/$(PACKAGE)/svg-editor.css > build/$(PACKAGE)/svg-editor.min.css
-
-release: build/$(PACKAGE)
-	cd build ; $(ZIP) $(PACKAGE).zip -r $(PACKAGE) ; cd ..
-
-firefox: build/$(PACKAGE)
-	mkdir -p build/firefox/content/editor
-	cp -r firefox-extension/* build/firefox
-	rm -rf build/firefox/content/.svn
-	cp -r build/$(PACKAGE)/* build/firefox/content/editor
-	cd build/firefox ; $(ZIP) ../$(PACKAGE).xpi -r * ; cd ../..
-
-opera: build/$(PACKAGE)
-	mkdir -p build/opera/editor
-	cp opera-widget/* build/opera
-	cp -r build/$(PACKAGE)/* build/opera/editor
-	cd build/opera ; $(ZIP) ../$(PACKAGE).wgt -r * ; cd ../..
-
-clean:
-	rm -rf config
-	rm -rf build/$(PACKAGE)
-	rm -rf build/firefox
-	rm -rf build/opera
--- a/htdocs/svg-edit/README	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-SVG-edit, a web based SVG editor
-
-http://code.google.com/p/svg-edit/
-
-see AUTHORS file for authors
-
------
-
-SVG-edit contains code from these projects:
-
-jQuery JavaScript Library v1.3.2
-http://jquery.com/
-Copyright (c) 2009 John Resig
-
-jQuery js-Hotkeys
-http://code.google.com/p/js-hotkeys/
-Copyright (c) 2008 Tzury Bar Yochay
-
-jPicker
-http://www.digitalmagicpro.com/jPicker/
-Copyright (c) 2009 Christopher T. Tillman
Binary file htdocs/svg-edit/build/tools/closure-compiler.jar has changed
Binary file htdocs/svg-edit/build/tools/yuicompressor.jar has changed
--- a/htdocs/svg-edit/clipart/moon.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg width="100" xmlns="http://www.w3.org/2000/svg" height="100" viewBox="0 0 205.5 255.87">
- <g display="inline">
-  <title>Layer 1</title>
-  <path id="svg_1" d="m10.671,231.42c89.543,56.086,188.11-10.029,193.33-94.559-1.7286-101.53-92.171-150.4-160.16-128.01,35.129,15.844,73.4,62.729,73.871,88.013-3.4428,7.5157-5.8714,16.373,1.5286,18.844-2,12.857-18.486,33.571-21.043,40.643-2.5571,7.0714,2.2143,9.8443,5.4429,10.357,0.2,6.0586-4.4429,8.3572-5.3572,12.156-7.9,3.13-8.4714,9.9872-7.3286,14.844-19.714,18.571-20.571,27.143-80.286,37.714z" stroke="#000" stroke-width="5" fill="#f6c700"/>
-  <path id="svg_3" d="m98.193,180.83c2.5851-3.421,7.4852,2.5632,7.1642,5.1572-0.32201,2.594-0.67928,4.0227-3.7143,5.2857" stroke="#000" stroke-width="5" fill="none"/>
-  <path id="svg_4" d="m104.11,166.92c5.5357-0.49998,14.643,3.8472,17.75,2.37,3.1072-1.4771,3.3929-4.6686,2.3572-6.5129" stroke="#000" stroke-width="5" fill="none"/>
-  <path id="svg_5" d="m125.64,171.49c-3.9286,8.2143-3.8572,18.987,4.2143,33.286" stroke="#000" stroke-width="2" fill="none"/>
-  <path id="svg_6" d="m117.91,97.816c9.572,1.8,16.143-9.0571,20.8-10.101,3.057-1.0986,14.057,27.473,21.057,35.616" stroke="#000" stroke-width="5" fill="none"/>
-  <path id="svg_7" d="m129.49,105.78c7.6428-3.6429,11.179,6.5357,12.607,10.929,1.4286,4.3928,7.1428,5.1071,10.857,5.5" stroke="#000" stroke-width="2" fill="none"/>
-  <path id="svg_8" d="m133.91,114.75c0.87856-0.13215,1.6214,4.3107,2.5143,6.8236,1.2857-0.90571,0.82143-1.5129,1.3928-1.9771,0.96429-0.82143,1.6071,3.6657,2.3572,5.1429,4.8572-0.00001,5.4643,0.89286,5.4286,1.9286-3.25,0.21429-5.1786,0.67857-7.5,1.6071-3.7857,2.3214-6.0357,6.6072-7,5.4286-0.32143-1.5,3.3571-4.5357,4-5.4286-3.0714-5.1428-2.0714-13.393-1.1929-13.525z" stroke="#000" fill="#000"/>
- </g>
-</svg>
--- a/htdocs/svg-edit/clipart/star.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg xmlns="http://www.w3.org/2000/svg" height="100" width="100">
- <path id="svg_1" stroke-linejoin="round" d="M36.536,32.822c12.699-31.856,13.17-31.734,26.356-1.061,34.15,2.198,39.388,9.622,6.513,23.932,19.821,46.047-0.792,28.383-19.842,13.178-22.358,25.013-29.541,22.639-18.782-12.118-7.282-8.501-45.095-18.741,5.755-23.931z" fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-miterlimit="4" stroke-width="5" fill="#FF0"/>
-</svg>
--- a/htdocs/svg-edit/clipart/sun.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg id="svg4562" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" height="330.42" width="309.18" version="1.0" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata id="metadata4567"><rdf:RDF><cc:Work rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/></cc:Work></rdf:RDF></metadata><defs id="defs4565"/><g id="g4569" fill-rule="nonzero" transform="matrix(1.25,0,0,-1.25,-2.8758105,798.03929)" fill="#f9a749"><path id="path4595" d="M160.13,603.66h0.09-0.09"/><g id="g5207" transform="matrix(2.30724,0,0,2.30724,-136.436,314.961)"><path id="path4735" d="M118.02,123.06c0.15,0,0.31-0.05,0.41,0.11,0.11-0.58,0.21-1.15,0.37-1.78l-0.16-0.1-0.21,0.52c-0.57-1.57,0.37-3.14,0.63-4.65,0.52-0.68,0.52-1.62,0.47-2.51-0.63,0.11-0.31-0.68-0.73-0.78,0.1-0.26,0.31-0.47,0.26-0.84-0.94-0.42-1.62,0.63-1.78,1.26-0.15,0.31-0.15,0.73-0.52,0.99-0.16-0.84-0.78-0.05-1.25-0.16-1.15,5.7-0.84,11.65-0.73,17.71,0.42,1.2,0,2.3,0.1,3.61,0.32-0.79,0-1.78,0.26-2.62,0.11,0.68,0.37,1.26,0.26,1.99l0.26-2.35h0.11v6.74c-0.11-6.06,2.14-11.34,2.25-17.14"/><path id="path4761" d="M115.93,131.06l-0.16,2.14,0.16-1.78v-0.36"/><path id="path4763" d="M131.08,114.13c-0.89-0.89-1.83-1.83-2.77-2.25-0.11,3.19,1.62,6.22,2.66,9.3,1.88,3.5,3.03,7.42,5.75,10.66l0.36,0.99c-2.14-6.16-3.6-12.64-6-18.7"/><path id="path4765" d="M102.5,114.76c0.21-0.11,0.31,0.15,0.47,0.26-0.05-1.36,0.73-1.31-0.1-2.51-0.37-0.26-0.74-0.42-1.26-0.37-3.864,3.56-5.222,8.73-6.633,13.01l1.097-2.61c-0.627,2.87-1.619,5.9-2.508,8.88,2.195-5.85,5.486-11.39,8.934-16.66"/><path id="path4767" d="M115.51,126.2l0.15-2.67-0.15,2.67"/><path id="path4769" d="M157.51,118.52c-5.59-4.18-12.07-8.83-15.78-15.41-2.09-0.58-3.86-1.94-6.27-1.78,0.58,0.26-0.26,0.84,0,1.25h-0.52c0.42,0.47,1.2,0.58,1.26,1.26-0.47,0.15-0.21,1.51-1.36,1.04,0.26,0.63,0.89,0.79,1.51,0.84,0.58,1.36,2.15,0.89,3.14,1.51,5.53,3.82,10.29,9.56,16.56,11.81,0.52-0.1,1.36,0.26,1.46-0.52"/><path id="path4771" d="M79.148,110.26l0.261,0.26c3.03-1.98,5.694-5.01,9.142-5.9,0.732,0.16,1.045,0.11,1.776,0.11,0.105-0.27,0-0.68,0.366-0.89,0.627,0.36,0.731-0.37,0.993-0.73-0.209-0.32-0.679,0.1-0.836-0.37,0.313-0.63,1.567-0.31,1.462-1.25-0.574-0.94-2.507-0.05-1.723-1.884l-0.366-1.515c-5.329,1.358-8.254,6.739-12.068,10.399l1.619-1.1c-0.104-0.05-0.156,0.05-0.209,0.11l-0.261-0.27c0.888-0.26,1.097-1.35,2.142-1.35-0.209,1.04-1.724,1.56-2.298,2.61,0.783-0.16,1.514-1.1,2.298-1.62-0.47,1.04-1.515,1.93-2.664,2.77l-2.612,3.13c1.045-1.04,1.828-1.88,2.978-2.51"/><path id="path4773" d="M116.55,111.88c5.38,0.58,10.03-1.62,14.16-4.28-6.11,1.57-12.69,4.07-18.96,0.78-1-0.15-2.09-0.62-2.51-1.62l0.16-0.42-0.89-0.36c0,0.16,0.05,0.31-0.11,0.36-0.42-0.41-1.36-0.1-1.77-0.73l0.1-0.1c-0.52-0.31-1.77-1.05-2.71-0.78-4.184-3.29-7.476-7.005-9.409-11.759,0.471,0,1.097,0.888,1.097,1.359,0.157,0.104,0.209,0.313,0.366,0.261l0.157-0.157c-0.314,0.731,0.731,0.94,0.888,1.515-0.157-0.575-1.202-1.672-0.627-2.508l-2.142-3.395c-0.679,0.261-0.522-0.575-0.784-0.836,0.418-1.829-1.097-4.232-1.097-6.53,0.052-1.672-0.992-2.56-0.261-4.023l0.104,0.104c0.105-0.156,0.418-1.358-0.208-0.992-0.157-0.314,0.261-0.314,0.208-0.366-0.208-0.418-0.104-1.045,0.262-1.358l0.156,0.104c0.314-0.679,0.889-1.828,0.471-2.612,0.731,0,0.679-1.097,0.992-1.672,0.418-2.298,1.568-4.597,3.292-6.478,0.261-0.783,1.201-1.306,1.619-2.037,0.836,0.261,1.676-1.306,2.406-0.732l-0.16,0.105c1.46-0.418,1.1-2.09,2.87-1.985,1.94-1.15,4.29-0.418,6.43-0.627,2.77-0.679,5.12,1.253,7.63,0.731,1.67,0.522,3.29,1.568,5.01,1.515,2.98,1.463,6.32,2.926,8.41,6.165,4.24,5.538,6.22,12.381,5.28,19.8-1.46,6.164-7.26,12.538-13.79,13.268-7.42,1.62-13.43-2.402-17.29-8.41-2.62-4.336-3.3-11.18-0.42-15.672,2.35-4.545,7.62-5.747,12.54-5.225,2.71,0.418,5.59,1.463,6.89,4.127,2.46,3.762,0.79,8.934,0,12.904-0.63,1.359-2.04,1.933-3.24,2.508-2.77-0.052-5.43-0.157-7.42-2.142,0.42-2.926-0.15-6.374,2.93-8.15,1.1-0.261,1.93-1.045,3.24-0.731,0.36-1.045-1.15-0.575-1.62-0.993-2.04,0.784-4.02,1.933-4.55,4.232l-0.62,6.53c0.78,3.448,4.75,3.291,7.52,3.866,3.19-0.47,5.85-2.09,7.78-4.754,0.58-1.881,1.52-3.761,1.15-5.903,0.84-2.09,0-4.336-0.26-6.635-1.15-2.978-2.92-6.008-5.9-7.889-4.02-0.783-8.2-1.567-12.17,0-5.12,1.358-9.35,6.478-10.03,11.65-1.41,8.464,3.13,15.986,9.92,20.427,6.2,3.96,14.76,3.11,20.69-1.463,6.63-5.224,10.55-12.747,9.67-21.471-0.32-7.732-5.23-14.576-12.07-18.285-3.19-0.888-6.53-2.873-9.62-2.665-2.66-0.157-5.01-0.783-7.94-0.365l-1.09-0.366,0.1-0.522c0.47,0.104,0.89,0.156,1.41,0.156-4.49-0.365-9.51,0.523-13.059,2.978-0.679,0.94-1.829,0.94-2.508,1.515-4.545,2.09-5.694,7.157-7.522,11.18l-0.105,1.254c0.209-0.627,0.47-1.254,0.731-1.881,0.575,1.359-0.522,2.299-0.522,3.762-1.724,4.231-0.418,9.874,0,13.792,0.105,0.94,0.94,2.194,0.522,2.612,0.262,1.253,0.68,2.351,1.254,3.5,1.149-0.209,0.731,1.097,1.149,1.672,1.359,1.515,1.725,3.447,3.501,5.017,0.94,0.21,0.992-0.58,1.724,0-0.523-0.68-0.784-0.21-1.463-0.52,0.313,0.1,0.47-0.68,0.836-0.53-0.105-0.15-0.523-0.15-0.366-0.47,0.314-0.15,0.627,0.26,0.888,0.47-0.052,0.32,0.261,0.63,0.523,1.05,0.731-0.05,1.515,0.94,1.619,1.36-0.313,0.41-0.47-0.32-0.783-0.27l0.417,0.37-0.522,0.16,0.732,0.73v-0.11c0.414-0.26,0.884,0,1.144,0.37l-0.52,0.37c2.98,1.09,4.81,4.85,8.15,5.27,2.25,1.41,5.07,1.94,7.94,1.99v-0.11"/><path id="path4775" d="M114.78,110.37c-0.53-0.16-0.94-0.68-1.62-0.47,0.47,0.31,1.09,0.31,1.62,0.47"/><path id="path4777" d="M112.01,110.26h0.52-0.52"/><path id="path4779" d="M101.25,103.73l-0.63-0.62,0.63,0.62"/><path id="path4781" d="M98.582,102.74l-0.105,0.26h0.366l-0.261-0.26"/><path id="path4783" d="M98.843,102.58l-0.627-0.47,0.627,0.47"/><path id="path4785" d="M96.231,100.96l-0.366-0.36,0.366,0.36"/><path id="path4787" d="M91.842,98.718l-0.156-0.627,0.156,0.627"/><path id="path4789" d="M163.41,97.725c0-0.156,0.06-0.209,0.16-0.261-6.43-2.09-12.33-5.485-19.33-6.269-0.36,0.261-0.94,0.105-1.25,0.522,0.21,0.575,0.42,1.15,0.99,1.62-0.36,0.784-2.14-0.052-1.52,1.097,1.68,0.261,3.14,0.94,4.55,1.672,5.01,0.522,10.19,0.313,15.05,1.619h1.35"/><path id="path4791" d="M70.893,91.456c4.441,0.105,8.202-0.731,12.643-0.261,0.313,1.097,1.828-0.104,1.776,0.993,1.202-0.418-0.261-0.941,0.366-1.724,0.731-0.47,1.724-0.679,2.037-1.411-0.104-0.575-1.358-0.731-0.522-1.358-2.873-0.209-6.74-0.105-9.665-0.157-3.552,0.418-7,1.045-10.135,2.403,1.097,0.157,2.403-0.261,3.5-0.104-3.813,0.679-7.261,2.403-10.762,3.866l10.762-2.247"/><path id="path4793" d="M94.35,93.703l-0.157-0.366,0.157,0.366"/><path id="path4795" d="M151.87,79.806c5.12-0.679,10.92,0.157,14.83-3.134-0.2-0.627,0.27-0.889,0.63-1.254l-1.67,0.627c-7.36,0.836-16.46-1.881-21.42,4.231,0.52,0.47,0.94,0.627,1.62,0.888,2.25,0.105,3.97-1.097,6.01-1.358"/><path id="path4797" d="M88.447,79.649h0.105v-0.47h-0.105v0.47z"/><path id="path4799" d="M85.835,76.672c0.47,0,0.835-0.575,1.097-0.784l0.156-0.627c-0.313,0.157-0.418-0.261-0.627-0.366-0.104-0.209,0.157-0.261,0.209-0.365,0.262,0.104,0.366,0.313,0.627,0.261,0.366-0.575,0.366-0.888,0.523-1.515-0.209,0-0.366-0.261-0.523-0.366,0.627-0.47-0.052-1.097,0.157-1.515-1.881-1.881-4.702-1.463-6.792-2.769-3.552-1.41-7.261-2.873-11.127-3.134l-3.761-0.732c1.149,0.471,2.507,0.784,3.5,1.359-2.038,0.157-4.127-0.888-6.008-0.627,1.776,0.784,3.03,1.933,4.754,2.873-0.105,0.209-0.366,0.105-0.523,0.157l0.157,0.104h-0.888l1.358,0.262-0.104,0.104c-0.052,0,0.679-0.052,0.888,0.261-0.105,0.888,2.403,0.314,1.097,0.993,0.314,0.313,0.732,0.261,1.15,0.261l-0.366-0.261c1.41,0,2.351,1.149,3.761,1.619,0.94,0.471,1.985,0.575,2.717,1.515l-0.105,0.157c1.568,0.366,3.03,2.351,4.911,2.508,0.627,1.045,2.194,0.052,3.344,0.365l0.418,0.262"/><path id="path4801" d="M91.215,74.634l0.105,0.157,0.261-0.418c-0.783-0.313-0.104-1.41-0.104-1.724-0.47,1.202-0.732,2.351-0.784,3.605,0.366-0.157-0.209-1.306,0.522-1.62"/><path id="path4803" d="M90.85,71.029c-0.157-0.104-0.157-0.261-0.157-0.418l-0.261,0.784,0.418-0.366"/><path id="path4805" d="M90.954,70.507l0.105-0.522-0.105,0.522"/><path id="path4807" d="M149.15,62.88c2.2-1.62,3.97-3.866,4.76-6.27-4.76,2.561-10.35,4.128-14.32,8.621,0.16,0.731,0.99,0.156,1.41,0.522l-0.26,0.261c3.4,1.15,5.59-2.142,8.41-3.134"/><path id="path4809" d="M94.35,60.738c-1.149-1.254,1.776-2.299-0.157-3.292-4.858-4.701-10.291-10.239-15.672-14.889l2.298,2.508c-0.783,0.209-1.41-0.836-2.037-1.149l-2.247-2.142c0.836,0.836,1.829,1.724,1.986,2.664-1.463-0.992-2.978-2.037-4.493-3.03,0.836,1.202,1.881,1.515,2.612,2.508-0.052,0.156-0.209,0.156-0.366,0.156,4.545,6.113,9.769,12.538,16.038,17.397-0.156,0.366,0.262,0.68,0.523,0.784,0.731,0,1.149-0.94,1.515-1.515"/><path id="path4811" d="M97.223,60.477l1.515-1.15c-1.149,0.261-2.142,0.784-3.03,1.672,0.627,0.052,0.732-0.888,1.515-0.522"/><path id="path4813" d="M125.54,57.864c-0.16-0.104-0.37-0.156-0.63-0.156,0.21,0.052,0.42,0.156,0.63,0.156"/><path id="path4815" d="M129.93,53.685c1.25,0.157,0.21-1.045,0.52-1.463l-0.37-0.784c1.15-4.336,1.88-9.037,1.73-13.791-3.4,4.858-4.39,10.866-6.9,16.195h0.16c0.26,0.261-0.05,0.574-0.26,0.731,1.25,0.941,3.5,1.463,5.01,0.523l0.11-1.411"/><path id="path4817" d="M110.49,51.7c-0.36-0.523,0.53-0.836,0.79-1.254-1.1-0.104-0.21-1.619-1.41-1.359-4.45-6.373-7.16-13.478-10.139-20.478-0.731-1.045-1.463-2.403-2.612-2.978l-0.261,0.366c3.134,9.037,5.802,18.336,10.032,26.957l-0.37,0.731,1.26,0.784c1.09-0.732,1.93-1.568,2.71-2.769"/></g></g></svg>
--- a/htdocs/svg-edit/docs/files/svgcanvas-js.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>/Users/jschill1/Documents/svg-edit/editor/svgcanvas.js</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="svgcanvas.js"></a>svgcanvas.js</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#svgcanvas.js" >svgcanvas.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Selection" >Selection</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#clearSelection" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">clearSelection</a></td><td class=SDescription>Clears the selection. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#addToSelection" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">addToSelection</a></td><td class=SDescription>Adds a list of elements to the selection. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#removeFromSelection" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">removeFromSelection</a></td><td class=SDescription>Removes elements from the selection.</td></tr><tr class="SGroup"><td class=SEntry><a href="#Serialization" >Serialization</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#open" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">open</a></td><td class=SDescription>Calls the &lsquo;opened&rsquo; handler and sends the SVG XML text. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#save" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">save</a></td><td class=SDescription>Serializes the current drawing into SVG XML text and returns it to the &lsquo;saved&rsquo; handler. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#getSvgString" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">getSvgString</a></td><td class=SDescription>Returns the current drawing as raw SVG XML text.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#setSvgString" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">setSvgString</a></td><td class=SDescription>This function sets the current drawing as the input SVG XML.</td></tr><tr class="SGroup"><td class=SEntry><a href="#Layers" >Layers</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#createLayer" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">createLayer</a></td><td class=SDescription>Creates a new top-level layer in the drawing with the given name, sets the current layer to it, and then clears the selection  This function then calls the &lsquo;changed&rsquo; handler. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#deleteCurrentLayer" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">deleteCurrentLayer</a></td><td class=SDescription>Deletes the current layer from the drawing and then clears the selection. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#getNumLayers" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">getNumLayers</a></td><td class=SDescription>Returns the number of layers in the current drawing.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#getLayer" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">getLayer</a></td><td class=SDescription>Returns the name of the ith layer. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#getCurrentLayer" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">getCurrentLayer</a></td><td class=SDescription>Returns the name of the currently selected layer. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#setCurrentLayer" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">setCurrentLayer</a></td><td class=SDescription>Sets the current layer. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#renameCurrentLayer" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">renameCurrentLayer</a></td><td class=SDescription>Renames the current layer. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#setCurrentLayerPosition" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">setCurrentLayerPosition</a></td><td class=SDescription>Changes the position of the current layer to the new value. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#getLayerVisibility" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">getLayerVisibility</a></td><td class=SDescription>Returns whether the layer is visible. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#setLayerVisibility" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">setLayerVisibility</a></td><td class=SDescription>Sets the visibility of the layer. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#moveSelectedToLayer" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')">moveSelectedToLayer</a></td><td class=SDescription>Moves the selected elements to layername. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#getLayerOpacity" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">getLayerOpacity</a></td><td class=SDescription>Returns the opacity of the given layer. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#setLayerOpacity" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')">setLayerOpacity</a></td><td class=SDescription>Sets the opacity of the given layer. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#clear" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')">clear</a></td><td class=SDescription>Clears the current document. </td></tr><tr class="SGroup"><td class=SEntry><a href="#Fill_and_Stroke" >Fill and Stroke</a></td><td class=SDescription></td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Selection"></a>Selection</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="clearSelection"></a>clearSelection</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clearSelection = function()</td></tr></table></blockquote><p>Clears the selection.&nbsp;  The &lsquo;selected&rsquo; handler is then called.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="addToSelection"></a>addToSelection</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.addToSelection = function(</td><td class=PParameter nowrap>elemsToAdd,</td></tr><tr><td></td><td class=PParameter nowrap>showGrips</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Adds a list of elements to the selection.&nbsp;  The &lsquo;selected&rsquo; handler is then called.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>elemsToAdd</td><td class=CDLDescription>an array of DOM elements to add to the selection</td></tr><tr><td class=CDLEntry>showGrips</td><td class=CDLDescription>a boolean flag indicating whether the resize grips should be shown</td></tr></table></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="removeFromSelection"></a>removeFromSelection</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.removeFromSelection = function(</td><td class=PParameter nowrap>elemsToRemove</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Removes elements from the selection.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>elemsToRemove</td><td class=CDLDescription>an array of elements to remove from selection</td></tr></table></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Serialization"></a>Serialization</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="open"></a>open</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.open = function(</td><td class=PParameter nowrap>str</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Calls the &lsquo;opened&rsquo; handler and sends the SVG XML text.&nbsp;  Clients of the SvgCanvas bind their load function (typically calls to setSvgString() to the &lsquo;opened&rsquo; event.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="save"></a>save</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.save = function()</td></tr></table></blockquote><p>Serializes the current drawing into SVG XML text and returns it to the &lsquo;saved&rsquo; handler.&nbsp; This function also includes the XML prolog.&nbsp;  Clients of the SvgCanvas bind their save function to the &lsquo;saved&rsquo; event.</p><h4 class=CHeading>Returns</h4><p>Nothing</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getSvgString"></a>getSvgString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.getSvgString = function()</td></tr></table></blockquote><p>Returns the current drawing as raw SVG XML text.</p><h4 class=CHeading>Returns</h4><p>The current drawing as raw SVG XML text.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="setSvgString"></a>setSvgString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setSvgString = function(</td><td class=PParameter nowrap>xmlString</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>This function sets the current drawing as the input SVG XML.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>xmlString</td><td class=CDLDescription>The SVG as XML text.</td></tr></table><h4 class=CHeading>Returns</h4><p>This function returns false if the set was unsuccessful, true otherwise.</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Layers"></a>Layers</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="createLayer"></a>createLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.createLayer = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Creates a new top-level layer in the drawing with the given name, sets the current layer to it, and then clears the selection  This function then calls the &lsquo;changed&rsquo; handler.&nbsp; This is an undoable action.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>The given name</td></tr></table></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="deleteCurrentLayer"></a>deleteCurrentLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.deleteCurrentLayer = function()</td></tr></table></blockquote><p>Deletes the current layer from the drawing and then clears the selection.&nbsp; This function then calls the &lsquo;changed&rsquo; handler.&nbsp;  This is an undoable action.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getNumLayers"></a>getNumLayers</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.getNumLayers = function()</td></tr></table></blockquote><p>Returns the number of layers in the current drawing.</p><h4 class=CHeading>Returns</h4><p>The number of layers in the current drawing.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getLayer"></a>getLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.getLayer = function(</td><td class=PParameter nowrap>i</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the name of the ith layer.&nbsp; If the index is out of range, an empty string is returned.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>i</td><td class=CDLDescription>the zero-based index of the layer you are querying.</td></tr></table><h4 class=CHeading>Returns</h4><p>The name of the ith layer</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getCurrentLayer"></a>getCurrentLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.getCurrentLayer = function()</td></tr></table></blockquote><p>Returns the name of the currently selected layer.&nbsp; If an error occurs, an empty string is returned.</p><h4 class=CHeading>Returns</h4><p>The name of the currently active layer.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="setCurrentLayer"></a>setCurrentLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setCurrentLayer = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the current layer.&nbsp; If the name is not a valid layer name, then this function returns false.&nbsp; Otherwise it returns true.&nbsp; This is not an undo-able action.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>the name of the layer you want to switch to.</td></tr></table><h4 class=CHeading>Returns</h4><p>true if the current layer was switched, otherwise false</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="renameCurrentLayer"></a>renameCurrentLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.renameCurrentLayer = function(</td><td class=PParameter nowrap>newname</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Renames the current layer.&nbsp; If the layer name is not valid (i.e. unique), then this function does nothing and returns false, otherwise it returns true.&nbsp; This is an undo-able action.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>newname</td><td class=CDLDescription>the new name you want to give the current layer.&nbsp;  This name must be unique among all layer names.</td></tr></table><h4 class=CHeading>Returns</h4><p>true if the rename succeeded, false otherwise.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="setCurrentLayerPosition"></a>setCurrentLayerPosition</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setCurrentLayerPosition = function(</td><td class=PParameter nowrap>newpos</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Changes the position of the current layer to the new value.&nbsp; If the new index is not valid, this function does nothing and returns false, otherwise it returns true.&nbsp; This is an undo-able action.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>newpos</td><td class=CDLDescription>The zero-based index of the new position of the layer.&nbsp;  This should be between</td></tr><tr><td class=CDLEntry>0 and (number of layers</td><td class=CDLDescription>1)</td></tr></table><h4 class=CHeading>Returns</h4><p>true if the current layer position was changed, false otherwise.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getLayerVisibility"></a>getLayerVisibility</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.getLayerVisibility = function(</td><td class=PParameter nowrap>layername</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns whether the layer is visible.&nbsp;  If the layer name is not valid, then this function returns false.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>layername</td><td class=CDLDescription>the name of the layer which you want to query.</td></tr></table><h4 class=CHeading>Returns</h4><p>The visibility state of the layer, or false if the layer name was invalid.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="setLayerVisibility"></a>setLayerVisibility</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setLayerVisibility = function(</td><td class=PParameter nowrap>layername,</td></tr><tr><td></td><td class=PParameter nowrap>bVisible</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the visibility of the layer.&nbsp; If the layer name is not valid, this function return false, otherwise it returns true.&nbsp; This is an undo-able action.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>layername</td><td class=CDLDescription>the name of the layer to change the visibility</td></tr><tr><td class=CDLEntry>bVisible</td><td class=CDLDescription>true/false, whether the layer should be visible</td></tr></table><h4 class=CHeading>Returns</h4><p>true if the layer&rsquo;s visibility was set, false otherwise</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="moveSelectedToLayer"></a>moveSelectedToLayer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveSelectedToLayer = function(</td><td class=PParameter nowrap>layername</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Moves the selected elements to layername.&nbsp; If the name is not a valid layer name, then false is returned.&nbsp;  Otherwise it returns true.&nbsp; This is an undo-able action.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>layername</td><td class=CDLDescription>the name of the layer you want to which you want to move the selected elements</td></tr></table><h4 class=CHeading>Returns</h4><p>true if the selected elements were moved to the layer, false otherwise.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="getLayerOpacity"></a>getLayerOpacity</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.getLayerOpacity = function(</td><td class=PParameter nowrap>layername</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the opacity of the given layer.&nbsp;  If the input name is not a layer, null is returned.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>layername</td><td class=CDLDescription>name of the layer on which to get the opacity</td></tr></table><h4 class=CHeading>Returns</h4><p>The opacity value of the given layer.&nbsp;  This will be a value between 0.0 and 1.0, or null if layername is not a valid layer</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="setLayerOpacity"></a>setLayerOpacity</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setLayerOpacity = function(</td><td class=PParameter nowrap>layername,</td></tr><tr><td></td><td class=PParameter nowrap>opacity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the opacity of the given layer.&nbsp;  If the input name is not a layer, nothing happens.&nbsp; This is not an undo-able action.&nbsp;  NOTE: this function exists solely to apply a highlighting/de-emphasis effect to a layer, when it is possible for a user to affect the opacity of a layer, we will need to allow this function to produce an undo-able action.&nbsp; If opacity is not a value between 0.0 and 1.0, then nothing happens.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>layername</td><td class=CDLDescription>name of the layer on which to set the opacity</td></tr><tr><td class=CDLEntry>opacity</td><td class=CDLDescription>a float value in the range 0.0-1.0</td></tr></table></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="clear"></a>clear</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clear = function()</td></tr></table></blockquote><p>Clears the current document.&nbsp;  This is not an undoable action.</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Fill_and_Stroke"></a>Fill and Stroke</h3></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MFile id=MSelected>svgcanvas.js</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Index</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value="Files">Files</option><option value="Functions">Functions</option></select></div></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clearSelection = function()</td></tr></table></blockquote>Clears the selection. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.addToSelection = function(</td><td class=PParameter nowrap>elemsToAdd,</td></tr><tr><td></td><td class=PParameter nowrap>showGrips</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Adds a list of elements to the selection. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.removeFromSelection = function(</td><td class=PParameter nowrap>elemsToRemove</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Removes elements from the selection.</div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.open = function(</td><td class=PParameter nowrap>str</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Calls the &lsquo;opened&rsquo; handler and sends the SVG XML text. </div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.save = function()</td></tr></table></blockquote>Serializes the current drawing into SVG XML text and returns it to the &lsquo;saved&rsquo; handler. </div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.getSvgString = function()</td></tr></table></blockquote>Returns the current drawing as raw SVG XML text.</div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setSvgString = function(</td><td class=PParameter nowrap>xmlString</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>This function sets the current drawing as the input SVG XML.</div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.createLayer = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Creates a new top-level layer in the drawing with the given name, sets the current layer to it, and then clears the selection  This function then calls the &lsquo;changed&rsquo; handler. </div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.deleteCurrentLayer = function()</td></tr></table></blockquote>Deletes the current layer from the drawing and then clears the selection. </div></div><div class=CToolTip id="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.getNumLayers = function()</td></tr></table></blockquote>Returns the number of layers in the current drawing.</div></div><div class=CToolTip id="tt11"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.getLayer = function(</td><td class=PParameter nowrap>i</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns the name of the ith layer. </div></div><div class=CToolTip id="tt12"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.getCurrentLayer = function()</td></tr></table></blockquote>Returns the name of the currently selected layer. </div></div><div class=CToolTip id="tt13"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setCurrentLayer = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the current layer. </div></div><div class=CToolTip id="tt14"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.renameCurrentLayer = function(</td><td class=PParameter nowrap>newname</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Renames the current layer. </div></div><div class=CToolTip id="tt15"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setCurrentLayerPosition = function(</td><td class=PParameter nowrap>newpos</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Changes the position of the current layer to the new value. </div></div><div class=CToolTip id="tt16"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.getLayerVisibility = function(</td><td class=PParameter nowrap>layername</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns whether the layer is visible. </div></div><div class=CToolTip id="tt17"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setLayerVisibility = function(</td><td class=PParameter nowrap>layername,</td></tr><tr><td></td><td class=PParameter nowrap>bVisible</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the visibility of the layer. </div></div><div class=CToolTip id="tt18"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveSelectedToLayer = function(</td><td class=PParameter nowrap>layername</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Moves the selected elements to layername. </div></div><div class=CToolTip id="tt19"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.getLayerOpacity = function(</td><td class=PParameter nowrap>layername</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns the opacity of the given layer. </div></div><div class=CToolTip id="tt20"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setLayerOpacity = function(</td><td class=PParameter nowrap>layername,</td></tr><tr><td></td><td class=PParameter nowrap>opacity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the opacity of the given layer. </div></div><div class=CToolTip id="tt21"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clear = function()</td></tr></table></blockquote>Clears the current document. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/index.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-<html><head><meta http-equiv="Refresh" CONTENT="0; URL=files/svgcanvas-js.html"></head></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/index/Files.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>File Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=IPageTitle>File Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; A &middot; B &middot; C &middot; D &middot; E &middot; F &middot; G &middot; H &middot; I &middot; J &middot; K &middot; L &middot; M &middot; N &middot; O &middot; P &middot; Q &middot; R &middot; <a href="#S">S</a> &middot; T &middot; U &middot; V &middot; W &middot; X &middot; Y &middot; Z</div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="S"></a>S</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#svgcanvas.js"  class=ISymbol>svgcanvas.js</a></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MFile><a href="../files/svgcanvas-js.html">svgcanvas.js</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Index</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Files</div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value="Files">Files</option><option value="Functions">Functions</option></select></div></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/index/Functions.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Function Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="#A">A</a> &middot; B &middot; <a href="#C">C</a> &middot; <a href="#D">D</a> &middot; E &middot; F &middot; <a href="#G">G</a> &middot; H &middot; I &middot; J &middot; K &middot; L &middot; <a href="#M">M</a> &middot; N &middot; <a href="#O">O</a> &middot; P &middot; Q &middot; <a href="#R">R</a> &middot; <a href="#S">S</a> &middot; T &middot; U &middot; V &middot; W &middot; X &middot; Y &middot; Z</div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="A"></a>A</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#addToSelection" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>addToSelection</a></td></tr><tr><td class=IHeading><a name="C"></a>C</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#clear" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>clear</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#clearSelection" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=ISymbol>clearSelection</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#createLayer" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')" class=ISymbol>createLayer</a></td></tr><tr><td class=IHeading><a name="D"></a>D</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#deleteCurrentLayer" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')" class=ISymbol>deleteCurrentLayer</a></td></tr><tr><td class=IHeading><a name="G"></a>G</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#getCurrentLayer" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')" class=ISymbol>getCurrentLayer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#getLayer" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')" class=ISymbol>getLayer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#getLayerOpacity" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')" class=ISymbol>getLayerOpacity</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#getLayerVisibility" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')" class=ISymbol>getLayerVisibility</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#getNumLayers" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')" class=ISymbol>getNumLayers</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#getSvgString" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')" class=ISymbol>getSvgString</a></td></tr><tr><td class=IHeading><a name="M"></a>M</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#moveSelectedToLayer" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')" class=ISymbol>moveSelectedToLayer</a></td></tr><tr><td class=IHeading><a name="O"></a>O</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#open" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')" class=ISymbol>open</a></td></tr><tr><td class=IHeading><a name="R"></a>R</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#removeFromSelection" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')" class=ISymbol>removeFromSelection</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#renameCurrentLayer" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')" class=ISymbol>renameCurrentLayer</a></td></tr><tr><td class=IHeading><a name="S"></a>S</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#save" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')" class=ISymbol>save</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#setCurrentLayer" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')" class=ISymbol>setCurrentLayer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#setCurrentLayerPosition" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')" class=ISymbol>setCurrentLayerPosition</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#setLayerOpacity" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')" class=ISymbol>setLayerOpacity</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#setLayerVisibility" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')" class=ISymbol>setLayerVisibility</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#setSvgString" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')" class=ISymbol>setSvgString</a></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.addToSelection = function(</td><td class=PParameter nowrap>elemsToAdd,</td></tr><tr><td></td><td class=PParameter nowrap>showGrips</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Adds a list of elements to the selection. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clear = function()</td></tr></table></blockquote>Clears the current document. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clearSelection = function()</td></tr></table></blockquote>Clears the selection. </div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.createLayer = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Creates a new top-level layer in the drawing with the given name, sets the current layer to it, and then clears the selection  This function then calls the &lsquo;changed&rsquo; handler. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.deleteCurrentLayer = function()</td></tr></table></blockquote>Deletes the current layer from the drawing and then clears the selection. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.getCurrentLayer = function()</td></tr></table></blockquote>Returns the name of the currently selected layer. </div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.getLayer = function(</td><td class=PParameter nowrap>i</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns the name of the ith layer. </div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.getLayerOpacity = function(</td><td class=PParameter nowrap>layername</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns the opacity of the given layer. </div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.getLayerVisibility = function(</td><td class=PParameter nowrap>layername</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns whether the layer is visible. </div></div><div class=CToolTip id="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.getNumLayers = function()</td></tr></table></blockquote>Returns the number of layers in the current drawing.</div></div><div class=CToolTip id="tt11"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.getSvgString = function()</td></tr></table></blockquote>Returns the current drawing as raw SVG XML text.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt12"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveSelectedToLayer = function(</td><td class=PParameter nowrap>layername</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Moves the selected elements to layername. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt13"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.open = function(</td><td class=PParameter nowrap>str</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Calls the &lsquo;opened&rsquo; handler and sends the SVG XML text. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt14"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.removeFromSelection = function(</td><td class=PParameter nowrap>elemsToRemove</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Removes elements from the selection.</div></div><div class=CToolTip id="tt15"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.renameCurrentLayer = function(</td><td class=PParameter nowrap>newname</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Renames the current layer. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt16"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.save = function()</td></tr></table></blockquote>Serializes the current drawing into SVG XML text and returns it to the &lsquo;saved&rsquo; handler. </div></div><div class=CToolTip id="tt17"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setCurrentLayer = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the current layer. </div></div><div class=CToolTip id="tt18"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setCurrentLayerPosition = function(</td><td class=PParameter nowrap>newpos</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Changes the position of the current layer to the new value. </div></div><div class=CToolTip id="tt19"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setLayerOpacity = function(</td><td class=PParameter nowrap>layername,</td></tr><tr><td></td><td class=PParameter nowrap>opacity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the opacity of the given layer. </div></div><div class=CToolTip id="tt20"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setLayerVisibility = function(</td><td class=PParameter nowrap>layername,</td></tr><tr><td></td><td class=PParameter nowrap>bVisible</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the visibility of the layer. </div></div><div class=CToolTip id="tt21"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setSvgString = function(</td><td class=PParameter nowrap>xmlString</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>This function sets the current drawing as the input SVG XML.</div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MFile><a href="../files/svgcanvas-js.html">svgcanvas.js</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Index</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Functions</div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value="Files">Files</option><option value="Functions">Functions</option></select></div></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/index/General.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,69 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="#A">A</a> &middot; B &middot; <a href="#C">C</a> &middot; <a href="#D">D</a> &middot; E &middot; <a href="#F">F</a> &middot; <a href="#G">G</a> &middot; H &middot; I &middot; J &middot; K &middot; <a href="#L">L</a> &middot; <a href="#M">M</a> &middot; N &middot; <a href="#O">O</a> &middot; P &middot; Q &middot; <a href="#R">R</a> &middot; <a href="#S">S</a> &middot; T &middot; U &middot; V &middot; W &middot; X &middot; Y &middot; Z</div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="A"></a>A</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#addToSelection" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>addToSelection</a></td></tr><tr><td class=IHeading><a name="C"></a>C</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#clear" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>clear</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#clearSelection" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=ISymbol>clearSelection</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#createLayer" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')" class=ISymbol>createLayer</a></td></tr><tr><td class=IHeading><a name="D"></a>D</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#deleteCurrentLayer" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')" class=ISymbol>deleteCurrentLayer</a></td></tr><tr><td class=IHeading><a name="F"></a>F</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#Fill_and_Stroke"  class=ISymbol>Fill and Stroke</a></td></tr><tr><td class=IHeading><a name="G"></a>G</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#getCurrentLayer" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')" class=ISymbol>getCurrentLayer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#getLayer" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')" class=ISymbol>getLayer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#getLayerOpacity" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')" class=ISymbol>getLayerOpacity</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#getLayerVisibility" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')" class=ISymbol>getLayerVisibility</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#getNumLayers" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')" class=ISymbol>getNumLayers</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#getSvgString" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')" class=ISymbol>getSvgString</a></td></tr><tr><td class=IHeading><a name="L"></a>L</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#Layers"  class=ISymbol>Layers</a></td></tr><tr><td class=IHeading><a name="M"></a>M</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#moveSelectedToLayer" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')" class=ISymbol>moveSelectedToLayer</a></td></tr><tr><td class=IHeading><a name="O"></a>O</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#open" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')" class=ISymbol>open</a></td></tr><tr><td class=IHeading><a name="R"></a>R</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#removeFromSelection" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')" class=ISymbol>removeFromSelection</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#renameCurrentLayer" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')" class=ISymbol>renameCurrentLayer</a></td></tr><tr><td class=IHeading><a name="S"></a>S</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#save" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')" class=ISymbol>save</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#Selection"  class=ISymbol>Selection</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#Serialization"  class=ISymbol>Serialization</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#setCurrentLayer" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')" class=ISymbol>setCurrentLayer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#setCurrentLayerPosition" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')" class=ISymbol>setCurrentLayerPosition</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#setLayerOpacity" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')" class=ISymbol>setLayerOpacity</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#setLayerVisibility" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')" class=ISymbol>setLayerVisibility</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#setSvgString" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')" class=ISymbol>setSvgString</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/svgcanvas-js.html#svgcanvas.js"  class=ISymbol>svgcanvas.js</a></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.addToSelection = function(</td><td class=PParameter nowrap>elemsToAdd,</td></tr><tr><td></td><td class=PParameter nowrap>showGrips</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Adds a list of elements to the selection. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clear = function()</td></tr></table></blockquote>Clears the current document. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clearSelection = function()</td></tr></table></blockquote>Clears the selection. </div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.createLayer = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Creates a new top-level layer in the drawing with the given name, sets the current layer to it, and then clears the selection  This function then calls the &lsquo;changed&rsquo; handler. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.deleteCurrentLayer = function()</td></tr></table></blockquote>Deletes the current layer from the drawing and then clears the selection. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.getCurrentLayer = function()</td></tr></table></blockquote>Returns the name of the currently selected layer. </div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.getLayer = function(</td><td class=PParameter nowrap>i</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns the name of the ith layer. </div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.getLayerOpacity = function(</td><td class=PParameter nowrap>layername</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns the opacity of the given layer. </div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.getLayerVisibility = function(</td><td class=PParameter nowrap>layername</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns whether the layer is visible. </div></div><div class=CToolTip id="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.getNumLayers = function()</td></tr></table></blockquote>Returns the number of layers in the current drawing.</div></div><div class=CToolTip id="tt11"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.getSvgString = function()</td></tr></table></blockquote>Returns the current drawing as raw SVG XML text.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt12"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveSelectedToLayer = function(</td><td class=PParameter nowrap>layername</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Moves the selected elements to layername. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt13"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.open = function(</td><td class=PParameter nowrap>str</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Calls the &lsquo;opened&rsquo; handler and sends the SVG XML text. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt14"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.removeFromSelection = function(</td><td class=PParameter nowrap>elemsToRemove</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Removes elements from the selection.</div></div><div class=CToolTip id="tt15"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.renameCurrentLayer = function(</td><td class=PParameter nowrap>newname</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Renames the current layer. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt16"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.save = function()</td></tr></table></blockquote>Serializes the current drawing into SVG XML text and returns it to the &lsquo;saved&rsquo; handler. </div></div><div class=CToolTip id="tt17"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setCurrentLayer = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the current layer. </div></div><div class=CToolTip id="tt18"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setCurrentLayerPosition = function(</td><td class=PParameter nowrap>newpos</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Changes the position of the current layer to the new value. </div></div><div class=CToolTip id="tt19"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setLayerOpacity = function(</td><td class=PParameter nowrap>layername,</td></tr><tr><td></td><td class=PParameter nowrap>opacity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the opacity of the given layer. </div></div><div class=CToolTip id="tt20"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setLayerVisibility = function(</td><td class=PParameter nowrap>layername,</td></tr><tr><td></td><td class=PParameter nowrap>bVisible</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the visibility of the layer. </div></div><div class=CToolTip id="tt21"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.setSvgString = function(</td><td class=PParameter nowrap>xmlString</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>This function sets the current drawing as the input SVG XML.</div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MFile><a href="../files/svgcanvas-js.html">svgcanvas.js</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Index</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MIndex id=MSelected>Everything</div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value="Files">Files</option><option value="Functions">Functions</option></select></div></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/javascript/main.js	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,836 +0,0 @@
-// This file is part of Natural Docs, which is Copyright (C) 2003-2008 Greg Valure
-// Natural Docs is licensed under the GPL
-
-
-//
-//  Browser Styles
-// ____________________________________________________________________________
-
-var agt=navigator.userAgent.toLowerCase();
-var browserType;
-var browserVer;
-
-if (agt.indexOf("opera") != -1)
-    {
-    browserType = "Opera";
-
-    if (agt.indexOf("opera 7") != -1 || agt.indexOf("opera/7") != -1)
-        {  browserVer = "Opera7";  }
-    else if (agt.indexOf("opera 8") != -1 || agt.indexOf("opera/8") != -1)
-        {  browserVer = "Opera8";  }
-    else if (agt.indexOf("opera 9") != -1 || agt.indexOf("opera/9") != -1)
-        {  browserVer = "Opera9";  }
-    }
-
-else if (agt.indexOf("applewebkit") != -1)
-    {
-    browserType = "Safari";
-
-    if (agt.indexOf("version/3") != -1)
-        {  browserVer = "Safari3";  }
-    else if (agt.indexOf("safari/4") != -1)
-        {  browserVer = "Safari2";  }
-    }
-
-else if (agt.indexOf("khtml") != -1)
-    {
-    browserType = "Konqueror";
-    }
-
-else if (agt.indexOf("msie") != -1)
-    {
-    browserType = "IE";
-
-    if (agt.indexOf("msie 6") != -1)
-        {  browserVer = "IE6";  }
-    else if (agt.indexOf("msie 7") != -1)
-        {  browserVer = "IE7";  }
-    }
-
-else if (agt.indexOf("gecko") != -1)
-    {
-    browserType = "Firefox";
-
-    if (agt.indexOf("rv:1.7") != -1)
-        {  browserVer = "Firefox1";  }
-    else if (agt.indexOf("rv:1.8)") != -1 || agt.indexOf("rv:1.8.0") != -1)
-        {  browserVer = "Firefox15";  }
-    else if (agt.indexOf("rv:1.8.1") != -1)
-        {  browserVer = "Firefox2";  }
-    }
-
-
-//
-//  Support Functions
-// ____________________________________________________________________________
-
-
-function GetXPosition(item)
-    {
-    var position = 0;
-
-    if (item.offsetWidth != null)
-        {
-        while (item != document.body && item != null)
-            {
-            position += item.offsetLeft;
-            item = item.offsetParent;
-            };
-        };
-
-    return position;
-    };
-
-
-function GetYPosition(item)
-    {
-    var position = 0;
-
-    if (item.offsetWidth != null)
-        {
-        while (item != document.body && item != null)
-            {
-            position += item.offsetTop;
-            item = item.offsetParent;
-            };
-        };
-
-    return position;
-    };
-
-
-function MoveToPosition(item, x, y)
-    {
-    // Opera 5 chokes on the px extension, so it can use the Microsoft one instead.
-
-    if (item.style.left != null)
-        {
-        item.style.left = x + "px";
-        item.style.top = y + "px";
-        }
-    else if (item.style.pixelLeft != null)
-        {
-        item.style.pixelLeft = x;
-        item.style.pixelTop = y;
-        };
-    };
-
-
-//
-//  Menu
-// ____________________________________________________________________________
-
-
-function ToggleMenu(id)
-    {
-    if (!window.document.getElementById)
-        {  return;  };
-
-    var display = window.document.getElementById(id).style.display;
-
-    if (display == "none")
-        {  display = "block";  }
-    else
-        {  display = "none";  }
-
-    window.document.getElementById(id).style.display = display;
-    }
-
-function HideAllBut(ids, max)
-    {
-    if (document.getElementById)
-        {
-        ids.sort( function(a,b) { return a - b; } );
-        var number = 1;
-
-        while (number < max)
-            {
-            if (ids.length > 0 && number == ids[0])
-                {  ids.shift();  }
-            else
-                {
-                document.getElementById("MGroupContent" + number).style.display = "none";
-                };
-
-            number++;
-            };
-        };
-    }
-
-
-//
-//  Tooltips
-// ____________________________________________________________________________
-
-
-var tooltipTimer = 0;
-
-function ShowTip(event, tooltipID, linkID)
-    {
-    if (tooltipTimer)
-        {  clearTimeout(tooltipTimer);  };
-
-    var docX = event.clientX + window.pageXOffset;
-    var docY = event.clientY + window.pageYOffset;
-
-    var showCommand = "ReallyShowTip('" + tooltipID + "', '" + linkID + "', " + docX + ", " + docY + ")";
-
-    tooltipTimer = setTimeout(showCommand, 1000);
-    }
-
-function ReallyShowTip(tooltipID, linkID, docX, docY)
-    {
-    tooltipTimer = 0;
-
-    var tooltip;
-    var link;
-
-    if (document.getElementById)
-        {
-        tooltip = document.getElementById(tooltipID);
-        link = document.getElementById(linkID);
-        }
-/*    else if (document.all)
-        {
-        tooltip = eval("document.all['" + tooltipID + "']");
-        link = eval("document.all['" + linkID + "']");
-        }
-*/
-    if (tooltip)
-        {
-        var left = GetXPosition(link);
-        var top = GetYPosition(link);
-        top += link.offsetHeight;
-
-
-        // The fallback method is to use the mouse X and Y relative to the document.  We use a separate if and test if its a number
-        // in case some browser snuck through the above if statement but didn't support everything.
-
-        if (!isFinite(top) || top == 0)
-            {
-            left = docX;
-            top = docY;
-            }
-
-        // Some spacing to get it out from under the cursor.
-
-        top += 10;
-
-        // Make sure the tooltip doesnt get smushed by being too close to the edge, or in some browsers, go off the edge of the
-        // page.  We do it here because Konqueror does get offsetWidth right even if it doesnt get the positioning right.
-
-        if (tooltip.offsetWidth != null)
-            {
-            var width = tooltip.offsetWidth;
-            var docWidth = document.body.clientWidth;
-
-            if (left + width > docWidth)
-                {  left = docWidth - width - 1;  }
-
-            // If there's a horizontal scroll bar we could go past zero because it's using the page width, not the window width.
-            if (left < 0)
-                {  left = 0;  };
-            }
-
-        MoveToPosition(tooltip, left, top);
-        tooltip.style.visibility = "visible";
-        }
-    }
-
-function HideTip(tooltipID)
-    {
-    if (tooltipTimer)
-        {
-        clearTimeout(tooltipTimer);
-        tooltipTimer = 0;
-        }
-
-    var tooltip;
-
-    if (document.getElementById)
-        {  tooltip = document.getElementById(tooltipID); }
-    else if (document.all)
-        {  tooltip = eval("document.all['" + tooltipID + "']");  }
-
-    if (tooltip)
-        {  tooltip.style.visibility = "hidden";  }
-    }
-
-
-//
-//  Blockquote fix for IE
-// ____________________________________________________________________________
-
-
-function NDOnLoad()
-    {
-    if (browserVer == "IE6")
-        {
-        var scrollboxes = document.getElementsByTagName('blockquote');
-
-        if (scrollboxes.item(0))
-            {
-            NDDoResize();
-            window.onresize=NDOnResize;
-            };
-        };
-    };
-
-
-var resizeTimer = 0;
-
-function NDOnResize()
-    {
-    if (resizeTimer != 0)
-        {  clearTimeout(resizeTimer);  };
-
-    resizeTimer = setTimeout(NDDoResize, 250);
-    };
-
-
-function NDDoResize()
-    {
-    var scrollboxes = document.getElementsByTagName('blockquote');
-
-    var i;
-    var item;
-
-    i = 0;
-    while (item = scrollboxes.item(i))
-        {
-        item.style.width = 100;
-        i++;
-        };
-
-    i = 0;
-    while (item = scrollboxes.item(i))
-        {
-        item.style.width = item.parentNode.offsetWidth;
-        i++;
-        };
-
-    clearTimeout(resizeTimer);
-    resizeTimer = 0;
-    }
-
-
-
-/* ________________________________________________________________________________________________________
-
-    Class: SearchPanel
-    ________________________________________________________________________________________________________
-
-    A class handling everything associated with the search panel.
-
-    Parameters:
-
-        name - The name of the global variable that will be storing this instance.  Is needed to be able to set timeouts.
-        mode - The mode the search is going to work in.  Pass <NaturalDocs::Builder::Base->CommandLineOption()>, so the
-                   value will be something like "HTML" or "FramedHTML".
-
-    ________________________________________________________________________________________________________
-*/
-
-
-function SearchPanel(name, mode, resultsPath)
-    {
-    if (!name || !mode || !resultsPath)
-        {  alert("Incorrect parameters to SearchPanel.");  };
-
-
-    // Group: Variables
-    // ________________________________________________________________________
-
-    /*
-        var: name
-        The name of the global variable that will be storing this instance of the class.
-    */
-    this.name = name;
-
-    /*
-        var: mode
-        The mode the search is going to work in, such as "HTML" or "FramedHTML".
-    */
-    this.mode = mode;
-
-    /*
-        var: resultsPath
-        The relative path from the current HTML page to the results page directory.
-    */
-    this.resultsPath = resultsPath;
-
-    /*
-        var: keyTimeout
-        The timeout used between a keystroke and when a search is performed.
-    */
-    this.keyTimeout = 0;
-
-    /*
-        var: keyTimeoutLength
-        The length of <keyTimeout> in thousandths of a second.
-    */
-    this.keyTimeoutLength = 500;
-
-    /*
-        var: lastSearchValue
-        The last search string executed, or an empty string if none.
-    */
-    this.lastSearchValue = "";
-
-    /*
-        var: lastResultsPage
-        The last results page.  The value is only relevant if <lastSearchValue> is set.
-    */
-    this.lastResultsPage = "";
-
-    /*
-        var: deactivateTimeout
-
-        The timeout used between when a control is deactivated and when the entire panel is deactivated.  Is necessary
-        because a control may be deactivated in favor of another control in the same panel, in which case it should stay
-        active.
-    */
-    this.deactivateTimout = 0;
-
-    /*
-        var: deactivateTimeoutLength
-        The length of <deactivateTimeout> in thousandths of a second.
-    */
-    this.deactivateTimeoutLength = 200;
-
-
-
-
-    // Group: DOM Elements
-    // ________________________________________________________________________
-
-
-    // Function: DOMSearchField
-    this.DOMSearchField = function()
-        {  return document.getElementById("MSearchField");  };
-
-    // Function: DOMSearchType
-    this.DOMSearchType = function()
-        {  return document.getElementById("MSearchType");  };
-
-    // Function: DOMPopupSearchResults
-    this.DOMPopupSearchResults = function()
-        {  return document.getElementById("MSearchResults");  };
-
-    // Function: DOMPopupSearchResultsWindow
-    this.DOMPopupSearchResultsWindow = function()
-        {  return document.getElementById("MSearchResultsWindow");  };
-
-    // Function: DOMSearchPanel
-    this.DOMSearchPanel = function()
-        {  return document.getElementById("MSearchPanel");  };
-
-
-
-
-    // Group: Event Handlers
-    // ________________________________________________________________________
-
-
-    /*
-        Function: OnSearchFieldFocus
-        Called when focus is added or removed from the search field.
-    */
-    this.OnSearchFieldFocus = function(isActive)
-        {
-        this.Activate(isActive);
-        };
-
-
-    /*
-        Function: OnSearchFieldChange
-        Called when the content of the search field is changed.
-    */
-    this.OnSearchFieldChange = function()
-        {
-        if (this.keyTimeout)
-            {
-            clearTimeout(this.keyTimeout);
-            this.keyTimeout = 0;
-            };
-
-        var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
-
-        if (searchValue != this.lastSearchValue)
-            {
-            if (searchValue != "")
-                {
-                this.keyTimeout = setTimeout(this.name + ".Search()", this.keyTimeoutLength);
-                }
-            else
-                {
-                if (this.mode == "HTML")
-                    {  this.DOMPopupSearchResultsWindow().style.display = "none";  };
-                this.lastSearchValue = "";
-                };
-            };
-        };
-
-
-    /*
-        Function: OnSearchTypeFocus
-        Called when focus is added or removed from the search type.
-    */
-    this.OnSearchTypeFocus = function(isActive)
-        {
-        this.Activate(isActive);
-        };
-
-
-    /*
-        Function: OnSearchTypeChange
-        Called when the search type is changed.
-    */
-    this.OnSearchTypeChange = function()
-        {
-        var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
-
-        if (searchValue != "")
-            {
-            this.Search();
-            };
-        };
-
-
-
-    // Group: Action Functions
-    // ________________________________________________________________________
-
-
-    /*
-        Function: CloseResultsWindow
-        Closes the results window.
-    */
-    this.CloseResultsWindow = function()
-        {
-        this.DOMPopupSearchResultsWindow().style.display = "none";
-        this.Activate(false, true);
-        };
-
-
-    /*
-        Function: Search
-        Performs a search.
-    */
-    this.Search = function()
-        {
-        this.keyTimeout = 0;
-
-        var searchValue = this.DOMSearchField().value.replace(/^ +/, "");
-        var searchTopic = this.DOMSearchType().value;
-
-        var pageExtension = searchValue.substr(0,1);
-
-        if (pageExtension.match(/^[a-z]/i))
-            {  pageExtension = pageExtension.toUpperCase();  }
-        else if (pageExtension.match(/^[0-9]/))
-            {  pageExtension = 'Numbers';  }
-        else
-            {  pageExtension = "Symbols";  };
-
-        var resultsPage;
-        var resultsPageWithSearch;
-        var hasResultsPage;
-
-        // indexSectionsWithContent is defined in searchdata.js
-        if (indexSectionsWithContent[searchTopic][pageExtension] == true)
-            {
-            resultsPage = this.resultsPath + '/' + searchTopic + pageExtension + '.html';
-            resultsPageWithSearch = resultsPage+'?'+escape(searchValue);
-            hasResultsPage = true;
-            }
-        else
-            {
-            resultsPage = this.resultsPath + '/NoResults.html';
-            resultsPageWithSearch = resultsPage;
-            hasResultsPage = false;
-            };
-
-        var resultsFrame;
-        if (this.mode == "HTML")
-            {  resultsFrame = window.frames.MSearchResults;  }
-        else if (this.mode == "FramedHTML")
-            {  resultsFrame = window.top.frames['Content'];  };
-
-
-        if (resultsPage != this.lastResultsPage ||
-
-            // Bug in IE.  If everything becomes hidden in a run, none of them will be able to be reshown in the next for some
-            // reason.  It counts the right number of results, and you can even read the display as "block" after setting it, but it
-            // just doesn't work in IE 6 or IE 7.  So if we're on the right page but the previous search had no results, reload the
-            // page anyway to get around the bug.
-            (browserType == "IE" && hasResultsPage &&
-            	(!resultsFrame.searchResults || resultsFrame.searchResults.lastMatchCount == 0)) )
-
-            {
-            resultsFrame.location.href = resultsPageWithSearch;
-            }
-
-        // So if the results page is right and there's no IE bug, reperform the search on the existing page.  We have to check if there
-        // are results because NoResults.html doesn't have any JavaScript, and it would be useless to do anything on that page even
-        // if it did.
-        else if (hasResultsPage)
-            {
-            // We need to check if this exists in case the frame is present but didn't finish loading.
-            if (resultsFrame.searchResults)
-                {  resultsFrame.searchResults.Search(searchValue);  }
-
-            // Otherwise just reload instead of waiting.
-            else
-                {  resultsFrame.location.href = resultsPageWithSearch;  };
-            };
-
-
-        var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
-
-        if (this.mode == "HTML" && domPopupSearchResultsWindow.style.display != "block")
-            {
-            var domSearchType = this.DOMSearchType();
-
-            var left = GetXPosition(domSearchType);
-            var top = GetYPosition(domSearchType) + domSearchType.offsetHeight;
-
-            MoveToPosition(domPopupSearchResultsWindow, left, top);
-            domPopupSearchResultsWindow.style.display = 'block';
-            };
-
-
-        this.lastSearchValue = searchValue;
-        this.lastResultsPage = resultsPage;
-        };
-
-
-
-    // Group: Activation Functions
-    // Functions that handle whether the entire panel is active or not.
-    // ________________________________________________________________________
-
-
-    /*
-        Function: Activate
-
-        Activates or deactivates the search panel, resetting things to their default values if necessary.  You can call this on every
-        control's OnBlur() and it will handle not deactivating the entire panel when focus is just switching between them transparently.
-
-        Parameters:
-
-            isActive - Whether you're activating or deactivating the panel.
-            ignoreDeactivateDelay - Set if you're positive the action will deactivate the panel and thus want to skip the delay.
-    */
-    this.Activate = function(isActive, ignoreDeactivateDelay)
-        {
-        // We want to ignore isActive being false while the results window is open.
-        if (isActive || (this.mode == "HTML" && this.DOMPopupSearchResultsWindow().style.display == "block"))
-            {
-            if (this.inactivateTimeout)
-                {
-                clearTimeout(this.inactivateTimeout);
-                this.inactivateTimeout = 0;
-                };
-
-            this.DOMSearchPanel().className = 'MSearchPanelActive';
-
-            var searchField = this.DOMSearchField();
-
-            if (searchField.value == 'Search')
-                 {  searchField.value = "";  }
-            }
-        else if (!ignoreDeactivateDelay)
-            {
-            this.inactivateTimeout = setTimeout(this.name + ".InactivateAfterTimeout()", this.inactivateTimeoutLength);
-            }
-        else
-            {
-            this.InactivateAfterTimeout();
-            };
-        };
-
-
-    /*
-        Function: InactivateAfterTimeout
-
-        Called by <inactivateTimeout>, which is set by <Activate()>.  Inactivation occurs on a timeout because a control may
-        receive OnBlur() when focus is really transferring to another control in the search panel.  In this case we don't want to
-        actually deactivate the panel because not only would that cause a visible flicker but it could also reset the search value.
-        So by doing it on a timeout instead, there's a short period where the second control's OnFocus() can cancel the deactivation.
-    */
-    this.InactivateAfterTimeout = function()
-        {
-        this.inactivateTimeout = 0;
-
-        this.DOMSearchPanel().className = 'MSearchPanelInactive';
-        this.DOMSearchField().value = "Search";
-
-	    this.lastSearchValue = "";
-	    this.lastResultsPage = "";
-        };
-    };
-
-
-
-
-/* ________________________________________________________________________________________________________
-
-   Class: SearchResults
-   _________________________________________________________________________________________________________
-
-   The class that handles everything on the search results page.
-   _________________________________________________________________________________________________________
-*/
-
-
-function SearchResults(name, mode)
-    {
-    /*
-        var: mode
-        The mode the search is going to work in, such as "HTML" or "FramedHTML".
-    */
-    this.mode = mode;
-
-    /*
-        var: lastMatchCount
-        The number of matches from the last run of <Search()>.
-    */
-    this.lastMatchCount = 0;
-
-
-    /*
-        Function: Toggle
-        Toggles the visibility of the passed element ID.
-    */
-    this.Toggle = function(id)
-        {
-        if (this.mode == "FramedHTML")
-            {  return;  };
-
-        var parentElement = document.getElementById(id);
-
-        var element = parentElement.firstChild;
-
-        while (element && element != parentElement)
-            {
-            if (element.nodeName == 'DIV' && element.className == 'ISubIndex')
-                {
-                if (element.style.display == 'block')
-                    {  element.style.display = "none";  }
-                else
-                    {  element.style.display = 'block';  }
-                };
-
-            if (element.nodeName == 'DIV' && element.hasChildNodes())
-                {  element = element.firstChild;  }
-            else if (element.nextSibling)
-                {  element = element.nextSibling;  }
-            else
-                {
-                do
-                    {
-                    element = element.parentNode;
-                    }
-                while (element && element != parentElement && !element.nextSibling);
-
-                if (element && element != parentElement)
-                    {  element = element.nextSibling;  };
-                };
-            };
-        };
-
-
-    /*
-        Function: Search
-
-        Searches for the passed string.  If there is no parameter, it takes it from the URL query.
-
-        Always returns true, since other documents may try to call it and that may or may not be possible.
-    */
-    this.Search = function(search)
-        {
-        if (!search)
-            {
-            search = window.location.search;
-            search = search.substring(1);  // Remove the leading ?
-            search = unescape(search);
-            };
-
-        search = search.replace(/^ +/, "");
-        search = search.replace(/ +$/, "");
-        search = search.toLowerCase();
-
-        if (search.match(/[^a-z0-9]/)) // Just a little speedup so it doesn't have to go through the below unnecessarily.
-            {
-            search = search.replace(/\_/g, "_und");
-            search = search.replace(/\ +/gi, "_spc");
-            search = search.replace(/\~/g, "_til");
-            search = search.replace(/\!/g, "_exc");
-            search = search.replace(/\@/g, "_att");
-            search = search.replace(/\#/g, "_num");
-            search = search.replace(/\$/g, "_dol");
-            search = search.replace(/\%/g, "_pct");
-            search = search.replace(/\^/g, "_car");
-            search = search.replace(/\&/g, "_amp");
-            search = search.replace(/\*/g, "_ast");
-            search = search.replace(/\(/g, "_lpa");
-            search = search.replace(/\)/g, "_rpa");
-            search = search.replace(/\-/g, "_min");
-            search = search.replace(/\+/g, "_plu");
-            search = search.replace(/\=/g, "_equ");
-            search = search.replace(/\{/g, "_lbc");
-            search = search.replace(/\}/g, "_rbc");
-            search = search.replace(/\[/g, "_lbk");
-            search = search.replace(/\]/g, "_rbk");
-            search = search.replace(/\:/g, "_col");
-            search = search.replace(/\;/g, "_sco");
-            search = search.replace(/\"/g, "_quo");
-            search = search.replace(/\'/g, "_apo");
-            search = search.replace(/\</g, "_lan");
-            search = search.replace(/\>/g, "_ran");
-            search = search.replace(/\,/g, "_com");
-            search = search.replace(/\./g, "_per");
-            search = search.replace(/\?/g, "_que");
-            search = search.replace(/\//g, "_sla");
-            search = search.replace(/[^a-z0-9\_]i/gi, "_zzz");
-            };
-
-        var resultRows = document.getElementsByTagName("div");
-        var matches = 0;
-
-        var i = 0;
-        while (i < resultRows.length)
-            {
-            var row = resultRows.item(i);
-
-            if (row.className == "SRResult")
-                {
-                var rowMatchName = row.id.toLowerCase();
-                rowMatchName = rowMatchName.replace(/^sr\d*_/, '');
-
-                if (search.length <= rowMatchName.length && rowMatchName.substr(0, search.length) == search)
-                    {
-                    row.style.display = "block";
-                    matches++;
-                    }
-                else
-                    {  row.style.display = "none";  };
-                };
-
-            i++;
-            };
-
-        document.getElementById("Searching").style.display="none";
-
-        if (matches == 0)
-            {  document.getElementById("NoMatches").style.display="block";  }
-        else
-            {  document.getElementById("NoMatches").style.display="none";  }
-
-        this.lastMatchCount = matches;
-
-        return true;
-        };
-    };
-
--- a/htdocs/svg-edit/docs/javascript/searchdata.js	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,92 +0,0 @@
-var indexSectionsWithContent = {
-   "General": {
-      "Symbols": false,
-      "Numbers": false,
-      "A": false,
-      "B": false,
-      "C": true,
-      "D": true,
-      "E": false,
-      "F": true,
-      "G": true,
-      "H": false,
-      "I": false,
-      "J": false,
-      "K": false,
-      "L": false,
-      "M": false,
-      "N": false,
-      "O": false,
-      "P": false,
-      "Q": false,
-      "R": false,
-      "S": true,
-      "T": false,
-      "U": false,
-      "V": false,
-      "W": false,
-      "X": false,
-      "Y": false,
-      "Z": false
-      },
-   "Functions": {
-      "Symbols": false,
-      "Numbers": false,
-      "A": true,
-      "B": false,
-      "C": true,
-      "D": true,
-      "E": false,
-      "F": false,
-      "G": true,
-      "H": false,
-      "I": false,
-      "J": false,
-      "K": false,
-      "L": false,
-      "M": true,
-      "N": false,
-      "O": true,
-      "P": false,
-      "Q": false,
-      "R": true,
-      "S": true,
-      "T": false,
-      "U": false,
-      "V": false,
-      "W": false,
-      "X": false,
-      "Y": false,
-      "Z": false
-      },
-   "Files": {
-      "Symbols": false,
-      "Numbers": false,
-      "A": false,
-      "B": false,
-      "C": false,
-      "D": false,
-      "E": false,
-      "F": false,
-      "G": false,
-      "H": false,
-      "I": false,
-      "J": false,
-      "K": false,
-      "L": false,
-      "M": false,
-      "N": false,
-      "O": false,
-      "P": false,
-      "Q": false,
-      "R": false,
-      "S": true,
-      "T": false,
-      "U": false,
-      "V": false,
-      "W": false,
-      "X": false,
-      "Y": false,
-      "Z": false
-      }
-   }
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/FilesS.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_svgcanvas_perjs><div class=IEntry><a href="../files/svgcanvas-js.html#svgcanvas.js" target=_parent class=ISymbol>svgcanvas.js</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/FunctionsA.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_addToSelection><div class=IEntry><a href="../files/svgcanvas-js.html#addToSelection" target=_parent class=ISymbol>addToSelection</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/FunctionsC.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_clear><div class=IEntry><a href="../files/svgcanvas-js.html#clear" target=_parent class=ISymbol>clear</a></div></div><div class=SRResult id=SR_clearSelection><div class=IEntry><a href="../files/svgcanvas-js.html#clearSelection" target=_parent class=ISymbol>clearSelection</a></div></div><div class=SRResult id=SR_createLayer><div class=IEntry><a href="../files/svgcanvas-js.html#createLayer" target=_parent class=ISymbol>createLayer</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/FunctionsD.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_deleteCurrentLayer><div class=IEntry><a href="../files/svgcanvas-js.html#deleteCurrentLayer" target=_parent class=ISymbol>deleteCurrentLayer</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/FunctionsG.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_getCurrentLayer><div class=IEntry><a href="../files/svgcanvas-js.html#getCurrentLayer" target=_parent class=ISymbol>getCurrentLayer</a></div></div><div class=SRResult id=SR_getLayer><div class=IEntry><a href="../files/svgcanvas-js.html#getLayer" target=_parent class=ISymbol>getLayer</a></div></div><div class=SRResult id=SR_getLayerOpacity><div class=IEntry><a href="../files/svgcanvas-js.html#getLayerOpacity" target=_parent class=ISymbol>getLayerOpacity</a></div></div><div class=SRResult id=SR_getLayerVisibility><div class=IEntry><a href="../files/svgcanvas-js.html#getLayerVisibility" target=_parent class=ISymbol>getLayerVisibility</a></div></div><div class=SRResult id=SR_getNumLayers><div class=IEntry><a href="../files/svgcanvas-js.html#getNumLayers" target=_parent class=ISymbol>getNumLayers</a></div></div><div class=SRResult id=SR_getSvgString><div class=IEntry><a href="../files/svgcanvas-js.html#getSvgString" target=_parent class=ISymbol>getSvgString</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/FunctionsM.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_moveSelectedToLayer><div class=IEntry><a href="../files/svgcanvas-js.html#moveSelectedToLayer" target=_parent class=ISymbol>moveSelectedToLayer</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/FunctionsO.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_open><div class=IEntry><a href="../files/svgcanvas-js.html#open" target=_parent class=ISymbol>open</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/FunctionsR.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_removeFromSelection><div class=IEntry><a href="../files/svgcanvas-js.html#removeFromSelection" target=_parent class=ISymbol>removeFromSelection</a></div></div><div class=SRResult id=SR_renameCurrentLayer><div class=IEntry><a href="../files/svgcanvas-js.html#renameCurrentLayer" target=_parent class=ISymbol>renameCurrentLayer</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/FunctionsS.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_save><div class=IEntry><a href="../files/svgcanvas-js.html#save" target=_parent class=ISymbol>save</a></div></div><div class=SRResult id=SR_setCurrentLayer><div class=IEntry><a href="../files/svgcanvas-js.html#setCurrentLayer" target=_parent class=ISymbol>setCurrentLayer</a></div></div><div class=SRResult id=SR_setCurrentLayerPosition><div class=IEntry><a href="../files/svgcanvas-js.html#setCurrentLayerPosition" target=_parent class=ISymbol>setCurrentLayerPosition</a></div></div><div class=SRResult id=SR_setLayerOpacity><div class=IEntry><a href="../files/svgcanvas-js.html#setLayerOpacity" target=_parent class=ISymbol>setLayerOpacity</a></div></div><div class=SRResult id=SR_setLayerVisibility><div class=IEntry><a href="../files/svgcanvas-js.html#setLayerVisibility" target=_parent class=ISymbol>setLayerVisibility</a></div></div><div class=SRResult id=SR_setSvgString><div class=IEntry><a href="../files/svgcanvas-js.html#setSvgString" target=_parent class=ISymbol>setSvgString</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/GeneralA.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_addToSelection><div class=IEntry><a href="../files/svgcanvas-js.html#addToSelection" target=_parent class=ISymbol>addToSelection</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/GeneralC.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_clear><div class=IEntry><a href="../files/svgcanvas-js.html#clear" target=_parent class=ISymbol>clear</a></div></div><div class=SRResult id=SR_clearSelection><div class=IEntry><a href="../files/svgcanvas-js.html#clearSelection" target=_parent class=ISymbol>clearSelection</a></div></div><div class=SRResult id=SR_createLayer><div class=IEntry><a href="../files/svgcanvas-js.html#createLayer" target=_parent class=ISymbol>createLayer</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/GeneralD.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_deleteCurrentLayer><div class=IEntry><a href="../files/svgcanvas-js.html#deleteCurrentLayer" target=_parent class=ISymbol>deleteCurrentLayer</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/GeneralF.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Fill_spcand_spcStroke><div class=IEntry><a href="../files/svgcanvas-js.html#Fill_and_Stroke" target=_parent class=ISymbol>Fill and Stroke</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/GeneralG.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_getCurrentLayer><div class=IEntry><a href="../files/svgcanvas-js.html#getCurrentLayer" target=_parent class=ISymbol>getCurrentLayer</a></div></div><div class=SRResult id=SR_getLayer><div class=IEntry><a href="../files/svgcanvas-js.html#getLayer" target=_parent class=ISymbol>getLayer</a></div></div><div class=SRResult id=SR_getLayerOpacity><div class=IEntry><a href="../files/svgcanvas-js.html#getLayerOpacity" target=_parent class=ISymbol>getLayerOpacity</a></div></div><div class=SRResult id=SR_getLayerVisibility><div class=IEntry><a href="../files/svgcanvas-js.html#getLayerVisibility" target=_parent class=ISymbol>getLayerVisibility</a></div></div><div class=SRResult id=SR_getNumLayers><div class=IEntry><a href="../files/svgcanvas-js.html#getNumLayers" target=_parent class=ISymbol>getNumLayers</a></div></div><div class=SRResult id=SR_getSvgString><div class=IEntry><a href="../files/svgcanvas-js.html#getSvgString" target=_parent class=ISymbol>getSvgString</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/GeneralL.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Layers><div class=IEntry><a href="../files/svgcanvas-js.html#Layers" target=_parent class=ISymbol>Layers</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/GeneralM.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_moveSelectedToLayer><div class=IEntry><a href="../files/svgcanvas-js.html#moveSelectedToLayer" target=_parent class=ISymbol>moveSelectedToLayer</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/GeneralO.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_open><div class=IEntry><a href="../files/svgcanvas-js.html#open" target=_parent class=ISymbol>open</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/GeneralR.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_removeFromSelection><div class=IEntry><a href="../files/svgcanvas-js.html#removeFromSelection" target=_parent class=ISymbol>removeFromSelection</a></div></div><div class=SRResult id=SR_renameCurrentLayer><div class=IEntry><a href="../files/svgcanvas-js.html#renameCurrentLayer" target=_parent class=ISymbol>renameCurrentLayer</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/GeneralS.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_save><div class=IEntry><a href="../files/svgcanvas-js.html#save" target=_parent class=ISymbol>save</a></div></div><div class=SRResult id=SR_Selection><div class=IEntry><a href="../files/svgcanvas-js.html#Selection" target=_parent class=ISymbol>Selection</a></div></div><div class=SRResult id=SR_Serialization><div class=IEntry><a href="../files/svgcanvas-js.html#Serialization" target=_parent class=ISymbol>Serialization</a></div></div><div class=SRResult id=SR_setCurrentLayer><div class=IEntry><a href="../files/svgcanvas-js.html#setCurrentLayer" target=_parent class=ISymbol>setCurrentLayer</a></div></div><div class=SRResult id=SR_setCurrentLayerPosition><div class=IEntry><a href="../files/svgcanvas-js.html#setCurrentLayerPosition" target=_parent class=ISymbol>setCurrentLayerPosition</a></div></div><div class=SRResult id=SR_setLayerOpacity><div class=IEntry><a href="../files/svgcanvas-js.html#setLayerOpacity" target=_parent class=ISymbol>setLayerOpacity</a></div></div><div class=SRResult id=SR_setLayerVisibility><div class=IEntry><a href="../files/svgcanvas-js.html#setLayerVisibility" target=_parent class=ISymbol>setLayerVisibility</a></div></div><div class=SRResult id=SR_setSvgString><div class=IEntry><a href="../files/svgcanvas-js.html#setSvgString" target=_parent class=ISymbol>setSvgString</a></div></div><div class=SRResult id=SR_svgcanvas_perjs><div class=IEntry><a href="../files/svgcanvas-js.html#svgcanvas.js" target=_parent class=ISymbol>svgcanvas.js</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/search/NoResults.html	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!--  Generated by Natural Docs, version 1.4 -->
-<!--  http://www.naturaldocs.org  -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Index><div class=SRStatus id=NoMatches>No Matches</div></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>
\ No newline at end of file
--- a/htdocs/svg-edit/docs/styles/main.css	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,767 +0,0 @@
-/*
-   IMPORTANT: If you're editing this file in the output directory of one of
-   your projects, your changes will be overwritten the next time you run
-   Natural Docs.  Instead, copy this file to your project directory, make your
-   changes, and you can use it with -s.  Even better would be to make a CSS
-   file in your project directory with only your changes, which you can then
-   use with -s [original style] [your changes].
-
-   On the other hand, if you're editing this file in the Natural Docs styles
-   directory, the changes will automatically be applied to all your projects
-   that use this style the next time Natural Docs is run on them.
-
-   This file is part of Natural Docs, which is Copyright (C) 2003-2008 Greg Valure
-   Natural Docs is licensed under the GPL
-*/
-
-body {
-    font: 10pt Verdana, Arial, sans-serif;
-    color: #000000;
-    margin: 0; padding: 0;
-    }
-
-.ContentPage,
-.IndexPage,
-.FramedMenuPage {
-    background-color: #E8E8E8;
-    }
-.FramedContentPage,
-.FramedIndexPage,
-.FramedSearchResultsPage,
-.PopupSearchResultsPage {
-    background-color: #FFFFFF;
-    }
-
-
-a:link,
-a:visited { color: #900000; text-decoration: none }
-a:hover { color: #900000; text-decoration: underline }
-a:active { color: #FF0000; text-decoration: underline }
-
-td {
-    vertical-align: top }
-
-img { border: 0;  }
-
-
-/*
-    Comment out this line to use web-style paragraphs (blank line between
-    paragraphs, no indent) instead of print-style paragraphs (no blank line,
-    indented.)
-*/
-p {
-    text-indent: 5ex; margin: 0 }
-
-
-/*  Opera doesn't break with just wbr, but will if you add this.  */
-.Opera wbr:after {
-	content: "\00200B";
-	}
-
-
-/*  Blockquotes are used as containers for things that may need to scroll.  */
-blockquote {
-    padding: 0;
-    margin: 0;
-    overflow: auto;
-    }
-
-
-.Firefox1 blockquote {
-    padding-bottom: .5em;
-    }
-
-/*  Turn off scrolling when printing.  */
-@media print {
-    blockquote {
-        overflow: visible;
-        }
-    .IE blockquote {
-        width: auto;
-        }
-    }
-
-
-
-#Menu {
-    font-size: 9pt;
-    padding: 10px 0 0 0;
-    }
-.ContentPage #Menu,
-.IndexPage #Menu {
-    position: absolute;
-    top: 0;
-    left: 0;
-    width: 31ex;
-    overflow: hidden;
-    }
-.ContentPage .Firefox #Menu,
-.IndexPage .Firefox #Menu {
-    width: 27ex;
-    }
-
-
-    .MTitle {
-        font-size: 16pt; font-weight: bold; font-variant: small-caps;
-        text-align: center;
-        padding: 5px 10px 15px 10px;
-        border-bottom: 1px dotted #000000;
-        margin-bottom: 15px }
-
-    .MSubTitle {
-        font-size: 9pt; font-weight: normal; font-variant: normal;
-        margin-top: 1ex; margin-bottom: 5px }
-
-
-    .MEntry a:link,
-    .MEntry a:hover,
-    .MEntry a:visited { color: #606060; margin-right: 0 }
-    .MEntry a:active { color: #A00000; margin-right: 0 }
-
-
-    .MGroup {
-        font-variant: small-caps; font-weight: bold;
-        margin: 1em 0 1em 10px;
-        }
-
-    .MGroupContent {
-        font-variant: normal; font-weight: normal }
-
-    .MGroup a:link,
-    .MGroup a:hover,
-    .MGroup a:visited { color: #545454; margin-right: 10px }
-    .MGroup a:active { color: #A00000; margin-right: 10px }
-
-
-    .MFile,
-    .MText,
-    .MLink,
-    .MIndex {
-        padding: 1px 17px 2px 10px;
-        margin: .25em 0 .25em 0;
-        }
-
-    .MText {
-        font-size: 8pt; font-style: italic }
-
-    .MLink {
-        font-style: italic }
-
-    #MSelected {
-        color: #000000; background-color: #FFFFFF;
-        /*  Replace padding with border.  */
-        padding: 0 10px 0 10px;
-        border-width: 1px 2px 2px 0; border-style: solid; border-color: #000000;
-        margin-right: 5px;
-        }
-
-    /*  Close off the left side when its in a group.  */
-    .MGroup #MSelected {
-        padding-left: 9px; border-left-width: 1px }
-
-    /*  A treat for Mozilla users.  Blatantly non-standard.  Will be replaced with CSS 3 attributes when finalized/supported.  */
-    .Firefox #MSelected {
-        -moz-border-radius-topright: 10px;
-        -moz-border-radius-bottomright: 10px }
-    .Firefox .MGroup #MSelected {
-        -moz-border-radius-topleft: 10px;
-        -moz-border-radius-bottomleft: 10px }
-
-
-    #MSearchPanel {
-        padding: 0px 6px;
-        margin: .25em 0;
-        }
-
-
-    #MSearchField {
-        font: italic 9pt Verdana, sans-serif;
-        color: #606060;
-        background-color: #E8E8E8;
-        border: none;
-        padding: 2px 4px;
-        width: 100%;
-        }
-    /* Only Opera gets it right. */
-    .Firefox #MSearchField,
-    .IE #MSearchField,
-    .Safari #MSearchField {
-        width: 94%;
-        }
-    .Opera9 #MSearchField,
-    .Konqueror #MSearchField {
-        width: 97%;
-        }
-    .FramedMenuPage .Firefox #MSearchField,
-    .FramedMenuPage .Safari #MSearchField,
-    .FramedMenuPage .Konqueror #MSearchField {
-        width: 98%;
-        }
-
-    /* Firefox doesn't do this right in frames without #MSearchPanel added on.
-        It's presence doesn't hurt anything other browsers. */
-    #MSearchPanel.MSearchPanelInactive:hover #MSearchField {
-        background-color: #FFFFFF;
-        border: 1px solid #C0C0C0;
-        padding: 1px 3px;
-        }
-    .MSearchPanelActive #MSearchField {
-        background-color: #FFFFFF;
-        border: 1px solid #C0C0C0;
-        font-style: normal;
-        padding: 1px 3px;
-        }
-
-    #MSearchType {
-        visibility: hidden;
-        font: 8pt Verdana, sans-serif;
-        width: 98%;
-        padding: 0;
-        border: 1px solid #C0C0C0;
-        }
-    .MSearchPanelActive #MSearchType,
-    /*  As mentioned above, Firefox doesn't do this right in frames without #MSearchPanel added on. */
-    #MSearchPanel.MSearchPanelInactive:hover #MSearchType,
-    #MSearchType:focus {
-        visibility: visible;
-        color: #606060;
-        }
-    #MSearchType option#MSearchEverything {
-        font-weight: bold;
-        }
-
-    .Opera8 .MSearchPanelInactive:hover,
-    .Opera8 .MSearchPanelActive {
-        margin-left: -1px;
-        }
-
-
-    iframe#MSearchResults {
-        width: 60ex;
-        height: 15em;
-        }
-    #MSearchResultsWindow {
-        display: none;
-        position: absolute;
-        left: 0; top: 0;
-        border: 1px solid #000000;
-        background-color: #E8E8E8;
-        }
-    #MSearchResultsWindowClose {
-        font-weight: bold;
-        font-size: 8pt;
-        display: block;
-        padding: 2px 5px;
-        }
-    #MSearchResultsWindowClose:link,
-    #MSearchResultsWindowClose:visited {
-        color: #000000;
-        text-decoration: none;
-        }
-    #MSearchResultsWindowClose:active,
-    #MSearchResultsWindowClose:hover {
-        color: #800000;
-        text-decoration: none;
-        background-color: #F4F4F4;
-        }
-
-
-
-
-#Content {
-    padding-bottom: 15px;
-    }
-
-.ContentPage #Content {
-    border-width: 0 0 1px 1px;
-    border-style: solid;
-    border-color: #000000;
-    background-color: #FFFFFF;
-    font-size: 9pt;  /* To make 31ex match the menu's 31ex. */
-    margin-left: 31ex;
-    }
-.ContentPage .Firefox #Content {
-    margin-left: 27ex;
-    }
-
-
-
-    .CTopic {
-        font-size: 10pt;
-        margin-bottom: 3em;
-        }
-
-
-    .CTitle {
-        font-size: 12pt; font-weight: bold;
-        border-width: 0 0 1px 0; border-style: solid; border-color: #A0A0A0;
-        margin: 0 15px .5em 15px }
-
-    .CGroup .CTitle {
-        font-size: 16pt; font-variant: small-caps;
-        padding-left: 15px; padding-right: 15px;
-        border-width: 0 0 2px 0; border-color: #000000;
-        margin-left: 0; margin-right: 0 }
-
-    .CClass .CTitle,
-    .CInterface .CTitle,
-    .CDatabase .CTitle,
-    .CDatabaseTable .CTitle,
-    .CSection .CTitle {
-        font-size: 18pt;
-        color: #FFFFFF; background-color: #A0A0A0;
-        padding: 10px 15px 10px 15px;
-        border-width: 2px 0; border-color: #000000;
-        margin-left: 0; margin-right: 0 }
-
-    #MainTopic .CTitle {
-        font-size: 20pt;
-        color: #FFFFFF; background-color: #7070C0;
-        padding: 10px 15px 10px 15px;
-        border-width: 0 0 3px 0; border-color: #000000;
-        margin-left: 0; margin-right: 0 }
-
-    .CBody {
-        margin-left: 15px; margin-right: 15px }
-
-
-    .CToolTip {
-        position: absolute; visibility: hidden;
-        left: 0; top: 0;
-        background-color: #FFFFE0;
-        padding: 5px;
-        border-width: 1px 2px 2px 1px; border-style: solid; border-color: #000000;
-        font-size: 8pt;
-        }
-
-    .Opera .CToolTip {
-        max-width: 98%;
-        }
-
-    /*  Scrollbars would be useless.  */
-    .CToolTip blockquote {
-        overflow: hidden;
-        }
-    .IE6 .CToolTip blockquote {
-        overflow: visible;
-        }
-
-    .CHeading {
-        font-weight: bold; font-size: 10pt;
-        margin: 1.5em 0 .5em 0;
-        }
-
-    .CBody pre {
-        font: 10pt "Courier New", Courier, monospace;
-        margin: 1em 0;
-        }
-
-    .CBody ul {
-        /*  I don't know why CBody's margin doesn't apply, but it's consistent across browsers so whatever.
-             Reapply it here as padding.  */
-        padding-left: 15px; padding-right: 15px;
-        margin: .5em 5ex .5em 5ex;
-        }
-
-    .CDescriptionList {
-        margin: .5em 5ex 0 5ex }
-
-        .CDLEntry {
-            font: 10pt "Courier New", Courier, monospace; color: #808080;
-            padding-bottom: .25em;
-            white-space: nowrap }
-
-        .CDLDescription {
-            font-size: 10pt;  /*  For browsers that don't inherit correctly, like Opera 5.  */
-            padding-bottom: .5em; padding-left: 5ex }
-
-
-    .CTopic img {
-        text-align: center;
-        display: block;
-        margin: 1em auto;
-        }
-    .CImageCaption {
-        font-variant: small-caps;
-        font-size: 8pt;
-        color: #808080;
-        text-align: center;
-        position: relative;
-        top: 1em;
-        }
-
-    .CImageLink {
-        color: #808080;
-        font-style: italic;
-        }
-    a.CImageLink:link,
-    a.CImageLink:visited,
-    a.CImageLink:hover { color: #808080 }
-
-
-
-
-
-.Prototype {
-    font: 10pt "Courier New", Courier, monospace;
-    padding: 5px 3ex;
-    border-width: 1px; border-style: solid;
-    margin: 0 5ex 1.5em 5ex;
-    }
-
-    .Prototype td {
-        font-size: 10pt;
-        }
-
-    .PDefaultValue,
-    .PDefaultValuePrefix,
-    .PTypePrefix {
-        color: #8F8F8F;
-        }
-    .PTypePrefix {
-        text-align: right;
-        }
-    .PAfterParameters {
-        vertical-align: bottom;
-        }
-
-    .IE .Prototype table {
-        padding: 0;
-        }
-
-    .CFunction .Prototype {
-        background-color: #F4F4F4; border-color: #D0D0D0 }
-    .CProperty .Prototype {
-        background-color: #F4F4FF; border-color: #C0C0E8 }
-    .CVariable .Prototype {
-        background-color: #FFFFF0; border-color: #E0E0A0 }
-
-    .CClass .Prototype {
-        border-width: 1px 2px 2px 1px; border-style: solid; border-color: #A0A0A0;
-        background-color: #F4F4F4;
-        }
-    .CInterface .Prototype {
-        border-width: 1px 2px 2px 1px; border-style: solid; border-color: #A0A0D0;
-        background-color: #F4F4FF;
-        }
-
-    .CDatabaseIndex .Prototype,
-    .CConstant .Prototype {
-        background-color: #D0D0D0; border-color: #000000 }
-    .CType .Prototype,
-    .CEnumeration .Prototype {
-        background-color: #FAF0F0; border-color: #E0B0B0;
-        }
-    .CDatabaseTrigger .Prototype,
-    .CEvent .Prototype,
-    .CDelegate .Prototype {
-        background-color: #F0FCF0; border-color: #B8E4B8 }
-
-    .CToolTip .Prototype {
-        margin: 0 0 .5em 0;
-        white-space: nowrap;
-        }
-
-
-
-
-
-.Summary {
-    margin: 1.5em 5ex 0 5ex }
-
-    .STitle {
-        font-size: 12pt; font-weight: bold;
-        margin-bottom: .5em }
-
-
-    .SBorder {
-        background-color: #FFFFF0;
-        padding: 15px;
-        border: 1px solid #C0C060 }
-
-    /* In a frame IE 6 will make them too long unless you set the width to 100%.  Without frames it will be correct without a width
-        or slightly too long (but not enough to scroll) with a width.  This arbitrary weirdness simply astounds me.  IE 7 has the same
-        problem with frames, haven't tested it without.  */
-    .FramedContentPage .IE .SBorder {
-        width: 100% }
-
-    /*  A treat for Mozilla users.  Blatantly non-standard.  Will be replaced with CSS 3 attributes when finalized/supported.  */
-    .Firefox .SBorder {
-        -moz-border-radius: 20px }
-
-
-    .STable {
-        font-size: 9pt; width: 100% }
-
-    .SEntry {
-        width: 30% }
-    .SDescription {
-        width: 70% }
-
-
-    .SMarked {
-        background-color: #F8F8D8 }
-
-    .SDescription { padding-left: 2ex }
-    .SIndent1 .SEntry { padding-left: 1.5ex }   .SIndent1 .SDescription { padding-left: 3.5ex }
-    .SIndent2 .SEntry { padding-left: 3.0ex }   .SIndent2 .SDescription { padding-left: 5.0ex }
-    .SIndent3 .SEntry { padding-left: 4.5ex }   .SIndent3 .SDescription { padding-left: 6.5ex }
-    .SIndent4 .SEntry { padding-left: 6.0ex }   .SIndent4 .SDescription { padding-left: 8.0ex }
-    .SIndent5 .SEntry { padding-left: 7.5ex }   .SIndent5 .SDescription { padding-left: 9.5ex }
-
-    .SDescription a { color: #800000}
-    .SDescription a:active { color: #A00000 }
-
-    .SGroup td {
-        padding-top: .5em; padding-bottom: .25em }
-
-    .SGroup .SEntry {
-        font-weight: bold; font-variant: small-caps }
-
-    .SGroup .SEntry a { color: #800000 }
-    .SGroup .SEntry a:active { color: #F00000 }
-
-
-    .SMain td,
-    .SClass td,
-    .SDatabase td,
-    .SDatabaseTable td,
-    .SSection td {
-        font-size: 10pt;
-        padding-bottom: .25em }
-
-    .SClass td,
-    .SDatabase td,
-    .SDatabaseTable td,
-    .SSection td {
-        padding-top: 1em }
-
-    .SMain .SEntry,
-    .SClass .SEntry,
-    .SDatabase .SEntry,
-    .SDatabaseTable .SEntry,
-    .SSection .SEntry {
-        font-weight: bold;
-        }
-
-    .SMain .SEntry a,
-    .SClass .SEntry a,
-    .SDatabase .SEntry a,
-    .SDatabaseTable .SEntry a,
-    .SSection .SEntry a { color: #000000 }
-
-    .SMain .SEntry a:active,
-    .SClass .SEntry a:active,
-    .SDatabase .SEntry a:active,
-    .SDatabaseTable .SEntry a:active,
-    .SSection .SEntry a:active { color: #A00000 }
-
-
-
-
-
-.ClassHierarchy {
-    margin: 0 15px 1em 15px }
-
-    .CHEntry {
-        border-width: 1px 2px 2px 1px; border-style: solid; border-color: #A0A0A0;
-        margin-bottom: 3px;
-        padding: 2px 2ex;
-        font-size: 10pt;
-        background-color: #F4F4F4; color: #606060;
-        }
-
-    .Firefox .CHEntry {
-        -moz-border-radius: 4px;
-        }
-
-    .CHCurrent .CHEntry {
-        font-weight: bold;
-        border-color: #000000;
-        color: #000000;
-        }
-
-    .CHChildNote .CHEntry {
-        font-style: italic;
-        font-size: 8pt;
-        }
-
-    .CHIndent {
-        margin-left: 3ex;
-        }
-
-    .CHEntry a:link,
-    .CHEntry a:visited,
-    .CHEntry a:hover {
-        color: #606060;
-        }
-    .CHEntry a:active {
-        color: #800000;
-        }
-
-
-
-
-
-#Index {
-    background-color: #FFFFFF;
-    }
-
-/*  As opposed to .PopupSearchResultsPage #Index  */
-.IndexPage #Index,
-.FramedIndexPage #Index,
-.FramedSearchResultsPage #Index {
-    padding: 15px;
-    }
-
-.IndexPage #Index {
-    border-width: 0 0 1px 1px;
-    border-style: solid;
-    border-color: #000000;
-    font-size: 9pt;  /* To make 27ex match the menu's 27ex. */
-    margin-left: 27ex;
-    }
-
-
-    .IPageTitle {
-        font-size: 20pt; font-weight: bold;
-        color: #FFFFFF; background-color: #7070C0;
-        padding: 10px 15px 10px 15px;
-        border-width: 0 0 3px 0; border-color: #000000; border-style: solid;
-        margin: -15px -15px 0 -15px }
-
-    .FramedSearchResultsPage .IPageTitle {
-        margin-bottom: 15px;
-        }
-
-    .INavigationBar {
-        font-size: 10pt;
-        text-align: center;
-        background-color: #FFFFF0;
-        padding: 5px;
-        border-bottom: solid 1px black;
-        margin: 0 -15px 15px -15px;
-        }
-
-    .INavigationBar a {
-        font-weight: bold }
-
-    .IHeading {
-        font-size: 16pt; font-weight: bold;
-        padding: 2.5em 0 .5em 0;
-        text-align: center;
-        width: 3.5ex;
-        }
-    #IFirstHeading {
-        padding-top: 0;
-        }
-
-    .IEntry {
-        font-size: 10pt;
-        padding-left: 1ex;
-        }
-    .PopupSearchResultsPage .IEntry {
-        font-size: 8pt;
-        padding: 1px 5px;
-        }
-    .PopupSearchResultsPage .Opera9 .IEntry,
-    .FramedSearchResultsPage .Opera9 .IEntry {
-        text-align: left;
-        }
-    .FramedSearchResultsPage .IEntry {
-        padding: 0;
-        }
-
-    .ISubIndex {
-        padding-left: 3ex; padding-bottom: .5em }
-    .PopupSearchResultsPage .ISubIndex {
-        display: none;
-        }
-
-    /*  While it may cause some entries to look like links when they aren't, I found it's much easier to read the
-         index if everything's the same color.  */
-    .ISymbol {
-        font-weight: bold; color: #900000  }
-
-    .IndexPage .ISymbolPrefix,
-    .FramedIndexPage .ISymbolPrefix {
-        font-size: 10pt;
-        text-align: right;
-        color: #C47C7C;
-        background-color: #F8F8F8;
-        border-right: 3px solid #E0E0E0;
-        border-left: 1px solid #E0E0E0;
-        padding: 0 1px 0 2px;
-        }
-    .PopupSearchResultsPage .ISymbolPrefix,
-    .FramedSearchResultsPage .ISymbolPrefix {
-        color: #900000;
-        }
-    .PopupSearchResultsPage .ISymbolPrefix {
-        font-size: 8pt;
-        }
-
-    .IndexPage #IFirstSymbolPrefix,
-    .FramedIndexPage #IFirstSymbolPrefix {
-        border-top: 1px solid #E0E0E0;
-        }
-    .IndexPage #ILastSymbolPrefix,
-    .FramedIndexPage #ILastSymbolPrefix {
-        border-bottom: 1px solid #E0E0E0;
-        }
-    .IndexPage #IOnlySymbolPrefix,
-    .FramedIndexPage #IOnlySymbolPrefix {
-        border-top: 1px solid #E0E0E0;
-        border-bottom: 1px solid #E0E0E0;
-        }
-
-    a.IParent,
-    a.IFile {
-        display: block;
-        }
-
-    .PopupSearchResultsPage .SRStatus {
-        padding: 2px 5px;
-        font-size: 8pt;
-        font-style: italic;
-        }
-    .FramedSearchResultsPage .SRStatus {
-        font-size: 10pt;
-        font-style: italic;
-        }
-
-    .SRResult {
-        display: none;
-        }
-
-
-
-#Footer {
-    font-size: 8pt;
-    color: #989898;
-    text-align: right;
-    }
-
-#Footer p {
-    text-indent: 0;
-    margin-bottom: .5em;
-    }
-
-.ContentPage #Footer,
-.IndexPage #Footer {
-    text-align: right;
-    margin: 2px;
-    }
-
-.FramedMenuPage #Footer {
-    text-align: center;
-    margin: 5em 10px 10px 10px;
-    padding-top: 1em;
-    border-top: 1px solid #C8C8C8;
-    }
-
-    #Footer a:link,
-    #Footer a:hover,
-    #Footer a:visited { color: #989898 }
-    #Footer a:active { color: #A00000 }
-
--- a/htdocs/svg-edit/editor/embedapi.js	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,157 +0,0 @@
-/*
-function embedded_svg_edit(frame){
-  //initialize communication
-  this.frame = frame;
-  this.stack = []; //callback stack
-  
-  var editapi = this;
-  
-  window.addEventListener("message", function(e){
-    if(e.data.substr(0,5) == "ERROR"){
-      editapi.stack.splice(0,1)[0](e.data,"error")
-    }else{
-      editapi.stack.splice(0,1)[0](e.data)
-    }
-  }, false)
-}
-
-embedded_svg_edit.prototype.call = function(code, callback){
-  this.stack.push(callback);
-  this.frame.contentWindow.postMessage(code,"*");
-}
-
-embedded_svg_edit.prototype.getSvgString = function(callback){
-  this.call("svgCanvas.getSvgString()",callback)
-}
-
-embedded_svg_edit.prototype.setSvgString = function(svg){
-  this.call("svgCanvas.setSvgString('"+svg.replace(/'/g, "\\'")+"')");
-}
-*/
-
-
-/*
-Embedded SVG-edit API
-
-General usage:
-- Have an iframe somewhere pointing to a version of svg-edit > r1000
-- Initialize the magic with:
-var svgCanvas = new embedded_svg_edit(window.frames['svgedit']);
-- Pass functions in this format:
-svgCanvas.setSvgString("string")
-- Or if a callback is needed:
-svgCanvas.setSvgString("string")(function(data, error){
-  if(error){
-    //there was an error
-  }else{
-    //handle data
-  }
-})
-
-Everything is done with the same API as the real svg-edit, 
-and all documentation is unchanged. The only difference is
-when handling returns, the callback notation is used instead. 
-
-var blah = new embedded_svg_edit(window.frames['svgedit']);
-blah.clearSelection("woot","blah",1337,[1,2,3,4,5,"moo"],-42,{a: "tree",b:6, c: 9})(function(){console.log("GET DATA",arguments)})
-*/
-
-function embedded_svg_edit(frame){
-  //initialize communication
-  this.frame = frame;
-  //this.stack = [] //callback stack
-  this.callbacks = {}; //successor to stack
-  this.encode = embedded_svg_edit.encode;
-  //List of functions extracted with this:
-  //Run in firebug on http://svg-edit.googlecode.com/svn/trunk/docs/files/svgcanvas-js.html
-  
-  //for(var i=0,q=[],f = document.querySelectorAll("div.CFunction h3.CTitle a");i<f.length;i++){q.push(f[i].name)};q
-  //var functions = ["clearSelection", "addToSelection", "removeFromSelection", "open", "save", "getSvgString", "setSvgString", "createLayer", "deleteCurrentLayer", "getNumLayers", "getLayer", "getCurrentLayer", "setCurrentLayer", "renameCurrentLayer", "setCurrentLayerPosition", "getLayerVisibility", "setLayerVisibility", "moveSelectedToLayer", "getLayerOpacity", "setLayerOpacity", "clear"];
-  
-  
-  //Newer, well, it extracts things that aren't documented as well. All functions accessible through the normal thingy can now be accessed though the API
-  //var l=[];for(var i in svgCanvas){if(typeof svgCanvas[i] == "function"){l.push(i)}};
-  //run in svgedit itself
-  var functions = ["updateElementFromJson", "embedImage", "fixOperaXML", "clearSelection", "addToSelection", "removeFromSelection", "addNodeToSelection", "open", "save", "getSvgString", "setSvgString", "createLayer", "deleteCurrentLayer", "getNumLayers", "getLayer", "getCurrentLayer", "setCurrentLayer", "renameCurrentLayer", "setCurrentLayerPosition", "getLayerVisibility", "setLayerVisibility", "moveSelectedToLayer", "getLayerOpacity", "setLayerOpacity", "clear", "clearPath", "getNodePoint", "clonePathNode", "deletePathNode", "getResolution", "getImageTitle", "setImageTitle", "setResolution", "setBBoxZoom", "setZoom", "getMode", "setMode", "getStrokeColor", "setStrokeColor", "getFillColor", "setFillColor", "setStrokePaint", "setFillPaint", "getStrokeWidth", "setStrokeWidth", "getStrokeStyle", "setStrokeStyle", "getOpacity", "setOpacity", "getFillOpacity", "setFillOpacity", "getStrokeOpacity", "setStrokeOpacity", "getTransformList", "getBBox", "getRotationAngle", "setRotationAngle", "each", "bind", "setIdPrefix", "getBold", "setBold", "getItalic", "setItalic", "getFontFamily", "setFontFamily", "getFontSize", "setFontSize", "getText", "setTextContent", "setImageURL", "setRectRadius", "setSegType", "quickClone", "beginUndoableChange", "changeSelectedAttributeNoUndo", "finishUndoableChange", "changeSelectedAttribute", "deleteSelectedElements", "groupSelectedElements", "ungroupSelectedElement", "moveToTopSelectedElement", "moveToBottomSelectedElement", "moveSelectedElements", "getStrokedBBox", "getVisibleElements", "cycleElement", "getUndoStackSize", "getRedoStackSize", "getNextUndoCommandText", "getNextRedoCommandText", "undo", "redo", "cloneSelectedElements", "alignSelectedElements", "getZoom", "getVersion", "setIconSize", "setLang", "setCustomHandlers"]
-  
-  //TODO: rewrite the following, it's pretty scary.
-  for(var i = 0; i < functions.length; i++){
-    this[functions[i]] = (function(d){
-      return function(){
-        var t = this //new callback
-        for(var g = 0, args = []; g < arguments.length; g++){
-          args.push(arguments[g]);
-        }
-        var cbid = t.send(d,args, function(){})  //the callback (currently it's nothing, but will be set later
-        
-        return function(newcallback){
-          t.callbacks[cbid] = newcallback; //set callback
-        }
-      }
-    })(functions[i])
-  }
-  //TODO: use AddEvent for Trident browsers, currently they dont support SVG, but they do support onmessage
-  var t = this;
-  window.addEventListener("message", function(e){
-    if(e.data.substr(0,4)=="SVGe"){ //because svg-edit is too longish
-      var data = e.data.substr(4);
-      var cbid = data.substr(0, data.indexOf(";"));
-      if(t.callbacks[cbid]){
-        if(data.substr(0,6) != "error:"){
-          t.callbacks[cbid](eval("("+data.substr(cbid.length+1)+")"))
-        }else{
-          t.callbacks[cbid](data, "error");
-        }
-      }
-    }
-    //this.stack.shift()[0](e.data,e.data.substr(0,5) == "ERROR"?'error':null) //replace with shift
-  }, false)
-}
-
-embedded_svg_edit.encode = function(obj){
-  //simple partial JSON encoder implementation
-  if(window.JSON && JSON.stringify) return JSON.stringify(obj);
-  var enc = arguments.callee; //for purposes of recursion
-  
-  if(typeof obj == "boolean" || typeof obj == "number"){
-      return obj+'' //should work...
-  }else if(typeof obj == "string"){
-    //a large portion of this is stolen from Douglas Crockford's json2.js
-    return '"'+
-          obj.replace(
-            /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g
-          , function (a) {
-            return '\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
-          })
-          +'"'; //note that this isn't quite as purtyful as the usualness
-  }else if(obj.length){ //simple hackish test for arrayish-ness
-    for(var i = 0; i < obj.length; i++){
-      obj[i] = enc(obj[i]); //encode every sub-thingy on top
-    }
-    return "["+obj.join(",")+"]";
-  }else{
-    var pairs = []; //pairs will be stored here
-    for(var k in obj){ //loop through thingys
-      pairs.push(enc(k)+":"+enc(obj[k])); //key: value
-    }
-    return "{"+pairs.join(",")+"}" //wrap in the braces
-  }
-}
-
-embedded_svg_edit.prototype.send = function(name, args, callback){
-  var cbid = Math.floor(Math.random()*31776352877+993577).toString();
-  //this.stack.push(callback);
-  this.callbacks[cbid] = callback;
-  for(var argstr = [], i = 0; i < args.length; i++){
-    argstr.push(this.encode(args[i]))
-  }
-  var t = this;
-  setTimeout(function(){//delay for the callback to be set in case its synchronous
-    t.frame.contentWindow.postMessage(cbid+";svgCanvas['"+name+"']("+argstr.join(",")+")","*");
-  }, 0);
-  return cbid;
-  //this.stack.shift()("svgCanvas['"+name+"']("+argstr.join(",")+")")
-}
-
-
-
--- a/htdocs/svg-edit/editor/extensions/closepath_icons.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg">
-<g id="tool_closepath">
-<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <g>
-  <title>Layer 1</title>
-  <path stroke="#000" stroke-width="15" fill="#ffc8c8" d="m121.5,40l-84,106l27,115l166,2l29,-111"/>
-  <line x1="240" y1="136" x2="169.5" y2="74" stroke="#A00" stroke-width="25" fill="none"/>
-  <path stroke="none" fill ="#A00" d="m158,65l31,74l-3,-50l51,-3z"/>
-  <g stroke-width="15" stroke="#00f" fill="#0ff">
-  <circle r="30" cy="41" cx="123"/>
-  <circle r="30" cy="146" cx="40"/>
-  <circle r="30" cy="260" cx="69"/>
-  <circle r="30" cy="260" cx="228"/>
-  <circle r="30" cy="148" cx="260"/>
-  </g>
- </g>
-</svg>
-</g>
-<g id="tool_openpath">
-<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <g>
-  <title>Layer 1</title>
-  <path stroke="#000" stroke-width="15" fill="#ffc8c8" d="m123.5,38l-84,106l27,115l166,2l29,-111"/>
-  <line x1="276.5" y1="153" x2="108.5" y2="24" stroke="#000" stroke-width="10" fill="none"/>
-  <g stroke-width="15" stroke="#00f" fill="#0ff">
-   <circle r="30" cy="41" cx="123"/>
-   <circle r="30" cy="146" cx="40"/>
-   <circle r="30" cy="260" cx="69"/>
-   <circle r="30" cy="260" cx="228"/>
-   <circle r="30" cy="148" cx="260"/>
-  </g>
-  <g  stroke="#A00" stroke-width="15" fill="none">
-   <line x1="168" y1="24" x2="210" y2="150"/>
-   <line x1="210" y1="24" x2="168" y2="150"/>
-  </g>
- </g>
-</svg>
-</g>
-
-<g id="svg_eof"/>
-</svg>
\ No newline at end of file
--- a/htdocs/svg-edit/editor/extensions/ext-arrows.js	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,296 +0,0 @@
-/*
- * ext-arrows.js
- *
- * Licensed under the Apache License, Version 2
- *
- * Copyright(c) 2010 Alexis Deveria
- *
- */
-
- 
-svgEditor.addExtension("Arrows", function(S) {
-		var svgcontent = S.svgcontent,
-			addElem = S.addSvgElementFromJson,
-			nonce = S.nonce,
-			randomize_ids = S.randomize_ids,
-			selElems;
-
-		svgCanvas.bind('setarrownonce', setArrowNonce);
-		svgCanvas.bind('unsetsetarrownonce', unsetArrowNonce);
-			
-		var lang_list = {
-			"en":[
-				{"id": "arrow_none", "textContent": "No arrow" }
-			],
-			"fr":[
-				{"id": "arrow_none", "textContent": "Sans flèche" }
-			]
-		};
-		
-		var prefix = 'se_arrow_';
-		if (randomize_ids) {
-		  var arrowprefix = prefix + nonce + '_';
-		} else {
-		  var arrowprefix = prefix;
-		}
-
-		var pathdata = {
-			fw: {d:"m0,0l10,5l-10,5l5,-5l-5,-5z", refx:8,  id: arrowprefix + 'fw'},
-			bk: {d:"m10,0l-10,5l10,5l-5,-5l5,-5z", refx:2, id: arrowprefix + 'bk'}
-		}
-		
-		function setArrowNonce(window, n) {
-		    randomize_ids = true;
-		    arrowprefix = prefix + n + '_';
- 			pathdata.fw.id = arrowprefix + 'fw';
-			pathdata.bk.id = arrowprefix + 'bk';
-		}
-
-		function unsetArrowNonce(window) {
-		    randomize_ids = false;
-		    arrowprefix = prefix;
- 			pathdata.fw.id = arrowprefix + 'fw';
-			pathdata.bk.id = arrowprefix + 'bk';
-		}
-
-		function getLinked(elem, attr) {
-			var str = elem.getAttribute(attr);
-			if(!str) return null;
-			var m = str.match(/\(\#(.*)\)/);
-			if(!m || m.length !== 2) {
-				return null;
-			}
-			return S.getElem(m[1]);
-		}
-		
-		function showPanel(on) {
-			$('#arrow_panel').toggle(on);
-			
-			if(on) {
-				var el = selElems[0];
-				var end = el.getAttribute("marker-end");
-				var start = el.getAttribute("marker-start");
-				var mid = el.getAttribute("marker-mid");
-				var val;
-				
-				if(end && start) {
-					val = "both";
-				} else if(end) {
-					val = "end";
-				} else if(start) {
-					val = "start";
-				} else if(mid) {
-					val = "mid";
-					if(mid.indexOf("bk") != -1) {
-						val = "mid_bk";
-					}
-				}
-				
-				if(!start && !mid && !end) {
-					val = "none";
-				}
-				
-				$("#arrow_list").val(val);
-			}
-		}
-		
-		function resetMarker() {
-			var el = selElems[0];
-			el.removeAttribute("marker-start");
-			el.removeAttribute("marker-mid");
-			el.removeAttribute("marker-end");
-		}
-		
-		function addMarker(dir, type, id) {
-			// TODO: Make marker (or use?) per arrow type, since refX can be different
-			id = id || arrowprefix + dir;
-			
-			var marker = S.getElem(id);
-
-			var data = pathdata[dir];
-			
-			if(type == "mid") {
-				data.refx = 5;
-			}
-
-			if(!marker) {
-				marker = addElem({
-					"element": "marker",
-					"attr": {
-						"viewBox": "0 0 10 10",
-						"id": id,
-						"refY": 5,
-						"markerUnits": "strokeWidth",
-						"markerWidth": 5,
-						"markerHeight": 5,
-						"orient": "auto",
-						"style": "pointer-events:none" // Currently needed for Opera
-					}
-				});
-				var arrow = addElem({
-					"element": "path",
-					"attr": {
-						"d": data.d,
-						"fill": "#000000"
-					}
-				});
-				marker.appendChild(arrow);
-				S.findDefs().appendChild(marker);
-			} 
-			
-			marker.setAttribute('refX', data.refx);
-			
-			return marker;
-		}
-		
-		function setArrow() {
-			var type = this.value;
-			resetMarker();
-		
-			if(type == "none") {
-				return;
-			}
-		
-			// Set marker on element
-			var dir = "fw";
-			if(type == "mid_bk") {
-				type = "mid";
-				dir = "bk";
-			} else if(type == "both") {
-				addMarker("bk", type);
-				svgCanvas.changeSelectedAttribute("marker-start", "url(#" + pathdata.bk.id + ")");
-				type = "end";
-				dir = "fw";
-			} else if (type == "start") {
-				dir = "bk";
-			}
-			
-			addMarker(dir, type);
-			svgCanvas.changeSelectedAttribute("marker-"+type, "url(#" + pathdata[dir].id + ")");
-			S.call("changed", selElems);
-		}
-		
-		function colorChanged(elem) {
-			var color = elem.getAttribute('stroke');
-			
-			var mtypes = ['start','mid','end'];
-			var defs = S.findDefs();
-			
-			$.each(mtypes, function(i, type) {
-				var marker = getLinked(elem, 'marker-'+type);
-				if(!marker) return;
-				
-				var cur_color = $(marker).children().attr('fill');
-				var cur_d = $(marker).children().attr('d');
-				var new_marker = null;
-				if(cur_color === color) return;
-				
-				var all_markers = $(defs).find('marker');
-				// Different color, check if already made
-				all_markers.each(function() {
-					var attrs = $(this).children().attr(['fill', 'd']);
-					if(attrs.fill === color && attrs.d === cur_d) {
-						// Found another marker with this color and this path
-						new_marker = this;
-					}
-				});
-				
-				if(!new_marker) {
-					// Create a new marker with this color
-					var last_id = marker.id;
-					var dir = last_id.indexOf('_fw') !== -1?'fw':'bk';
-					
-					new_marker = addMarker(dir, type, arrowprefix + dir + all_markers.length);
-
-					$(new_marker).children().attr('fill', color);
-				}
-				
-				$(elem).attr('marker-'+type, "url(#" + new_marker.id + ")");
-				
-				// Check if last marker can be removed
-				var remove = true;
-				$(S.svgcontent).find('line, polyline, path, polygon').each(function() {
-					var elem = this;
-					$.each(mtypes, function(j, mtype) {
-						if($(elem).attr('marker-' + mtype) === "url(#" + marker.id + ")") {
-							return remove = false;
-						}
-					});
-					if(!remove) return false;
-				});
-				
-				// Not found, so can safely remove
-				if(remove) {
-					$(marker).remove();
-				}
-
-			});
-			
-		}
-		
-		return {
-			name: "Arrows",
-			context_tools: [{
-				type: "select",
-				panel: "arrow_panel",
-				title: "Select arrow type",
-				id: "arrow_list",
-				options: {
-					none: "No arrow",
-					end: "----&gt;",
-					start: "&lt;----",
-					both: "&lt;---&gt;",
-					mid: "--&gt;--",
-					mid_bk: "--&lt;--"
-				},
-				defval: "none",
-				events: {
-					change: setArrow
-				}
-			}],
-			callback: function() {
-				$('#arrow_panel').hide();
-			},
-			addLangData: function(lang) {
-				return {
-					data: lang_list[lang]
-				};
-			},
-			selectedChanged: function(opts) {
-				
-				// Use this to update the current selected elements
-				selElems = opts.elems;
-				
-				var i = selElems.length;
-				var marker_elems = ['line','path','polyline','polygon'];
-				
-				while(i--) {
-					var elem = selElems[i];
-					if(elem && $.inArray(elem.tagName, marker_elems) != -1) {
-						if(opts.selectedElement && !opts.multiselected) {
-							showPanel(true);
-						} else {
-							showPanel(false);
-						}
-					} else {
-						showPanel(false);
-					}
-				}
-			},
-			elementChanged: function(opts) {
-				var elem = opts.elems[0];
-				if(elem && (
-					elem.getAttribute("marker-start") ||
-					elem.getAttribute("marker-mid") ||
-					elem.getAttribute("marker-end")
-				)) {
-	// 								var start = elem.getAttribute("marker-start");
-	// 								var mid = elem.getAttribute("marker-mid");
-	// 								var end = elem.getAttribute("marker-end");
-					// Has marker, so see if it should match color
-					colorChanged(elem);
-				}
-				
-			}
-		};
-});
--- a/htdocs/svg-edit/editor/extensions/ext-closepath.js	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,92 +0,0 @@
-/*
- * ext-closepath.js
- *
- * Licensed under the Apache License, Version 2
- *
- * Copyright(c) 2010 Jeff Schiller
- *
- */
-
-// This extension adds a simple button to the contextual panel for paths
-// The button toggles whether the path is open or closed
-svgEditor.addExtension("ClosePath", function(S) {
-		var selElems,
-			updateButton = function(path) {
-				var seglist = path.pathSegList,
-					closed = seglist.getItem(seglist.numberOfItems - 1).pathSegType==1,
-					showbutton = closed ? '#tool_openpath' : '#tool_closepath',
-					hidebutton = closed ? '#tool_closepath' : '#tool_openpath';
-					$(hidebutton).hide();
-					$(showbutton).show();
-			},
-			showPanel = function(on) {
-				$('#closepath_panel').toggle(on);
-				if (on) {
-					var path = selElems[0];
-					if (path) updateButton(path);
-				}
-			},
-		
-			toggleClosed = function() {
-				var path = selElems[0];
-				if (path) {
-					var seglist = path.pathSegList,
-						last = seglist.numberOfItems - 1;					
-					// is closed
-					if(seglist.getItem(last).pathSegType == 1) {
-						seglist.removeItem(last);
-					}
-					else {
-						seglist.appendItem(path.createSVGPathSegClosePath());
-					}
-					updateButton(path);
-				}
-			};
-		
-		return {
-			name: "ClosePath",
-			svgicons: "extensions/closepath_icons.svg",
-			buttons: [{
-				id: "tool_openpath",
-				type: "context",
-				panel: "closepath_panel",
-				title: "Open path",
-				events: {
-					'click': function() {
-						toggleClosed();
-					}
-				}
-			},
-			{
-				id: "tool_closepath",
-				type: "context",
-				panel: "closepath_panel",
-				title: "Close path",
-				events: {
-					'click': function() {
-						toggleClosed();
-					}
-				}
-			}],
-			callback: function() {
-				$('#closepath_panel').hide();
-			},
-			selectedChanged: function(opts) {
-				selElems = opts.elems;
-				var i = selElems.length;
-				
-				while(i--) {
-					var elem = selElems[i];
-					if(elem && elem.tagName == 'path') {
-						if(opts.selectedElement && !opts.multiselected) {
-							showPanel(true);
-						} else {
-							showPanel(false);
-						}
-					} else {
-						showPanel(false);
-					}
-				}
-			}
-		};
-});
--- a/htdocs/svg-edit/editor/extensions/ext-connector.js	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,555 +0,0 @@
-/*
- * ext-connector.js
- *
- * Licensed under the Apache License, Version 2
- *
- * Copyright(c) 2010 Alexis Deveria
- *
- */
- 
-svgEditor.addExtension("Connector", function(S) {
-	var svgcontent = S.svgcontent,
-		svgroot = S.svgroot,
-		getNextId = S.getNextId,
-		getElem = S.getElem,
-		addElem = S.addSvgElementFromJson,
-		selManager = S.selectorManager,
-		curConfig = svgEditor.curConfig,
-		started = false,
-		start_x,
-		start_y,
-		cur_line,
-		start_elem,
-		end_elem,
-		connections = [],
-		conn_sel = ".se_connector",
-		se_ns,
-// 			connect_str = "-SE_CONNECT-",
-		selElems = [];
-		
-	var lang_list = {
-		"en":[
-			{"id": "mode_connect", "title": "Connect two objects" }
-		],
-		"fr":[
-			{"id": "mode_connect", "title": "Connecter deux objets"}
-		]
-	};
-	
-	function showPanel(on) {
-		var conn_rules = $('#connector_rules');
-		if(!conn_rules.length) {
-			conn_rules = $('<style id="connector_rules"><\/style>').appendTo('head');
-		} 
-		conn_rules.text(!on?"":"#tool_clone, #tool_topath, #tool_angle, #xy_panel { display: none !important; }");
-		$('#connector_panel').toggle(on);
-	}
-	
-	function setPoint(elem, pos, x, y, setMid) {
-		var pts = elem.points;
-		var pt = svgroot.createSVGPoint();
-		pt.x = x;
-		pt.y = y;
-		if(pos === 'end') pos = pts.numberOfItems-1;
-		// TODO: Test for this on init, then use alt only if needed
-		try {
-			pts.replaceItem(pt, pos);
-		} catch(err) {
-			// Should only occur in FF which formats points attr as "n,n n,n", so just split
-			var pt_arr = elem.getAttribute("points").split(" ");
-			for(var i=0; i< pt_arr.length; i++) {
-				if(i == pos) {
-					pt_arr[i] = x + ',' + y;
-				}
-			}
-			elem.setAttribute("points",pt_arr.join(" ")); 
-		}
-		
-		if(setMid) {
-			// Add center point
-			var pt_start = pts.getItem(0);
-			var pt_end = pts.getItem(pts.numberOfItems-1);
-			setPoint(elem, 1, (pt_end.x + pt_start.x)/2, (pt_end.y + pt_start.y)/2);
-		}
-	}
-	
-	function findConnectors() {
-		var elems = selElems;
-		var connectors = $(svgcontent).find(conn_sel);
-		connections = [];
-
-		// Loop through connectors to see if one is connected to the element
-		connectors.each(function() {
-			var start = $(this).data("c_start");
-			var end = $(this).data("c_end");
-			
-			var parts = [getElem(start), getElem(end)];
-			for(var i=0; i<2; i++) {
-				var c_elem = parts[i];
-				var add_this = false;
-				// The connected element might be part of a selected group
-				$(c_elem).parents().each(function() {
-					if($.inArray(this, elems) !== -1) {
-						// Pretend this element is selected
-						add_this = true;
-					}
-				});
-				
-				if(!c_elem || !c_elem.parentNode) {
-					$(this).remove();
-					continue;
-				}
-				
-				if($.inArray(c_elem, elems) !== -1 || add_this) {
-					var bb = svgCanvas.getStrokedBBox([c_elem]);
-					connections.push({
-						elem: c_elem,
-						connector: this,
-						is_start: (i === 0),
-						start_x: bb.x,
-						start_y: bb.y
-					});	
-				}
-			}
-		});
-	}
-	
-	function updateConnectors() {
-		// Updates connector lines based on selected elements
-		// Is not used on mousemove, as it runs getStrokedBBox every time,
-		// which isn't necessary there.
-		findConnectors();
-		if(connections.length) {
-			// Update line with element
-			var i = connections.length;
-			while(i--) {
-				var conn = connections[i];
-				var line = conn.connector;
-				var elem = conn.elem;
-
-				var sw = line.getAttribute('stroke-width');
-				var pre = conn.is_start?'start':'end';
-				
-				// Update bbox for this element
-				var bb = svgCanvas.getStrokedBBox([elem]);
-				bb.x = conn.start_x;
-				bb.y = conn.start_y;
-				$(line).data(pre+'_bb', bb);
-				var add_offset = $(line).data(pre+'_off');
-			
-				var alt_pre = conn.is_start?'end':'start';
-				
-				// Get center pt of connected element
-				var bb2 = $(line).data(alt_pre+'_bb');
-				var src_x = bb2.x + bb2.width/2;
-				var src_y = bb2.y + bb2.height/2;
-				
-				// Set point of element being moved
-				var pt = getBBintersect(src_x, src_y, bb, add_offset?sw:0);
-				setPoint(line, conn.is_start?0:'end', pt.x, pt.y, true);
-				
-				// Set point of connected element
-				var pt2 = getBBintersect(pt.x, pt.y, $(line).data(alt_pre + '_bb'), $(line).data(alt_pre + '_off')?sw:0);
-				setPoint(line, conn.is_start?'end':0, pt2.x, pt2.y, true);
-				
-				// Update points attribute manually for webkit
-				if(navigator.userAgent.indexOf('AppleWebKit') != -1) {
-					var pts = line.points;
-					var len = pts.numberOfItems;
-					var pt_arr = Array(len);
-					for(var j=0; j< len; j++) {
-						var pt = pts.getItem(j);
-						pt_arr[j] = pt.x + ',' + pt.y;
-					}	
-					line.setAttribute("points",pt_arr.join(" ")); 
-				}
-
-			}
-		}
-	}
-	
-	function getBBintersect(x, y, bb, offset) {
-		if(offset) {
-			offset -= 0;
-			bb = $.extend({}, bb);
-			bb.width += offset;
-			bb.height += offset;
-			bb.x -= offset/2;
-			bb.y -= offset/2;
-		}
-	
-		var mid_x = bb.x + bb.width/2;
-		var mid_y = bb.y + bb.height/2;
-		var len_x = x - mid_x;
-		var len_y = y - mid_y;
-		
-		var slope = Math.abs(len_y/len_x);
-		
-		var ratio;
-		
-		if(slope < bb.height/bb.width) {
-			ratio = (bb.width/2) / Math.abs(len_x);
-		} else {
-			ratio = (bb.height/2) / Math.abs(len_y);
-		}
-		
-		
-		return {
-			x: mid_x + len_x * ratio,
-			y: mid_y + len_y * ratio
-		}
-	}
-	
-	// Do once
-	(function() {
-		var gse = svgCanvas.groupSelectedElements;
-		
-		svgCanvas.groupSelectedElements = function() {
-			svgCanvas.removeFromSelection($(conn_sel).toArray());
-			gse();
-		}
-		
-		var mse = svgCanvas.moveSelectedElements;
-		
-		svgCanvas.moveSelectedElements = function() {
-			svgCanvas.removeFromSelection($(conn_sel).toArray());
-			mse.apply(this, arguments);
-			updateConnectors();
-		}
-		
-		se_ns = svgCanvas.getEditorNS();
-	}());
-	
-	// Do on reset
-	function init() {
-		// Make sure all connectors have data set
-		$(svgcontent).find('*').each(function() { 
-			var conn = this.getAttributeNS(se_ns, "connector");
-			if(conn) {
-				this.setAttribute('class', conn_sel.substr(1));
-				var conn_data = conn.split(' ');
-				var sbb = svgCanvas.getStrokedBBox([getElem(conn_data[0])]);
-				var ebb = svgCanvas.getStrokedBBox([getElem(conn_data[1])]);
-				$(this).data('c_start',conn_data[0])
-					.data('c_end',conn_data[1])
-					.data('start_bb', sbb)
-					.data('end_bb', ebb);
-				svgCanvas.getEditorNS(true);
-			}
-		});
-// 			updateConnectors();
-	}
-	
-// 		$(svgroot).parent().mousemove(function(e) {
-// // 			if(started 
-// // 				|| svgCanvas.getMode() != "connector"
-// // 				|| e.target.parentNode.parentNode != svgcontent) return;
-// 			
-// 			console.log('y')
-// // 			if(e.target.parentNode.parentNode === svgcontent) {
-// // 					
-// // 			}
-// 		});
-	
-	return {
-		name: "Connector",
-		svgicons: "images/conn.svg",
-		buttons: [{
-			id: "mode_connect",
-			type: "mode",
-			icon: "images/cut.png",
-			title: "Connect two objects",
-			key: "Shift+3",
-			includeWith: {
-				button: '#tool_line',
-				isDefault: false,
-				position: 1
-			},
-			events: {
-				'click': function() {
-					svgCanvas.setMode("connector");
-				}
-			}
-		}],
-		addLangData: function(lang) {
-			return {
-				data: lang_list[lang]
-			};
-		},
-		mouseDown: function(opts) {
-			var e = opts.event;
-			start_x = opts.start_x,
-			start_y = opts.start_y;
-			var mode = svgCanvas.getMode();
-			
-			if(mode == "connector") {
-				
-				if(started) return;
-				
-				var mouse_target = e.target;
-				
-				var parents = $(mouse_target).parents();
-				
-				if($.inArray(svgcontent, parents) != -1) {
-					// Connectable element
-					
-					// If child of foreignObject, use parent
-					var fo = $(mouse_target).closest("foreignObject");
-					start_elem = fo.length ? fo[0] : mouse_target;
-					
-					// Get center of source element
-					var bb = svgCanvas.getStrokedBBox([start_elem]);
-					var x = bb.x + bb.width/2;
-					var y = bb.y + bb.height/2;
-					
-					started = true;
-					cur_line = addElem({
-						"element": "polyline",
-						"attr": {
-							"id": getNextId(),
-							"points": (x+','+y+' '+x+','+y+' '+start_x+','+start_y),
-							"stroke": '#' + curConfig.initStroke.color,
-							"stroke-width": (!start_elem.stroke_width || start_elem.stroke_width == 0) ? curConfig.initStroke.width : start_elem.stroke_width,
-							"fill": "none",
-							"opacity": curConfig.initStroke.opacity,
-							"style": "pointer-events:none"
-						}
-					});
-					$(cur_line).data('start_bb', bb);
-				}
-				return {
-					started: true
-				};
-			} else if(mode == "select") {
-				findConnectors();
-			}
-		},
-		mouseMove: function(opts) {
-			var zoom = svgCanvas.getZoom();
-			var e = opts.event;
-			var x = opts.mouse_x/zoom;
-			var y = opts.mouse_y/zoom;
-			
-			var	diff_x = x - start_x,
-				diff_y = y - start_y;
-								
-			var mode = svgCanvas.getMode();
-			
-			if(mode == "connector" && started) {
-
-				// Set start point (adjusts based on bb)
-				var pt = getBBintersect(x, y, $(cur_line).data('start_bb'));
-				start_x = pt.x;
-				start_y = pt.y;
-				
-				setPoint(cur_line, 0, pt.x, pt.y, true);
-				
-				// Set end point
-				setPoint(cur_line, 'end', x, y, true);
-			} else if(mode == "select") {
-				var slen = selElems.length;
-				
-				while(slen--) {
-					var elem = selElems[slen];
-					// Look for selected connector elements
-					if(elem && $(elem).data('c_start')) {
-						// Remove the "translate" transform given to move
-						svgCanvas.removeFromSelection([elem]);
-						svgCanvas.getTransformList(elem).clear();
-
-					}
-				}
-				if(connections.length) {
-					// Update line with element
-					var i = connections.length;
-					while(i--) {
-						var conn = connections[i];
-						var line = conn.connector;
-						var elem = conn.elem;
-						
-						var pre = conn.is_start?'start':'end';
-						var sw = line.getAttribute('stroke-width');
-						
-						// Update bbox for this element
-						var bb = $(line).data(pre+'_bb');
-						bb.x = conn.start_x + diff_x;
-						bb.y = conn.start_y + diff_y;
-						$(line).data(pre+'_bb', bb);
-						
-						var alt_pre = conn.is_start?'end':'start';
-						
-						// Get center pt of connected element
-						var bb2 = $(line).data(alt_pre+'_bb');
-						var src_x = bb2.x + bb2.width/2;
-						var src_y = bb2.y + bb2.height/2;
-						
-						// Set point of element being moved
-						var pt = getBBintersect(src_x, src_y, bb, $(line).data(pre+'_off')?sw:0);
-						setPoint(line, conn.is_start?0:'end', pt.x, pt.y, true);
-						
-						// Set point of connected element
-						var pt2 = getBBintersect(pt.x, pt.y, $(line).data(alt_pre + '_bb'), $(line).data(alt_pre+'_off')?sw:0);
-						setPoint(line, conn.is_start?'end':0, pt2.x, pt2.y, true);
-
-					}
-					
-				}
-			} 
-		},
-		mouseUp: function(opts) {
-			var zoom = svgCanvas.getZoom();
-			var e = opts.event,
-				x = opts.mouse_x/zoom,
-				y = opts.mouse_y/zoom,
-				mouse_target = e.target;
-			
-			if(svgCanvas.getMode() == "connector") {
-				var fo = $(mouse_target).closest("foreignObject");
-				if(fo.length) mouse_target = fo[0];
-				if(mouse_target.parentNode.parentNode != svgcontent) {
-					// Not a valid target element, so remove line
-					$(cur_line).remove();
-					started = false;
-					return {
-						keep: false,
-						element: null,
-						started: started
-					}
-				} else if(mouse_target == start_elem) {
-					// Start line through click
-					started = true;
-					return {
-						keep: true,
-						element: null,
-						started: started
-					}						
-				} else {
-					// Valid end element
-					end_elem = mouse_target;
-					
-					var start_id = start_elem.id, end_id = end_elem.id;
-					var conn_str = start_id + " " + end_id;
-					var alt_str = end_id + " " + start_id;
-					// Don't create connector if one already exists
-					var dupe = $(svgcontent).find(conn_sel).filter(function() {
-						var conn = this.getAttributeNS(se_ns, "connector");
-						if(conn == conn_str || conn == alt_str) return true;
-					});
-					if(dupe.length) {
-						$(cur_line).remove();
-						return {
-							keep: false,
-							element: null,
-							started: false
-						}
-					}
-					
-					var bb = svgCanvas.getStrokedBBox([end_elem]);
-					
-					var pt = getBBintersect(start_x, start_y, bb);
-					setPoint(cur_line, 'end', pt.x, pt.y, true);
-					$(cur_line)
-						.data("c_start", start_id)
-						.data("c_end", end_id)
-						.data("end_bb", bb);
-					se_ns = svgCanvas.getEditorNS(true);
-					cur_line.setAttributeNS(se_ns, "se:connector", conn_str);
-					cur_line.setAttribute('class', conn_sel.substr(1));
-					cur_line.setAttribute('opacity', 1);
-					svgCanvas.addToSelection([cur_line]);
-					svgCanvas.moveToBottomSelectedElement();
-					selManager.requestSelector(cur_line).showGrips(false);
-					started = false;
-					return {
-						keep: true,
-						element: cur_line,
-						started: started
-					}
-				}
-			}
-		},
-		selectedChanged: function(opts) {
-			
-			// Use this to update the current selected elements
-			selElems = opts.elems;
-			
-			var i = selElems.length;
-			
-			while(i--) {
-				var elem = selElems[i];
-				if(elem && $(elem).data('c_start')) {
-					selManager.requestSelector(elem).showGrips(false);
-					if(opts.selectedElement && !opts.multiselected) {
-						// TODO: Set up context tools and hide most regular line tools
-						showPanel(true);
-					} else {
-						showPanel(false);
-					}
-				} else {
-					showPanel(false);
-				}
-			}
-		},
-		elementChanged: function(opts) {
-			var elem = opts.elems[0];
-			if (elem && elem.tagName == 'svg' && elem.id == "svgcontent") {
-				// Update svgcontent (can change on import)
-				svgcontent = elem;
-				init();
-			}
-			
-			// Has marker, so change offset
-			if(elem && (
-				elem.getAttribute("marker-start") ||
-				elem.getAttribute("marker-mid") ||
-				elem.getAttribute("marker-end")
-			)) {
-				var start = elem.getAttribute("marker-start");
-				var mid = elem.getAttribute("marker-mid");
-				var end = elem.getAttribute("marker-end");
-				cur_line = elem;
-				$(elem)
-					.data("start_off", !!start)
-					.data("end_off", !!end);
-				
-				if(elem.tagName == "line" && mid) {
-					// Convert to polyline to accept mid-arrow
-					
-					var x1 = elem.getAttribute('x1')-0;
-					var x2 = elem.getAttribute('x2')-0;
-					var y1 = elem.getAttribute('y1')-0;
-					var y2 = elem.getAttribute('y2')-0;
-					var id = elem.id;
-					
-					var mid_pt = (' '+((x1+x2)/2)+','+((y1+y2)/2) + ' ');
-					var pline = addElem({
-						"element": "polyline",
-						"attr": {
-							"points": (x1+','+y1+ mid_pt +x2+','+y2),
-							"stroke": elem.getAttribute('stroke'),
-							"stroke-width": elem.getAttribute('stroke-width'),
-							"marker-mid": mid,
-							"fill": "none",
-							"opacity": elem.getAttribute('opacity') || 1
-						}
-					});
-					$(elem).after(pline).remove();
-					svgCanvas.clearSelection();
-					pline.id = id;
-					svgCanvas.addToSelection([pline]);
-				}
-					
-			}
-			updateConnectors();
-		},
-		toolButtonStateUpdate: function(opts) {
-			if(opts.nostroke) {
-				if ($('#mode_connect').hasClass('tool_button_current')) {
-					clickSelect();
-				}
-			}
-			$('#mode_connect')
-				.toggleClass('disabled',opts.nostroke);
-		}
-	};
-});
--- a/htdocs/svg-edit/editor/extensions/ext-eyedropper.js	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,90 +0,0 @@
-/*
- * ext-eyedropper.js
- *
- * Licensed under the Apache License, Version 2
- *
- * Copyright(c) 2010 Jeff Schiller
- *
- */
-
-svgEditor.addExtension("eyedropper", function(S) {
-		var svgcontent = S.svgcontent,
-			svgns = "http://www.w3.org/2000/svg",
-			svgdoc = S.svgroot.parentNode.ownerDocument,
-			ChangeElementCommand = svgCanvas.getPrivateMethods().ChangeElementCommand,
-			addToHistory = svgCanvas.getPrivateMethods().addCommandToHistory,
-			currentStyle = {fillPaint: "red", fillOpacity: 1.0,
-							strokePaint: "black", strokeOpacity: 1.0, 
-							strokeWidth: 5, strokeDashArray: null,
-							opacity: 1.0 };
-		
-		return {
-			name: "eyedropper",
-			svgicons: "extensions/eyedropper-icon.xml",
-			buttons: [{
-				id: "tool_eyedropper",
-				type: "mode",
-				title: "Eye Dropper Tool",
-				events: {
-					"click": function() {
-						svgCanvas.setMode("eyedropper");
-					}
-				}
-			}],
-			
-			// if we have selected an element, grab its paint and enable the eye dropper button
-			selectedChanged: function(opts) {
-				// if we are in eyedropper mode, we don't want to disable the eye-dropper tool
-				var mode = svgCanvas.getMode();
-				if (mode == "eyedropper") return;
-
-				var elem = null;
-				var tool = $('#tool_eyedropper');
-				// enable-eye-dropper if one element is selected
-				if (opts.elems.length == 1 && opts.elems[0] && 
-					$.inArray(opts.elems[0].nodeName, ['svg', 'g', 'use']) == -1) 
-				{
-					elem = opts.elems[0];
-					tool.removeClass('disabled');
-					// grab the current style
-					currentStyle.fillPaint = elem.getAttribute("fill") || "black";
-					currentStyle.fillOpacity = elem.getAttribute("fill-opacity") || 1.0;
-					currentStyle.strokePaint = elem.getAttribute("stroke");
-					currentStyle.strokeOpacity = elem.getAttribute("stroke-opacity") || 1.0;
-					currentStyle.strokeWidth = elem.getAttribute("stroke-width");
-					currentStyle.strokeDashArray = elem.getAttribute("stroke-dasharray");
-					currentStyle.opacity = elem.getAttribute("opacity") || 1.0;
-				}
-				// disable eye-dropper tool
-				else {
-					tool.addClass('disabled');
-				}
-			},
-			
-			mouseDown: function(opts) {
-				var mode = svgCanvas.getMode();
-				if (mode == "eyedropper") {
-					var e = opts.event;
-					var target = e.target;
-					if ($.inArray(target.nodeName, ['svg', 'g', 'use']) == -1) {
-						var changes = {};
-
-						var change = function(elem, attrname, newvalue) {
-							changes[attrname] = elem.getAttribute(attrname);
-							elem.setAttribute(attrname, newvalue);
-						};
-						
-						if (currentStyle.fillPaint) 		change(target, "fill", currentStyle.fillPaint);
-						if (currentStyle.fillOpacity) 		change(target, "fill-opacity", currentStyle.fillOpacity);
-						if (currentStyle.strokePaint) 		change(target, "stroke", currentStyle.strokePaint);
-						if (currentStyle.strokeOpacity) 	change(target, "stroke-opacity", currentStyle.strokeOpacity);
-						if (currentStyle.strokeWidth) 		change(target, "stroke-width", currentStyle.strokeWidth);
-						if (currentStyle.strokeDashArray) 	change(target, "stroke-dasharray", currentStyle.strokeDashArray);
-						if (currentStyle.opacity) 			change(target, "opacity", currentStyle.opacity);
-						
-						addToHistory(new ChangeElementCommand(target, changes));
-					}
-				}
-			},
-		};
-});
--- a/htdocs/svg-edit/editor/extensions/ext-foreignobject.js	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,277 +0,0 @@
-/*
- * ext-foreignobject.js
- *
- * Licensed under the Apache License, Version 2
- *
- * Copyright(c) 2010 Jacques Distler 
- * Copyright(c) 2010 Alexis Deveria 
- *
- */
-
-svgEditor.addExtension("foreignObject", function(S) {
-		var svgcontent = S.svgcontent,
-			addElem = S.addSvgElementFromJson,
-			selElems,
-			svgns = "http://www.w3.org/2000/svg",
-			xlinkns = "http://www.w3.org/1999/xlink",
-			xmlns = "http://www.w3.org/XML/1998/namespace",
-			xmlnsns = "http://www.w3.org/2000/xmlns/",
-			se_ns = "http://svg-edit.googlecode.com",
-			htmlns = "http://www.w3.org/1999/xhtml",
-			mathns = "http://www.w3.org/1998/Math/MathML",
-			editingforeign = false,
-			svgdoc = S.svgroot.parentNode.ownerDocument,
-			started,
-			newFO;
-			
-			
-		var properlySourceSizeTextArea = function(){
-			// TODO: remove magic numbers here and get values from CSS
-			var height = $('#svg_source_container').height() - 80;
-			$('#svg_source_textarea').css('height', height);
-		};
-
-		function showPanel(on) {
-			var fc_rules = $('#fc_rules');
-			if(!fc_rules.length) {
-				fc_rules = $('<style id="fc_rules"><\/style>').appendTo('head');
-			} 
-			fc_rules.text(!on?"":" #tool_topath { display: none !important; }");
-			$('#foreignObject_panel').toggle(on);
-		}
-
-		function toggleSourceButtons(on) {
-			$('#tool_source_save, #tool_source_cancel').toggle(!on);
-			$('#foreign_save, #foreign_cancel').toggle(on);
-		}
-		
-			
-		// Function: setForeignString(xmlString, elt)
-		// This function sets the content of element elt to the input XML.
-		//
-		// Parameters:
-		// xmlString - The XML text.
-		// elt - the parent element to append to
-		//
-		// Returns:
-		// This function returns false if the set was unsuccessful, true otherwise.
-		function setForeignString(xmlString) {
-			var elt = selElems[0];
-			try {
-				// convert string into XML document
-				var newDoc = Utils.text2xml('<svg xmlns="'+svgns+'" xmlns:xlink="'+xlinkns+'">'+xmlString+'</svg>');
-				// run it through our sanitizer to remove anything we do not support
-				S.sanitizeSvg(newDoc.documentElement);
-				elt.parentNode.replaceChild(svgdoc.importNode(newDoc.documentElement.firstChild, true), elt);
-				S.call("changed", [elt]);
-				svgCanvas.clearSelection();
-			} catch(e) {
-				console.log(e);
-				return false;
-			}
-	
-			return true;
-		};
-
-		function showForeignEditor() {
-			var elt = selElems[0];
-			if (!elt || editingforeign) return;
-			editingforeign = true;
-			toggleSourceButtons(true);
-			elt.removeAttribute('fill');
-
-			var str = S.svgToString(elt, 0);
-			$('#svg_source_textarea').val(str);
-			$('#svg_source_editor').fadeIn();
-			properlySourceSizeTextArea();
-			$('#svg_source_textarea').focus();
-		}
-		
-		function setAttr(attr, val) {
-			svgCanvas.changeSelectedAttribute(attr, val);
-			S.call("changed", selElems);
-		}
-		
-		
-		return {
-			name: "foreignObject",
-			svgicons: "extensions/foreignobject-icons.xml",
-			buttons: [{
-				id: "tool_foreign",
-				type: "mode",
-				title: "Foreign Object Tool",
-				events: {
-					'click': function() {
-						svgCanvas.setMode('foreign')
-					}
-				}
-			},{
-				id: "edit_foreign",
-				type: "context",
-				panel: "foreignObject_panel",
-				title: "Edit ForeignObject Content",
-				events: {
-					'click': function() {
-						showForeignEditor();
-					}
-				}
-			}],
-			
-			context_tools: [{
-				type: "input",
-				panel: "foreignObject_panel",
-				title: "Change foreignObject's width",
-				id: "foreign_width",
-				label: "w",
-				size: 3,
-				events: {
-					change: function() {
-						setAttr('width', this.value);
-					}
-				}
-			},{
-				type: "input",
-				panel: "foreignObject_panel",
-				title: "Change foreignObject's height",
-				id: "foreign_height",
-				label: "h",
-				events: {
-					change: function() {
-						setAttr('height', this.value);
-					}
-				}
-			}, {
-				type: "input",
-				panel: "foreignObject_panel",
-				title: "Change foreignObject's font size",
-				id: "foreign_font_size",
-				label: "font-size",
-				size: 2,
-				defval: 16,
-				events: {
-					change: function() {
-						setAttr('font-size', this.value);
-					}
-				}
-			}
-			
-			
-			],
-			callback: function() {
-				$('#foreignObject_panel').hide();
-
-				var endChanges = function() {
-					$('#svg_source_editor').hide();
-					editingforeign = false;
-					$('#svg_source_textarea').blur();
-					toggleSourceButtons(false);
-				}
-
-				// TODO: Needs to be done after orig icon loads
-				setTimeout(function() {				
-					// Create source save/cancel buttons
-					var save = $('#tool_source_save').clone()
-						.hide().attr('id', 'foreign_save').unbind()
-						.appendTo("#tool_source_back").click(function() {
-							
-							if (!editingforeign) return;
-
-							if (!setForeignString($('#svg_source_textarea').val())) {
-								$.confirm("Errors found. Revert to original?", function(ok) {
-									if(!ok) return false;
-									endChanges();
-								});
-							} else {
-								endChanges();
-							}
-							// setSelectMode();	
-						});
-						
-					var cancel = $('#tool_source_cancel').clone()
-						.hide().attr('id', 'foreign_cancel').unbind()
-						.appendTo("#tool_source_back").click(function() {
-							endChanges();
-						});
-					
-				}, 3000);
-			},
-			mouseDown: function(opts) {
-				var e = opts.event;
-				
-				if(svgCanvas.getMode() == "foreign") {
-
-					started = true;
-					newFO = S.addSvgElementFromJson({
-						"element": "foreignObject",
-						"attr": {
-							"x": opts.start_x,
-							"y": opts.start_y,
-							"id": S.getNextId(),
-							"font-size": 16, //cur_text.font_size,
-							"width": "48",
-							"height": "20",
-							"style": "pointer-events:inherit"
-						}
-					});
-					var m = svgdoc.createElementNS(mathns, 'math');
-					m.setAttributeNS(xmlnsns, 'xmlns', mathns);
-					m.setAttribute('display', 'inline');
-					var mi = svgdoc.createElementNS(mathns, 'mi');
-					mi.setAttribute('mathvariant', 'normal');
-					mi.textContent = "\u03A6";
-					var mo = svgdoc.createElementNS(mathns, 'mo');
-					mo.textContent = "\u222A";
-					var mi2 = svgdoc.createElementNS(mathns, 'mi');
-					mi2.textContent = "\u2133";
-					m.appendChild(mi);
-					m.appendChild(mo);
-					m.appendChild(mi2);
-					newFO.appendChild(m);
-					return {
-						started: true
-					}
-				}
-			},
-			mouseUp: function(opts) {
-				var e = opts.event;
-				if(svgCanvas.getMode() == "foreign" && started) {
-					var attrs = $(newFO).attr(["width", "height"]);
-					keep = (attrs.width != 0 || attrs.height != 0);
-					svgCanvas.addToSelection([newFO], true);
-
-					return {
-						keep: keep,
-						element: newFO
-					}
-
-				}
-				
-			},
-			selectedChanged: function(opts) {
-				// Use this to update the current selected elements
-				selElems = opts.elems;
-				
-				var i = selElems.length;
-				
-				while(i--) {
-					var elem = selElems[i];
-					if(elem && elem.tagName == "foreignObject") {
-						if(opts.selectedElement && !opts.multiselected) {
-							$('#foreign_font_size').val(elem.getAttribute("font-size"));
-							$('#foreign_width').val(elem.getAttribute("width"));
-							$('#foreign_height').val(elem.getAttribute("height"));
-						
-							showPanel(true);
-						} else {
-							showPanel(false);
-						}
-					} else {
-						showPanel(false);
-					}
-				}
-			},
-			elementChanged: function(opts) {
-				var elem = opts.elems[0];
-			}
-		};
-});
--- a/htdocs/svg-edit/editor/extensions/ext-helloworld.js	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,78 +0,0 @@
-/*
- * ext-helloworld.js
- *
- * Licensed under the Apache License, Version 2
- *
- * Copyright(c) 2010 Alexis Deveria
- *
- */
- 
-/* 
-	This is a very basic SVG-Edit extension. It adds a "Hello World" button in
-	the left panel. Clicking on the button, and then the canvas will show the
- 	user the point on the canvas that was clicked on.
-*/
- 
-svgEditor.addExtension("Hello World", function() {
-
-		return {
-			name: "Hello World",
-			// For more notes on how to make an icon file, see the source of
-			// the hellorworld-icon.xml
-			svgicons: "extensions/helloworld-icon.xml",
-			
-			// Multiple buttons can be added in this array
-			buttons: [{
-				// Must match the icon ID in helloworld-icon.xml
-				id: "hello_world", 
-				
-				// This indicates that the button will be added to the "mode"
-				// button panel on the left side
-				type: "mode", 
-				
-				// Tooltip text
-				title: "Say 'Hello World'", 
-				
-				// Events
-				events: {
-					'click': function() {
-						// The action taken when the button is clicked on.
-						// For "mode" buttons, any other button will 
-						// automatically be de-pressed.
-						svgCanvas.setMode("hello_world");
-					}
-				}
-			}],
-			// This is triggered when the main mouse button is pressed down 
-			// on the editor canvas (not the tool panels)
-			mouseDown: function() {
-				// Check the mode on mousedown
-				if(svgCanvas.getMode() == "hello_world") {
-				
-					// The returned object must include "started" with 
-					// a value of true in order for mouseUp to be triggered
-					return {started: true};
-				}
-			},
-			
-			// This is triggered from anywhere, but "started" must have been set
-			// to true (see above). Note that "opts" is an object with event info
-			mouseUp: function(opts) {
-				// Check the mode on mouseup
-				if(svgCanvas.getMode() == "hello_world") {
-					var zoom = svgCanvas.getZoom();
-					
-					// Get the actual coordinate by dividing by the zoom value
-					var x = opts.mouse_x / zoom;
-					var y = opts.mouse_y / zoom;
-					
-					var text = "Hello World!\n\nYou clicked here: " 
-						+ x + ", " + y;
-						
-					// Show the text using the custom alert function
-					$.alert(text);
-				}
-			}
-		};
-});
-
--- a/htdocs/svg-edit/editor/extensions/eyedropper-icon.xml	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,34 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg">
-
-<g id="tool_eyedropper">
-<svg viewBox="0 0 320 320" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <!-- Created with SVG-edit - http://svg-edit.googlecode.com/ -->
- <defs>
-  <radialGradient id="eyedropper_svg_6" cx="0.5" cy="0.5" r="0.5">
-   <stop offset="0" stop-color="#ffffff" stop-opacity="1"/>
-   <stop offset="1" stop-color="#e5e5e5" stop-opacity="0.38"/>
-  </radialGradient>
-  <linearGradient id="eyedropper_svg_15" x1="0" y1="0" x2="0.58594" y2="0.55078">
-   <stop offset="0" stop-color="#ffffff" stop-opacity="0.57"/>
-   <stop offset="1" stop-color="#000056" stop-opacity="1"/>
-  </linearGradient>
-  <linearGradient id="eyedropper_svg_19" x1="0" y1="0" x2="1" y2="1">
-   <stop offset="0" stop-color="#ffffff" stop-opacity="1"/>
-   <stop offset="1" stop-color="#ffffff" stop-opacity="0"/>
-  </linearGradient>
- </defs>
- <g display="inline">
-  <title>Layer 1</title>
-  <path d="m193.899994,73l-119.899979,118l-15,39.5l10.25,4.5l43.750015,-20l108.999969,-112l-28.100006,-30z" id="svg_3" fill="none" stroke="#000000" stroke-width="5"/>
-  <path d="m58.649994,232c-2.75,28.200012 -26.399994,28.950012 -21.899994,59c4.5,30.049988 55,28 55.5,-1.25c0.5,-29.25 -20.25,-28.75 -22.25,-54.75l-11.350006,-3z" id="svg_4" fill="#aa56ff" stroke="#000000" stroke-width="7"/>
-  <path d="m45.474976,269.275024l13.775024,0.474976l-0.75,16.75l-14.25,-1.25l1.224976,-15.974976z" id="svg_5" fill="url(#eyedropper_svg_6)" stroke-width="5" fill-opacity="0.73"/>
-  <path d="m217.899994,46c21.5,-101.549999 141.600006,20.449997 28.100006,33l-5,44l-63,-66l39.899994,-11z" id="svg_2" fill="#000000" stroke-width="5"/>
-  <path d="m206.825012,61.075008c3.712494,-2.46249 7.637482,-3.53751 14.424988,-5.575008c10.125,-16.5 32.875,-41.5 40.5,-35c7.625,6.5 -21.25,35.625 -37.5,39.25c-5.5,10.125 -8,13.875 -17.25,16.5c-2.837494,-8.162514 -4.262482,-12.337486 -0.174988,-15.174992z" id="svg_7" fill="url(#eyedropper_svg_15)" stroke-width="5"/>
-  <path d="m133.049988,134.75l46.950012,9.25l-66,70l-42.5,20.5l-11.5,-5l14,-37.5l59.049988,-57.25z" id="svg_11" fill="#aa56ff" stroke="#000000" stroke-width="7"/>
-  <path d="m71.425034,212.350006l9.050888,-20.022537l51.516724,-49.327469l8.507355,0.97197l-69.074966,68.378036z" id="svg_16" fill="url(#eyedropper_svg_19)" stroke-width="5"/>
- </g>
-</svg>
-</g>
-	
-	<g id="svg_eof"/>
-</svg>
\ No newline at end of file
Binary file htdocs/svg-edit/editor/extensions/eyedropper.png has changed
--- a/htdocs/svg-edit/editor/extensions/foreignobject-icons.xml	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,96 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg">
-	<g id="tool_foreign">
-		<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 84 84">
-		  <g fill="#444" opacity="0.2" transform="translate(6,6)">
-		  <path d="M42.8,74.3c0,4.3,0,5.9,11.8,5.9l4.1,0l0,3.8c-4.5-0.4-16.1-0.4-21.2-0.3c-5.1,0-16.6,0-21,0.4l0-3.8l4.1,0
-			c11.8,0,11.8-1.7,11.8-5.9l0-6.9C13.9,65.6,0,54.6,0,42c0-12.2,13.3-23.5,32.4-25.4l0-6.9c0-4.3,0-5.9-11.8-5.9l-4.1,0l0-3.8
-			c4.5,0.4,16.1,0.4,21.2,0.3c5.1,0,16.6,0,21-0.4l0,3.8l-4.1,0c-11.8,0-11.8,1.7-11.8,5.9l0,6.9C61.6,18.1,75.8,29.2,75.8,42
-			c0,12.4-13.8,23.9-33.1,25.4L42.8,74.3z M32.4,19.4c-18.7,2.5-19.9,16.2-19.9,22.6c0,7.6,2.3,20.2,20,22.5L32.4,19.4z M42.7,64.7
-			c18.8-2.2,20.7-15.4,20.6-22.8c0-9.3-3.5-20.6-20.7-22.6L42.7,64.7z"/>
-		  </g>
-		  <g fill="#444" opacity="0.3" transform="translate(4,4)">
-		  <path d="M42.8,74.3c0,4.3,0,5.9,11.8,5.9l4.1,0l0,3.8c-4.5-0.4-16.1-0.4-21.2-0.3c-5.1,0-16.6,0-21,0.4l0-3.8l4.1,0
-			c11.8,0,11.8-1.7,11.8-5.9l0-6.9C13.9,65.6,0,54.6,0,42c0-12.2,13.3-23.5,32.4-25.4l0-6.9c0-4.3,0-5.9-11.8-5.9l-4.1,0l0-3.8
-			c4.5,0.4,16.1,0.4,21.2,0.3c5.1,0,16.6,0,21-0.4l0,3.8l-4.1,0c-11.8,0-11.8,1.7-11.8,5.9l0,6.9C61.6,18.1,75.8,29.2,75.8,42
-			c0,12.4-13.8,23.9-33.1,25.4L42.8,74.3z M32.4,19.4c-18.7,2.5-19.9,16.2-19.9,22.6c0,7.6,2.3,20.2,20,22.5L32.4,19.4z M42.7,64.7
-			c18.8-2.2,20.7-15.4,20.6-22.8c0-9.3-3.5-20.6-20.7-22.6L42.7,64.7z"/>
-		  </g>
-		  <g fill="#444" opacity="0.5" transform="translate(2,2)">
-		  <path d="M42.8,74.3c0,4.3,0,5.9,11.8,5.9l4.1,0l0,3.8c-4.5-0.4-16.1-0.4-21.2-0.3c-5.1,0-16.6,0-21,0.4l0-3.8l4.1,0
-			c11.8,0,11.8-1.7,11.8-5.9l0-6.9C13.9,65.6,0,54.6,0,42c0-12.2,13.3-23.5,32.4-25.4l0-6.9c0-4.3,0-5.9-11.8-5.9l-4.1,0l0-3.8
-			c4.5,0.4,16.1,0.4,21.2,0.3c5.1,0,16.6,0,21-0.4l0,3.8l-4.1,0c-11.8,0-11.8,1.7-11.8,5.9l0,6.9C61.6,18.1,75.8,29.2,75.8,42
-			c0,12.4-13.8,23.9-33.1,25.4L42.8,74.3z M32.4,19.4c-18.7,2.5-19.9,16.2-19.9,22.6c0,7.6,2.3,20.2,20,22.5L32.4,19.4z M42.7,64.7
-			c18.8-2.2,20.7-15.4,20.6-22.8c0-9.3-3.5-20.6-20.7-22.6L42.7,64.7z"/>
-		  </g>
-		  <g fill="#0000CC">
-		  <path id="xyz321" d="M42.8,74.3c0,4.3,0,5.9,11.8,5.9l4.1,0l0,3.8c-4.5-0.4-16.1-0.4-21.2-0.3c-5.1,0-16.6,0-21,0.4l0-3.8l4.1,0
-			c11.8,0,11.8-1.7,11.8-5.9l0-6.9C13.9,65.6,0,54.6,0,42c0-12.2,13.3-23.5,32.4-25.4l0-6.9c0-4.3,0-5.9-11.8-5.9l-4.1,0l0-3.8
-			c4.5,0.4,16.1,0.4,21.2,0.3c5.1,0,16.6,0,21-0.4l0,3.8l-4.1,0c-11.8,0-11.8,1.7-11.8,5.9l0,6.9C61.6,18.1,75.8,29.2,75.8,42
-			c0,12.4-13.8,23.9-33.1,25.4L42.8,74.3z M32.4,19.4c-18.7,2.5-19.9,16.2-19.9,22.6c0,7.6,2.3,20.2,20,22.5L32.4,19.4z M42.7,64.7
-			c18.8-2.2,20.7-15.4,20.6-22.8c0-9.3-3.5-20.6-20.7-22.6L42.7,64.7z"/>
-		  </g>
-		</svg>
-	</g>
-	
-	<g id="edit_foreign">
-		<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="34 38 170 170" overflow="hidden">
-		<g fill="#000088">
-			<path d="M30.1,63.9v-4.3l30.2-14.9V50L36.5,61.7l23.8,11.7v5.3L30.1,63.9z"/>
-			<path d="M106.1,79.7v-1.1c4.2-0.5,4.8-1.1,4.8-5.2V58.2c0-6-1.3-7.9-5.4-7.9c-3.3,0-5.7,1.3-7.8,4.4v18.1
-				c0,4.5,1.1,5.7,5.2,5.8v1.1H86.8v-1.1c4.1-0.3,4.9-1.1,4.9-5.1V57.9c0-5-1.6-7.6-4.8-7.6c-2.5,0-5.6,1.2-7.4,2.9
-				c-0.5,0.5-1.1,1.4-1.1,1.4v20.3c0,2.8,1.1,3.6,4.9,3.7v1.1h-16v-1.1c4-0.1,5-1.2,5-5V55.4c0-3.5-0.6-4.6-2.5-4.6
-				c-0.8,0-1.4,0.1-2.3,0.3v-1.2c4-1.1,6.4-1.9,10.1-3.2l0.5,0.1v5.4c6-4.5,8-5.5,11.2-5.5c3.9,0,6.3,1.9,7.6,6c3.9-4.2,7.6-6,11.7-6
-				c5.5,0,8.4,4.3,8.4,12.8v14.8c0,2.8,0.9,4.1,3.1,4.2l1.9,0.1v1.1H106.1z"/>
-			<path d="M147.3,80.5c-3,0-4.2-1.4-4.6-5.3c-4.4,3.7-7.3,5.3-10.5,5.3c-4.5,0-7.6-3.2-7.6-7.7c0-2.4,1-4.8,2.6-6.3
-				c3.1-2.7,4.3-3.3,15.4-7.8v-4.4c0-3.9-1.9-6-5.5-6c-2.9,0-5.2,1.6-5.2,3.5c0,0.5,0.1,1.1,0.2,1.7c0.1,0.5,0.1,0.9,0.1,1.2
-				c0,1.6-1.5,3-3.2,3s-3.1-1.4-3.1-3.1c0-1.8,1.2-3.9,3-5.4c2-1.7,5.5-2.7,9.1-2.7c4.4,0,7.5,1.4,9,4.2c1,1.7,1.4,3.7,1.4,7.3v14
-				c0,3.2,0.5,4.2,2.2,4.2c1.1,0,1.9-0.4,3.2-1.4v1.9C151.3,79.6,149.8,80.5,147.3,80.5z M142.6,60.5c-8.7,3.2-11.7,5.8-11.7,10v0.3
-				c0,3.1,2,5.5,4.5,5.5c1.5,0,3.5-0.6,5.3-1.6c1.5-0.9,1.9-1.6,1.9-3.8V60.5z"/>
-			<path d="M165.3,80.5c-4.2,0-6.3-3.1-6.3-9.1V49.7h-3.8c-0.2-0.1-0.3-0.3-0.3-0.5c0-0.4,0.4-0.9,1.2-1.4
-				c1.9-1.1,4.3-3.7,7-7.7c0.5-0.6,1-1.3,1.4-2c0.4,0,0.5,0.2,0.5,0.9v8.4h7.3v2.3h-7.3v20.6c0,4.6,1.1,6.5,3.7,6.5
-				c1.6,0,2.7-0.6,4.3-2.5l0.9,0.8C171.8,78.7,169,80.5,165.3,80.5z"/>
-			<path d="M193.8,79.7v-1.1c4.1-0.4,4.9-1.3,4.9-6.2V58.1c0-5-1.8-7.6-5.4-7.6c-2.8,0-5,1.2-8,4.5v17.4
-				c0,5,0.7,5.8,4.9,6.3v1.1h-15.6v-1.1c4.2-0.6,4.6-1.2,4.6-6.3V38.5c0-3.1-0.6-3.7-3.7-3.7c-0.4,0-0.6,0-0.9,0.1v-1.2l1.9-0.6
-				c4-1.2,5.8-1.7,8.3-2.6l0.4,0.2v21.9c3.3-4.3,6.3-6,10.6-6c5.9,0,8.9,3.9,8.9,11.5v14.3c0,5,0.4,5.5,4.3,6.3v1.1h-15.2V79.7z"/>
-			<path d="M59.1,116.1v-4.3l30.2-14.9v5.3l-23.8,11.7l23.8,11.7v5.3L59.1,116.1z"/>
-			<path d="M135.1,131.9v-1.1c4.2-0.5,4.8-1.1,4.8-5.2v-15.1c0-6-1.3-7.9-5.4-7.9c-3.3,0-5.7,1.3-7.8,4.4v18.1
-				c0,4.5,1.1,5.7,5.2,5.8v1.1h-16.1v-1.1c4.1-0.3,4.9-1.1,4.9-5.1v-15.7c0-5-1.6-7.6-4.8-7.6c-2.5,0-5.6,1.2-7.4,2.9
-				c-0.5,0.5-1.1,1.4-1.1,1.4v20.3c0,2.8,1.1,3.6,4.9,3.7v1.1h-16v-1.1c4-0.1,5-1.2,5-5v-18.2c0-3.5-0.6-4.6-2.5-4.6
-				c-0.8,0-1.4,0.1-2.3,0.3v-1.2c4-1.1,6.4-1.9,10.1-3.2l0.5,0.1v5.4c6-4.5,8-5.5,11.2-5.5c3.9,0,6.3,1.9,7.6,6c3.9-4.2,7.6-6,11.7-6
-				c5.5,0,8.4,4.3,8.4,12.8v14.8c0,2.8,0.9,4.1,3.1,4.2l1.9,0.1v1.1H135.1z"/>
-			<path d="M152.1,131.9v-1.1c5-0.3,5.7-1.1,5.7-6.3v-16.6c0-3.2-0.6-4.3-2.4-4.3c-0.6,0-1.6,0.1-2.4,0.2l-0.6,0.1v-1.1
-				l11.2-4L164,99v25.6c0,5.2,0.6,5.9,5.3,6.3v1.1L152.1,131.9L152.1,131.9z M160.8,93.1c-2,0-3.7-1.6-3.7-3.7c0-2,1.7-3.7,3.7-3.7
-				c2.1,0,3.7,1.7,3.7,3.7C164.6,91.6,163,93.1,160.8,93.1z"/>
-			<path d="M175.8,131v-5.3l23.7-11.8l-23.7-11.7v-5.3l30.1,14.9v4.3L175.8,131z"/>
-			<path d="M31.1,169.5v-4.3l30.2-14.9v5.3l-23.8,11.7L61.3,179v5.3L31.1,169.5z"/>
-			<path d="M71.3,186.4h-4.9l16.5-49.7h4.8L71.3,186.4z"/>
-			<path d="M127.1,185.3v-1.1c4.2-0.5,4.8-1.1,4.8-5.2v-15.2c0-6-1.3-7.9-5.4-7.9c-3.3,0-5.7,1.3-7.8,4.4v18.1
-				c0,4.5,1.1,5.7,5.2,5.8v1.1h-16.1v-1.1c4.1-0.3,4.9-1.1,4.9-5.1v-15.6c0-5-1.6-7.6-4.8-7.6c-2.5,0-5.6,1.2-7.4,2.9
-				c-0.5,0.5-1.1,1.4-1.1,1.4v20.3c0,2.8,1.1,3.6,4.9,3.7v1.1h-16v-1.1c4-0.1,5-1.2,5-5V161c0-3.5-0.6-4.6-2.5-4.6
-				c-0.8,0-1.4,0.1-2.3,0.3v-1.2c4-1.1,6.4-1.9,10.1-3.2l0.5,0.1v5.4c6-4.5,8-5.5,11.2-5.5c3.9,0,6.3,1.9,7.6,6c3.9-4.2,7.6-6,11.7-6
-				c5.5,0,8.4,4.3,8.4,12.8v14.8c0,2.8,0.9,4.1,3.1,4.2l1.9,0.1v1.1H127.1L127.1,185.3z"/>
-			<path d="M168.3,186.1c-3,0-4.2-1.4-4.6-5.3c-4.4,3.7-7.3,5.3-10.5,5.3c-4.5,0-7.6-3.2-7.6-7.7c0-2.4,1-4.8,2.6-6.3
-				c3.1-2.7,4.3-3.3,15.4-7.8v-4.4c0-3.9-1.9-6-5.5-6c-2.9,0-5.2,1.6-5.2,3.5c0,0.5,0.1,1.1,0.2,1.7c0.1,0.5,0.1,0.9,0.1,1.2
-				c0,1.6-1.5,3-3.2,3s-3.1-1.4-3.1-3.1c0-1.8,1.2-3.9,3-5.4c2-1.7,5.5-2.7,9.1-2.7c4.4,0,7.5,1.4,9,4.2c1,1.7,1.4,3.7,1.4,7.3v14
-				c0,3.2,0.5,4.2,2.2,4.2c1.1,0,1.9-0.4,3.2-1.4v1.9C172.3,185.2,170.8,186.1,168.3,186.1z M163.8,166.1c-8.7,3.2-11.7,5.8-11.7,10
-				v0.3c0,3.1,2,5.5,4.5,5.5c1.5,0,3.5-0.6,5.3-1.6c1.5-0.9,1.9-1.6,1.9-3.8V166.1z"/>
-			<path d="M186.3,186.1c-4.2,0-6.3-3.1-6.3-9.1v-21.7h-3.8c-0.2-0.1-0.3-0.3-0.3-0.5c0-0.4,0.4-0.9,1.2-1.4
-				c1.9-1.1,4.3-3.7,7-7.7c0.5-0.6,1-1.3,1.4-2c0.4,0,0.5,0.2,0.5,0.9v8.4h7.3v2.3h-7.3v20.6c0,4.6,1.1,6.5,3.7,6.5
-				c1.6,0,2.7-0.6,4.3-2.5l0.9,0.8C192.8,184.3,190,186.1,186.3,186.1z"/>
-			<path d="M209.1,185.3h-13.4v-1.1c4.2-0.6,4.6-1.2,4.6-6.3V144c0-3.1-0.6-3.7-3.7-3.7c-0.4,0-0.6,0-0.9,0.1v-1.2
-				l1.9-0.6c4-1.2,5.8-1.7,8.3-2.6l0.4,0.2v21.9c0.9-1.2,1.9-2.2,2.8-3.1"/>
-			<path d="M209.1,157.9c-0.8,0.7-1.7,1.5-2.7,2.6v17.4c0,4,0.4,5.3,2.7,5.9"/>
-		  </g>
-		  <g>
-			<polyline opacity="0.2" fill="#231F20" points="209.1,76.4 118.7,186.5 139.1,186.4 209.1,121 209.1,76.4 "/>
-			<polyline opacity="0.4" fill="#231F20" points="209.1,76.2 118.5,186.5 129.7,186.4 200.2,120.3 209.1,100.8 209.1,76.4 "/>
-			<path fill="#FFD761" d="M121.6,88.7l0.8,87.5l62.3-56.7c0,0-15.3-25.8-24.8-30C151.1,85.6,121.6,88.7,121.6,88.7z"/>
-			<path fill="#FEA01E" d="M209.1,19.5h-54l-33.5,69.2c0,0,29.7-3.4,38.3,0.8c8.9,4.4,25,30.8,25,30.8l24.2-50V19.5z"/>
-			<path d="M120.4,153.7l-0.6,25l23.8-16.9c0,0-8-7-11.2-8.1C129.4,152.8,120.4,153.7,120.4,153.7z"/>
-			<polyline fill="none" stroke="#231F20" stroke-width="5" points="153.9,19.5 121.6,88.7 120.7,181.2 186.6,120.3 209.1,70.3 "/>
-		  </g>
-		</svg>
-	</g>
-	
-	<g id="svg_eof"/>
-</svg>
\ No newline at end of file
--- a/htdocs/svg-edit/editor/extensions/helloworld-icon.xml	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg">
-<!-- 
-	Sample icons file. This file looks like an SVG file with groups as its
-	children. Each group element has an ID that must match the ID of the button given
-	in the extension. The SVG inside the group makes up the actual icon, and
-	needs use a viewBox instead of width/height for it to scale	properly.
-	
-	Multiple icons can be included, each within their own group.
--->
-	<g id="hello_world">
-		<svg width="102" height="102" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-		 <!-- Created with SVG-edit - http://svg-edit.googlecode.com/ -->
-		 <g>
-		  <title>Layer 1</title>
-		  <rect ry="30" rx="30" x="2.5" y="2.5" width="97" height="97" id="svg_3" fill="#008000" stroke="#000000" stroke-width="5"/>
-		  <text x="52.668" y="42.5" id="svg_1" fill="#ffffff" stroke="#000000" stroke-width="0" font-size="24" font-family="Monospace" text-anchor="middle" xml:space="preserve">Hello</text>
-		  <text x="52.668" y="71.5" fill="#ffffff" stroke="#000000" stroke-width="0" font-size="24" font-family="Monospace" text-anchor="middle" xml:space="preserve" id="svg_2">World!</text>
-		 </g>
-		</svg>
-	</g>
-</svg>
\ No newline at end of file
--- a/htdocs/svg-edit/editor/images/README.txt	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-filename                        origin
-
-align-bottom.png                http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/actions/align-vertical-bottom.png
-align-bottom.svg                http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/actions/align-vertical-bottom.svg
-align-center.png                http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/actions/align-horizontal-center.png
-align-center.svg                http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/actions/align-horizontal-center.svg
-align-left.png                  http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/actions/align-horizontal-left.png
-align-left.svg                  http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/actions/align-horizontal-left.svg
-align-middle.png                http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/actions/align-vertical-center.png
-align-middle.svg                http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/actions/align-vertical-center.svg
-align-right.png                 http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/actions/align-horizontal-right.png
-align-right.svg                 http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/actions/align-horizontal-right.svg
-align-top.png                   http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/actions/align-vertical-top.png
-align-top.svg                   http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/actions/align-vertical-top.svg
-bold.png
-cancel.png
-circle.png
-clear.png
-clone.png
-copy.png
-cut.png
-delete.png
-document-properties.png
-dropdown.gif
-ellipse.png
-eye.png
-flyouth.png
-flyup.gif
-freehand-circle.png
-freehand-square.png
-go-down.png
-go-up.png
-image.png
-italic.png
-line.png
-logo.png
-logo.svg
-move_bottom.png
-move_top.png
-none.png
-open.png
-paste.png
-path.png
-polygon.png                     http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/tools/draw-polygon.png
-polygon.svg                     http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/tools/draw-polygon.svg
-rect.png
-redo.png
-rotate.png
-save.png
-select.png
-sep.png
-shape_group.png
-shape_ungroup.png
-source.png
-square.png
-text.png                        http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/tools/draw-text.png
-text.svg                        http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/tools/draw-text.svg
-undo.png
-view-refresh.png
-wave.png
-zoom.png                        http://tango.freedesktop.org/static/cvs/tango-art-libre/22x22/tools/page-magnifier.png
Binary file htdocs/svg-edit/editor/images/align-bottom.png has changed
--- a/htdocs/svg-edit/editor/images/align-bottom.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,277 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://web.resource.org/cc/"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="22"
-   height="22"
-   id="svg5741"
-   sodipodi:version="0.32"
-   inkscape:version="0.44+devel"
-   version="1.0"
-   sodipodi:docbase="/home/andreas/project/inkscape/22x22/actions"
-   sodipodi:docname="align-bottom-vertical.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape"
-   inkscape:export-filename="/home/andreas/project/inkscape/22x22/actions/align-bottom-vertical.png"
-   inkscape:export-xdpi="90"
-   inkscape:export-ydpi="90"
-   sodipodi:modified="true">
-  <defs
-     id="defs5743">
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2968"
-       id="linearGradient6938"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-1,0,0,-1,395.9999,981)"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2974"
-       id="linearGradient6936"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-1,0,0,-1,395.9999,981)"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2986"
-       id="linearGradient6934"
-       gradientUnits="userSpaceOnUse"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2980"
-       id="linearGradient6932"
-       gradientUnits="userSpaceOnUse"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-    <linearGradient
-       id="linearGradient2968"
-       inkscape:collect="always">
-      <stop
-         id="stop2970"
-         offset="0"
-         style="stop-color:#ce5c00;stop-opacity:1" />
-      <stop
-         id="stop2972"
-         offset="1"
-         style="stop-color:#ce5c00;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2968"
-       id="linearGradient6930"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-1,0,0,-1,395.9999,981)"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       id="linearGradient2974"
-       inkscape:collect="always">
-      <stop
-         id="stop2976"
-         offset="0"
-         style="stop-color:#fcaf3e;stop-opacity:1" />
-      <stop
-         id="stop2978"
-         offset="1"
-         style="stop-color:#fcaf3e;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2974"
-       id="linearGradient6928"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-1,0,0,-1,395.9999,981)"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-    <linearGradient
-       id="linearGradient2986"
-       inkscape:collect="always">
-      <stop
-         id="stop2988"
-         offset="0"
-         style="stop-color:#ce5c00;stop-opacity:1" />
-      <stop
-         id="stop2990"
-         offset="1"
-         style="stop-color:#ce5c00;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2986"
-       id="linearGradient6926"
-       gradientUnits="userSpaceOnUse"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       id="linearGradient2980"
-       inkscape:collect="always">
-      <stop
-         id="stop2982"
-         offset="0"
-         style="stop-color:#fcaf3e;stop-opacity:1" />
-      <stop
-         id="stop2984"
-         offset="1"
-         style="stop-color:#fcaf3e;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2980"
-       id="linearGradient6924"
-       gradientUnits="userSpaceOnUse"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-  </defs>
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="22.197802"
-     inkscape:cx="8"
-     inkscape:cy="9.8019802"
-     inkscape:current-layer="g6828"
-     showgrid="false"
-     inkscape:grid-bbox="true"
-     inkscape:document-units="px"
-     width="22px"
-     height="22px"
-     inkscape:window-width="1078"
-     inkscape:window-height="786"
-     inkscape:window-x="243"
-     inkscape:window-y="71" />
-  <metadata
-     id="metadata5746">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     id="layer1"
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer">
-    <g
-       style="display:inline"
-       id="g6828"
-       transform="translate(30.00011,90.000366)"
-       inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-       inkscape:export-xdpi="90"
-       inkscape:export-ydpi="90">
-      <g
-         style="display:inline"
-         id="g6838"
-         transform="translate(-30.00009,-1.0002798)"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90">
-        <rect
-           style="fill:#d3d7cf;fill-opacity:1;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
-           id="rect3052"
-           width="12"
-           height="7"
-           x="69.500122"
-           y="12.5"
-           transform="matrix(0,-1,1,0,0,0)"
-           inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-           inkscape:export-xdpi="90"
-           inkscape:export-ydpi="90" />
-        <rect
-           style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
-           id="rect3054"
-           width="10"
-           height="5.0000305"
-           x="70.500122"
-           y="13.5"
-           transform="matrix(0,-1,1,0,0,0)"
-           rx="0"
-           ry="0"
-           inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-           inkscape:export-xdpi="90"
-           inkscape:export-ydpi="90" />
-        <g
-           id="g3056"
-           transform="translate(-127,-559)"
-           inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-           inkscape:export-xdpi="90"
-           inkscape:export-ydpi="90">
-          <rect
-             transform="matrix(0,-1,1,0,0,0)"
-             y="129.49626"
-             x="-489.49979"
-             height="7.0035982"
-             width="17.999748"
-             id="rect3058"
-             style="color:#000000;fill:#d3d7cf;fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1.00024867;stroke-linecap:butt;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" />
-          <rect
-             transform="matrix(0,-1,1,0,0,0)"
-             y="130.50006"
-             x="-488.50009"
-             height="4.9998937"
-             width="15.999757"
-             id="rect3060"
-             style="color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00024891;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:2;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline"
-             rx="0"
-             ry="0" />
-        </g>
-        <g
-           id="g3294"
-           transform="translate(-187,-560)"
-           inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-           inkscape:export-xdpi="90"
-           inkscape:export-ydpi="90">
-          <rect
-             y="489.5"
-             x="196.49989"
-             height="1.9999999"
-             width="3.0000916"
-             id="rect3296"
-             style="fill:#fcaf3e;fill-opacity:1;stroke:#ce5c00;stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-          <path
-             style="fill:url(#linearGradient6932);fill-opacity:1;stroke:url(#linearGradient6934);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dashoffset:0;stroke-opacity:1"
-             d="M 197.49998,491.5 L 186.49989,491.5 L 186.49989,489.5 L 197.49998,489.5"
-             id="path3298"
-             sodipodi:nodetypes="cccc" />
-          <path
-             style="fill:url(#linearGradient6936);fill-opacity:1;stroke:url(#linearGradient6938);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dashoffset:0;stroke-opacity:1"
-             d="M 198.49989,489.5 L 209.49998,489.5 L 209.49998,491.5 L 198.49989,491.5"
-             id="path3300"
-             sodipodi:nodetypes="cccc" />
-        </g>
-      </g>
-    </g>
-  </g>
-</svg>
Binary file htdocs/svg-edit/editor/images/align-center.png has changed
--- a/htdocs/svg-edit/editor/images/align-center.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,252 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://web.resource.org/cc/"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="22"
-   height="22"
-   id="svg10958"
-   sodipodi:version="0.32"
-   inkscape:version="0.44+devel"
-   version="1.0"
-   sodipodi:docbase="/home/andreas/project/inkscape/22x22/actions"
-   sodipodi:docname="align-horisontal-center.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape"
-   inkscape:export-filename="/home/andreas/project/inkscape/22x22/actions/align-horisontal-center.png"
-   inkscape:export-xdpi="90"
-   inkscape:export-ydpi="90"
-   sodipodi:modified="true">
-  <defs
-     id="defs10960">
-    <linearGradient
-       id="linearGradient2968"
-       inkscape:collect="always">
-      <stop
-         id="stop2970"
-         offset="0"
-         style="stop-color:#ce5c00;stop-opacity:1" />
-      <stop
-         id="stop2972"
-         offset="1"
-         style="stop-color:#ce5c00;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2968"
-       id="linearGradient4708"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-395.9999,-981)"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       id="linearGradient2974"
-       inkscape:collect="always">
-      <stop
-         id="stop2976"
-         offset="0"
-         style="stop-color:#fcaf3e;stop-opacity:1" />
-      <stop
-         id="stop2978"
-         offset="1"
-         style="stop-color:#fcaf3e;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2974"
-       id="linearGradient4706"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-395.9999,-981)"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-    <linearGradient
-       id="linearGradient2986"
-       inkscape:collect="always">
-      <stop
-         id="stop2988"
-         offset="0"
-         style="stop-color:#ce5c00;stop-opacity:1" />
-      <stop
-         id="stop2990"
-         offset="1"
-         style="stop-color:#ce5c00;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2986"
-       id="linearGradient4704"
-       gradientUnits="userSpaceOnUse"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       id="linearGradient2980"
-       inkscape:collect="always">
-      <stop
-         id="stop2982"
-         offset="0"
-         style="stop-color:#fcaf3e;stop-opacity:1" />
-      <stop
-         id="stop2984"
-         offset="1"
-         style="stop-color:#fcaf3e;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2980"
-       id="linearGradient4702"
-       gradientUnits="userSpaceOnUse"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-  </defs>
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="11.197802"
-     inkscape:cx="16"
-     inkscape:cy="11.460711"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     inkscape:grid-bbox="true"
-     inkscape:document-units="px"
-     width="22px"
-     height="22px"
-     inkscape:window-width="797"
-     inkscape:window-height="628"
-     inkscape:window-x="0"
-     inkscape:window-y="47" />
-  <metadata
-     id="metadata10963">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     id="layer1"
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer">
-    <g
-       style="display:inline"
-       id="g4044"
-       transform="matrix(0,-1,1,0,-59.999911,-168.00002)"
-       inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-       inkscape:export-xdpi="90"
-       inkscape:export-ydpi="90">
-      <rect
-         style="fill:#d3d7cf;fill-opacity:1;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline"
-         id="rect3851"
-         width="12"
-         height="7"
-         x="-76.499878"
-         y="-177.5"
-         transform="matrix(0,-1,1,0,0,0)"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90" />
-      <g
-         transform="translate(-317,-410)"
-         id="g3853"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90"
-         style="display:inline">
-        <rect
-           transform="matrix(0,-1,1,0,0,0)"
-           y="129.49626"
-           x="-489.49979"
-           height="7.0035982"
-           width="17.999748"
-           id="rect3855"
-           style="color:#000000;fill:#d3d7cf;fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1.00024867;stroke-linecap:butt;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" />
-        <rect
-           transform="matrix(0,-1,1,0,0,0)"
-           y="130.50006"
-           x="-488.50009"
-           height="4.9998937"
-           width="15.999757"
-           id="rect3857"
-           style="color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00024891;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:2;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline"
-           rx="0"
-           ry="0" />
-      </g>
-      <rect
-         style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline"
-         id="rect3859"
-         width="10"
-         height="5.0000305"
-         x="-75.499878"
-         y="-176.5"
-         transform="matrix(0,-1,1,0,0,0)"
-         rx="0"
-         ry="0"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90" />
-      <g
-         id="g3861"
-         transform="translate(-377,-420)"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90"
-         style="display:inline">
-        <rect
-           y="489.5"
-           x="186.49989"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect3863"
-           style="fill:url(#linearGradient4702);fill-opacity:1;stroke:url(#linearGradient4704);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <rect
-           y="489.5"
-           x="191.49989"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect3865"
-           style="fill:#fcaf3e;fill-opacity:1;stroke:#ce5c00;stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <rect
-           y="489.5"
-           x="196.49989"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect3867"
-           style="fill:#fcaf3e;fill-opacity:1;stroke:#ce5c00;stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <rect
-           y="489.5"
-           x="201.49989"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect3869"
-           style="fill:#fcaf3e;fill-opacity:1;stroke:#ce5c00;stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <rect
-           transform="scale(-1,-1)"
-           y="-491.5"
-           x="-209.49998"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect3871"
-           style="fill:url(#linearGradient4706);fill-opacity:1;stroke:url(#linearGradient4708);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-      </g>
-    </g>
-  </g>
-</svg>
Binary file htdocs/svg-edit/editor/images/align-left.png has changed
--- a/htdocs/svg-edit/editor/images/align-left.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,235 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://web.resource.org/cc/"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="22"
-   height="22"
-   id="svg11272"
-   sodipodi:version="0.32"
-   inkscape:version="0.44+devel"
-   version="1.0"
-   sodipodi:docbase="/home/andreas/project/inkscape/22x22/actions"
-   sodipodi:docname="align-horisontal-left.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape"
-   inkscape:export-filename="/home/andreas/project/inkscape/22x22/actions/align-horisontal-left.png"
-   inkscape:export-xdpi="90"
-   inkscape:export-ydpi="90"
-   sodipodi:modified="true">
-  <defs
-     id="defs11274">
-    <linearGradient
-       id="linearGradient2968"
-       inkscape:collect="always">
-      <stop
-         id="stop2970"
-         offset="0"
-         style="stop-color:#ce5c00;stop-opacity:1" />
-      <stop
-         id="stop2972"
-         offset="1"
-         style="stop-color:#ce5c00;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2968"
-       id="linearGradient4716"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-1,0,0,-1,395.9999,981)"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       id="linearGradient2974"
-       inkscape:collect="always">
-      <stop
-         id="stop2976"
-         offset="0"
-         style="stop-color:#fcaf3e;stop-opacity:1" />
-      <stop
-         id="stop2978"
-         offset="1"
-         style="stop-color:#fcaf3e;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2974"
-       id="linearGradient4714"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-1,0,0,-1,395.9999,981)"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-    <linearGradient
-       id="linearGradient2986"
-       inkscape:collect="always">
-      <stop
-         id="stop2988"
-         offset="0"
-         style="stop-color:#ce5c00;stop-opacity:1" />
-      <stop
-         id="stop2990"
-         offset="1"
-         style="stop-color:#ce5c00;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2986"
-       id="linearGradient4712"
-       gradientUnits="userSpaceOnUse"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       id="linearGradient2980"
-       inkscape:collect="always">
-      <stop
-         id="stop2982"
-         offset="0"
-         style="stop-color:#fcaf3e;stop-opacity:1" />
-      <stop
-         id="stop2984"
-         offset="1"
-         style="stop-color:#fcaf3e;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2980"
-       id="linearGradient4710"
-       gradientUnits="userSpaceOnUse"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-  </defs>
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="11.197802"
-     inkscape:cx="16"
-     inkscape:cy="14.269093"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     inkscape:grid-bbox="true"
-     inkscape:document-units="px"
-     width="22px"
-     height="22px"
-     inkscape:window-width="797"
-     inkscape:window-height="628"
-     inkscape:window-x="0"
-     inkscape:window-y="47" />
-  <metadata
-     id="metadata11277">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     id="layer1"
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer">
-    <g
-       style="display:inline"
-       id="g4065"
-       transform="matrix(0,-1,1,0,8.9287758e-5,51.99998)"
-       inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-       inkscape:export-xdpi="90"
-       inkscape:export-ydpi="90">
-      <g
-         id="g3883"
-         transform="translate(-127,-473)"
-         style="fill:#d3d7cf;stroke:#888a85;display:inline"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90">
-        <rect
-           transform="matrix(0,1,1,0,0,0)"
-           y="169.5"
-           x="475.50012"
-           height="7"
-           width="12"
-           id="rect3885"
-           style="fill:#d3d7cf;fill-opacity:1;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <rect
-           ry="0"
-           rx="0"
-           transform="matrix(0,1,1,0,0,0)"
-           y="170.5"
-           x="476.50012"
-           height="5.0000305"
-           width="10"
-           id="rect3887"
-           style="opacity:1;fill:#d3d7cf;fill-opacity:1;stroke:#ffffff;stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-      </g>
-      <g
-         id="g3889"
-         transform="translate(-97,-469)"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90"
-         style="display:inline">
-        <rect
-           transform="matrix(0,-1,1,0,0,0)"
-           y="129.49626"
-           x="-489.49979"
-           height="7.0035982"
-           width="17.999748"
-           id="rect3891"
-           style="color:#000000;fill:#d3d7cf;fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1.00024867;stroke-linecap:butt;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" />
-        <rect
-           transform="matrix(0,-1,1,0,0,0)"
-           y="130.50006"
-           x="-488.50009"
-           height="4.9998937"
-           width="15.999757"
-           id="rect3893"
-           style="color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00024891;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:2;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline"
-           rx="0"
-           ry="0" />
-      </g>
-      <g
-         id="g3903"
-         transform="translate(-157,-488)"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90"
-         style="display:inline">
-        <rect
-           y="489.5"
-           x="196.49989"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect3905"
-           style="fill:#fcaf3e;fill-opacity:1;stroke:#ce5c00;stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <path
-           style="fill:url(#linearGradient4710);fill-opacity:1;stroke:url(#linearGradient4712);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dashoffset:0;stroke-opacity:1"
-           d="M 197.49998,491.5 L 186.49989,491.5 L 186.49989,489.5 L 197.49998,489.5"
-           id="path3907"
-           sodipodi:nodetypes="cccc" />
-        <path
-           style="fill:url(#linearGradient4714);fill-opacity:1;stroke:url(#linearGradient4716);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dashoffset:0;stroke-opacity:1"
-           d="M 198.49989,489.5 L 209.49998,489.5 L 209.49998,491.5 L 198.49989,491.5"
-           id="path3909"
-           sodipodi:nodetypes="cccc" />
-      </g>
-    </g>
-  </g>
-</svg>
Binary file htdocs/svg-edit/editor/images/align-middle.png has changed
--- a/htdocs/svg-edit/editor/images/align-middle.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,250 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://web.resource.org/cc/"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="22"
-   height="22"
-   id="svg10625"
-   sodipodi:version="0.32"
-   inkscape:version="0.44+devel"
-   version="1.0"
-   sodipodi:docbase="/home/andreas/project/inkscape/22x22/actions"
-   sodipodi:docname="align-vertical-center.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape"
-   inkscape:export-filename="/home/andreas/project/inkscape/22x22/actions/align-vertical-center.png"
-   inkscape:export-xdpi="90"
-   inkscape:export-ydpi="90"
-   sodipodi:modified="true">
-  <defs
-     id="defs10627">
-    <linearGradient
-       id="linearGradient2968"
-       inkscape:collect="always">
-      <stop
-         id="stop2970"
-         offset="0"
-         style="stop-color:#ce5c00;stop-opacity:1" />
-      <stop
-         id="stop2972"
-         offset="1"
-         style="stop-color:#ce5c00;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2968"
-       id="linearGradient6962"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-395.9999,-981)"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       id="linearGradient2974"
-       inkscape:collect="always">
-      <stop
-         id="stop2976"
-         offset="0"
-         style="stop-color:#fcaf3e;stop-opacity:1" />
-      <stop
-         id="stop2978"
-         offset="1"
-         style="stop-color:#fcaf3e;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2974"
-       id="linearGradient6960"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-395.9999,-981)"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-    <linearGradient
-       id="linearGradient2986"
-       inkscape:collect="always">
-      <stop
-         id="stop2988"
-         offset="0"
-         style="stop-color:#ce5c00;stop-opacity:1" />
-      <stop
-         id="stop2990"
-         offset="1"
-         style="stop-color:#ce5c00;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2986"
-       id="linearGradient6958"
-       gradientUnits="userSpaceOnUse"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       id="linearGradient2980"
-       inkscape:collect="always">
-      <stop
-         id="stop2982"
-         offset="0"
-         style="stop-color:#fcaf3e;stop-opacity:1" />
-      <stop
-         id="stop2984"
-         offset="1"
-         style="stop-color:#fcaf3e;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2980"
-       id="linearGradient6956"
-       gradientUnits="userSpaceOnUse"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-  </defs>
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="11.197802"
-     inkscape:cx="16"
-     inkscape:cy="16"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     inkscape:grid-bbox="true"
-     inkscape:document-units="px"
-     width="22px"
-     height="22px"
-     inkscape:window-width="797"
-     inkscape:window-height="628"
-     inkscape:window-x="0"
-     inkscape:window-y="47" />
-  <metadata
-     id="metadata10630">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     id="layer1"
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer">
-    <g
-       style="display:inline"
-       id="g6849"
-       transform="translate(-29.999893,91.000089)"
-       inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-       inkscape:export-xdpi="90"
-       inkscape:export-ydpi="90">
-      <rect
-         style="fill:#d3d7cf;fill-opacity:1;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
-         id="rect1933"
-         width="12"
-         height="7"
-         x="73.500122"
-         y="42.5"
-         transform="matrix(0,-1,1,0,0,0)"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90" />
-      <g
-         transform="translate(-97,-560)"
-         id="g2063"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90">
-        <rect
-           transform="matrix(0,-1,1,0,0,0)"
-           y="129.49626"
-           x="-489.49979"
-           height="7.0035982"
-           width="17.999748"
-           id="rect1935"
-           style="color:#000000;fill:#d3d7cf;fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1.00024867;stroke-linecap:butt;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" />
-        <rect
-           transform="matrix(0,-1,1,0,0,0)"
-           y="130.50006"
-           x="-488.50009"
-           height="4.9998937"
-           width="15.999757"
-           id="rect1937"
-           style="color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00024891;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:2;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline"
-           rx="0"
-           ry="0" />
-      </g>
-      <rect
-         style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
-         id="rect1939"
-         width="10"
-         height="5.0000305"
-         x="74.500122"
-         y="43.5"
-         transform="matrix(0,-1,1,0,0,0)"
-         rx="0"
-         ry="0"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90" />
-      <g
-         id="g2992"
-         transform="translate(-157,-570)"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90">
-        <rect
-           y="489.5"
-           x="186.49989"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect2994"
-           style="fill:url(#linearGradient6956);fill-opacity:1;stroke:url(#linearGradient6958);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <rect
-           y="489.5"
-           x="191.49989"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect2996"
-           style="fill:#fcaf3e;fill-opacity:1;stroke:#ce5c00;stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <rect
-           y="489.5"
-           x="196.49989"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect2998"
-           style="fill:#fcaf3e;fill-opacity:1;stroke:#ce5c00;stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <rect
-           y="489.5"
-           x="201.49989"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect3000"
-           style="fill:#fcaf3e;fill-opacity:1;stroke:#ce5c00;stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <rect
-           transform="scale(-1,-1)"
-           y="-491.5"
-           x="-209.49998"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect3002"
-           style="fill:url(#linearGradient6960);fill-opacity:1;stroke:url(#linearGradient6962);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-      </g>
-    </g>
-  </g>
-</svg>
Binary file htdocs/svg-edit/editor/images/align-right.png has changed
--- a/htdocs/svg-edit/editor/images/align-right.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,233 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://web.resource.org/cc/"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="22"
-   height="22"
-   id="svg11187"
-   sodipodi:version="0.32"
-   inkscape:version="0.44+devel"
-   version="1.0"
-   sodipodi:docbase="/home/andreas/project/inkscape/22x22/actions"
-   sodipodi:docname="align-horisontal-right.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape"
-   sodipodi:modified="TRUE"
-   inkscape:export-filename="/home/andreas/project/inkscape/22x22/actions/align-horisontal-right.png"
-   inkscape:export-xdpi="90"
-   inkscape:export-ydpi="90">
-  <defs
-     id="defs11189">
-    <linearGradient
-       id="linearGradient2968"
-       inkscape:collect="always">
-      <stop
-         id="stop2970"
-         offset="0"
-         style="stop-color:#ce5c00;stop-opacity:1" />
-      <stop
-         id="stop2972"
-         offset="1"
-         style="stop-color:#ce5c00;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2968"
-       id="linearGradient4732"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-1,0,0,-1,395.9999,981)"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       id="linearGradient2974"
-       inkscape:collect="always">
-      <stop
-         id="stop2976"
-         offset="0"
-         style="stop-color:#fcaf3e;stop-opacity:1" />
-      <stop
-         id="stop2978"
-         offset="1"
-         style="stop-color:#fcaf3e;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2974"
-       id="linearGradient4730"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-1,0,0,-1,395.9999,981)"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-    <linearGradient
-       id="linearGradient2986"
-       inkscape:collect="always">
-      <stop
-         id="stop2988"
-         offset="0"
-         style="stop-color:#ce5c00;stop-opacity:1" />
-      <stop
-         id="stop2990"
-         offset="1"
-         style="stop-color:#ce5c00;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2986"
-       id="linearGradient4728"
-       gradientUnits="userSpaceOnUse"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       id="linearGradient2980"
-       inkscape:collect="always">
-      <stop
-         id="stop2982"
-         offset="0"
-         style="stop-color:#fcaf3e;stop-opacity:1" />
-      <stop
-         id="stop2984"
-         offset="1"
-         style="stop-color:#fcaf3e;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2980"
-       id="linearGradient4726"
-       gradientUnits="userSpaceOnUse"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-  </defs>
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="11.197802"
-     inkscape:cx="16"
-     inkscape:cy="16"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     inkscape:grid-bbox="true"
-     inkscape:document-units="px"
-     width="22px"
-     height="22px"
-     inkscape:window-width="797"
-     inkscape:window-height="628"
-     inkscape:window-x="0"
-     inkscape:window-y="47" />
-  <metadata
-     id="metadata11192">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     id="layer1"
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer">
-    <g
-       style="display:inline"
-       id="g4025"
-       transform="matrix(0,-1,1,0,-60.999914,-198.00011)"
-       inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-       inkscape:export-xdpi="90"
-       inkscape:export-ydpi="90">
-      <rect
-         style="fill:#d3d7cf;fill-opacity:1;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline"
-         id="rect3873"
-         width="12"
-         height="7"
-         x="-80.499878"
-         y="-207.5"
-         transform="matrix(0,-1,1,0,0,0)"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90" />
-      <rect
-         style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline"
-         id="rect3875"
-         width="10"
-         height="5.0000305"
-         x="-79.499878"
-         y="-206.5"
-         transform="matrix(0,-1,1,0,0,0)"
-         rx="0"
-         ry="0"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90" />
-      <g
-         id="g3877"
-         transform="translate(-347,-409)"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90"
-         style="display:inline">
-        <rect
-           transform="matrix(0,-1,1,0,0,0)"
-           y="129.49626"
-           x="-489.49979"
-           height="7.0035982"
-           width="17.999748"
-           id="rect3879"
-           style="color:#000000;fill:#d3d7cf;fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1.00024867;stroke-linecap:butt;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" />
-        <rect
-           transform="matrix(0,-1,1,0,0,0)"
-           y="130.50006"
-           x="-488.50009"
-           height="4.9998937"
-           width="15.999757"
-           id="rect3881"
-           style="color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00024891;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:2;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline"
-           rx="0"
-           ry="0" />
-      </g>
-      <g
-         id="g3919"
-         transform="translate(-407,-410)"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90"
-         style="display:inline">
-        <rect
-           y="489.5"
-           x="196.49989"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect3921"
-           style="fill:#fcaf3e;fill-opacity:1;stroke:#ce5c00;stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <path
-           style="fill:url(#linearGradient4726);fill-opacity:1;stroke:url(#linearGradient4728);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dashoffset:0;stroke-opacity:1"
-           d="M 197.49998,491.5 L 186.49989,491.5 L 186.49989,489.5 L 197.49998,489.5"
-           id="path3923"
-           sodipodi:nodetypes="cccc" />
-        <path
-           style="fill:url(#linearGradient4730);fill-opacity:1;stroke:url(#linearGradient4732);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dashoffset:0;stroke-opacity:1"
-           d="M 198.49989,489.5 L 209.49998,489.5 L 209.49998,491.5 L 198.49989,491.5"
-           id="path3925"
-           sodipodi:nodetypes="cccc" />
-      </g>
-    </g>
-  </g>
-</svg>
Binary file htdocs/svg-edit/editor/images/align-top.png has changed
--- a/htdocs/svg-edit/editor/images/align-top.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,233 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://web.resource.org/cc/"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="22"
-   height="22"
-   id="svg10699"
-   sodipodi:version="0.32"
-   inkscape:version="0.44+devel"
-   version="1.0"
-   sodipodi:docbase="/home/andreas/project/inkscape/22x22/actions"
-   sodipodi:docname="align-vertical-bottom.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape"
-   inkscape:export-filename="/home/andreas/project/inkscape/22x22/actions/align-vertical-bottom.png"
-   inkscape:export-xdpi="90"
-   inkscape:export-ydpi="90"
-   sodipodi:modified="true">
-  <defs
-     id="defs10701">
-    <linearGradient
-       id="linearGradient2968"
-       inkscape:collect="always">
-      <stop
-         id="stop2970"
-         offset="0"
-         style="stop-color:#ce5c00;stop-opacity:1" />
-      <stop
-         id="stop2972"
-         offset="1"
-         style="stop-color:#ce5c00;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2968"
-       id="linearGradient6954"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-1,0,0,-1,395.9999,981)"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       id="linearGradient2974"
-       inkscape:collect="always">
-      <stop
-         id="stop2976"
-         offset="0"
-         style="stop-color:#fcaf3e;stop-opacity:1" />
-      <stop
-         id="stop2978"
-         offset="1"
-         style="stop-color:#fcaf3e;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2974"
-       id="linearGradient6952"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-1,0,0,-1,395.9999,981)"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-    <linearGradient
-       id="linearGradient2986"
-       inkscape:collect="always">
-      <stop
-         id="stop2988"
-         offset="0"
-         style="stop-color:#ce5c00;stop-opacity:1" />
-      <stop
-         id="stop2990"
-         offset="1"
-         style="stop-color:#ce5c00;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2986"
-       id="linearGradient6950"
-       gradientUnits="userSpaceOnUse"
-       x1="187.60938"
-       y1="489.35938"
-       x2="186.93732"
-       y2="489.35938" />
-    <linearGradient
-       id="linearGradient2980"
-       inkscape:collect="always">
-      <stop
-         id="stop2982"
-         offset="0"
-         style="stop-color:#fcaf3e;stop-opacity:1" />
-      <stop
-         id="stop2984"
-         offset="1"
-         style="stop-color:#fcaf3e;stop-opacity:0" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2980"
-       id="linearGradient6948"
-       gradientUnits="userSpaceOnUse"
-       x1="187.81554"
-       y1="489.54688"
-       x2="187.1716"
-       y2="489.54688" />
-  </defs>
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="11.197802"
-     inkscape:cx="16"
-     inkscape:cy="16"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     inkscape:grid-bbox="true"
-     inkscape:document-units="px"
-     width="22px"
-     height="22px"
-     inkscape:window-width="797"
-     inkscape:window-height="628"
-     inkscape:window-x="0"
-     inkscape:window-y="47" />
-  <metadata
-     id="metadata10704">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     id="layer1"
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer">
-    <g
-       style="display:inline"
-       id="g6862"
-       transform="translate(-59.99998,90)"
-       inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-       inkscape:export-xdpi="90"
-       inkscape:export-ydpi="90">
-      <g
-         id="g3084"
-         transform="translate(-97,-563)"
-         style="fill:#d3d7cf;stroke:#888a85"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90">
-        <rect
-           transform="matrix(0,1,1,0,0,0)"
-           y="169.5"
-           x="475.50012"
-           height="7"
-           width="12"
-           id="rect3086"
-           style="fill:#d3d7cf;fill-opacity:1;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <rect
-           ry="0"
-           rx="0"
-           transform="matrix(0,1,1,0,0,0)"
-           y="170.5"
-           x="476.50012"
-           height="5.0000305"
-           width="10"
-           id="rect3088"
-           style="opacity:1;fill:#d3d7cf;fill-opacity:1;stroke:#ffffff;stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-      </g>
-      <g
-         id="g3090"
-         transform="translate(-67,-559)"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90">
-        <rect
-           transform="matrix(0,-1,1,0,0,0)"
-           y="129.49626"
-           x="-489.49979"
-           height="7.0035982"
-           width="17.999748"
-           id="rect3092"
-           style="color:#000000;fill:#d3d7cf;fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1.00024867;stroke-linecap:butt;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" />
-        <rect
-           transform="matrix(0,-1,1,0,0,0)"
-           y="130.50006"
-           x="-488.50009"
-           height="4.9998937"
-           width="15.999757"
-           id="rect3094"
-           style="color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00024891;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:2;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline"
-           rx="0"
-           ry="0" />
-      </g>
-      <g
-         id="g3262"
-         transform="translate(-127,-578)"
-         inkscape:export-filename="/home/lapo/Desktop/align-distribute.tar.gz_FILES/align-stuff.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90">
-        <rect
-           y="489.5"
-           x="196.49989"
-           height="1.9999999"
-           width="3.0000916"
-           id="rect3264"
-           style="fill:#fcaf3e;fill-opacity:1;stroke:#ce5c00;stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
-        <path
-           style="fill:url(#linearGradient6948);fill-opacity:1;stroke:url(#linearGradient6950);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dashoffset:0;stroke-opacity:1"
-           d="M 197.49998,491.5 L 186.49989,491.5 L 186.49989,489.5 L 197.49998,489.5"
-           id="path3266"
-           sodipodi:nodetypes="cccc" />
-        <path
-           style="fill:url(#linearGradient6952);fill-opacity:1;stroke:url(#linearGradient6954);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dashoffset:0;stroke-opacity:1"
-           d="M 198.49989,489.5 L 209.49998,489.5 L 209.49998,491.5 L 198.49989,491.5"
-           id="path3268"
-           sodipodi:nodetypes="cccc" />
-      </g>
-    </g>
-  </g>
-</svg>
Binary file htdocs/svg-edit/editor/images/bold.png has changed
Binary file htdocs/svg-edit/editor/images/cancel.png has changed
Binary file htdocs/svg-edit/editor/images/circle.png has changed
Binary file htdocs/svg-edit/editor/images/clear.png has changed
Binary file htdocs/svg-edit/editor/images/clone.png has changed
--- a/htdocs/svg-edit/editor/images/conn.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg">
-	<g id="mode_connect">
-		<svg viewBox="0 0 24 24" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg">
-		 <defs>
-
-		  <line stroke-width="5" fill="none" stroke="#000000" id="svg_2" y2="121" x2="136" y1="7" x1="136">
-		   <stop stop-opacity="1" stop-color="#4687a0"/>
-		   <stop stop-opacity="1" stop-color="#ffffff"/>
-		  </line>
-		  <linearGradient y2="0.18359" x2="0.29688" y1="0.92188" x1="0.62109" id="svg_3">
-		   <stop stop-opacity="1" stop-color="#417dad" offset="0"/>
-		   <stop stop-opacity="1" stop-color="#ffffff" offset="1"/>
-		  </linearGradient>
-		 </defs>
-		 <g>
-		  <title>Layer 1</title>
-		  <line x1="5.64676" y1="5.60056" x2="18.50037" y2="18.62557" id="svg_5" stroke="#000000" fill="none"/>
-		  <rect opacity="0.75" stroke-width="0.5" x="0.5" y="0.5" width="9.625" height="5.125" id="svg_1" fill="url(#svg_3)" stroke="#000000"/>
-		  <rect opacity="0.75" id="svg_4" stroke-width="0.5" x="13.75" y="18.25" width="9.625" height="5.125" fill="url(#svg_3)" stroke="#000000"/>
-		  <g id="svg_9">
-		   <path d="m14.57119,9.12143l-0.98244,5.18852l2.70861,-4.36084" id="svg_6" fill="#a0a0a0" stroke="#000000"/>
-		   <path d="m14.27564,6.76258c-0.25872,0.72562 -0.40735,1.65632 -0.33812,2.15432l2.90784,1.2509c0.30961,-0.21212 1.08198,-1.1814 1.08198,-1.73736" id="svg_7" fill="url(#svg_3)" stroke="#000000"/>
-		   <path d="m16.28893,0.37519l-2.46413,5.9304l4.76481,2.39435l2.13178,-4.96735" id="svg_8" fill="url(#svg_3)" stroke="#000000"/>
-		  </g>
-		 </g>
-		</svg>
-	</g>
-	<g id="svg_eof"/>
-</svg>
\ No newline at end of file
Binary file htdocs/svg-edit/editor/images/copy.png has changed
Binary file htdocs/svg-edit/editor/images/cut.png has changed
Binary file htdocs/svg-edit/editor/images/delete.png has changed
Binary file htdocs/svg-edit/editor/images/document-properties.png has changed
Binary file htdocs/svg-edit/editor/images/dropdown.gif has changed
Binary file htdocs/svg-edit/editor/images/ellipse.png has changed
Binary file htdocs/svg-edit/editor/images/eye.png has changed
Binary file htdocs/svg-edit/editor/images/fhpath.png has changed
Binary file htdocs/svg-edit/editor/images/flyouth.png has changed
Binary file htdocs/svg-edit/editor/images/flyup.gif has changed
Binary file htdocs/svg-edit/editor/images/freehand-circle.png has changed
Binary file htdocs/svg-edit/editor/images/freehand-square.png has changed
Binary file htdocs/svg-edit/editor/images/go-down.png has changed
Binary file htdocs/svg-edit/editor/images/go-up.png has changed
Binary file htdocs/svg-edit/editor/images/image.png has changed
Binary file htdocs/svg-edit/editor/images/italic.png has changed
Binary file htdocs/svg-edit/editor/images/line.png has changed
Binary file htdocs/svg-edit/editor/images/link_controls.png has changed
Binary file htdocs/svg-edit/editor/images/logo.png has changed
--- a/htdocs/svg-edit/editor/images/logo.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-<svg viewBox="0 0 478 472" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg">
- <defs>
-  <linearGradient id="svg_5" x1="0" y1="0" x2="1" y2="1">
-   <stop offset="0" stop-color="#ffffe0" stop-opacity="1"/>
-   <stop offset="1" stop-color="#edc39c" stop-opacity="1"/>
-  </linearGradient>
-  <linearGradient id="svg_10" x1="0.57031" y1="0.78125" x2="0.28906" y2="0.41406">
-   <stop offset="0" stop-color="#ff7f00" stop-opacity="1"/>
-   <stop offset="1" stop-color="#ffff00"/>
-  </linearGradient>
-  <linearGradient id="svg_18" x1="0.37891" y1="0.35938" x2="1" y2="1">
-   <stop offset="0" stop-color="#e0e0e0" stop-opacity="1"/>
-   <stop offset="1" stop-color="#666666" stop-opacity="1"/>
-  </linearGradient>
- </defs>
- <g>
-  <title>Layer 1</title>
-  <path d="m68.82031,270.04688l-22,-33l17,-35l34,2l25,15l7,-35l28,-16l25,12l100,102l21,23l-15,35l-36,9l20,49l-31,24l-49,-17l-1,31l-33,21l-31,-19l-13,-35l-30,21l-30,-9l-5,-35l16,-31l-32,-6l-15,-19l3,-36l47,-18z" id="svg_19" fill="#ffffff"/>
-  <path fill="#1a171a" fill-rule="nonzero" id="path2902" d="m158.96452,155.03685c-25.02071,0 -45.37077,20.35121 -45.37077,45.3775c0,0.72217 0.01794,1.4399 0.0471,2.15645c-0.49339,-0.53604 -0.99355,-1.06085 -1.50603,-1.58452c-8.56077,-8.55519 -19.95982,-13.28413 -32.07432,-13.28413c-12.12122,0 -23.52027,4.72334 -32.08778,13.29646c-17.69347,17.69464 -17.69347,46.4619 0,64.17445c0.51809,0.51697 1.0485,1.0126 1.59015,1.50601c-0.72891,-0.03586 -1.45782,-0.04822 -2.19234,-0.04822c-25.02071,0 -45.37189,20.35117 -45.37189,45.37747c0,25.01398 20.35119,45.36517 45.37189,45.36517c0.72891,0 1.45221,-0.01236 2.1744,-0.04828c-0.5293,0.48221 -1.05412,0.98801 -1.56547,1.49368c-17.70021,17.68906 -17.70021,46.48654 -0.00628,64.18677c8.57872,8.56747 19.96655,13.2785 32.08778,13.2785c12.1145,0 23.5012,-4.71103 32.07433,-13.2785c0.51247,-0.51694 1.01823,-1.04849 1.50603,-1.57895c-0.02915,0.71213 -0.04709,1.44669 -0.04709,2.15759c0,25.01511 20.35007,45.37747 45.37077,45.37747c25.01398,0 45.37079,-20.3624 45.37079,-45.37747c0,-0.7222 -0.01689,-1.44553 -0.05266,-2.18112c0.48105,0.52933 0.97562,1.04849 1.48697,1.56662c8.57982,8.57977 19.97775,13.2908 32.1057,13.2908c12.11003,0 23.51358,-4.71103 32.0687,-13.2785c17.68906,-17.70013 17.68906,-46.48538 0,-64.17441c-0.50577,-0.4946 -1.01141,-1.00034 -1.54306,-1.48248c0.69983,0.03592 1.42316,0.04828 2.16992,0.04828c25.01514,0 45.35284,-20.35123 45.35284,-45.36517c0,-25.02631 -20.33774,-45.37747 -45.35284,-45.37747c-0.74683,0 -1.47009,0.01236 -2.19345,0.04822c0.53152,-0.49341 1.06082,-0.98904 1.59128,-1.50601c8.55521,-8.55521 13.2785,-19.94186 13.2785,-32.07545c0,-12.12793 -4.72336,-23.52028 -13.30319,-32.0934c-8.55515,-8.56076 -19.95866,-13.2841 -32.0687,-13.2841c-12.12122,0 -23.52025,4.72334 -32.08777,13.2841c-0.51137,0.5181 -1.01822,1.04851 -1.5049,1.57895c0.03586,-0.72331 0.05266,-1.43991 0.05266,-2.16881c0,-25.02629 -20.35681,-45.3775 -45.37079,-45.3775m0,20.71901c13.61607,0 24.65851,11.03122 24.65851,24.65849c0,6.62749 -2.651,12.62137 -6.9101,17.04979l0,51.67419l36.53975,-36.53523c0.12001,-6.14418 2.48277,-12.24686 7.18146,-16.94667c4.81305,-4.81305 11.12094,-7.22409 17.44116,-7.22409c6.30228,0 12.61577,2.41104 17.43552,7.22409c9.62166,9.63287 9.62166,25.24948 0,34.87669c-4.69977,4.68634 -10.80803,7.04915 -16.95334,7.18147l-36.5341,36.53305l51.66742,0c4.42841,-4.25351 10.42905,-6.90451 17.08008,-6.90451c13.59137,0 24.62933,11.03799 24.62933,24.66525c0,13.61606 -11.03796,24.66519 -24.62933,24.66519c-6.65106,0 -12.65167,-2.66333 -17.08008,-6.91681l-51.64836,0l36.50273,36.50946c6.16995,0.14465 12.26587,2.50522 16.96568,7.20618c9.6216,9.61487 9.6216,25.23151 0,34.85757c-4.80856,4.81979 -11.13327,7.22974 -17.43556,7.22974c-6.32019,0 -12.63371,-2.40991 -17.44786,-7.22974c-4.68074,-4.68744 -7.04802,-10.79572 -7.17473,-16.94098l-36.53975,-36.53415l0,51.66742c4.25908,4.44635 6.9101,10.43466 6.9101,17.0621c0,13.62729 -11.04243,24.66415 -24.65851,24.66415c-13.62166,0 -24.65848,-11.0369 -24.65848,-24.66415c0,-6.62744 2.64539,-12.61575 6.90335,-17.0621l0,-51.66742l-36.53864,36.54648c-0.12672,6.14413 -2.48838,12.26477 -7.18147,16.94098c-4.81416,4.81873 -11.12206,7.22974 -17.42882,7.22974c-6.31461,0 -12.6225,-2.41101 -17.43555,-7.22974c-9.63284,-9.62833 -9.63284,-25.24277 0,-34.8699c4.68073,-4.67627 10.79012,-7.05026 16.94101,-7.18262l36.533,-36.53302l-51.66632,0c-4.44075,4.25348 -10.42902,6.91681 -17.06211,6.91681c-13.61606,0 -24.65288,-11.04913 -24.65288,-24.66519c0,-13.62726 11.03682,-24.66525 24.65288,-24.66525c6.63309,0 12.62136,2.651 17.06211,6.90451l51.68537,0l-36.55208,-36.54538c-6.14527,-0.12 -12.25354,-2.49403 -16.94775,-7.19377c-9.62611,-9.61493 -9.62611,-25.23715 0,-34.86441c4.81419,-4.81305 11.12769,-7.22406 17.44228,-7.22406c6.30676,0 12.61465,2.41101 17.42883,7.22406c4.69978,4.69307 7.06034,10.80246 7.18144,16.94777l36.5386,36.53299l0,-51.66074c-4.25795,-4.42841 -6.90334,-10.42229 -6.90334,-17.04979c0,-13.62726 11.03682,-24.65848 24.65848,-24.65848"/>
-  <path d="m188.82031,210.04688l16,-47l155,-148l107,100l-158,156.99999l-44,12l-76,-74z" id="svg_6" fill="url(#svg_10)" stroke="#ffffff" stroke-width="0"/>
-  <path d="m335.57031,40.29688c-11.5,39.75 55.5,115.25 109.25,98.75l21,-20.99999l-103,-101l-27.25,23.25z" id="svg_11" fill="url(#svg_18)" stroke="#ffffff" stroke-width="0"/>
-  <rect x="272.80404" y="20.76382" width="42.35197" height="232.66835" id="svg_13" fill="#ffffff" stroke="#ffffff" stroke-width="0" transform="rotate(45.9094, 293.98, 137.1)" opacity="0.4"/>
-  <rect x="282.80404" y="22.76382" width="14" height="232.66835" fill="#ffffff" stroke="#ffffff" stroke-width="0" transform="rotate(45.9094, 289.805, 139.1)" opacity="0.4" id="svg_14"/>
-  <ellipse cx="415.13312" cy="64.38066" id="svg_12" fill="#ea7598" stroke="#ffffff" stroke-width="0" rx="67.79251" ry="34.82026" transform="rotate(39.4735, 415.133, 64.379)"/>
-  <path d="m212.07031,166.04688c-8.5,47 36.25,103.75 99.25,96.75l-152.5,53.25l53.25,-150z" id="svg_4" fill="url(#svg_5)" stroke="#ffffff" stroke-width="0"/>
-  <path d="m181.32031,242.54688c0.5,20.5 26.75,45 46.75,48.5l-66.25,20l19.5,-68.5z" id="svg_3" fill="#27382f" stroke="#ffffff" stroke-width="0"/>
- </g>
- <g>
-  <title>Layer 2</title>
-  <path d="m152.82031,317.04688l51,-152l157,-153c40,-12.00001 118,48 105,105l-157,152.99999l-156,47z" id="svg_1" fill="none" stroke="#800000" stroke-width="17"/>
- </g>
-</svg>
Binary file htdocs/svg-edit/editor/images/move_bottom.png has changed
Binary file htdocs/svg-edit/editor/images/move_top.png has changed
Binary file htdocs/svg-edit/editor/images/none.png has changed
Binary file htdocs/svg-edit/editor/images/open.png has changed
Binary file htdocs/svg-edit/editor/images/paste.png has changed
Binary file htdocs/svg-edit/editor/images/path.png has changed
Binary file htdocs/svg-edit/editor/images/polygon.png has changed
--- a/htdocs/svg-edit/editor/images/polygon.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,219 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://web.resource.org/cc/"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   sodipodi:docname="draw-polygon.svg"
-   sodipodi:docbase="/home/andreas/projekt/tango/22"
-   inkscape:version="0.42"
-   id="svg8728"
-   height="22.000000px"
-   width="22.000000px"
-   inkscape:export-filename="/home/andreas/projekt/tango/22/draw-polygon.png"
-   inkscape:export-xdpi="90.000000"
-   inkscape:export-ydpi="90.000000">
-  <defs
-     id="defs3">
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient3941">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop3943" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop3945" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient6581">
-      <stop
-         style="stop-color:#eeeeec;stop-opacity:1;"
-         offset="0"
-         id="stop6583" />
-      <stop
-         style="stop-color:#e0e0de;stop-opacity:1.0000000;"
-         offset="1.0000000"
-         id="stop6585" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient14920">
-      <stop
-         id="stop14922"
-         offset="0"
-         style="stop-color:#5a7aa4;stop-opacity:1;" />
-      <stop
-         id="stop14924"
-         offset="1.0000000"
-         style="stop-color:#1f2b3a;stop-opacity:1.0000000;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient13390">
-      <stop
-         id="stop13392"
-         offset="0.0000000"
-         style="stop-color:#81a2cd;stop-opacity:1.0000000;" />
-      <stop
-         id="stop13394"
-         offset="1.0000000"
-         style="stop-color:#2a415f;stop-opacity:1.0000000;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10325">
-      <stop
-         id="stop10327"
-         offset="0"
-         style="stop-color:#5a7aa4;stop-opacity:1;" />
-      <stop
-         id="stop10329"
-         offset="1.0000000"
-         style="stop-color:#455e7e;stop-opacity:1.0000000;" />
-    </linearGradient>
-    <linearGradient
-       gradientUnits="userSpaceOnUse"
-       y2="39.486301"
-       x2="37.746555"
-       y1="23.992306"
-       x1="23.598076"
-       gradientTransform="matrix(0.363308,0,0,0.363571,1.976073,1.180651)"
-       id="linearGradient13217"
-       xlink:href="#linearGradient6581"
-       inkscape:collect="always" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3941"
-       id="radialGradient3947"
-       cx="2.25"
-       cy="16"
-       fx="2.25"
-       fy="16"
-       r="16.875"
-       gradientTransform="matrix(1.000000,0.000000,0.000000,0.333333,-5.774893e-15,10.66667)"
-       gradientUnits="userSpaceOnUse" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient6581"
-       id="linearGradient2398"
-       x1="10.769515"
-       y1="8.7196503"
-       x2="15.923767"
-       y2="15.039417"
-       gradientUnits="userSpaceOnUse" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient6581"
-       id="linearGradient2403"
-       gradientUnits="userSpaceOnUse"
-       x1="10.769515"
-       y1="8.7196503"
-       x2="15.923767"
-       y2="15.039417"
-       gradientTransform="matrix(0.874941,0.000000,0.000000,0.868551,1.339139,1.349650)" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient6581"
-       id="linearGradient2405"
-       gradientUnits="userSpaceOnUse"
-       x1="10.769515"
-       y1="8.7196503"
-       x2="15.923767"
-       y2="15.039417"
-       gradientTransform="matrix(1.001575,0.000000,0.000000,1.000000,-3.040037e-3,0.000000)" />
-  </defs>
-  <sodipodi:namedview
-     inkscape:window-y="25"
-     inkscape:window-x="0"
-     inkscape:window-height="949"
-     inkscape:window-width="1280"
-     inkscape:document-units="px"
-     inkscape:grid-bbox="true"
-     showgrid="false"
-     inkscape:current-layer="layer1"
-     inkscape:cy="10.249014"
-     inkscape:cx="16.435231"
-     inkscape:zoom="15.999999"
-     inkscape:pageshadow="2"
-     inkscape:pageopacity="0.0"
-     borderopacity="0.08235294"
-     bordercolor="#666666"
-     pagecolor="#ffffff"
-     id="base"
-     showguides="true"
-     inkscape:guide-bbox="true"
-     inkscape:showpageshadow="false"
-     stroke="#888a85" />
-  <metadata
-     id="metadata4">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title>Draw Rectangle</dc:title>
-        <dc:date>2005-10-10</dc:date>
-        <dc:creator>
-          <cc:Agent>
-            <dc:title>Andreas Nilsson</dc:title>
-          </cc:Agent>
-        </dc:creator>
-        <dc:subject>
-          <rdf:Bag>
-            <rdf:li>draw</rdf:li>
-            <rdf:li>rectangle</rdf:li>
-            <rdf:li>square</rdf:li>
-          </rdf:Bag>
-        </dc:subject>
-        <cc:license
-           rdf:resource="http://creativecommons.org/licenses/by-sa/2.0/" />
-      </cc:Work>
-      <cc:License
-         rdf:about="http://creativecommons.org/licenses/by-sa/2.0/">
-        <cc:permits
-           rdf:resource="http://web.resource.org/cc/Reproduction" />
-        <cc:permits
-           rdf:resource="http://web.resource.org/cc/Distribution" />
-        <cc:requires
-           rdf:resource="http://web.resource.org/cc/Notice" />
-        <cc:requires
-           rdf:resource="http://web.resource.org/cc/Attribution" />
-        <cc:permits
-           rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
-        <cc:requires
-           rdf:resource="http://web.resource.org/cc/ShareAlike" />
-      </cc:License>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:groupmode="layer"
-     inkscape:label="Layer 1"
-     id="layer1">
-    <path
-       sodipodi:type="arc"
-       style="opacity:0.60000000;color:#000000;fill:url(#radialGradient3947);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;visibility:visible;display:block;overflow:visible"
-       id="path2193"
-       sodipodi:cx="2.2500000"
-       sodipodi:cy="16.000000"
-       sodipodi:rx="16.875000"
-       sodipodi:ry="5.6250000"
-       d="M 19.125000 16.000000 A 16.875000 5.6250000 0 1 1  -14.625000,16.000000 A 16.875000 5.6250000 0 1 1  19.125000 16.000000 z"
-       transform="matrix(0.503704,0.000000,0.000000,0.349014,9.366667,12.45257)" />
-    <path
-       style="fill:url(#linearGradient2405);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#888a85;stroke-width:1.0000002px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
-       d="M 10.376363,3.6237647 L 18.439333,9.5822222 L 15.644242,18.503298 L 5.3933717,18.503298 L 2.5694122,9.5814367 L 10.376363,3.6237647 z "
-       id="path1661"
-       sodipodi:nodetypes="cccccc" />
-    <path
-       style="fill:url(#linearGradient2403);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#fdfdfb;stroke-width:0.99999976px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
-       d="M 10.383801,4.6223366 L 17.428917,9.8682235 L 14.894231,17.502140 L 6.1335005,17.494329 L 3.6135882,9.9131875 L 10.383801,4.6223366 z "
-       id="path2401"
-       sodipodi:nodetypes="cccccc" />
-  </g>
-</svg>
Binary file htdocs/svg-edit/editor/images/rect.png has changed
Binary file htdocs/svg-edit/editor/images/redo.png has changed
Binary file htdocs/svg-edit/editor/images/reorient.png has changed
Binary file htdocs/svg-edit/editor/images/rotate.png has changed
Binary file htdocs/svg-edit/editor/images/save.png has changed
Binary file htdocs/svg-edit/editor/images/select.png has changed
Binary file htdocs/svg-edit/editor/images/select_node.png has changed
Binary file htdocs/svg-edit/editor/images/sep.png has changed
Binary file htdocs/svg-edit/editor/images/shape_group.png has changed
Binary file htdocs/svg-edit/editor/images/shape_ungroup.png has changed
Binary file htdocs/svg-edit/editor/images/source.png has changed
Binary file htdocs/svg-edit/editor/images/spinbtn_updn_big.png has changed
Binary file htdocs/svg-edit/editor/images/square.png has changed
--- a/htdocs/svg-edit/editor/images/svg_edit_icons.svg	Tue Dec 02 13:51:53 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,749 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg">
-<!-- All images created with SVG-edit - http://svg-edit.googlecode.com/ -->
-
-<g id="logo">
-<svg viewBox="0 0 478 472" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg">
- <defs>
-  <linearGradient id="svg_5" x1="0" y1="0" x2="1" y2="1">
-   <stop offset="0" stop-color="#ffffe0" stop-opacity="1"/>
-   <stop offset="1" stop-color="#edc39c" stop-opacity="1"/>
-  </linearGradient>
-  <linearGradient id="svg_10" x1="0.57031" y1="0.78125" x2="0.28906" y2="0.41406">
-   <stop offset="0" stop-color="#ff7f00" stop-opacity="1"/>
-   <stop offset="1" stop-color="#ffff00"/>
-  </linearGradient>
-  <linearGradient id="svg_18" x1="0.37891" y1="0.35938" x2="1" y2="1">
-   <stop offset="0" stop-color="#e0e0e0" stop-opacity="1"/>
-   <stop offset="1" stop-color="#666666" stop-opacity="1"/>
-  </linearGradient>
- </defs>
- <g>
-  <title>Layer 1</title>
-  <path d="m68.82031,270.04688l-22,-33l17,-35l34,2l25,15l7,-35l28,-16l25,12l100,102l21,23l-15,35l-36,9l20,49l-31,24l-49,-17l-1,31l-33,21l-31,-19l-13,-35l-30,21l-30,-9l-5,-35l16,-31l-32,-6l-15,-19l3,-36l47,-18z" id="svg_19" fill="#ffffff"/>
-  <path fill="#1a171a" fill-rule="nonzero" id="path2902" d="m158.96452,155.03685c-25.02071,0 -45.37077,20.35121 -45.37077,45.3775c0,0.72217 0.01794,1.4399 0.0471,2.15645c-0.49339,-0.53604 -0.99355,-1.06085 -1.50603,-1.58452c-8.56077,-8.55519 -19.95982,-13.28413 -32.07432,-13.28413c-12.12122,0 -23.52027,4.72334 -32.08778,13.29646c-17.69347,17.69464 -17.69347,46.4619 0,64.17445c0.51809,0.51697 1.0485,1.0126 1.59015,1.50601c-0.72891,-0.03586 -1.45782,-0.04822 -2.19234,-0.04822c-25.02071,0 -45.37189,20.35117 -45.37189,45.37747c0,25.01398 20.35119,45.36517 45.37189,45.36517c0.72891,0 1.45221,-0.01236 2.1744,-0.04828c-0.5293,0.48221 -1.05412,0.98801 -1.56547,1.49368c-17.70021,17.68906 -17.70021,46.48654 -0.00628,64.18677c8.57872,8.56747 19.96655,13.2785 32.08778,13.2785c12.1145,0 23.5012,-4.71103 32.07433,-13.2785c0.51247,-0.51694 1.01823,-1.04849 1.50603,-1.57895c-0.02915,0.71213 -0.04709,1.44669 -0.04709,2.15759c0,25.01511 20.35007,45.37747 45.37077,45.37747c25.01398,0 45.37079,-20.3624 45.37079,-45.37747c0,-0.7222 -0.01689,-1.44553 -0.05266,-2.18112c0.48105,0.52933 0.97562,1.04849 1.48697,1.56662c8.57982,8.57977 19.97775,13.2908 32.1057,13.2908c12.11003,0 23.51358,-4.71103 32.0687,-13.2785c17.68906,-17.70013 17.68906,-46.48538 0,-64.17441c-0.50577,-0.4946 -1.01141,-1.00034 -1.54306,-1.48248c0.69983,0.03592 1.42316,0.04828 2.16992,0.04828c25.01514,0 45.35284,-20.35123 45.35284,-45.36517c0,-25.02631 -20.33774,-45.37747 -45.35284,-45.37747c-0.74683,0 -1.47009,0.01236 -2.19345,0.04822c0.53152,-0.49341 1.06082,-0.98904 1.59128,-1.50601c8.55521,-8.55521 13.2785,-19.94186 13.2785,-32.07545c0,-12.12793 -4.72336,-23.52028 -13.30319,-32.0934c-8.55515,-8.56076 -19.95866,-13.2841 -32.0687,-13.2841c-12.12122,0 -23.52025,4.72334 -32.08777,13.2841c-0.51137,0.5181 -1.01822,1.04851 -1.5049,1.57895c0.03586,-0.72331 0.05266,-1.43991 0.05266,-2.16881c0,-25.02629 -20.35681,-45.3775 -45.37079,-45.3775m0,20.71901c13.61607,0 24.65851,11.03122 24.65851,24.65849c0,6.62749 -2.651,12.62137 -6.9101,17.04979l0,51.67419l36.53975,-36.53523c0.12001,-6.14418 2.48277,-12.24686 7.18146,-16.94667c4.81305,-4.81305 11.12094,-7.22409 17.44116,-7.22409c6.30228,0 12.61577,2.41104 17.43552,7.22409c9.62166,9.63287 9.62166,25.24948 0,34.87669c-4.69977,4.68634 -10.80803,7.04915 -16.95334,7.18147l-36.5341,36.53305l51.66742,0c4.42841,-4.25351 10.42905,-6.90451 17.08008,-6.90451c13.59137,0 24.62933,11.03799 24.62933,24.66525c0,13.61606 -11.03796,24.66519 -24.62933,24.66519c-6.65106,0 -12.65167,-2.66333 -17.08008,-6.91681l-51.64836,0l36.50273,36.50946c6.16995,0.14465 12.26587,2.50522 16.96568,7.20618c9.6216,9.61487 9.6216,25.23151 0,34.85757c-4.80856,4.81979 -11.13327,7.22974 -17.43556,7.22974c-6.32019,0 -12.63371,-2.40991 -17.44786,-7.22974c-4.68074,-4.68744 -7.04802,-10.79572 -7.17473,-16.94098l-36.53975,-36.53415l0,51.66742c4.25908,4.44635 6.9101,10.43466 6.9101,17.0621c0,13.62729 -11.04243,24.66415 -24.65851,24.66415c-13.62166,0 -24.65848,-11.0369 -24.65848,-24.66415c0,-6.62744 2.64539,-12.61575 6.90335,-17.0621l0,-51.66742l-36.53864,36.54648c-0.12672,6.14413 -2.48838,12.26477 -7.18147,16.94098c-4.81416,4.81873 -11.12206,7.22974 -17.42882,7.22974c-6.31461,0 -12.6225,-2.41101 -17.43555,-7.22974c-9.63284,-9.62833 -9.63284,-25.24277 0,-34.8699c4.68073,-4.67627 10.79012,-7.05026 16.94101,-7.18262l36.533,-36.53302l-51.66632,0c-4.44075,4.25348 -10.42902,6.91681 -17.06211,6.91681c-13.61606,0 -24.65288,-11.04913 -24.65288,-24.66519c0,-13.62726 11.03682,-24.66525 24.65288,-24.66525c6.63309,0 12.62136,2.651 17.06211,6.90451l51.68537,0l-36.55208,-36.54538c-6.14527,-0.12 -12.25354,-2.49403 -16.94775,-7.19377c-9.62611,-9.61493 -9.62611,-25.23715 0,-34.86441c4.81419,-4.81305 11.12769,-7.22406 17.44228,-7.22406c6.30676,0 12.61465,2.41101 17.42883,7.22406c4.69978,4.69307 7.06034,10.80246 7.18144,16.94777l36.5386,36.53299l0,-51.66074c-4.25795,-4.42841 -6.90334,-10.42229 -6.90334,-17.04979c0,-13.62726 11.03682,-24.65848 24.65848,-24.65848"/>
-  <path d="m188.82031,210.04688l16,-47l155,-148l107,100l-158,156.99999l-44,12l-76,-74z" id="svg_6" fill="url(#svg_10)" stroke="#ffffff" stroke-width="0"/>
-  <path d="m335.57031,40.29688c-11.5,39.75 55.5,115.25 109.25,98.75l21,-20.99999l-103,-101l-27.25,23.25z" id="svg_11" fill="url(#svg_18)" stroke="#ffffff" stroke-width="0"/>
-  <rect x="272.80404" y="20.76382" width="42.35197" height="232.66835" id="svg_13" fill="#ffffff" stroke="#ffffff" stroke-width="0" transform="rotate(45.9094, 293.98, 137.1)" opacity="0.4"/>
-  <rect x="282.80404" y="22.76382" width="14" height="232.66835" fill="#ffffff" stroke="#ffffff" stroke-width="0" transform="rotate(45.9094, 289.805, 139.1)" opacity="0.4" id="svg_14"/>
-  <ellipse cx="415.13312" cy="64.38066" id="svg_12" fill="#ea7598" stroke="#ffffff" stroke-width="0" rx="67.79251" ry="34.82026" transform="rotate(39.4735, 415.133, 64.379)"/>
-  <path d="m212.07031,166.04688c-8.5,47 36.25,103.75 99.25,96.75l-152.5,53.25l53.25,-150z" id="svg_4" fill="url(#svg_5)" stroke="#ffffff" stroke-width="0"/>
-  <path d="m181.32031,242.54688c0.5,20.5 26.75,45 46.75,48.5l-66.25,20l19.5,-68.5z" id="svg_3" fill="#27382f" stroke="#ffffff" stroke-width="0"/>
- </g>
- <g>
-  <title>Layer 2</title>
-  <path d="m152.82031,317.04688l51,-152l157,-153c40,-12.00001 118,48 105,105l-157,152.99999l-156,47z" id="svg_1" fill="none" stroke="#800000" stroke-width="17"/>
- </g>
-</svg>
-</g>
-
-
-<g id="select">
-	<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
-	  <path stroke="#ffffff" fill="#000000" id="svg_13" d="m7.38168,2.46948l0.07502,17.03258l3.30083,-2.62617l2.62566,5.62751l4.20105,-2.62617l-3.30082,-4.80214l4.57614,-0.37517l-11.47787,-12.23044z"/>
-	</svg>
-</g>
-
-<g id="select_node">
-	<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-	  <circle stroke="#0000ff" fill="#00ffff" id="svg_44" r="3.87891" cy="5.3" cx="8.7" stroke-width="1.5"/>
-	  <path d="m9.18161,5.6695l0.07763,15.16198l3.41588,-2.33775l2.71718,5.00947l4.34748,-2.33775l-3.41587,-4.27474l4.73565,-0.33397l-11.87794,-10.88723z" id="svg_13" fill="#000000" stroke="#ffffff"/>
-	</svg>
-</g>
-
-<g id="square">
-<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
- <defs>
-  <linearGradient id="svg_2" x1="0.36328" y1="0.10156" x2="1" y2="1">
-   <stop offset="0" stop-color="#ffffff" stop-opacity="1"/>
-   <stop offset="1" stop-color="#3b7e9b" stop-opacity="1"/>
-  </linearGradient>
- </defs>
-  <rect x="1.5" y="1.5" width="20" height="20" id="svg_1" fill="url(#svg_2)" stroke="#000000"/>
- </svg>
-</g>
-
-<g id="rect">
-<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
-  <linearGradient y2="1" x2="1" y1="0.10156" x1="0.36328" id="svg_2">
-   <stop stop-opacity="1" stop-color="#ffffff" offset="0"/>
-   <stop stop-opacity="1" stop-color="#3b7e9b" offset="1"/>
-  </linearGradient>
- </defs>
-  <rect transform="matrix(1, 0, 0, 1, 0, 0)" stroke="#000000" fill="url(#svg_2)" id="svg_1" height="12" width="20" y="5.5" x="1.5"/>
- </svg>
-</g>
-
-<g id="fh_rect">
-<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 52 52">
- <defs>
-  <linearGradient y2="1" x2="1" y1="0.10156" x1="0.36328" id="svg_2">
-
-   <stop stop-opacity="1" stop-color="#ffffff" offset="0"/>
-   <stop stop-opacity="1" stop-color="#3b7e9b" offset="1"/>
-  </linearGradient>
-  <linearGradient y2="0.3945" x2="0.6132" y1="0.1093" x1="0.3046" id="svg_9">
-   <stop stop-opacity="1" stop-color="#f9d225" offset="0"/>
-   <stop stop-opacity="1" stop-color="#bf5f00" offset="1"/>
-  </linearGradient>
- </defs>
-  <rect stroke="#000000" stroke-width="2" fill="url(#svg_2)" id="svg_1" height="50" width="50" y="0.75" x="1.25"/>
-  <path stroke-width="2" stroke="#000000" fill="url(#svg_9)" id="svg_2" d="m31.5,0l-8.75,20.25l0.75,24l16.5,-16.5l6,-12.5"/>
-  <path stroke-width="2" stroke="#000000" fill="#fce0a9" id="svg_10" d="m39.5,28.5c-2,-9.25 -10.25,-11.75 -17,-7.4375l0.4843,24.4414z"/>
-  <path id="svg_11" stroke-width="2" stroke="#000000" fill="#000000" d="m26.9318,41.1745c-0.4491,-2.3511 -2.3021,-2.9866 -3.8181,-1.8905l0.1087,6.2126z"/>
-</svg>
-</g>
-
-
-<g id="circle">
-<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 54 54" id="svgzoom">
- <defs>
-  <linearGradient y2="1.0" x2="1.0" y1="0.1875" x1="0.171875" id="svg_4">
-   <stop stop-opacity="1" stop-color="#ffffff" offset="0.0"/>
-   <stop stop-opacity="1" stop-color="#ff6666" offset="1.0"/>
-  </linearGradient>
- </defs>
- <g>
-  <circle stroke-opacity="1" fill-opacity="1" stroke-width="2" stroke="#000000" fill="url(#svg_4)" id="svg_1" r="23" cy="27" cx="27"/>
- </g>
-</svg>
-</g>
-
-<g id="ellipse">
-<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 54 54" id="svgzoom">
- <defs>
-  <linearGradient y2="1.0" x2="1.0" y1="0.1875" x1="0.171875" id="svg_4">
-   <stop stop-opacity="1" stop-color="#ffffff" offset="0.0"/>
-   <stop stop-opacity="1" stop-color="#ff6666" offset="1.0"/>
-  </linearGradient>
- </defs>
- <g>
-  <ellipse stroke-opacity="1" fill-opacity="1" stroke-width="2" stroke="#000000" fill="url(#svg_4)" id="svg_1" rx="23" ry="15" cy="27" cx="27"/>
- </g>
-</svg>
-</g>
-
-<g id="fh_ellipse">
-<svg viewBox="0 0 52 52" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
-  <linearGradient id="svg_9" x1="0.3046" y1="0.1093" x2="0.6132" y2="0.3945">
-   <stop offset="0" stop-color="#f9d225" stop-opacity="1"/>
-   <stop offset="1" stop-color="#bf5f00" stop-opacity="1"/>
-  </linearGradient>
-  <linearGradient id="svg_4" x1="0.17188" y1="0.1875" x2="1" y2="1">
-   <stop offset="0" stop-color="#ffffff" stop-opacity="1"/>
-   <stop offset="1" stop-color="#ff6666" stop-opacity="1"/>
-  </linearGradient>
- </defs>
-  <ellipse stroke-width="2" stroke="#000000" fill="url(#svg_4)" id="svg_1" rx="23" ry="12" cy="37" cx="27"/>
-  <path d="m31.5,0l-8.75,20.25l0.75,24l16.5,-16.5l6,-12.5" id="svg_2" fill="url(#svg_9)" stroke="#000000" stroke-width="2"/>
-  <path d="m39.5,28.5c-2,-9.25 -10.25,-11.75 -17,-7.4375l0.4843,24.4414z" id="svg_10" fill="#fce0a9" stroke="#000000" stroke-width="2"/>
-  <path d="m26.9318,41.1745c-0.4491,-2.3511 -2.3021,-2.9866 -3.8181,-1.8905l0.1087,6.2126z" fill="#000000" stroke="#000000" stroke-width="2" id="svg_11"/>
- </svg>
-</g>
-
-<g id="pencil">
-<svg id="svgzoom" viewBox="0 0 48 52" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-  <defs>
-   <linearGradient id="svg_9" x1="0.3046" y1="0.1093" x2="0.6132" y2="0.3945">
-    <stop offset="0.0" stop-color="#f9d225" stop-opacity="1"/>
-    <stop offset="1.0" stop-color="#bf5f00" stop-opacity="1"/>
-   </linearGradient>
-  </defs>
-  <path d="M31.5,0 l-8.75,20.25 l0.75,24 l16.5,-16.5 l6,-12.5" id="svg_2" fill="url(#svg_9)" stroke="#000000" stroke-width="2" fill-opacity="1" stroke-opacity="1"/>
-  <path d="M39.5,28.5 c-2,-9.25 -10.25,-11.75 -17,-7.4375 l0.4843,24.4414z" id="svg_10" fill="#fce0a9" stroke="#000000" stroke-width="2" fill-opacity="1" stroke-opacity="1"/>
-  <path d="M26.9318,41.1745 c-0.4491,-2.3511 -2.3021,-2.9866 -3.8181,-1.8905 l0.1087,6.2126z" fill="#000000" stroke="#000000" stroke-width="2" fill-opacity="1" stroke-opacity="1" id="svg_11"/>
-  <path d="M2.3132,4.6197 c12.4998,-1.6891 10.4729,7.0945 0,21.6215 c22.9729,-4.0539 12.1620,5.4053 12.1620,13.1756 c-0.3377,4.0539 8.7836,21.9594 26.0135,-1.3513" id="svg_12" fill="none" stroke="#000000" stroke-width="2" fill-opacity="1" stroke-opacity="1"/>
-</svg>
-</g>
-
-<g id="pen">
-	<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-	 <defs>
-	  <linearGradient id="svg_16" x1="0.46484" y1="0.15625" x2="0.9375" y2="0.39453">
-	   <stop offset="0" stop-color="#f2feff" stop-opacity="1"/>
-	   <stop offset="1" stop-color="#14609b" stop-opacity="1"/>
-	  </linearGradient>
-	  <linearGradient id="svg_19" x1="0.18359" y1="0.26172" x2="0.77734" y2="0.56641">
-	   <stop offset="0" stop-color="#ffffff" stop-opacity="1"/>
-	   <stop offset="1" stop-color="#fce564" stop-opacity="1"/>
-	  </linearGradient>
-	 </defs>
-	  <line x1="0.99844" y1="1.49067" x2="12.97691" y2="21.14149" id="svg_5" stroke="#000000" fill="none"/>
-	  <path d="m14.05272,13.68732l-1.46451,7.52632l4.03769,-6.32571" id="svg_6" fill="#a0a0a0" stroke="#000000"/>
-	  <path d="m13.61215,10.26563c-0.38567,1.05257 -0.60723,2.40261 -0.50403,3.125l4.33468,1.81452c0.46153,-0.30769 1.6129,-1.71371 1.6129,-2.52016" id="svg_7" fill="url(#svg_19)" stroke="#000000"/>
-	  <path d="m16.61335,1.00028l-3.67325,8.60247l7.10285,3.47318l3.17783,-7.20549" id="svg_8" fill="url(#svg_16)" stroke="#000000"/>
-	</svg>
-</g>
-
-<g id="text">
-	<svg id="svgzoom" viewBox="0 0 158 128" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-	  <text x="58" y="120" id="svg_1" fill="#000000" stroke="#000000" stroke-width="0" font-size="120pt" font-family="sans-serif" text-anchor="middle" fill-opacity="1" stroke-opacity="1" font-weight="bold">A</text>
-	  <line x1="136" y1="7" x2="136" y2="121" id="svg_2" stroke="#000000" fill="none" fill-opacity="1" stroke-opacity="1" stroke-width="5"/>
-	  <line x1="120" y1="4" x2="152" y2="4" id="svg_3" stroke="#000000" stroke-width="5" fill="none" fill-opacity="1" stroke-opacity="1"/>
-	 <line x1="120" y1="124" x2="152" y2="124" stroke="#000000" stroke-width="5" fill="none" fill-opacity="1" stroke-opacity="1" id="svg_4"/>
-	</svg>
-</g>
-
-
-<g id="path">
-<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 124 124" xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
-  <linearGradient y2="1" x2="1" y1="0.28125" x1="0.33594" id="svg_4">
-   <stop stop-opacity="1" stop-color="#ffffff" offset="0"/>
-   <stop stop-opacity="1" stop-color="#33a533" offset="1"/>
-  </linearGradient>
- </defs>
-  <path stroke-dasharray="null" stroke-width="4" stroke="#000000" fill="url(#svg_4)" id="svg_1" d="m6,103l55,-87c85,33.64 -26,37.12 55,87l-110,0z"/>
- </svg>
-</g>
-
-<g id="add_subpath">
-<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 124 124" xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
-  <linearGradient id="svg_4" x1="0.33594" y1="0.28125" x2="1" y2="1">
-   <stop offset="0" stop-color="#ffffff" stop-opacity="1"/>
-   <stop offset="1" stop-color="#33a533" stop-opacity="1"/>
-  </linearGradient>
- </defs>
- <g>
-  <path d="m6,103l55,-87c85,33.64 -26,37.12 55,87l-110,0z" id="svg_1" fill="url(#svg_4)" stroke="#000000" stroke-width="4" stroke-dasharray="null"/>
-  <g id="svg_7">
-   <circle stroke-dasharray="null" stroke-width="5" stroke="#000000" fill="#ffffff" id="svg_6" r="22.63281" cy="88.5" cx="45.5"/>
-   <line stroke-dasharray="null" stroke-width="7" stroke="#000000" id="svg_2" y2="104.03768" x2="45.5" y1="72.96232" x1="45.5"/>
-   <line stroke-dasharray="null" stroke-width="7" stroke="#000000" id="svg_3" y2="88.5" x2="61.03768" y1="88.5" x1="29.96232"/>
-  </g>
- </g>
- </svg>
-</g>
-
-<g id="close_path">
-<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <g>
-  <title>Layer 1</title>
-  <path stroke="#000" stroke-width="15" fill="#ffc8c8" d="m121.5,40l-84,106l27,115l166,2l29,-111"/>
-  <line x1="240" y1="136" x2="169.5" y2="74" stroke="#A00" stroke-width="25" fill="none"/>
-  <path stroke="none" fill ="#A00" d="m158,65l31,74l-3,-50l51,-3z"/>
-  <g stroke-width="15" stroke="#00f" fill="#0ff">
-  <circle r="30" cy="41" cx="123"/>
-  <circle r="30" cy="146" cx="40"/>
-  <circle r="30" cy="260" cx="69"/>
-  <circle r="30" cy="260" cx="228"/>
-  <circle r="30" cy="148" cx="260"/>
-  </g>
- </g>
-</svg>
-</g>
-
-<g id="open_path">
-<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <g>
-  <title>Layer 1</title>
-  <path stroke="#000" stroke-width="15" fill="#ffc8c8" d="m123.5,38l-84,106l27,115l166,2l29,-111"/>
-  <line x1="276.5" y1="153" x2="108.5" y2="24" stroke="#000" stroke-width="10" fill="none"/>
-  <g stroke-width="15" stroke="#00f" fill="#0ff">
-   <circle r="30" cy="41" cx="123"/>
-   <circle r="30" cy="146" cx="40"/>
-   <circle r="30" cy="260" cx="69"/>
-   <circle r="30" cy="260" cx="228"/>
-   <circle r="30" cy="148" cx="260"/>
-  </g>
-  <g  stroke="#A00" stroke-width="15" fill="none">
-   <line x1="168" y1="24" x2="210" y2="150"/>
-   <line x1="210" y1="24" x2="168" y2="150"/>
-  </g>
- </g>
-</svg>
-</g>
-
-
-<g id="image">
-<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
- <defs>
-  <linearGradient y2="1" x2="1" y1="0" x1="1" id="svg_25">
-   <stop stop-opacity="1" stop-color="#10284c" offset="0"/>
-   <stop stop-opacity="1" stop-color="#5374ad" offset="1"/>
-  </linearGradient>
-  <linearGradient y2="0.75781" x2="0.99609" y1="0" x1="1" id="svg_23">
-   <stop stop-opacity="1" stop-color="#162e84" offset="0"/>
-   <stop stop-opacity="1" stop-color="#97c4ef" offset="1"/>
-  </linearGradient>
- </defs>
-  <rect x="1" y="3.83333" width="22" height="17" id="svg_18" fill="#202020" stroke="#ffffff" stroke-width="0"/>
-  <rect stroke-width="1.2" stroke="#ffffff" fill="#232947" id="svg_15" height="14" width="19" y="5.33333" x="2.5"/>
-  <rect fill="url(#svg_23)" id="svg_20" height="7.02244" width="15.96424" y="6.7266" x="4"/>
-  <rect fill="url(#svg_25)" id="svg_24" height="4.02393" width="15.96303" y="13.77454" x="4"/>
-  <circle fill="#ffffad" id="svg_26" r="1.83333" cy="9.82002" cx="7.13254"/>
-  <path d="m14.5696,13.77458l0.70243,-4.85313l-3.12899,4.85313l2.42656,0z" id="svg_14" fill="#404040" stroke="#000000" stroke-width="0"/>
-  <path d="m15.27203,8.98531c2.74584,0.06386 2.42657,4.21456 -0.63857,4.85313c0.70243,-1.27714 1.66028,-3.63985 0.63857,-4.85313z" id="svg_17" fill="#404040" stroke="#000000" stroke-width="0"/>
-</svg>
-</g>
-
-<g id="zoom">
-	<svg viewBox="0 0 150 150" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-	 <defs>
-	  <linearGradient id="svg_30" x1="0" y1="0" x2="1" y2="0">
-	   <stop offset="0" stop-color="#d3d3d3" stop-opacity="1"/>
-	   <stop offset="1" stop-color="#424242" stop-opacity="1"/>
-	  </linearGradient>
-	 </defs>
-	  <path d="m107.14774,101.03477l-0.64774,43.96523c5.00857,4.72089 14.00811,5.27188 19,0l-0.31667,-44.16l-9.61514,-19.84l-8.42046,20.03477z" id="svg_29" fill="url(#svg_30)" stroke="#202020" stroke-width="2" transform="rotate(-45, 116, 114)"/>
-	  <circle cx="58" cy="58" r="51" id="svg_22" fill="#c0c0c0" stroke="#202020" stroke-width="5"/>
-	  <circle cx="58" cy="58" r="43" id="svg_27" fill="#aaccff" stroke="#202020" stroke-width="0"/>
-	  <path d="m15.68604,61.46511c38.13954,17.67442 48.13954,15.34883 85.11628,-0.46511c1.39536,18.60465 -19.30231,41.86047 -42.7907,40.93023c-21.6279,-0.93023 -42.7907,-21.86046 -42.32558,-40.46511z" id="svg_28" fill="#8cbaff" stroke="#202020" stroke-width="0"/>
-	</svg>
-</g>
-
-<g id="arrow_right">
-	<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 50">
-	  <path stroke="#000000" fill="#000000" d="m0,0l0,50l25,-25l-25,-25z"/>
-	</svg>
-</g>
-
-<g id="arrow_right_big">
-	<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 50">
-	  <path stroke="#000000" fill="#000000" d="m0,0l0,50l25,-25l-25,-25z"/>
-	</svg>
-</g>
-
-<g id="arrow_down">
-	<svg viewBox="0 0 50 40" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-	  <path transform="rotate(90, 26, 13)" d="m14,-12l0,50l25,-25l-25,-25z" fill="#000000" stroke="#000000"/>
-	</svg>
-</g>
-
-
-<g id="new_image">
-<svg width="24" height="24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-  <rect x="2.42792" y="1.6692" width="18" height="21" id="svg_55" fill="#eaeaea" stroke="#606060"/>
-  <circle stroke-width="0" stroke="#a0a0a0" fill="url(#svg_9)" id="svg_65" r="6.300781" cy="7.529969" cx="17.761984"/>
- <defs>
-  <radialGradient id="svg_9" cx="0.5" cy="0.5" r="0.5">
-   <stop offset="0.1" stop-color="#ffe500" stop-opacity="1"/>
-   <stop offset="1" stop-color="#ffff00" stop-opacity="0"/>
-  </radialGradient>
- </defs>
-</svg>
-</g>
-
-<g id="save">
-	<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
-	 <defs>
-	  <linearGradient y2="0" x2="1" y1="0" x1="0" id="svg_41">
-	   <stop stop-opacity="1" stop-color="#727272" offset="0"/>
-	   <stop stop-opacity="1" stop-color="#d6d6d6" offset="1"/>
-	  </linearGradient>
-	  <linearGradient y2="0.875" x2="0.21484" y1="0.00391" x1="0.04297" id="svg_46">
-	   <stop stop-opacity="1" stop-color="#81bbf4" offset="0"/>
-	   <stop stop-opacity="1" stop-color="#376eb7" offset="1"/>
-	  </linearGradient>
-	 </defs>
-	   <path stroke="#202020" fill="#e0e0e0" id="svg_21" d="m1.51669,22.3458l21.13245,-0.10111l0,-6.06673l-2.62892,-9.80789l-16.27907,0.10111l-2.32558,9.20121l0.10111,6.67341z"/>
-	   <rect stroke="#efefef" fill="url(#svg_41)" id="svg_32" height="4.75108" width="19.21031" y="16.58227" x="2.42667"/>
-	   <path stroke="#ffffff" fill="#c0c0c0" id="svg_42" d="m4.55005,11.12235l0.70779,-2.83114l13.04348,0l0.70779,3.13448c-0.70779,2.52781 -4.04479,3.84227 -7.17897,3.84227c-2.72977,0 -6.37007,-1.41557 -7.28008,-4.1456z"/>
-	  <path stroke="#285582" fill="url(#svg_46)" id="svg_45" d="m7.14286,9.74903l5.21236,5.79151l5.50193,-5.88803l-2.50965,-0.09653l0,-2.79923c0,-2.3166 -2.3166,-5.59846 -6.56371,-5.59846c-4.05405,0 -6.27413,3.37838 -6.56371,6.75676c0.48263,-1.5444 2.7027,-4.53668 4.44015,-4.44015c2.12355,-0.09653 2.79923,1.64093 2.79923,3.37838l0.09653,2.79923l-2.41313,0.09653z"/>
-	</svg>
-</g>
-
-<g id="open">
-<svg viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
-  <linearGradient y2="0.91406" x2="0.65234" y1="0.14063" x1="0.42578" id="svg_76">
-   <stop stop-opacity="1" stop-color="#81bbf4" offset="0"/>
-   <stop stop-opacity="1" stop-color="#376eb7" offset="1"/>
-  </linearGradient>
- </defs>
-  <rect x="1.65" y="3.75" width="9.8" height="16.72712" id="svg_98" fill="#c0c0c0" stroke="#606060"/>
-  <rect stroke-width="0" stroke="#606060" fill="#a0a0a0" id="svg_88" height="14.17459" width="6.39585" y="4.9758" x="2.89542"/>
-  <path d="m18.62576,4.54365l0,6.91443l-9.9395,0l-0.08643,-10.11236l6.828,0l3.19792,3.19793z" id="svg_99" fill="#e0e0e0" stroke="#404040"/>
-  <path d="m2.95,20.53644l1.65,-12.03644l16.2,0l-1.5,12l-16.35,0.03643z" id="svg_97" fill="url(#svg_76)" stroke="#285582"/>
-  <line fill="none" stroke="#606060" id="svg_89" y2="4.28436" x2="13.95851" y1="4.28436" x1="10.32844"/>
-  <line fill="none" stroke="#606060" id="svg_91" y2="6.53155" x2="14.82282" y1="6.53155" x1="10.32844"/>
-  <path stroke-width="0" stroke="#606060" fill="#ffffff" id="svg_100" d="m15.25895,1.95069l-0.00401,2.85225l2.89558,0.00004l-2.89157,-2.85229z"/>
-</svg>
-</g>
-
-<g id="import">
-<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
-  <linearGradient y2="0.875" x2="0.21484" y1="0.00391" x1="0.04297" id="svg_46_import">
-   <stop stop-opacity="1" stop-color="#81f4bb" offset="0"/>
-   <stop stop-opacity="1" stop-color="#37b76e" offset="1"/>
-  </linearGradient>
- </defs>
- <rect x="2.42792" y="1.6692" width="18" height="21" id="svg_55" fill="#eaeaea" stroke="#606060"/>
-	  <path stroke="#285582" fill="url(#svg_46_import)" id="svg_45" d="m7.14286,12.74903l5.21236,5.79151l5.50193,-5.88803l-2.50965,-0.09653l0,-2.79923c0,-2.3166 -2.3166,-5.59846 -6.56371,-5.59846c-4.05405,0 -6.27413,3.37838 -6.56371,6.75676c0.48263,-1.5444 2.7027,-4.53668 4.44015,-4.44015c2.12355,-0.09653 2.79923,1.64093 2.79923,3.37838l0.09653,2.79923l-2.41313,0.09653z"/>
-</svg>
-</g>
-
-<g id="docprops">
-	<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
-	 <defs>
-	  <linearGradient y2="1" x2="1" y1="0.5" x1="1" id="svg_53">
-	   <stop stop-opacity="1" stop-color="#606060" offset="0"/>
-	   <stop stop-opacity="0" stop-color="#5e5e5e" offset="1"/>
-	  </linearGradient>
-	 </defs>
-	  <rect stroke="#606060" fill="#eaeaea" id="svg_55" height="21" width="18" y="1.6692" x="2.42792"/>
-	  <line fill="none" stroke="#a0a0a0" id="svg_56" y2="4.37757" x2="14.89023" y1="4.37757" x1="6.696"/>
-	  <line fill="none" stroke="#a0a0a0" id="svg_57" y2="7.10804" x2="12.92026" y1="7.10804" x1="6.6948"/>
-	  <line fill="none" stroke="#a0a0a0" id="svg_58" y2="9.84241" x2="15.64716" y1="9.84241" x1="6.6942"/>
-	  <line fill="none" stroke="#a0a0a0" id="svg_59" y2="12.36585" x2="13.21805" y1="12.36585" x1="6.69691"/>
-	  <line fill="none" stroke="#a0a0a0" id="svg_60" y2="15.06507" x2="14.43591" y1="15.06507" x1="6.69691"/>
-	  <line fill="none" stroke="#a0a0a0" id="svg_61" y2="17.84241" x2="13.36979" y1="17.84241" x1="6.69691"/>
-	  <g id="svg_54">
-	   <path transform="rotate(-45, 12.5448, 11.7085)" stroke-width="0" stroke="#000000" fill="#606060" id="svg_31" d="m11.24329,8.73944l0,2.79974l2.53499,0.07777l0,-2.95528c1.78134,0.07777 2.26093,1.39987 2.12391,2.95528c-0.06851,1.63318 -1.30175,3.49967 -3.49418,3.26636c-2.19242,-0.31108 -2.87755,-1.39987 -3.15161,-2.72197c-0.27406,-1.39987 0.41108,-3.34413 1.98689,-3.4219z"/>
-	   <rect opacity="0.95" transform="rotate(-45, 16.2485, 15.1732)" stroke-width="0" stroke="#000000" fill="url(#svg_53)" id="svg_50" height="4.85445" width="2.57974" y="12.746" x="15.04047"/>
-	  </g>
-	</svg>
-</g>
-
-<g id="source">
-<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 55 52">
-  <text xml:space="preserve" text-anchor="middle" font-family="monospace" font-size="24" stroke-width="0" stroke="#000000" fill="#019191" id="svg_40" y="15" x="28.23" font-weight="bold">s</text>
-  <text xml:space="preserve" text-anchor="middle" font-family="monospace" font-size="24" stroke-width="0" stroke="#000000" fill="#019191" id="svg_47" y="30" x="28.23" font-weight="bold">v</text>
-  <text xml:space="preserve" text-anchor="middle" font-family="monospace" font-size="24" stroke-width="0" stroke="#000000" fill="#019191" id="svg_48" y="44" x="28.23" font-weight="bold">g</text>
-  <line stroke-width="3" fill="none" stroke="#aa0000" id="svg_51" y2="43" x2="16" y1="25" x1="5"/>
-  <line id="svg_62" stroke-width="3" fill="none" stroke="#aa0000" y2="8" x2="16" y1="26" x1="5"/>
-  <line id="svg_63" stroke-width="3" fill="none" stroke="#aa0000" y2="43" x2="39" y1="25" x1="50"/>
-  <line id="svg_64" stroke-width="3" fill="none" stroke="#aa0000" y2="8" x2="39" y1="26" x1="51"/>
- </svg>
-</g>
- 
-<g id="wireframe">
- <svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
-  <circle stroke="#000000" fill="none" id="svg_49" r="8" cy="9.5" cx="9.5"/>
-  <rect stroke="#000000" fill="none" id="svg_52" height="14" width="14" y="8.5" x="8.5"/>
- </svg>
-</g>
-
-<g id="undo">
-<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
-  <linearGradient id="svg_66" x1="0.04297" y1="0.00391" x2="0.21484" y2="0.875">
-   <stop offset="0" stop-color="#f7f963" stop-opacity="1"/>
-   <stop offset="1" stop-color="#d3c310" stop-opacity="1"/>
-  </linearGradient>
- </defs>
-  <path transform="rotate(-90, 10.3017, 11.5526)" d="m6.70188,10.72562l6.55493,-7.13388l6.65817,7.24912l-3.79441,0.03193l0,2.72259c-0.04257,2.74017 -2.76516,5.83068 -7.81235,6.02135c-5.18575,0 -7.1226,-3.75464 -7.49302,-7.41944c0.61736,1.6754 3.14913,3.78397 5.3716,3.67918c2.71635,0.1048 4.41501,-0.61714 4.41501,-2.50184l0,-2.64901l-3.89995,0z" id="svg_45" fill="url(#svg_66)" stroke="#b7a800"/>
- </svg>
-</g>
-
-<g id="redo">
-<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
-  <linearGradient y2="1" x2="1" y1="0" x1="1" id="svg_71">
-   <stop stop-opacity="1" stop-color="#98fc46" offset="0"/>
-   <stop stop-opacity="1" stop-color="#56aa25" offset="1"/>
-  </linearGradient>
- </defs>
-  <path transform="rotate(-90, 12.7299, 11.5526)" d="m9.11294,12.43144l6.54089,6.84566l6.6439,-6.95624l-3.78628,-0.03064l0,-2.61259c-0.04248,-2.62946 -2.75924,-5.5951 -7.79561,-5.77807c-5.17464,0 -7.10734,3.60294 -7.47697,7.11967c0.61604,-1.60771 3.14238,-3.63109 5.36009,-3.53053c2.71053,-0.10056 4.40555,0.59221 4.40555,2.40076l0,2.54198l-3.89159,0z" id="svg_45" fill="url(#svg_71)" stroke="#44aa00"/>
- </svg>
-</g>
-
-<g id="clone">
-<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18">
- <defs>
-  <linearGradient y2="1" x2="1" y1="0" x1="0" id="svg_36">
-   <stop stop-opacity="1" stop-color="#f9f3de" offset="0"/>
-   <stop stop-opacity="1" stop-color="#ccbd8f" offset="1"/>
-  </linearGradient>
-  <linearGradient y2="0.80078" x2="0.42578" y1="0" x1="0" id="svg_69">
-   <stop stop-opacity="1" stop-color="#f9f3de" offset="0"/>
-   <stop stop-opacity="1" stop-color="#af995b" offset="1"/>
-  </linearGradient>
- </defs>
-  <path stroke="#8f5902" fill="url(#svg_69)" id="svg_34" d="m2.11676,16.32061l-0.13787,-5.05515l1.93015,-2.02206l10.11029,0l2.02206,2.29779l0,4.77941l-13.92463,0z"/>
-  <rect x="7.85379" y="6.30027" width="2.2932" height="4.3407" id="svg_38" fill="url(#svg_36)" stroke="#8f5902" rx="1" ry="1"/>
-  <circle stroke="#8f5902" fill="url(#svg_36)" id="svg_35" r="2.96392" cy="4.48149" cx="9.11757"/>
-  <line x1="2.44838" y1="12.03512" x2="15.5524" y2="12.03512" id="svg_39" stroke="#f9f3de" fill="none"/>
-  <path d="m6.72427,12.55859l4.74203,0l-2.30831,2.07258l-2.43372,-2.07258z" id="svg_43" fill="#000000" stroke="#8f5902" fill-opacity="0.76" stroke-width="0"/>
-</svg>
-</g>
-
-<g id="delete">
-<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
-  <rect ry="3" rx="3" stroke="#800000" fill="#aa0000" id="svg_37" height="20.29514" width="21.17486" y="1.70304" x="1.42011"/>
-  <rect ry="3" rx="3" stroke="#ff5555" fill="#aa0000" id="svg_67" height="18.63022" width="19.61118" y="2.53597" x="2.20258"/>
-  <line stroke-width="2" fill="none" stroke="#ffffff" id="svg_68" y2="16.85127" x2="17.00646" y1="6.85127" x1="7.00646"/>
-  <line stroke-width="2" id="svg_70" fill="none" stroke="#ffffff" y2="16.85127" x2="7.00646" y1="6.85127" x1="17.00646"/>
- </svg>
-</g>
-
-<g id="go_up">
-	<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18">
-	 <defs>
-	  <linearGradient y2="0" x2="0.7" y1="0" x1="0" id="svg_74">
-	   <stop stop-opacity="1" stop-color="#afe853" offset="0"/>
-	   <stop stop-opacity="1" stop-color="#52a310" offset="1"/>
-	  </linearGradient>
-	 </defs>
-	  <path stroke="#008000" fill="url(#svg_74)" id="svg_33" d="m5.38492,16.77043l7.07692,0l0,-5.23077l4.15385,0l-7.69231,-10.15385l-7.69231,10.15385l4.15385,0l0,5.23077z"/>
-	</svg>
-</g>
-
-<g id="go_down">
-<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18">
- <defs>
-  <linearGradient y2="0" x2="0.7" y1="0" x1="0" id="svg_75">
-   <stop stop-opacity="1" stop-color="#afe853" offset="0"/>
-   <stop stop-opacity="1" stop-color="#52a310" offset="1"/>
-  </linearGradient>
- </defs>
-  <path stroke="#008000" fill="url(#svg_75)" id="svg_33" d="m5.3015,1.69202l6.93483,0l0,5.07323l4.07045,0l-7.53786,9.84803l-7.53786,-9.84803l4.07045,0l0,-5.07323z"/>
- </svg>
-</g>
-
-<g id="move_bottom">
-<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 23 23">
- <defs>
-  <linearGradient y2="0" x2="1" y1="0" x1="0" id="svg_80">
-   <stop stop-opacity="1" stop-color="#bc7f05" offset="0"/>
-   <stop stop-opacity="1" stop-color="#fcfc9f" offset="1"/>
-  </linearGradient>
- </defs>
-  <line stroke-width="2" fill="none" stroke="#000000" id="svg_72" y2="2.5" x2="22" y1="2.5" x1="10.5"/>
-  <line id="svg_73" stroke-width="2" fill="none" stroke="#000000" y2="6.5" x2="21.99844" y1="6.5" x1="10.49844"/>
-  <line id="svg_74" stroke-width="2" fill="none" stroke="#000000" y2="10.5" x2="21.99922" y1="10.5" x1="10.49922"/>
-  <line id="svg_75" stroke-width="2" fill="none" stroke="#000000" y2="14.5" x2="21.99922" y1="14.5" x1="10.49922"/>
-  <rect stroke="#000000" fill="url(#svg_80)" id="svg_77" height="2.2" width="20" y="17.65" x="1.65"/>
-  <path stroke-width="0" stroke="#000000" fill="#000000" id="svg_81" d="m4.25,1.55l2.35,0l0,11.05l2,0l-3.175,3.45l-3.175,-3.45l2,0l0,-11.05z"/>
- </svg>
-</g>
-
-<g id="move_top">
-<svg viewBox="0 0 23 23" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
-  <linearGradient id="svg_86" x1="0" y1="0" x2="1" y2="0">
-   <stop offset="0" stop-color="#9fdcf4" stop-opacity="1"/>
-   <stop offset="1" stop-color="#617e96" stop-opacity="1"/>
-  </linearGradient>
- </defs>
-  <line x1="1.3" y1="8.19922" x2="12.8" y2="8.19922" id="svg_72" stroke="#000000" fill="none" stroke-width="2"/>
-  <line x1="1.29844" y1="12.19922" x2="12.79844" y2="12.19922" stroke="#000000" fill="none" stroke-width="2" id="svg_73"/>
-  <line x1="1.29922" y1="16.19922" x2="12.79922" y2="16.19922" stroke="#000000" fill="none" stroke-width="2" id="svg_74"/>
-  <line x1="1.29922" y1="20.19922" x2="12.79922" y2="20.19922" stroke="#000000" fill="none" stroke-width="2" id="svg_75"/>
-  <rect x="1.55" y="1.85" width="20" height="3.2" id="svg_77" fill="url(#svg_86)" stroke="#000000"/>
-  <path d="m16.83475,21.14603l2.33207,0l0,-11.04578l1.98474,0l-3.15077,-3.44869l-3.15077,3.44869l1.98474,0l0,11.04578z" id="svg_81" fill="#000000" stroke="#000000" stroke-width="0"/>
- </svg>
-</g>
-
-<g id="to_path">
-<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
-  <linearGradient y2="0.46875" x2="0.42969" y1="0.10156" x1="0.10547" id="svg_105">
-   <stop stop-color="#ff0000" offset="0"/>
-   <stop stop-opacity="0" stop-color="#ff0000" offset="1"/>
-  </linearGradient>
- </defs>
- <g>
-  <circle cx="21" cy="21.3125" r="18.44531" id="svg_120" fill="url(#svg_105)" stroke="#000000"/>
-  <path fill="none" stroke="#000000" d="m2.875,21.3125c-0.375,-9.25 7.75,-18.875 17.75,-18" id="svg_115"/>
-  <line x1="25.375" y1="3.0625" x2="8.5" y2="3.0625" id="svg_116" stroke="#808080" fill="none"/>
-  <line x1="2.625" y1="24.75" x2="2.625" y2="9.8125" id="svg_117" stroke="#808080" fill="none"/>
-  <circle cx="8.5" cy="2.9375" r="1.95313" fill="#00ffff" stroke="#0000ff" stroke-width="0.5" id="svg_118"/>
-  <circle cx="2.625" cy="9.8125" r="1.95313" fill="#00ffff" stroke="#0000ff" stroke-width="0.5" id="svg_119"/>
-  <circle cx="20.875" cy="3.1875" r="2.5" id="svg_112" fill="#00ffff" stroke="#0000ff"/>
-  <circle cx="2.875" cy="21.0625" r="2.5" fill="#00ffff" stroke="#0000ff" id="svg_114"/>
- </g>
-</svg>
-</g>
-
-<g id="link_controls">
-<svg viewBox="0 0 24 24" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg">
-  <path stroke-width="2" id="svg_102" d="m9.875,23c-2,-4.25 -1.6875,-7.375 1.6875,-10.5c3.375,-3.125 7.5625,-2.75 11.0625,2" stroke="#8dd35f" fill="none"/>
-  <line fill="none" stroke="#606060" id="svg_109" y2="4" x2="19" y1="19" x1="4"/>
-  <circle stroke="#0000ff" fill="#00ffff" id="svg_111" r="2.17578" cy="11.5" cx="11.5"/>
-  <circle stroke-width="0.5" id="svg_121" stroke="#0000ff" fill="#00ffff" r="2.26172" cy="4" cx="19"/>
-  <circle id="svg_123" stroke-width="0.5" stroke="#0000ff" fill="#00ffff" r="2.26172" cy="19" cx="4"/>
-</svg>
-</g>
-
-<g id="reorient">
-<svg viewBox="0 0 24 24" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg">
- <defs>
-  <linearGradient y2="1" x2="1" y1="1" x1="0" id="svg_113">
-   <stop stop-opacity="0" stop-color="#0000ff" offset="0"/>
-   <stop stop-opacity="1" stop-color="#507ece" offset="1"/>
-  </linearGradient>
- </defs>
-  <rect stroke-dasharray="2,2" stroke="#0000ff" fill="none" id="svg_108" height="19.125" width="18.625" y="2.625" x="2.875"/>
-  <rect transform="rotate(45, 12.2344, 12.1719)" stroke="#000000" fill="url(#svg_113)" id="svg_107" height="6.125" width="16" y="9.10848" x="4.23267"/>
-</svg>
-</g>
-
-<g id="group">
-<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
-  <linearGradient id="svg_90" x1="0" y1="0" x2="1" y2="1">
-   <stop offset="0" stop-color="#ccddff" stop-opacity="1"/>
-   <stop offset="1" stop-color="#789fed" stop-opacity="1"/>
-  </linearGradient>
-  <linearGradient id="svg_92" x1="0" y1="0" x2="1" y2="1">
-   <stop offset="0" stop-color="#70a1e5" stop-opacity="1"/>
-   <stop offset="1" stop-color="#4b6baf" stop-opacity="1"/>
-  </linearGradient>
- </defs>
-  <rect x="13.5" y="0.5" width="2" height="2" fill="#a0a0a0" stroke="#555555" id="svg_79"/>
-  <rect x="13.5" y="13.5" width="2" height="2" fill="#a0a0a0" stroke="#555555" id="svg_82"/>
-  <rect x="0.5" y="13.5" width="2" height="2" fill="#a0a0a0" stroke="#555555" id="svg_83"/>
-  <rect x="2.5" y="2.5" width="8" height="7" fill="#a0a0a0" stroke="#555555" id="svg_85"/>
-  <rect x="2.5" y="2.5" width="8" height="7" fill="url(#svg_90)" stroke="url(#svg_92)" id="svg_87"/>
-  <rect x="5.5" y="6.5" width="8" height="7" id="svg_84" fill="#7399d6" stroke="url(#svg_92)"/>
-  <rect x="0.5" y="0.5" width="2" height="2" id="svg_78" fill="#a0a0a0" stroke="#555555"/>
- </svg>
-</g>
-
-<g id="ungroup">
-<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
-  <linearGradient id="svg_90" x1="0" y1="0" x2="1" y2="1">
-   <stop offset="0" stop-color="#ccddff" stop-opacity="1"/>
-   <stop offset="1" stop-color="#789fed" stop-opacity="1"/>
-  </linearGradient>
-  <linearGradient id="svg_92" x1="0" y1="0" x2="1" y2="1">
-   <stop offset="0" stop-color="#70a1e5" stop-opacity="1"/>
-   <stop offset="1" stop-color="#4b6baf" stop-opacity="1"/>
-  </linearGradient>
- </defs>
-  <rect x="2.5" y="2.5" width="8" height="7" fill="url(#svg_90)" stroke="url(#svg_92)" id="svg_87"/>
-  <rect x="5.5" y="6.5" width="8" height="7" id="svg_84" fill="#7399d6" stroke="url(#svg_92)"/>
-  <rect x="9.5" y="1.5" width="2" height="2" fill="#a0a0a0" stroke="#555555" id="svg_79"/>
-  <rect x="1.5" y="8.5" width="2" height="2" fill="#a0a0a0" stroke="#555555" id="svg_83"/>
-  <rect x="1.5" y="1.5" width="2" height="2" id="svg_78" fill="#a0a0a0" stroke="#555555"/>
-  <rect id="svg_93" x="12.5" y="5.5" width="2" height="2" fill="#a0a0a0" stroke="#555555"/>
-  <rect id="svg_94" x="12.5" y="12.5" width="2" height="2" fill="#a0a0a0" stroke="#555555"/>
-  <rect id="svg_95" x="4.5" y="12.5" width="2" height="2" fill="#a0a0a0" stroke="#555555"/>
-  <rect id="svg_96" x="4.5" y="5.5" width="2" height="2" fill="#a0a0a0" stroke="#555555"/>
-</svg>
-</g>
-
-<g id="align_left">
-	<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 22 22">
-	  <rect stroke="#606060" fill="#ffffff" id="svg_4" height="7" width="12" y="2.5" x="2.5"/>
-	  <rect stroke-width="0" stroke="#606060" fill="#c0c0c0" id="svg_5" height="4" width="11" y="4" x="2"/>
-	  <rect id="svg_6" stroke="#606060" fill="#ffffff" height="7" width="18" y="12.5" x="2.5"/>
-	  <rect id="svg_7" stroke-width="0" stroke="#606060" fill="#c0c0c0" height="4" width="17" y="14" x="2"/>
-	  <rect stroke="#c15909" fill="#ef9a23" id="svg_2" height="40" width="2" y="-10" x="1.5"/>
-	</svg>
-</g>
-
-<g id="align_center">
-	<svg viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-	  <rect x="1.5" y="12.5" width="18" height="7" fill="#c0c0c0" stroke="#606060" id="svg_6"/>
-	  <rect x="4.5" y="2.5" width="12" height="7" id="svg_4" fill="#c0c0c0" stroke="#606060"/>
-	  <rect x="9.5" y="-10" width="2" height="40" id="svg_2" fill="#ef9a23" stroke="#c15909"/>
-	  <rect x="2.5" y="13.5" width="16" height="5" fill="none" stroke="#ffffff" id="svg_7"/>
-	  <rect x="5.5" y="3.5" width="10" height="5" id="svg_5" fill="none" stroke="#ffffff"/>
-	</svg>
-</g>
-
-<g id="align_right">
-	<svg viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-	  <rect x="7.5" y="2.5" width="12" height="7" id="svg_4" fill="#ffffff" stroke="#606060"/>
-	  <rect x="9" y="4" width="11" height="4" id="svg_5" fill="#c0c0c0" stroke="#606060" stroke-width="0"/>
-	  <rect x="1.5" y="12.5" width="18" height="7" fill="#ffffff" stroke="#606060" id="svg_6"/>
-	  <rect x="3" y="14" width="17" height="4" fill="#c0c0c0" stroke="#606060" stroke-width="0" id="svg_7"/>
-	  <rect x="18.5" y="-10" width="2" height="40" id="svg_2" fill="#ef9a23" stroke="#c15909"/>
-	</svg>
-</g>
-
-<g id="align_top">
-	<svg viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-	  <g transform="rotate(90, 11, 11)" id="svg_1">
-	   <rect x="2.5" y="3.5" width="12" height="7" id="svg_4" fill="#ffffff" stroke="#606060"/>
-	   <rect x="2" y="5" width="11" height="4" id="svg_5" fill="#c0c0c0" stroke="#606060" stroke-width="0"/>
-	   <rect x="2.5" y="13.5" width="18" height="7" fill="#ffffff" stroke="#606060" id="svg_6"/>
-	   <rect x="2" y="15" width="17" height="4" fill="#c0c0c0" stroke="#606060" stroke-width="0" id="svg_7"/>
-	   <rect x="1.5" y="-9" width="2" height="40" id="svg_2" fill="#ef9a23" stroke="#c15909"/>
-	  </g>
-	</svg>
-</g>
-
-<g id="align_middle">
-<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 22 22">
-  <g transform="rotate(90, 12, 11.5)" id="svg_1">
-   <rect id="svg_6" stroke="#606060" fill="#c0c0c0" height="7" width="18" y="14" x="3"/>
-   <rect stroke="#606060" fill="#c0c0c0" id="svg_4" height="7" width="12" y="4" x="6"/>
-   <rect stroke="#c15909" fill="#ef9a23" id="svg_2" height="40" width="2" y="-8.5" x="11"/>
-   <rect id="svg_7" stroke="#ffffff" fill="none" height="5" width="16" y="15" x="4"/>
-   <rect stroke="#ffffff" fill="none" id="svg_5" height="5" width="10" y="5" x="7"/>
-   </g>
-</svg>
-</g>
-
-<g id="align_bottom">
-<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 22 22">
-  <g transform="rotate(90, 11, 11)" id="svg_1">
-   <rect stroke="#606060" fill="#ffffff" id="svg_4" height="7" width="12" y="2.5" x="7.5"/>