67 Commits

Author SHA1 Message Date
David Capello
2df3cd8a80 [lua] Add app.command.ImportSpriteSheet()
Feature request: https://community.aseprite.org/t/8482
2021-04-09 17:28:59 -03:00
David Capello
35bb3af6e2 Replace all base::Bind() with lambda functions 2021-03-05 20:09:42 -03:00
David Capello
30b2585037 Save grid bounds inside .aseprite files and doc::Sprite (fix #688) 2019-10-10 15:08:59 -03:00
Gaspar Capello
855c7d8ee3 Improved import sprite sheet dialog (from #1987) 2019-04-01 16:51:19 -03:00
Gaspar Capello
f53544842c Fix non-normal blend modes when the backdrop is transparent (fix #1096) 2019-03-09 12:40:31 -03:00
Gaspar Capello
d4607e889b Add Import Sprite Sheet padding (fix #78) 2019-01-29 09:10:47 -03:00
David Capello
271865e13d Remove unused Command::clone() member function 2019-01-07 17:03:38 -03:00
David Capello
70629d6f89 Use Tx instead of Transaction in commands 2018-08-20 16:00:59 -03:00
David Capello
f2ed45e795 Replace base::UniquePtr -> std::unique_ptr 2018-08-08 17:27:26 -03:00
David Capello
8d3da46ac9 Rename DocumentReader/Writer -> DocReader/Writer 2018-07-14 22:49:22 -03:00
David Capello
9c79ea2b77 Rename app::Document -> Doc 2018-07-07 11:54:44 -03:00
David Capello
ee5842cde3 Rename DocumentApi -> DocApi 2018-07-07 03:07:16 -03:00
David Capello
f0d61b0557 Make Command::execute() private so it can be called only from app::Context 2018-07-04 16:43:38 -03:00
David Capello
c3e233f34d Create EditorRender to merge shared render image buffer and AppRender 2018-06-19 23:25:31 -03:00
David Capello
e0a60b6748 Generate the list of command IDs from en.ini file 2017-12-01 15:10:21 -03:00
David Capello
ccee49c02b Move command friendly names to the strings file
Related to #124
2017-11-30 23:41:45 -03:00
David Capello
eb3143ce21 Rename CommandsModule to Commands 2017-11-30 12:24:07 -03:00
David Capello
a9b183729f Translate all alerts to the en.ini file (#124) 2017-10-17 18:00:45 -03:00
David Capello
20b726f73b Merge branch 'master' into beta 2016-08-31 19:53:52 -03:00
David Capello
5ecc356a41 Replace GPL license with the new EULA 2016-08-29 13:08:21 -03:00
David Capello
36bfa1d641 Merge branch 'beta' into layer-folder 2016-07-28 23:02:24 -03:00
David Capello
0c6802cd30 Use grid bounds by default in Import Sprite Sheet (fix #1207) 2016-07-25 11:30:33 -03:00
David Capello
f838b8787e Merge branch 'beta' into layer-folder 2016-07-07 12:47:42 -03:00
David Capello
67ce9473f8 Add option to include partial tiles in Import Sprite Sheet (fix #1161) 2016-07-01 10:24:44 -03:00
David Capello
58f8ed6476 Prefer LayerGroup::layers() instead of iterators 2016-06-08 16:46:15 -03:00
David Capello
f1f3dc91de Rename LayerGroup::getLayersList -> layers() 2016-06-08 16:12:24 -03:00
David Capello
64c1ecf555 Add support to create layers inside groups 2016-06-08 15:55:44 -03:00
David Capello
2f91122c26 Rename layer folder/set -> layer group 2016-06-07 19:38:56 -03:00
David Capello
e944ce0052 Move Bind, Connection, Signal, Slot, etc. to base namespace 2015-12-04 15:17:42 -03:00
David Capello
06be4f7fa6 Rename ui::Window::getKiller() -> closer() 2015-12-04 14:54:15 -03:00
David Capello
1aaeacc460 Refactor several "getNoun()" getters to "noun()"
This is a work-in-progress to create a consistent API and finally
separate the whole Aseprite base/gfx/ui libs into a reusable C++ library.

Classes:
app::IFileItem, app::AppMenuItem, app::skin::SkinPart,
gfx::Rect, gfx::Border, she::FileDialog,
ui::IButtonIcon, ui::Graphics, ui::Overlay, ui::Widget,
ui::ScrollableViewDelegate, and UI events
2015-12-04 14:39:04 -03:00
David Capello
4dbee12789 Add possibility to import/export sprite sheet matrices by columns
Fix #872
2015-12-03 11:38:59 -03:00
David Capello
e7e9f1d482 Change name of generated files from "generated_file.h" to "file.xml.h" 2015-09-22 16:33:49 -03:00
David Capello
a06e01ff7e Rename ui::Entry::EntryChange to ui::Entry::Change 2015-09-22 16:22:47 -03:00
David Capello
214f886a0e Fix bug showing invalid layer name in Layer Props dialog after "New Layer" command 2015-08-21 14:55:34 -03:00
David Capello
217a3c51c6 Fix invalid behavior when ImportSpriteSheet's "Import" button is pressed without a document 2015-05-28 20:19:35 -03:00
David Capello
f6be0c3be6 Replace ISettings with Preferences
Changes:
* Move FreehandAlgorithm/InkType/RotationAlgorithm/SelectionMode to
  app::tools namespace
* Removed ISettings, IToolSettings, IBrushSettings, ISelectionSettings,
  and IColorSwatchesStore (and implementations from UISettingsImpl)
* Added app::tools::PreferenceGlue to do some adjustments that
  UIToolSettingsImpl was doing
* Remove signals from App related to brush size/angle changes, and current
  tool change (there events can be observed directly from Preferences)
* Remove ColorBar::FgColor/BgColor, these options can be observed from
  Preferences::colorBar.fg/bgColor
2015-05-18 16:53:25 -03:00
David Capello
35c8cc893b Add some help text in ContextBar when SelectBoxState is running 2015-05-07 13:11:44 -03:00
David Capello
215f594273 Minor renames in SelectBoxState 2015-04-27 10:19:53 -03:00
David Capello
21c4fd51d9 Move app::DocumentLocation to doc::Site
This is a first step to include the current selected range of layers
and frames inside the doc::Site structure. So in the future we'll not need
to know about the Timeline in commands that handle those ranges.
2015-04-20 16:27:09 -03:00
David Capello
1bed018ab0 Add timeout parameter to Context/Document lock/unlock operations 2015-04-10 11:10:42 -03:00
David Capello
22c3c4f20e Remove implicit SharedPtr conversion to T* 2015-04-02 20:42:43 -03:00
David Capello
9302c5d1bb Move logic to import sprite sheet inside ImportSpriteSheetCommand::onExecute 2015-03-19 16:20:33 -03:00
David Capello
c2c83a8d54 Import Sprite Sheet: select current document by default 2015-03-19 15:52:20 -03:00
David Capello
db17bacff3 Remember settings used to import a sprite sheet 2015-03-19 15:44:02 -03:00
David Capello
be1ed24847 Add import_sprite_sheet.xml widget 2015-03-19 15:21:28 -03:00
David Capello
0cb4b2234d Always load params when a command is executed
This is to avoid leaving commands with old params (a problem with
keyboard shortcuts). To make sure, we've changed arguments from Params*
to Params&, so we always have params to load.

Also, in this change we introduce a new way to give parameters to executed
commands from menu items using AppMenuItem::setContextParams(). Before
showing a popup, we can call setContextParams() to give extra params to
the command (e.g. the specific FrameTag to remove or change properties).
In this way "contextparams" attribute for <item> in gui.xml is not
available anymore.
2015-03-11 15:40:22 -03:00
David Capello
2c6067f7e4 Update license of app/ module to GPLv2 2015-02-12 12:16:25 -03:00
David Capello
e55865843e Replace undo impl: replace undoers with cmds
Undoers were little objects to swap/revert an action. They didn't
execute the action itself, they just revert its previous state. Now
undoers were replaced with cmds: A cmd is an object that
executes/undoes/redoes just one action.

Changes:
* Remove old undo library and app/objects_container_impl.cpp
  (now we use the doc::ObjectId directly to store undo info)
* Remove all Undoers from app/undoers/
* Replace DocumentApi impl with little Cmds in app/cmd/, these
  cmds handle execute/undo/redo of each action at the logic layer
* Remove doc::Dirty object
* Remove doc::Settings: all undo configuration is in the app side
* Move undo options from app:ISettings to app::Preferences
* Rename UndoTransaction to Transaction
* Create a CmdSequence to store a sequence of Cmds (as now the new
  undo library doesn't support open/close groups)
* Add doc::get<T>(ObjectId) function to get any kind of object
  from the doc library by its ID
* Add Cel::document() and Sprite::document() members
* Add Sprite::cels(frame_t) to get all cels in the given frame
* Add Layer::displaceFrames() member function
* Move the "allow non-linear history" flag from undo2::UndoHistory
  to app::DocumentUndo
2015-01-18 22:05:33 -03:00
David Capello
f1f24cbcdd Replace doc::Stock with doc::ImageRef shared pointer
Changes:
* Add doc::ImageRef to count references to the same image between Cels
  (at this moment we cannot generate linked cels anyway)
* Remove doc:Stock class and doc::Sprite::m_stock member variable
* Remove app::undoers::Add/RemoveImage
* Add doc::SubObjectsIO and app::undoers::ObjectIO to
  replace doc::LayerSubObjectsSerializer
2015-01-04 10:58:14 -03:00