Added Palette* parameter to image_to_allegro() function and Image::to_allegro().
Removed orig_rgb_map.
Removed rgb_map usage (the Allegro global variable).
Modified color_get_*() so they do not need "imgtype" parameter.
ColorBar class is public (defined in colbar.h).
Added ColorBar::Fg/BgColorChange signals.
Converted palette editor widget to a C++ class (PalEdit derived from Widget).
Modified the "Palette Editor" (F4 key) to be non-modal (still WIP).
Modified its implementation to use std::vector<> instead of a raw C array[].
Now the number of colors in the sprite is more relevant (e.g. we should be able to create sprites of 4bpp, 16 colors).
- 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.
Refactored jwidget_set_text to Widget::setText (same for setFont, setEnabled, etc.).
Created "Frame" class.
Refactored "jwindow_funcname" functions to "Frame::funcname".
Renamed JWidgetPtr to FramePtr.
+ Added support to process Ctrl+C / Ctrl+V / Ctrl+P keys in all entry fields.
+ Fixed a bug where file names for new sprites are lower-case always (in Windows).
(the new compiler used for the following Win32 binary releases).
+ Modified some error handling code to use C++ exceptions.
+ Modified some collections (std::vector, std::map, etc.) from instances to pointers.