https://wiki.inkscape.org/wiki/api.php?action=feedcontributions&user=Shmel&feedformat=atomInkscape Wiki - User contributions [en]2024-03-29T12:40:07ZUser contributionsMediaWiki 1.36.1https://wiki.inkscape.org/wiki/index.php?title=Object_Manager&diff=8442Object Manager2006-10-03T18:34:43Z<p>Shmel: </p>
<hr />
<div><h1>The Inkscape Object Manager</h1><br />
<br />
<strong>A hybrid of the XML Editor and Item Properties dialog.. mixed in with a bit of love.</strong><br />
<br />
<br />
upload:obman2.png upload:gradients.png<br />
<br />
<br />
<br />
<h2>Brief</h2><br />
<ul><br />
<li>An expandable list of the groups and objects within your SVG.<br /> <br />
<br />
Previews of what is within that group is handy but not essential ( like in the XML editor: when groups are selected , the relative items on the canvas are selected )</li><br />
<br />
<li>Groups can be expanded down to object level and each list item can be renamed.</li><br />
<br />
<li>Each list item has a visibility and sensitive check button.<br /></li><br />
<br />
<li>objects can be dragged from the list to the canvas. <br /><br />
<br />
This will initiate a Use function to duplicate that group ( can we do this ? it would do wonders for economising file-size and graphics! )<br/><br />
--Should be able to. cloning objects does that now, and we are able to clone groups</li><br />
<br />
</ul><br />
<br />
<br />
<br />
<br />
<br />
<h2>Better for Semantics</h2><br />
<br />
<p>Many Users will identify this manager as a type of 'Object Library' for their SVG documents.<br /><br />
<br />
The benefit here lies in the content. As users rename the objects they see in the manager they will be in-fact renaming the ID's in the XML.<br /><br />
<br />
This means the more semantic their documents, the more the user is rewarded with a logical 'object manager'.<br /><br />
<br />
Because it's as simple as double clicking your object in the manager to rename it, users will be not only encouraged too name objects for </p><br />
<br />
<br />
<br />
<br />
<br />
<h2>Better for Users</h2><br />
<br />
<p>When making objects sensetive and insensetive, users shouldn't have to go deep into the dark pits of the XML editor to make objects sensetive again. </p><br />
<br />
<br />
<h2>The Gradient Manager</h2><br />
<p>currently when an object uses an existing [http://grin-optics.org gradient], inkscape will create a new lineargradientXXXX def id so that the x1y1 x2y2 coords can be changed. <br />This def will then xlink:href to the existing gradient so that it can assume the colours and stops as the users.</p><br />
<br />
<p>The Gradient Manager provides a way to manage the names of both reference type gradient defs and also the gradient defs that contrain colour stop information.<br /><br />
What also makes for a nice feature is you can re-use the reference gradients for exact-gradient positioning based off other objects :)</p><br />
<br />
<h3>Things that happen as you interact with the gradient manager</h3><br />
<p><br />
<ul><br />
<br />
<li>Draging and dropping objects above and below eachother changes their order in the xml</li><br />
<br />
<li>clicking on an object after it is selected allows the user to rename the id of that def</li><br />
<br />
<li>selecting a gradient after selecting an object applies that gradient</li><br />
</ul><br />
<br />
</p><br />
<br />
=== Gradient Dialog Design Ideas ===<br />
<br />
* http://www.macromedia.com/software/freehand/productinfo/features/static_tour/07effects.html#3<br />
<br />
* http://www.netsoc.tcd.ie/~horkana/dev/gnome/inkscape/screenshots/references/photoshop/adobephotoshop7_gradient-editor-001.png<br />
* http://www.netsoc.tcd.ie/~horkana/dev/gnome/inkscape/screenshots/references/photoshop/adobephotoshop7_gradient-editor-002-noise-gradient.png<br />
* http://www.netsoc.tcd.ie/~horkana/dev/gnome/inkscape/screenshots/references/photoshop/adobephotoshop7_gradient-editor-003-menu.png<br />
* http://www.netsoc.tcd.ie/~horkana/dev/gnome/inkscape/screenshots/references/photoshop/adobephotoshop7_gradient-editor-004.png<br />
* http://www.netsoc.tcd.ie/~horkana/dev/gnome/inkscape/screenshots/references/photoshop/adobephotoshop7_gradient-editor-005.png<br />
* http://www.netsoc.tcd.ie/~horkana/dev/gnome/inkscape/screenshots/references/photoshop/adobephotoshop7_gradient-editor-007.png<br />
<br />
And a screenshot of just the tool options bar for gradients:<br />
<br />
* http://www.netsoc.tcd.ie/~horkana/dev/gnome/inkscape/screenshots/references/photoshop/adobephotoshop7_gradient-tooloptions-001.png<br />
<br />
* http://turnipspatch.com/misc/inkscape/gradients.html<br />
<br />
* http://jozmak.heydo.com/wallpapers/screensavers.htm<br />
<br />
If we want a solution that will scale beyond a few dozen gradients I'm<br />
convinced the task of creating or editing new gradients should be seperated<br />
out from the task of selecting and applying a gradient.<br />
Part of the reasion I created a set of gradients for [[OpenClipart]].org was<br />
to have a sample set that made it clear to anyone redesigining the dialog<br />
that it would need to accomodate a whole lot of gradients. -- Alan<br />
<br />
The way Xara does it:<br />
http://www.xara.com/products/xarax/flash/fill.htm</div>Shmelhttps://wiki.inkscape.org/wiki/index.php?title=Roadmap&diff=8440Roadmap2006-10-03T18:17:45Z<p>Shmel: </p>
<hr />
<div>== Inkscape Development Roadmap == <br />
<br />
NOTE: This is a working document showing specific near-term tasks needed for achieving milestones. The number in front of the version is in reference to the milestone.<br />
<br />
''Milestones 0-9 have been completed since the start of the Inkscape Project. See [[OldRoadmap]]''<br />
<br />
=== Milestone 10 - RFE's & Extensions Implementation - Inkscape 0.44 ===<br />
<br />
New/Changed Dependencies<br />
* (DONE) Add libcroco <br />
<br />
Internals<br />
<br />
* Implement extension API<br />
* Implement extension registry<br />
* Complete Extension preferences dialog<br />
* (DONE) Reduce open/total RFE ratio to 55%<br />
* masks/clippaths<br />
** (DONE)Implement creation<br />
** on-canvas editing<br />
* Create an SPObject API for tracking references and avoiding id clashes on import and interdocument copy/paste. What we need are a void SPDocument::importCopies([set of SPObjects]), and an [set of SPObjects] SPObject::dependencies() method.<br />
* Implement [http://grin-optics.org gradient] UI "release" handler to deal with gradient garbage collection (see bug 984854)<br />
* improvement of svg patterns UI - make it similar to gradient-drag, instead of piggybacking knotholder<br />
<br />
RFE's<br />
* [http://sourceforge.net/tracker/index.php?func=detail&aid=893812&group_id=93438&atid=604309 hyperlinking]<br />
*(DONE, in .43?) tools: add/remove points on path, bezier drag<br />
<br />
Maintenance<br />
* Learn and use autoscan and autoreconf to find out which configure tests are still needed.<br />
* Clean up configure.in<br />
* (PARTIALLY DONE) [http://inkscape.org/cgi-bin/wiki.pl?DirectoryReorgProposal Directory Reorganization] (rejon)<br />
* When run without installing, make it look for icon image file(s) locally so we don't get garbage icons<br />
<br />
Testing<br />
* (DONE) Implement tests of Inkscape against the [[W3C]] test suite [rick beton, bryce]<br />
* Include some rendering tests in `make check'.<br />
<br />
=== Milestone 11 - Import/Export Feature Enhancements - Inkscape 0.45 ===<br />
<br />
* integrate [[Googles_Summer_Of_Code]] 2006 work, i.e. [[Filter_Effects|SVG Filters]] and [[User:Daleharvey|formalising the protocol for inkboard communication]]<br />
* Make printing work more efficiently and reliably<br />
* Enhance file manager<br />
* PDF Export<br />
* Investigate ps2ai, pstoedit and ai2svg conversion options (potential EPS support?)<br />
* Import of native Adobe Illustrator files<br />
* Other RFE's related to Import/Export<br />
* Add extension for use of [[VDX2SVG]] (http://vdxtosvg.sourceforge.net/)<br />
* Add extension for use of [[PDF2SVG]] (http://www.solidcode.net/pdf2svg/ - this doesn't actually link to a useful page)<br />
* [[WebDAV/FTP]] support via GNOME-VFS, Neon, or the like<br />
<br />
=== Milestone 12 - Style Refactoring - Inkscape 0.46 ===<br />
<br />
* Eliminate use of the style.h types in as much of codebase as possible, particularly display/*.<br />
* Change to use of GQuarks instead of #defines where feasible<br />
* Editable toolbars (libegg)<br />
<br />
=== Milestone 13 - Bug Hunt & RFE's - Inkscape 0.47 ===<br />
<br />
* Reduce open/total RFE ratio to 40%<br />
* Reduce open/total bug ratio to 5%<br />
<br />
=== Milestone 14 - Drawing Feature Enhancements - Inkscape 0.48 ===<br />
<br />
* Object-to-object snapping <br />
* (DONE) Markers<br />
* Enhanced grid system<br />
* Inter-application cut-and-paste<br />
* Inter-application drag-and-drop<br />
* Clipart manager GUI<br />
* Hyperlinking (Dupe? This is in milestone 10, too)<br />
* (DONE) Load-from-URL<br />
<br />
=== Milestone 15 - Style Rewrite & libcroco - Inkscape 0.49 ===<br />
<br />
* Replace style.cpp entirely, with a clearer and cleaner version.<br />
* (DONE) Integrate use of libcroco for handling Cascading Style Sheets.<br />
<br />
* Palettes<br />
<br />
(suggestion: having custom palletes, like from Gnome )<br />
(suggestion: accuraced palettes from colour norms, like Pantone, Trumatch, Focoltone, Toyo, etc. (since lots of people uses it, specially professionally) - problem: some are patented/copyrighted, which seems each norm company like this must be contacted for authorization (?) - as well, is also an open-source colour norm standard welcome? (which works on both video/printing outputs, like Pantone seems to be?) )<br />
<br />
<br />
=== Milestone 16 - Cairoification - Inkscape 0.50 ===<br />
<br />
* Prereq: Is renderer immune to the same kinds of numerical problems we see with our new renderer, libnr, or libart?<br />
* Create a Cairo-based SVG Canvas library<br />
<br />
=== Milestone 17 - Animation Conceptualization - Inkscape 0.51 ===<br />
<br />
* Prereq: We need a conceptualization of how it should work<br />
* Currently, part of the concept discussion is at [[Animation-(Timeline)|here]]<br />
<br />
<br />
=== Milestone 18 - Fonts Revisited - Inkscape 0.52 ===<br />
<br />
* Reenable fuzzy font matching [bb]<br />
* (DONE) Bidirectional text in Pango needs attention<br />
* (DONE) [[MakeVertical]] in Pango needs attention<br />
<br />
=== Milestone 19 - Palettes - Inkscape 0.53 ===<br />
<br />
* Implement [[LittleCMS]] as color management system<br />
* (DONE) Create a swatches dialog<br />
<br />
=== Milestone 20 - Full Animation Support - Inkscape 0.54 ===<br />
<br />
=== Milestone 21 - RFE's - Inkscape 0.55 ===<br />
<br />
* Reduce open/total RFE ratio to 30%<br />
<br />
<br />
=== Milestone [Future] ===<br />
* Investigate performance measurement testing for Inkscape<br />
* Convert all tabs into spaces (convert tabs to 4 spaces)<br />
* Rename all '[[SPFooBar]]' routines to '[[FooBar]]' and put into namespaces<br />
** (DONE) dialogs folder<br />
* Investigate SVG docs where SVG is not the default namespace used at the root -- e.g. <svg:svg xmlns:svg="http://...etc"><svg:rect.../><blah></svg:svg> -- <blah> would end up getting shoehorned into the svg namespace<br />
* Write an Internal DTD subset describing the custom Inkscape XML elements, for validation against SVG DTD<br />
* Ensure Inkscape does not throw away the internal DTD subsets of documents it reads<br />
* Start thinking about 1.0 when major functionality gaps are closed<br />
** (BASICALLY DONE) layers<br />
** (DONE) color palette<br />
** (DONE) gradient tool<br />
** mask tool<br />
** (DONE) patterns<br />
** (DONE) text on path and in shape<br />
** (DONE) text selection<br />
** perspective transforms<br />
** SVG filters<br />
** scripting<br />
** path editing<br />
** shaped strokes<br />
* Implement preliminary support for iso & hex grid [njh]<br />
* Implement perspective transformations via [[PerspectiveObject]]<br />
* Improve freehand curve smoothness [pjrm, paraprax]<br />
* Review X1-1GUITest on SF<br />
* Review usability links at http://openusability.org/docman/?group_id=52<br />
* Review usability links at http://openusability.org/docman/?group_id=57<br />
<br />
[[Category:Developer Documentation]]</div>Shmel