aseprite/TODO.txt

95 lines
3.7 KiB
Plaintext

For next release
----------------
+ Add a warning when exporting RGB sprite to GIF, hinting at the quantize function.
+ MovingPixelsState: Add undo information in each transformation step.
+ Add IntEntry class in src/gui/ with spin-buttons.
+ Add feedback to "Shift+S" shortcut to switch "snap to grid".
+ Convert jaccel::key_list to std::vector<>
+ Shade drawing mode.
+ Add color swatches bar.
+ Sort palette entries.
+ Add "Remap" button to palette editor after a palette entry is modified:
This button should apply a color curve to the whole sprite to remap
old indexes to the new positions.
+ Move launcher.cpp to base/ lib adding an extension point for "gui" lib.
+ Remove src/dialogs/repo,playfli,drawtext.
+ Move src/dialogs/aniedit,filesel to src/widgets (remove dialogs/ directory).
+ Merge everything related to configuration/settings in one class
(allow configuration per document). Use cfg.cpp and settings/ dir.
+ Refactor src/file/ in several layers.
Refactoring
-----------
- About Signals/Slots: Add some field in slots to avoid disconnecting
them from dead signals.
- Eradicate JList.
- Replace JRect & jrect with gfx::Rect.
- Create gfx::Region to replace JRegion & jregion.
- editors_ -> MultiEditors class widget
- convert all widgets to classes:
+ match Jinete design with Vaca library.
+ move all functions (jwidget_*) to methods in Widget class.
+ the same for each widget (e.g. jbutton_* to Button widget)
+ AppHooks to Vaca::Signals
+ Convert all JI_SIGNAL to base::Signals
- all member functions should be named verbNoun instead of verb_noun or noun_verb.
- all functions to handle an object should be converted to member functions:
- e.g. jwidget_set_text -> Widget::setText
High priority work
------------------
- Ctrl+T should transform the current cel
- fix bilinear: when getpixel have alpha = 0 get a neighbor color.
- fix sliders in Tools Configuration, they are too big
for small resolutions.
- rewrite palette-editor to edit multiple-palettes.
- fix quantize (one palette for all frames, one palette per frame)
- pal-operations (sort, quantize, gamma by color-curves, etc.);
- complete palette operations, and palette editor (it needs a slider
or something to move between palette changes)
- drag & drop colors.
- if there is activated the Tools Configuration dialog box, the
Shift+G and Shift+S should update it
- add two DrawClick2:
- DrawClick2FreeHand
- DrawClick2Shape
- see the new Allegro's load_font
- finish ICO files support.
- add "size" to GUI font (for TTF fonts);
- layer movement between sets in animation-editor;
+ add all the "set" stuff again;
- fix algo_ellipsefill;
- view_tiled() should support animation playback (partial support:
with left and right keys).
Wish-list
---------
- dacap wish-list:
+ added starred file-items in the file-selector.
+ tweening of cels (translate, scale, rotate)
+ tweening of polygons
+ selection of frames (to modify several frames at the same time)
- manuq wish-list:
+ layer-with-constant-cel
- Mateusz Czaplinski ideas:
+ when move selections, will be good the possibility to see relative
position from the starting point of movement;
+ make drawing the 'marching-ants-rectangle' a prioritaire thing to
draw (when move it).
Low priority stuff
------------------
- add unit-tests for "raster" and file formats.
- test routines: load/save_pic_file, load/save_msk_file,
load/save_col_file.
- fix the fli reader (both Allegro and Gfli): when a frame hasn't
chunks means that it's looks like the last frame;
- talk with Elias Pschernig, his "do_ellipse_diameter" (algo_ellipse)
has a bug with ellipses of some dimensions (I made a test, and a
various sizes have errors).