At the moment the program doesn't support palettes with less than 256
colors. But at the future the idea is to load the number of colors that
the palette says.
This is an old bug in the ui::Manager. We don't need to "free" (release)
the mouse widget when we re-stack windows order (e.g. because the user
clicked the non top-most window).
- Merge Timeline::STATE_MOVING_LAYER/CEL/FRAME to STATE_MOVING_RANGE.
- Remove celmove.h/cpp and move_cel/copy_cel functions. Now they are
in the Timeline as dropRange/Cels/Frames/Layers member functions.
- Add DocumentApi::copyFrame/moveCel/copyCel member functions.
- Add timeline_drop_layer_deco and timeline_drop_frame_deco skin parts.
- Move code from DuplicateLayerCommand::onExecute() to new member
function DocumentApi::duplicateLayer().
- Fix a bug changing Cel's frame number: we weren't updating the Cel
position properly inside the LayerImage::m_cels collection. Now we use
LayerImage::moveCel() to change the Cel frame number.
- Other fixes to DocumentApi: Change bgcolor from int to color_t.
With this we can avoid confusion in the execution of commands like
Clear, that depending on the enable/disable state of the timeline range
it affects the timeline (clearing the whole range) or the sprite editor
(clearing the selected area). So now, when a sprite editor is clicked
we disable the range in the timeline, it's a way to say "as you clicked
this editor, commands will affect the editor, if you click the timeline
again, commands will affect the timeline".
- Add doc::ExportData with information about the last export operation.
- Add RepeatLastExport command.
- Add SaveFileBaseCommand as base Command class, to accept "filename"
param.
- Add parameters to ExportSpriteSheet so we can call it without UI
from "repeat last export".
The timeline wasn't being added as a Document observer, so it wasn't
getting notifications about layers modifications. In this way the timeline
wasn't able to update its m_layers[] internal field and was accessing to
removed layers/invalid memory.