54 Commits

Author SHA1 Message Date
David Capello
b922cfcc10 Refactor ToolLoop creation w/ToolLoopParams to add more options to app.useTool()
This will be used to add more testing capabilities to app.useTool()
2020-05-19 20:11:47 -03:00
David Capello
c99a566635 Refactor velocity sensor with tools::VelocitySensor class 2020-04-24 11:19:35 -03:00
David Capello
79f9e28ce8 Added pen pressure sensitivity (fix #710)
- Added support to detect eraser tip on Linux (#610)
- Related to #139
- Still needs works for gradients and better brush interpolations
  between stroke points
- Requested several times, e.g. https://community.aseprite.org/t/1077
  https://community.aseprite.org/t/1881, steam forum, etc.
2020-04-21 22:27:49 -03:00
David Capello
a0882ba443 Move PACKAGE/VERSION, etc. to new ver-lib
* As we moved the VERSION macro to a .c file, we don't have to
  recompile the whole project when we change the version number.
* Removed the version number from gui.xml
* Removed the invalid first menu item that might appear in the root
  menu when the gui.xml version is outdated in debug mode.
2020-03-16 10:31:32 -03:00
David Capello
66864beb77 lua: Fix crash calling app.refresh() from a script using -b -script from CLI 2020-02-05 12:18:12 -03:00
David Capello
1c8b8051a8 Rename FrameTag -> Tag 2019-10-01 14:55:08 -03:00
David Capello
35aaa18ee3 [lua] Add app.range.colors + Move/CopyColors commands
Closes: https://community.aseprite.org/t/2512
2019-08-10 14:37:18 -03:00
David Capello
57d5fcba68 lua: Don't include -x64 in app.version 2019-05-27 23:53:57 -03:00
David Capello
23f00d87f6 lua: Add error if we specify and invalid tool in app.useTool() 2019-04-25 16:33:49 -03:00
David Capello
ad1a0af752 lua: Add a way to set/get the default app palette (and well-known palettes from resources) 2019-04-24 19:08:25 -03:00
David Capello
d35251d431 lua: Add Version() class 2019-04-21 00:04:49 -03:00
David Capello
8a821c83fd lua: Add Brush class and app.useTool{ brush } parameter 2019-04-18 22:33:48 -03:00
David Capello
0bf5d1de30 lua: Add functions to load/save palettes and images directly 2019-04-17 23:59:59 -03:00
David Capello
ebca165b2a Add support to modify activeFrame/Layer from scripts without UI 2019-04-13 16:25:21 -03:00
David Capello
8d359dd896 lua: Fix app.activeSprite setter 2019-04-13 11:17:17 -03:00
David Capello
2812a95f1e lua: Add params to app.useTool() to change the cel where we'll draw 2019-03-23 16:34:51 -03:00
David Capello
98080544cf lua: Rename app.toolStroke() -> app.useTool()
This function was called app.drawWithTool() first, but some tools do
not "draw" (e.g. eraser, selection-like tools, etc.). And then the
app.toolStroke() name could be confused with the Edit > Stroke
command.
2019-03-23 13:31:14 -03:00
David Capello
396824383f lua: Add app.activeTool + Tool object 2019-03-23 09:19:10 -03:00
David Capello
33c6fc5f40 lua: Fix tools tests when ENABLE_UI is not defined 2019-03-18 13:30:17 -03:00
David Capello
7aec117b5e Fix segfault on CLI mode because activeInk() tries to access to the color bar 2019-03-16 13:46:09 -03:00
David Capello
25189224b9 lua: Rename app.drawWithTool() -> app.toolStroke() 2019-03-16 13:15:06 -03:00
David Capello
1cb5949e9b lua: Add app.drawWithTool() function 2019-03-15 17:03:02 -03:00
David Capello
b2cafe4108 lua: Add app.params and --script-param
Now parameters for scripts can be specified from the CLI with
--script-params and from gui.xml or .aseprite-keys from <param>
sections.
2018-12-10 16:45:30 -03:00
David Capello
ca6d038af3 lua: Add support to use app.activeFrame with a Frame object 2018-11-28 12:05:17 -03:00
David Capello
aceec4e4d8 lua: Add app.refresh() function 2018-11-27 10:24:13 -03:00
David Capello
165cd3bdf0 lua: Use active cel info in Range when there is no timeline range enabled
With this change we can always use app.range collections (e.g. app.range.editableImages)
for our filters in the scripts.
2018-11-23 16:08:49 -03:00
David Capello
bf916fe029 lua: Add Range and RangeType 2018-11-23 13:10:12 -03:00
David Capello
34d1906034 lua: use ObjectId to refer doc objects from script variables
This should fix several crashes using objects in invalid ways where
the object doesn't exist anymore (e.g. an undo deleted referenced
objects in scripts).
2018-11-20 18:12:43 -03:00
David Capello
bdf3b25209 lua: add app.apiVersion property 2018-11-13 22:31:14 -03:00
David Capello
2adfcf8829 lua: app.activeFrame returns a Frame object now 2018-10-31 17:18:09 -03:00
David Capello
b27c685d70 lua: Add app.activeTag 2018-10-26 10:52:40 -03:00
David Capello
f6e3aa9fd8 Add security dialog to access files from scripts 2018-09-17 13:14:56 -03:00
David Capello
fdac96153b lua: fix app.fg/bgColor to get the color value with convert_args_into_color() 2018-09-13 10:53:43 -03:00
David Capello
02388e2d6a lua: add app.sprites 2018-09-12 12:55:56 -03:00
David Capello
b2f83e0a90 lua: complete some app.active* set/get properties 2018-09-12 12:17:48 -03:00
David Capello
f604ac95dd lua: add app.alert() function 2018-09-07 16:42:58 -03:00
David Capello
ef23e1b307 lua: add app.isUIAvailable 2018-09-07 16:06:32 -03:00
David Capello
eb1ebfe728 lua: add app.fg/bgColor 2018-09-06 13:02:23 -03:00
David Capello
17366056b6 Use a ImageObj with a ImageRef for scripts
Also added __gc/new/clone methods, and colorMode property.
2018-08-30 20:47:11 -03:00
David Capello
4fe66f2ffb Change scripting language to Lua 2018-08-22 14:54:51 -03:00
David Capello
587f697bda js: Add Site class and app.site property 2018-08-20 15:15:38 -03:00
David Capello
1306f9a8a1 js: Fix app.transaction() method
Now we are calling the argument instead of the same transaction()
function recursively.
2018-08-20 14:42:28 -03:00
David Capello
c902be8fdf js: add App.undo/redo() 2018-08-20 14:34:36 -03:00
David Capello
bc300bf986 Remove Image/SpriteWrap for scripting
From now on we can share the transaction in the app::Context instead
of having the transaction in a SpriteWrap. This is useful to run
macros/scripts in a near future calling commands (and all commands
could share the same transaction).

Some changes with this:

* Added app::Context::setTransaction/transaction() methods.
* Added Tx class to create a new Transaction or use the currenet
  app::Context transaction.
* Added App.transaction() scripting method.
2018-08-20 14:20:27 -03:00
David Capello
9c79ea2b77 Rename app::Document -> Doc 2018-07-07 11:54:44 -03:00
David Capello
139c5aac49 Add flag to compile CLI-only (fix #1279)
New cmake flag -DENABLE_UI=OFF can be used to turn off the GUI
and compile a CLI-only version of Aseprite.

Requested here too:
https://community.aseprite.org/t/1351
2018-05-07 00:11:50 -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
eb3143ce21 Rename CommandsModule to Commands 2017-11-30 12:24:07 -03:00
David Capello
bcf7efc9bb Replace duktape with mujs
Added other classes like Rectangle, Size, and Point.
2017-08-11 17:22:28 -03:00
David Capello
5ecc356a41 Replace GPL license with the new EULA 2016-08-29 13:08:21 -03:00