Difference between revisions of "Dev:Software roadmap"

From Synfig Studio :: Documentation
Jump to: navigation, search
m
m (User Interface)
 
(28 intermediate revisions by 10 users not shown)
Line 1: Line 1:
[http://italy.rigour.info/blog/frasi-auguri.htm frasi auguri matrimonio] [http://it.rigour.info/topic/rod-michael/ rod michael] [http://paga.rigour.info/barche-in/ barche in vetroresina] [http://web.rigour.info/router-t/ router 502t] [http://blog.rigour.info/web/profumi-baldessarini/ profumi baldessarini] [http://italy.rigour.info/blog/www-bambola.htm www bambola] [http://blog.rigour.info/web/rivelatore-gas/ rivelatore gas] [http://italy.rigour.info/blog/latino.htm latino] [http://paga.rigour.info/poveri/ poveri] [http://online.rigour.info/nigger/ nigger] [http://blog.rigour.info/web/hard-disk/ hard disk esterno 500] [http://load.rigour.info/view/new/fiamignano.htm fiamignano] [http://paga.rigour.info/leggero/ leggero] [http://italy.rigour.info/blog/paola-borboni.htm paola borboni] [http://speed.rigour.info/visita-ginecologica.htm visita ginecologica] [http://down.rigour.info/blog/gsm-box.htm gsm box] [http://up.rigour.info/description/lib/copertina-suburbia.htm copertina suburbia compilation] [http://italy.rigour.info/blog/garmin.htm garmin 176] [http://here.rigour.info/blog/analisi-tecnica.htm analisi tecnica di borsa] [http://italy.rigour.info/blog/intermezzo-mascagni.htm intermezzo mascagni] [http://up.rigour.info/description/lib/van-desfroos.htm van desfroos] [http://dir.rigour.info/f/ f410] [http://content.rigour.info/html/i-m/ i m coming out] [http://italy.rigour.info/blog/notebook.htm notebook 12] [http://online.rigour.info/be-ther/ be ther for you] [http://gratis.rigour.info/content/view/hard-disk.htm hard disk usb 80] [http://guest.rigour.info/library/html/madame-claude/ madame claude n. 3] [http://content.rigour.info/html/album-digitale/ album digitale] [http://blog.rigour.info/web/a-home/ a920 home theater] [http://it.rigour.info/topic/opere-di/ opere di carducci] [http://web.rigour.info/luca-barbareschi/ luca barbareschi] [http://dir.rigour.info/driver-dex/ driver dex 2500] [http://dir.rigour.info/centralino-rai/ centralino rai] [http://here.rigour.info/blog/giacomo-ferri.htm giacomo ferri] [http://milano.rigour.info/adidas-rekord.htm adidas rekord lea] [http://blog.rigour.info/web/flaz/ flaz] [http://up.rigour.info/description/lib/pajero.htm pajero 1997] [http://all.rigour.info/le-stagioni/ le stagioni dellaquila] [http://content.rigour.info/html/stranieri-come/ stranieri come noi] [http://milano.rigour.info/babel.htm babel] [http://speed.rigour.info/vesta-il.htm vesta il mio babe] [http://pagina.rigour.info/fifa-calcio/ fifa calcio 2004] [http://guest.rigour.info/library/html/storie-sesso/ storie sesso] [http://online.rigour.info/midnight-hour/ midnight hour pickett] [http://speed.rigour.info/la-donna.htm la donna che ho rubato] [http://content.rigour.info/html/canon-/ canon 430 fotocamere digitali] [http://speed.rigour.info/radioregistratore-portatile.htm radioregistratore portatile] [http://it.rigour.info/topic/epson-stylus/ epson stylus d68 photo edition] [http://uve.rigour.info/blog/vendita-cd.htm vendita cd dvd] [http://speed.rigour.info/mercedes-a.htm mercedes a 180 cdi] [http://dir.rigour.info/parka-pardoux/ parka pardoux] [http://online.rigour.info/il-mandorlo/ il mandorlo] [http://here.rigour.info/blog/www-club.htm www club privee com] [http://all.rigour.info/champagne-in/ champagne in paradiso] [http://dir.rigour.info/francesco-degregori/ francesco degregori] [http://speed.rigour.info/dvdcam-sony.htm dvdcam sony] [http://all.rigour.info/maschio-o/ maschio o femmina] [http://up.rigour.info/description/lib/poprno.htm poprno] [http://milano.rigour.info/canti-francescani.htm canti francescani] [http://content.rigour.info/html/nec-e/ nec e 606] [http://milano.rigour.info/singer-cucire.htm singer cucire] [http://down.rigour.info/blog/anxe-deluxe.htm a7n8x-e deluxe schede madri] [http://dir.rigour.info/vacanza-studio/ vacanza studio usa] [http://online.rigour.info/estufa/ estufa] [http://blog.rigour.info/web/combo-lettore/ combo lettore dvd vcr] [http://all.rigour.info/giovanni-storti/ giovanni storti] [http://guest.rigour.info/library/html/capotasto/ capotasto] [http://uve.rigour.info/blog/antenna-per.htm antenna per tv] [http://note.rigour.info/content/view/inno-del.htm inno del genoa] [http://uve.rigour.info/blog/testo-della.htm testo della sigla o c] [http://paga.rigour.info/outkasts/ outkasts] [http://note.rigour.info/content/view/icebreakout.htm icebreakout] [http://speed.rigour.info/testo-orchesta.htm testo orchesta the servant] [http://italy.rigour.info/blog/acer.htm acer 4600] [http://web.rigour.info/elezioni-organi/ elezioni organi collegiali genitori] [http://blog.rigour.info/web/bubbe/ bubbe] [http://down.rigour.info/blog/tt-.htm tt 10 rex] [http://load.rigour.info/view/new/cisl-cri.htm cisl cri] [http://italy.rigour.info/blog/benny-benassy.htm benny benassy illusion] [http://note.rigour.info/content/view/ut.htm ut] [http://gratis.rigour.info/content/view/vogel-david.htm vogel, david] [http://web.rigour.info/telefonino-samsung/ telefonino samsung z300] [http://load.rigour.info/view/new/breitkopf.htm breitkopf] [http://load.rigour.info/view/new/volo-aereo.htm volo aereo verona amsterdam] [http://load.rigour.info/view/new/toscana.htm toscana] [http://speed.rigour.info/multifunzione-rete.htm multifunzione rete] [http://here.rigour.info/blog/lekarze.htm lekarze] [http://web.rigour.info/gigolo-s/ gigolo s] [http://down.rigour.info/blog/regione-friuli.htm regione friuli venezia giulia] [http://it.rigour.info/topic/gozilla/ gozilla] [http://up.rigour.info/description/lib/gioco-del.htm gioco del lotto] [http://uve.rigour.info/blog/karbala.htm karbala] [http://content.rigour.info/html/hotel-centrale/ hotel centrale jesolo] [http://it.rigour.info/topic/canon-npe/ canon np-e3] [http://dir.rigour.info/testi-canzoni/ testi canzoni anni 70] [http://here.rigour.info/blog/antonella-clerici.htm antonella clerici senza mutande] [http://it.rigour.info/topic/www-pasos/ www pasos para desmontar el motor com] [http://speed.rigour.info/kalyan.htm kalyan] [http://dir.rigour.info/emisoras-unidas/ emisoras unidas com] [http://guest.rigour.info/library/html/usb-printer/ usb printer server] [http://up.rigour.info/description/lib/candy-t.htm candy 600t] [http://web.rigour.info/ciambelle/ ciambelle] [http://down.rigour.info/blog/da-dove.htm da dove vieni bella straniera] [http://pagina.rigour.info/canon-ef/ canon ef 20mm] [http://blog.rigour.info/web/spiderman-gioco/ spiderman gioco per pc] [http://guest.rigour.info/library/html/charlies-angels/ charlies angels] [http://speed.rigour.info/amstrad-dvd.htm amstrad dvd 3010] [http://here.rigour.info/blog/passutti.htm passutti] [http://content.rigour.info/html/mariadefilippi/ mariadefilippi] [http://up.rigour.info/description/lib/sigla-tv.htm sigla tv uefa champion league] [http://pagina.rigour.info/heuring/ heuring] [http://up.rigour.info/description/lib/thomson.htm thomson 28] [http://online.rigour.info/athlon-/ athlon 64 bit 2800] [http://dir.rigour.info/hard-disc/ hard disc maxtor] [http://it.rigour.info/topic/cecilia-bartoli/ cecilia bartoli. live in italy] [http://content.rigour.info/html/fotocamera-per/ fotocamera per ipaq] [http://speed.rigour.info/plumper.htm plumper] [http://web.rigour.info/akg-k/ akg k 141] [http://online.rigour.info/publicinvasion/ publicinvasion] [http://web.rigour.info/bmw-i/ bmw 328i] [http://online.rigour.info/svaroski/ svaroski] [http://milano.rigour.info/studio-tecnico.htm studio tecnico piccione] [http://dir.rigour.info/seggiolini-baby/ seggiolini baby bicicletta] [http://down.rigour.info/blog/j-ai.htm j ai vu] [http://content.rigour.info/html/lavoro-montichiari/ lavoro montichiari] [http://blog.rigour.info/web/galaxy-geforce/ galaxy geforce 6600gt agp] [http://web.rigour.info/canon-l/ canon l295] [http://speed.rigour.info/pamela-enderson.htm pamela enderson] [http://web.rigour.info/hony-ball/ hony ball] [http://guest.rigour.info/library/html/videolan/ videolan] [http://it.rigour.info/topic/la-fedelissima/ la fedelissima] [http://web.rigour.info/toner-phaser/ toner phaser 3450] [http://note.rigour.info/content/view/cuffia-stereo.htm cuffia stereo senza fili] [http://up.rigour.info/description/lib/velours.htm velours] [http://pagina.rigour.info/bellomo-srl/ bellomo srl] [http://note.rigour.info/content/view/nokia-.htm nokia 6600 memoria mmc] [http://speed.rigour.info/permendur.htm permendur] [http://dir.rigour.info/pm-collezioni/ pm collezioni] [http://gratis.rigour.info/content/view/memory-card.htm memory card console playstation] [http://speed.rigour.info/victoria-adams.htm victoria adams nuda] [http://milano.rigour.info/habitaciones-infantiles.htm habitaciones infantiles] [http://load.rigour.info/view/new/albergo-lido.htm albergo lido camaiore] [http://content.rigour.info/html/sodimm-memoria/ so-dimm memoria ram] [http://italy.rigour.info/blog/figge.htm figge] [http://note.rigour.info/content/view/calendari.htm calendari 1980] [http://speed.rigour.info/eon.htm eon] [http://note.rigour.info/content/view/pacchetto-di.htm pacchetto di viaggio turistico in spagna] [http://here.rigour.info/blog/amd-.htm amd 64 3500 939 venice] [http://guest.rigour.info/library/html/satiro/ satiro] [http://web.rigour.info/cleaning-house/ cleaning house] [http://here.rigour.info/blog/whats-up.htm whats up mid] [http://guest.rigour.info/library/html/turismo-en/ turismo en peru] [http://it.rigour.info/topic/furioso-polka/ furioso polka] [http://pagina.rigour.info/corri-corri/ corri corri cavallino] [http://milano.rigour.info/morwa.htm morwa] [http://down.rigour.info/blog/shirly.htm shirly] [http://blog.rigour.info/web/astraeus/ astraeus] [http://gratis.rigour.info/content/view/tivoli-ipal.htm tivoli ipal] [http://paga.rigour.info/masterizzatori-usb/ masterizzatori usb lightscribe] [http://here.rigour.info/blog/young-porn.htm young porn] [http://italy.rigour.info/blog/www-nazisti.htm www nazisti] [http://web.rigour.info/messaggio-festa/ messaggio festa donna] [http://gratis.rigour.info/content/view/software-educational.htm software educational] [http://note.rigour.info/content/view/poesia-p.htm poesia p pravo] [http://pagina.rigour.info/lil-wayne/ lil wayne] [http://guest.rigour.info/library/html/re-tratamento/ re tratamento da weasel] [http://content.rigour.info/html/wheda/ wheda] [http://italy.rigour.info/blog/wintec-easy.htm wintec easy palm] [http://milano.rigour.info/concessionarie-ford.htm concessionarie ford] [http://speed.rigour.info/grupo-castigo.htm grupo castigo] [http://dir.rigour.info/televisione-schermo/ televisione schermo piatto 28] [http://web.rigour.info/junco/ junco] [http://note.rigour.info/content/view/isole-canarie.htm isole canarie lanzarote] [http://load.rigour.info/view/new/dallas-apartment.htm dallas apartment] [http://milano.rigour.info/trasbordare.htm trasbordare] [http://paga.rigour.info/moltres/ moltres] [http://paga.rigour.info/favorino/ favorino] [http://dir.rigour.info/voli-last/ voli last minute madrid] [http://pagina.rigour.info/fotocamera-subacquee/ fotocamera subacquee] [http://italy.rigour.info/blog/scenario-music.htm scenario music] [http://guest.rigour.info/library/html/ragazze-di/ ragazze di lecce] [http://gratis.rigour.info/content/view/philips-mf.htm philips mf jet 440] [http://pagina.rigour.info/televisori-schermo/ televisori schermo piatto] [http://uve.rigour.info/blog/pallavoliste.htm pallavoliste] [http://dir.rigour.info/facce-di/ facce di clown foto] [http://content.rigour.info/html/film-di/ film di woody allen] [http://speed.rigour.info/milano-cose.htm milano cose fare] [http://guest.rigour.info/library/html/pio-vi/ pio vi] [http://note.rigour.info/content/view/punto-.htm punto 90 sporting] [http://blog.rigour.info/web/doredo-doremi/ doredo doremi] [http://web.rigour.info/cafe/ cafe1930] [http://speed.rigour.info/le-olimpiadi.htm le olimpiadi] [http://web.rigour.info/car-shoe/ car shoe] [http://all.rigour.info/una-vasca/ una vasca lavelli] [http://all.rigour.info/ultrax-keyboard/ ultrax keyboard] [http://content.rigour.info/html/l-isola/ l isola che non c e bennato] [http://load.rigour.info/view/new/barale-calendario.htm barale calendario] [http://speed.rigour.info/resta-ancora.htm resta ancora dj fish] [http://guest.rigour.info/library/html/acer-tmtci/ acer tm382tci] [http://dir.rigour.info/rc-/ rc 7000 dvd vcr] A software roadmap is in the process of being developed. If you would like to lobby for specific functionality to be implemented sooner than what is stated, please discuss it in the [[Talk:Software roadmap|talk page]]. See the [[Roadmap]] page for a list of defined goals for each release.
+
A software roadmap is in the process of being developed. If you would like to lobby for specific functionality to be implemented sooner than what is stated, please discuss it in the {{l|Talk:Software roadmap|talk page}}. See the {{l|Roadmap}} page for a list of defined goals for each release.
  
Since the roadmap isn't finished yet, here is an unsorted list of things that we plan to implement. Also see the  [http://sf.net/tracker/?group_id=144022
+
Since the roadmap isn't finished yet, here is an unsorted list of things that we plan to implement. Also see the  [http://sf.net/tracker/?group_id=144022&atid=757419 feature requests tracker], the [http://svn.voria.com/code/ETL/trunk/TODO etl], [http://svn.voria.com/code/synfig-core/trunk/TODO synfig] and [http://svn.voria.com/code/synfig-studio/trunk/TODO synfigstudio] TODO files and the {{l|Wish list}} page for more ideas.
 +
 
 +
== Roadmap ==
 +
 
 +
=== Fixes ===
 +
 
 +
* Fix the rest of the crashes
 +
* Portability fixes
 +
 
 +
=== Features ===
 +
 
 +
* new import/export formats (svg, swf, etc)
 +
* sif format documentation
 +
 
 +
=== Under-the-hood changes ===
 +
 
 +
* Redesign the render target class
 +
** current implementation doesn't handle large images very well
 +
* migrate API to be more language agnostic
 +
* Add support for arbitrary multiple color channels
 +
* Add support for customizable mixing gamma per canvas
 +
* Start migrating toward a script-friendly API
 +
* Implement garbage collection of synfig nodes
 +
* Re-write or replace the "Simple Text" layer for proper font support. Current implementation is gnarly.
 +
 
 +
=== Optimizations ===
 +
 
 +
* Change the way surfaces are stored in memory from chunky to planar. This alone should provide significant speed improvements, as well as pave the way for future hardware optimization. (like Apple's new [http://www.apple.com/macosx/tiger/coreimage.html CoreImage])
 +
* Support for arbitrary {{l|color channels}}
 +
* Support for customizable {{l|color mixing gamma}}
 +
 
 +
=== User Interface ===
 +
 
 +
* {{l|UI_Reloaded|UI overhaul}}
 +
* Re-write the canvas properties dialog, as it is currently too awkward and confusing
 +
* Reimplement the {{l|Draw_Tool}} so that it is actually useful
 +
* Rewrite state_draw to handle simultaneous creation of region/bline/curve gradient, like state_region. ({{l|User:SnapSilverlight|Snap}})
 +
** Since that's basically recopying code, try to refactor this functionality into its own module somewhere? ({{l|User:SnapSilverlight|Snap}})
 +
 
 +
== TO-DO ==
 +
 
 +
'''''(Synfig-Studio)'''''
 +
 
 +
* Objectify Synfig-Studio's representation of Synfig-Core's types
 +
** Build datatypes for Studio visualisations
 +
*** Implement 'shell' datatypes for existing Synfig types.
 +
**** Studio Layer datatype
 +
***** Create initial definition of this datatype and add to project
 +
***** Insert code into selection functions to store references to ducks on "studio layer" type when selected.
 +
***** Add functions to "studio layer" type to select specific ducks on layer.
 +
* Rework and extend layer-search system.
 +
** "The layer should provide a virtual function for determining if the layer is clickable at the given point or not -- a bool. This will allow you to implement different types of traversals/filtering" -- darco, on IRC
 +
** "Actually, I think there will still need to be a virtual function which handles the traversal case, and have it use the bool function... Things can get complicated if you had a layer that had two canvas parameters" -- darco, on IRC
 +
* Build a public interface for DuckMap (duckmatic.cpp/208)
 +
(From the code)
 +
;'''src/gtkmm/cellrenderer_timetrack.cpp''' (161)
 +
:Add in RangeGet so it's not so damn hard to click on points
 +
;'''src/gtkmm/cellrenderer_timetrack.h''' (104)
 +
:Make multiple... on both time and value select...
 +
;'''src/gtkmm/duckmatick.h''' (208)
 +
:need a public interface for DuckMap
 +
;'''src/gtkmm/widget_timeslider.h''' (78)
 +
:Fill out blue pill stuff
 +
;'''src/synfigapp/blineconvert.cpp''' (496)
 +
:Tolerance should be set based upon digitization resolution (length dependent index selection)
 +
;'''src/synfigapp/blineconvert.cpp''' (584)
 +
:Must be sure that the break points are 3 or more apart then must also store the breaks which are not smooth, etc. and figure out tangents between there
 +
 
 +
== Needs //Comment// Doc ==
 +
 
 +
;'''src/gtkmm/app.h''' (file header brief)
 +
;'''src/gtkmm/canvasview.h''' (546)
 +
:rebuild_ducks()
 +
;'''src/gtkmm/cellrenderer_timetrack.h''' (142)
 +
:property_enable_timing_info_;
 +
;'''src/gtkmm/duck.h''' (79)
 +
:class Duck
 +
;'''src/gtkmm/duck.h''' (155)
 +
:set_tangent(bool x)
 +
;'''src/gtkmm/duck.h''' (158)
 +
:get_tangent()
 +
;'''src/gtkmm/duck.h''' (175)
 +
:set_type(Type x)
 +
;'''src/gtkmm/duck.h''' (178)
 +
:get_type()
 +
;'''src/gtkmm/duckmatic.h''' (367)
 +
:set_type_mask(Type x)
 +
;'''src/gtkmm/duckmatic.h''' (370)
 +
:get_type_mask()
 +
;'''src/gtkmm/duckmatic.h''' (388)
 +
:Duckmatic::Push
 +
;'''src/gtkmm/duckmatic.h''' (407)
 +
:Duckmatic::Bezier
 +
;'''src/gtkmm/duckmatic.h''' (421)
 +
:Duckmatic::Stroke
 +
;'''src/gtkmm/instance.h''' (file header brief)

Latest revision as of 16:28, 28 June 2010

A software roadmap is in the process of being developed. If you would like to lobby for specific functionality to be implemented sooner than what is stated, please discuss it in the talk page. See the Roadmap page for a list of defined goals for each release.

Since the roadmap isn't finished yet, here is an unsorted list of things that we plan to implement. Also see the feature requests tracker, the etl, synfig and synfigstudio TODO files and the Wish list page for more ideas.

Roadmap

Fixes

  • Fix the rest of the crashes
  • Portability fixes

Features

  • new import/export formats (svg, swf, etc)
  • sif format documentation

Under-the-hood changes

  • Redesign the render target class
    • current implementation doesn't handle large images very well
  • migrate API to be more language agnostic
  • Add support for arbitrary multiple color channels
  • Add support for customizable mixing gamma per canvas
  • Start migrating toward a script-friendly API
  • Implement garbage collection of synfig nodes
  • Re-write or replace the "Simple Text" layer for proper font support. Current implementation is gnarly.

Optimizations

  • Change the way surfaces are stored in memory from chunky to planar. This alone should provide significant speed improvements, as well as pave the way for future hardware optimization. (like Apple's new CoreImage)
  • Support for arbitrary Color channels
  • Support for customizable Color mixing gamma

User Interface

  • UI overhaul
  • Re-write the canvas properties dialog, as it is currently too awkward and confusing
  • Reimplement the Draw Tool so that it is actually useful
  • Rewrite state_draw to handle simultaneous creation of region/bline/curve gradient, like state_region. (Snap)
    • Since that's basically recopying code, try to refactor this functionality into its own module somewhere? (Snap)

TO-DO

(Synfig-Studio)

  • Objectify Synfig-Studio's representation of Synfig-Core's types
    • Build datatypes for Studio visualisations
      • Implement 'shell' datatypes for existing Synfig types.
        • Studio Layer datatype
          • Create initial definition of this datatype and add to project
          • Insert code into selection functions to store references to ducks on "studio layer" type when selected.
          • Add functions to "studio layer" type to select specific ducks on layer.
  • Rework and extend layer-search system.
    • "The layer should provide a virtual function for determining if the layer is clickable at the given point or not -- a bool. This will allow you to implement different types of traversals/filtering" -- darco, on IRC
    • "Actually, I think there will still need to be a virtual function which handles the traversal case, and have it use the bool function... Things can get complicated if you had a layer that had two canvas parameters" -- darco, on IRC
  • Build a public interface for DuckMap (duckmatic.cpp/208)

(From the code)

src/gtkmm/cellrenderer_timetrack.cpp (161)
Add in RangeGet so it's not so damn hard to click on points
src/gtkmm/cellrenderer_timetrack.h (104)
Make multiple... on both time and value select...
src/gtkmm/duckmatick.h (208)
need a public interface for DuckMap
src/gtkmm/widget_timeslider.h (78)
Fill out blue pill stuff
src/synfigapp/blineconvert.cpp (496)
Tolerance should be set based upon digitization resolution (length dependent index selection)
src/synfigapp/blineconvert.cpp (584)
Must be sure that the break points are 3 or more apart then must also store the breaks which are not smooth, etc. and figure out tangents between there

Needs //Comment// Doc

src/gtkmm/app.h (file header brief)
src/gtkmm/canvasview.h (546)
rebuild_ducks()
src/gtkmm/cellrenderer_timetrack.h (142)
property_enable_timing_info_;
src/gtkmm/duck.h (79)
class Duck
src/gtkmm/duck.h (155)
set_tangent(bool x)
src/gtkmm/duck.h (158)
get_tangent()
src/gtkmm/duck.h (175)
set_type(Type x)
src/gtkmm/duck.h (178)
get_type()
src/gtkmm/duckmatic.h (367)
set_type_mask(Type x)
src/gtkmm/duckmatic.h (370)
get_type_mask()
src/gtkmm/duckmatic.h (388)
Duckmatic::Push
src/gtkmm/duckmatic.h (407)
Duckmatic::Bezier
src/gtkmm/duckmatic.h (421)
Duckmatic::Stroke
src/gtkmm/instance.h (file header brief)