Difference between revisions of "OldRoadmap"

From Inkscape Wiki
Jump to navigation Jump to search
(Milestone 8 and 9)
 
m (linkage)
Line 9: Line 9:
 
* (DONE) Implement text in shape UI
 
* (DONE) Implement text in shape UI
 
* (DONE) Selection and node tools: double-click on group sets group as current layer (without altering inkscape:groupmode) [bb]
 
* (DONE) Selection and node tools: double-click on group sets group as current layer (without altering inkscape:groupmode) [bb]
* Create a [[TreeEditor]] dialog for use by the XML editor, Extensions, Layers, etc.
+
* Create a TreeEditor dialog for use by the XML editor, Extensions, Layers, etc.
 
* Develop a loadable keyboard accelerator "theme" system
 
* Develop a loadable keyboard accelerator "theme" system
 
* Create a [[CurrentColorWidget]]
 
* Create a [[CurrentColorWidget]]
Line 17: Line 17:
 
* Controls panel:
 
* Controls panel:
 
** Implement Text controls
 
** Implement Text controls
** Implement X[[/Y]] spinbuttons for the Node controls
+
** Implement X/Y spinbuttons for the Node controls
 
** Add more spinbuttons to shape tools: center, radius, w/h, etc.
 
** Add more spinbuttons to shape tools: center, radius, w/h, etc.
 
** Make defaults settable in Preferences
 
** Make defaults settable in Preferences
Line 44: Line 44:
 
**(DONE, for .44) Redesign so it's not tabs-in-tabs
 
**(DONE, for .44) Redesign so it's not tabs-in-tabs
  
* Fill[[/Stroke]] dialog
+
* Fill/Stroke dialog
 
** Convert to Gtkmm
 
** Convert to Gtkmm
 
* Text Properties dialog - Convert to Gtkmm
 
* Text Properties dialog - Convert to Gtkmm
Line 57: Line 57:
 
* (DONE) search checks inkscape:label, and ignores layers [bb]
 
* (DONE) search checks inkscape:label, and ignores layers [bb]
 
* (DONE, for )Layers...      // opens the Layers dialog
 
* (DONE, for )Layers...      // opens the Layers dialog
* (DONE) Move to Layer Above    Shift+[[PgUp]]
+
* (DONE) Move to Layer Above    Shift+PgUp
* (DONE) Move to Layer Below      Shift+[[PgDn]]
+
* (DONE) Move to Layer Below      Shift+PgDn
 
* (DONE, for .43) Move to layer above/below
 
* (DONE, for .43) Move to layer above/below
 
* Move to Layer... // let me choose layer name to move selection to
 
* Move to Layer... // let me choose layer name to move selection to
Line 74: Line 74:
 
* Sketch out a first cut at an extension manager dialog
 
* Sketch out a first cut at an extension manager dialog
 
* Decide on an API for extensions to interact with the XML tree / DOM (see DOM 3 spec)
 
* Decide on an API for extensions to interact with the XML tree / DOM (see DOM 3 spec)
* Add DOM[[/XPath]] support [ishmal]
+
* Add DOM/XPath support [ishmal]
  
 
=== Milestone 9 - Design Extension Architecture - Inkscape 0.43 ===
 
=== Milestone 9 - Design Extension Architecture - Inkscape 0.43 ===
Line 83: Line 83:
 
* Thoroughly document SPRepr
 
* Thoroughly document SPRepr
 
* Hook up the DOM stuff to Swig to enable scripting languages access to internals
 
* Hook up the DOM stuff to Swig to enable scripting languages access to internals
** foreach section of code to script, subclass [[NodeImpl]] and add fields and methods
+
** foreach section of code to script, subclass NodeImpl and add fields and methods
* Redo the internal clipboard to use an SPDocument[[/SPObjects]] rather than being simply literal copying at the SPRepr level [mental]
+
* Redo the internal clipboard to use an SPDocument/SPObjects rather than being simply literal copying at the SPRepr level [mental]
 
* Specification Document for extension system including API
 
* Specification Document for extension system including API
 
* Hook up system clipboard (via gtkmm). Ensure when copying, that 'image/png' and/or 'image/svg' get on the system clipboard
 
* Hook up system clipboard (via gtkmm). Ensure when copying, that 'image/png' and/or 'image/svg' get on the system clipboard
Line 91: Line 91:
 
** Rename extensions to be consistent with new naming scheme
 
** Rename extensions to be consistent with new naming scheme
 
* (DONE) Example extension package
 
* (DONE) Example extension package
*(DONE, for .44?) Implement support for SVG's "switch" element ([[SPItemGroup]] subclass, I think..), and the associated requiredFeatures, requiredExtensions and systemLanguage attributes (on SPItems in general)
+
*(DONE, for .44?) Implement support for SVG's "switch" element (SPItemGroup subclass, I think..), and the associated requiredFeatures, requiredExtensions and systemLanguage attributes (on SPItems in general)
 
* Look into implementing SVG filters via extensions
 
* Look into implementing SVG filters via extensions
 
* Implement added Desktop file entries for GNOME 2.8 http://www.gnomedesktop.org/article.php?sid=1885&mode=thread&order=0&thold=0
 
* Implement added Desktop file entries for GNOME 2.8 http://www.gnomedesktop.org/article.php?sid=1885&mode=thread&order=0&thold=0
Line 107: Line 107:
 
** possibly add tab or section to this with known issues/bugs
 
** possibly add tab or section to this with known issues/bugs
 
** same for release notes
 
** same for release notes
** investigate use of [[GtkAbout]]
+
** investigate use of GtkAbout

Revision as of 06:37, 19 June 2006

Roadmap Archive

These items are from the Roadmap for previous versions. They are preserved here for posterity


Milestone 8 - GtkMM Architectural Change - Inkscape 0.42

General Gtkmm Interface

  • (DONE) Merge the inkscape_gtkmm codebase into mainline with cmdline option to activate it [bryce]
  • (DONE) Implement text in shape UI
  • (DONE) Selection and node tools: double-click on group sets group as current layer (without altering inkscape:groupmode) [bb]
  • Create a TreeEditor dialog for use by the XML editor, Extensions, Layers, etc.
  • Develop a loadable keyboard accelerator "theme" system
  • Create a CurrentColorWidget


Main Chrome

  • Controls panel:
    • Implement Text controls
    • Implement X/Y spinbuttons for the Node controls
    • Add more spinbuttons to shape tools: center, radius, w/h, etc.
    • Make defaults settable in Preferences
  • Develop Gtkmm Context Menu
  • Develop Gtkmm Statusbar
  • Implement a detachable toolbox

Icons and Cursors

  • (DONE) Implement basic icon theming capability
  • (DONE) Convert all xmp icons to svg's
  • (DONE) Create one alternate icon/cursor set
  • Add Gnome HIG-compliant ICON (Normal logo with NIB in it) [mental]
  • Create a complete default icon/cursor set [bb]


Dialogs Redevelopment and HIG-Compliance

  • Object Properties dialog
    • (DONE) Redesign Object Properties dialog
  • (DONE) Align and Distribute Dialog - Convert to Gtkmm
  • (DONE) Document Preferences Dialog - Convert to Gtkmm
  • (DONE) Trace Dialog - Convert to Gtkmm
  • (DONE) Transformation Dialog - Convert to Gtkmm
  • (DONE) Overhaul Gradient UI to improve management and creation
  • Preferences dialog
    • (DONE, for .44) Convert to Gtkmm
    • (DONE, for .44) Redesign so it's not tabs-in-tabs
  • Fill/Stroke dialog
    • Convert to Gtkmm
  • Text Properties dialog - Convert to Gtkmm
  • (DONE for .43/.44) Layers Dialog (Also see Layers section below)
  • Export Dialog - Convert to Gtkmm
  • Find Dialog - Convert to Gtkmm
  • Messages Dialog - Convert to Gtkmm
  • XML Editor - Convert to Gtkmm

Layer Enhancements

  • (DONE, for .44) Implement a layer management dialog [mental]
  • (DONE) search checks inkscape:label, and ignores layers [bb]
  • (DONE, for )Layers... // opens the Layers dialog
  • (DONE) Move to Layer Above Shift+PgUp
  • (DONE) Move to Layer Below Shift+PgDn
  • (DONE, for .43) Move to layer above/below
  • Move to Layer... // let me choose layer name to move selection to
  • Unlock All Layers // unlock all layers in the document
    • (or all siblings of the current layer?)
  • Unhide All Layers
  • Unlock All in Layer // unlock all children of the current layer
  • Unhide All in Layer
  • Group to Layer // convert group to layer
  • Layer to Group
  • (DONE) Clean up tool ("event context") code

Extension Infrastructure

  • Sketch out a first cut at an extension manager dialog
  • Decide on an API for extensions to interact with the XML tree / DOM (see DOM 3 spec)
  • Add DOM/XPath support [ishmal]

Milestone 9 - Design Extension Architecture - Inkscape 0.43

  • This architectural change will establish a new mechanism for how features are added and maintained in the codebase. see also: ExtensionArchitectureProposals

Internal

  • Thoroughly document SPRepr
  • Hook up the DOM stuff to Swig to enable scripting languages access to internals
    • foreach section of code to script, subclass NodeImpl and add fields and methods
  • Redo the internal clipboard to use an SPDocument/SPObjects rather than being simply literal copying at the SPRepr level [mental]
  • Specification Document for extension system including API
  • Hook up system clipboard (via gtkmm). Ensure when copying, that 'image/png' and/or 'image/svg' get on the system clipboard
  • Solidify the underlying Extensions infrastructure
    • Convert Extensions to OO
    • Rename extensions to be consistent with new naming scheme
  • (DONE) Example extension package
  • (DONE, for .44?) Implement support for SVG's "switch" element (SPItemGroup subclass, I think..), and the associated requiredFeatures, requiredExtensions and systemLanguage attributes (on SPItems in general)
  • Look into implementing SVG filters via extensions
  • Implement added Desktop file entries for GNOME 2.8 http://www.gnomedesktop.org/article.php?sid=1885&mode=thread&order=0&thold=0

Drawing

  • Fix inverted coordinate system [mental]
  • Make clones respond sensibly to original duplication [bb]
  • Review & plan out replacement of sp-file.*
    • Implement backup functionality for documents and preferences.xml, ideally with versioning like in Emacs
  • Implement Rounding for arbitrary paths

Dialogs

  • (DONE, for .44) Redevelop About screen
    • (DONE, for .44) break out the credited authors //+ Translators + License
    • possibly add tab or section to this with known issues/bugs
    • same for release notes
    • investigate use of GtkAbout