aseprite/TODO.txt
David Capello cb97884026 - All tools stuff refactored in various files/components.
- Added classes: IToolLoop, Tool, ToolGroup, ToolInk, ToolController, ToolPointShape, ToolIntertwine, ToolBox, etc.
- Added ToolLoopManager.
- Removed old src/modules/tools.cpp.
- Added ISettings and UISettingsImpl, adding the tools settings (onion skinning, grid, tiled mode, etc.).
- Added App::PenSizeBeforeChange, PenSizeAfterChange, CurrentToolChange signals.
- Renamed Context::get_bg/fg_color to getBg/FgColor.
- Refactored Brush class to Pen and added PenType.
- Renamed tiled_t to TiledMode.
- get_config_rect now uses the new Rect class imported from Vaca instead of old jrect.
- Added default_skin.xml to load tool icons.
- Added pen preview in Editor::cursor stuff.
- Added Editor::decorators.

Note: This big patch is from some time ago. I did my best to pre-commit other small changes before this big one.
2010-03-07 17:47:45 -02:00

98 lines
3.9 KiB
Plaintext

Refactoring
-----------
- editors_ -> Editors class widget
- rename core/cfg.h to cfg_file.h
- convert all widgets to classes:
+ match Jinete design with Vaca library (Vaca Fusion)
+ 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 Vaca::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
------------------
+ Selection tools do not have "move" functionality incorporated yet as we talked (they just add/subtract selection)
+ The following tools do not work: spray, eraser, blur, jumble, eyedropper, scroll, move.
+ You cannot cancel trace pressing the other mouse button
+ "shade" drawing mode
+ A lot of tool configurations are not working (grid, tiled, opacity)
+ Improve polygon tool (and polygon lasso)
- Fix paste behavior:
+ paste when there are no images (create one image or put the
clipboard as the layer's image)
+ create a 'floating' flag for image-layers and make the
trasformation embedded in the editor
+ 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)
- add undo support for palette changes.
- brush options by tool.
- if there is activated the Tools Configuration dialog box, the
Shift+G and Shift+S should update it
- when press Plus/Minus pad in the editor and the configuration tool
window is active, the slider of the "Brush Size" must be updated.
- 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).
- make keys like 9, 0, + Pad, - Pad configurable.
Wish-list
---------
- dacap wish-list:
+ added starred file-items in the file-selector.
+ the commands should use a new ase/ API and not the raster/ low-level
- "raster/Undoable" is the beginning
+ the dependencies should be:
commands/ -> ase/ -> raster/ -> jinete/
+ consistent error handling (now I'm using exception).
- 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 more unit-tests.
- 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 Ben Davis, his "quantize.c" has memory leaks (test it
more, I don't think so);
- 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).
- optimize the *_to_allegro image methods (I profiled ASE, and these
are the more slow routines in all the program);
- remove the jfilesel.c & jquickmenu.c
- fix Jinete examples:
+ 05fsel
+ 09lists
+ 20combo
+ 21manage