Commit Graph

230 Commits

Author SHA1 Message Date
David Capello f1c9e77e43 Add mouse cursor scale option 2016-08-30 17:27:19 -03:00
David Capello b80beb13ad Move native cursor preference from "Experimental" to "Cursors" section 2016-08-30 16:52:03 -03:00
David Capello 5ecc356a41 Replace GPL license with the new EULA 2016-08-29 13:08:21 -03:00
David Capello 5910e94396 Add option to hide full filename paths (fix #1199) 2016-07-25 11:04:16 -03:00
David Capello d4b0753106 Fix theme UI to show user themes and official themes correctly 2016-07-20 19:03:51 -03:00
David Capello e353cdae4c Merge branch 'applyButton' of https://github.com/TheKK/aseprite into apply-button 2016-06-14 09:23:26 -03:00
David Capello af2c2838e0 Add new option to zoom sliding two fingers on OS X trackpad
It was requested here:
http://steamcommunity.com/app/431730/discussions/2/357286663677659387/
2016-05-27 13:15:13 -03:00
David Capello 9face9458e Add an option to change the "brush preview" style (related to #792) 2016-03-24 14:29:15 -03:00
David Capello 3543b086d1 Add option to keep the selection after Edit > Clear (fix #907) 2015-12-22 17:49:21 -03:00
Ying-Ruei Liang (KK) 1cf82697ef Add "apply" button to options window 2015-12-20 23:58:25 +08: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 e3f0688945 Change GPU acceleration setting before the display scale 2015-10-06 17:13:50 -03:00
David Capello 03c0367827 Add option to disable GPU acceleration 2015-10-05 21:18:42 -03:00
David Capello 460d4b47c9 Add missing "override" modifier on some member functions
These ones were detected by clang-700.0.72
2015-09-30 16:34:43 -03:00
David Capello e15b9aca21 Remove some #includes directives 2015-09-22 17:32:42 -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 fedbe66980 Remove alert dialog used for debugging purposes only 2015-09-18 12:43:02 -03:00
David Capello c37c790b47 Add "Open Folder" button in Preferences > Theme section 2015-09-18 12:39:46 -03:00
David Capello df629db6c6 Add "Theme" section in Preferences 2015-09-18 12:23:02 -03:00
David Capello 746f41ff5b Rename ui::ListBox::ChangeSelectedItem to ui::ListBox::Change 2015-08-25 13:56:21 -03:00
David Capello 2b4c531e8e Add possibility to scroll with right click 2015-08-19 18:00:51 -03:00
David Capello dd94925cf7 Move display flip logic to ui library (ui::Manager class) 2015-07-29 18:12:35 -03:00
David Capello 41bb23f1f1 Change opaque/transparent selection by default depending on the layer 2015-07-27 11:43:48 -03:00
David Capello 401dd5362b Add option to change the "Stop" button behavior (fix #705) 2015-06-19 12:09:34 -03:00
David Capello 22c58887dd Save preferences immediately when we press "OK" button in OptionsCommand 2015-05-28 16:36:05 -03:00
David Capello 12e28960e4 Move Editor cursor color to pref.xml 2015-05-18 18:16: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 06b53981d4 Replace ISettings::get/setRightClickMode() with Preferences class 2015-05-13 11:19:16 -03:00
David Capello 70f844380b Replace ISettings::get/setShowSpriteEditorScrollbars() with Preferences class 2015-05-13 10:41:55 -03:00
David Capello aea07d06af Replace ISettings::get/setZoomWithScrollWheel() with Preferences class 2015-05-13 10:33:05 -03:00
David Capello 97609b6504 Add option to change the zoom behavior with keys 2015-05-07 15:56:38 -03:00
David Capello b2955d58ad Add option to change the zoom behavior with scroll wheel 2015-05-07 15:52:26 -03:00
David Capello da342f29f3 Several changes related to UI scale
* UI scale is an experimental option (it needs app restart)
* We can change the Screen Scale without restarting the app now
* Hide reloading of skin data in SkinTheme::onRegenerate()
* Now setFontOfAllWidgets() is called from Theme::regenerate()
* Remove reload_default_font()
* Simplify gui_setup_screen()
2015-04-17 12:24:33 -03:00
David Capello 240149ef6f Add UI Scale option (as separated concept from Screen Scale)
With this change we don't adapt the UI Scale automatically depending of
the display size, as it cannot be adjusted dynamically anyway (as the app
must be restarted to take this change correctly).
2015-04-17 11:11:36 -03:00
David Capello 21a57ff793 Add "data recovery period" option 2015-04-09 07:46:55 -03:00
David Capello 9b692cb14a Add option to disable data recovery 2015-04-08 20:28:30 -03:00
David Capello 361a3084fd Merge branch 'new-workspace'
Conflicts:
	src/app/commands/cmd_open_file.cpp

Fixes:
	src/app/ui/timeline.cpp
2015-03-04 22:41:34 -03:00
David Capello b8ed98bd8b Add native file open/save dialog (only win32 at the moment, issue #321) 2015-03-02 16:07:35 -03:00
David Capello 6862e02805 Add list of recent files and folders in Home tab
* Add LinkLabel::onClick()
* Use Widget instead of ListItem in ListBox API
* Add TextRule::padding() and use it to calculate the preferred size
  for a skin::Style's rules
2015-03-02 11:18:33 -03:00
David Capello 1a74326536 Add possibility to reset grid document preferences to global preferences 2015-02-15 09:59:11 -03:00
David Capello 69ac11eea2 Remove IDocumentSettings and DocumentSettingsObserver
Document user options are completely replaced with DocumentPreferences.
2015-02-15 09:48:38 -03:00
David Capello b12a2b5193 Add scope combo for Grid options in Preferences dialog
With this we make it clear what settings we're modifying: the global ones
or the active document ones.
2015-02-14 23:31:11 -03:00
David Capello 8f61302f7d Keep last selected section in Preferences dialog 2015-02-14 22:43:21 -03:00
David Capello 7785199899 Fix platform specific flags
* Replace ALLEGRO_WINDOWS and WIN32 with _WIN32
* Replace ALLEGRO_MACOSX with __APPLE__
2015-02-12 12:46:56 -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 da1358c5dc Unify all render code in one library
Changes:
* Create render library (move util/render.cpp to render/render.cpp)
* Move app::Zoom class to render::Zoom
* Remove doc::Image::merge() member function
* Add gfx::Clip helper class (to clip dst/src rectangles before a blit)
* Move doc::composite_image() to render::composite_image()
* Remove doc::Sprite::render()
* Replace Sprite::getPixel() with render::get_sprite_pixel()
* Remove doc::layer_render() function
* Convert DitheringMethod to a enum class
* Add AppRender to configure a render::Render with the app configuration
* Move checked background preferences as document-specific configuration
* Add doc::Sprite::layer() and palette() member functions
* Add doc::Layer::cel() member function
* Add doc::Palette::entry() member function()
* Add doc::frame_t type
* Move create_palette_from_rgb/convert_pixel_format to render library
* ExportSpriteSheet doesn't need a temporary image now that we can specify
  the source rectangle in the render routine
2014-12-28 11:06:11 -03:00
David Capello 73658399cc Add setting/preference classes/enums generator
Changes:
* Add a class (Option<T>) to get/set/listen changes to one specific
  preference option
* Add data/pref.xml with the metadata to generate types/classes (not it's
  quite easy to add new preferences)
* Modify the generator to support generation of .h and .cpp files of
  preference types
* Add code to migrate old options to new ones (and functions to delete
  old values)
* Only a couple of options were migrated at the moment, it is a WIP, in the
  future we should completely remove ISettings and direct calls
  to set/get_config_*
2014-12-14 20:19:31 -03:00
David Capello 2d57ca4b3e Merge branch '1.0' 2014-11-29 15:07:16 -03:00
David Capello 694b9c5cd8 Convert CenterOnZoom into a ISettings property 2014-11-28 23:04:01 -03:00
David Capello 3437c49f0b Add opacity to grid and grid pixel (close #58) 2014-11-24 19:13:25 -03:00
David Capello 5e2cefe212 Merge branch '1.0'
Conflicts:
	src/app/commands/cmd_sprite_size.cpp
	src/app/document_exporter.cpp
2014-11-07 19:30:39 -03:00
David Capello cd913f7619 Do not center editor scroll by default when we zoom with keys or zoom tool 2014-11-07 19:11:23 -03:00
David Capello 736f08099b Merge branch '1.0' 2014-10-25 16:20:33 -03:00
David Capello d68f1fa1b8 Add experimental option to flash the selected layer when Up/down array keys are used (fix #111) 2014-10-25 16:04:39 -03:00
David Capello bb24d8b995 Add option to enable/disable automatic menu bar items popup (related to issue #501) 2014-10-25 11:24:29 -03:00
David Capello 63995c6f0a Merge "raster" namespace into "doc" library 2014-10-20 22:21:31 -03:00
David Capello 2b2d0f34b2 Add simpleini to replace Allegro 4 configuration routines 2014-10-16 21:27:25 -03:00
David Capello eb1fd4ff0d Fix #67: Per-image grid settings 2014-09-08 23:08:06 -03:00
David Capello 58b3e09d86 Remove all "infinite scroll" stuff to avoid changing mouse position (fixes #350)
Changing the mouse position isn't user-friendly in desktop apps, and
has several problems in some platforms (Mac OS X). In this way we've
changed the approach to handle the mouse position when it goes outside
the ui::Editor viewport.
2014-08-25 22:49:19 -03:00
David Capello 07e51897d3 OptionsCommand: fix the crash folder location 2014-08-24 00:19:14 -03:00
David Capello 44c6f9400e Add a notification to report the last crash 2014-08-20 00:11:19 -03:00
David Capello 9a15126682 Fix issue 188: Pick foreground color with right mouse button 2014-08-19 08:17:57 -03:00
David Capello 6824570c4b Remove base/override.h (use override keyword directly) 2014-08-14 23:07:47 -03:00
David Capello 1c324c9b14 Add experimental option to use native mouse cursors (and some renames of cursor names) 2014-08-10 19:51:14 -03:00
David Capello f48440fe71 Use the generated app::gen::Options widget for OptionsCommand 2014-08-10 01:12:31 -03:00
David Capello c104b4812d Add doc::Settings to get the undo limit (or other settings that will be in the logic/doc layer) 2014-07-31 00:19:58 -03:00
David Capello 331688bd86 Add "Zoom with Scroll Wheel" option (on/true by default) 2014-06-22 22:35:51 -03:00
David Capello 0c250df97a Separate Options dialog in different sections
* Add ui::Panel widget
2014-06-22 21:56:04 -03:00
David Capello 3c959233b6 Add link label in Options dialog to locate the configuration file 2014-06-13 23:00:49 -03:00
David Capello 44d3e228fd Add missing OVERRIDE modifier to Command::clone() overrides
It fixes some invalid clone() overrides without const modifier.
2014-03-29 17:08:40 -03:00
David Capello e082cd96f1 Make ScreenScale option configurable through UI 2014-02-08 00:19:20 -03:00
David Capello eee1719109 Implemented issue 260: Scroll-bars for sprite editor 2014-01-26 13:28:11 -03:00
David Capello 3c861f1a7e Show timeline automatically when a new frame/layer is created (configurable option) 2013-12-15 12:58:14 -03:00
Joel Madigan 422f1135d3 Fix for issue 284, assertion error was being triggered by passing an int to a function expecting type Item*. Looks like it was an oversight in commit b45dcf7 when the dialog was modified to use ui::ListItem 2013-11-19 23:32:11 -05:00
David Capello 5b252c30f5 Add support for Unicode file names on Windows
- Fixed issue #46: open .png files with Unicode chars
- Fixed issue #150: ability to uncompress program in folders w/Unicode chars
- Added base::utf8_iterator
- Added base::FileHandle
- Added base::get_app_path()
- Modified ui::KeyMessage::ascii() -> unicodeChar()
- Removed JI_NOTEXT flag
- Added app::XmlDocumentRef class and app::open_xml() function
- Added support for Unicode text exchange with Win32 clipboard
2013-10-14 19:58:11 -03:00
David Capello cde54f3682 Change BSD license to MIT in sublibraries and fix headers 2013-08-08 21:01:20 -03:00
David Capello c88f9b172b Refactor: Move app files to src/app subdirectory inside app namespace
- Add HAVE_CONFIG_H wrapper to #include "config.h"
- Removed widgets namespace (it's in app now)
- Move some functions from src/file/file.h to src/base/cfile.h
- Move Vector2d to base library
- Rename MenuItem2 to AppMenuItem
2013-08-05 21:20:19 -03:00