Commit Graph

175 Commits

Author SHA1 Message Date
David Capello
d13806ac23 Restore CMake configuration to use -stdlib=libc++ even on OS X 10.7 2018-08-06 16:42:55 -03:00
David Capello
204ad920de Update submodules 2018-08-03 14:26:53 -03:00
David Capello
39645dbda0 Use CMAKE_CXX_STANDARD to use C++11 flags 2018-08-03 13:03:05 -03:00
David Capello
bd66661d88 Update webp to v1.0.0 2018-06-09 14:58:00 -03:00
David Capello
850bf76bf5 Update libwebp module 2018-06-09 13:04:56 -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
b7aa2923f6 Don't lost png include dirs so webp's imagedec doesn't fail 2018-04-03 13:02:20 -03:00
David Capello
16e1a650b1 Enable webp support by default 2018-04-03 12:50:25 -03:00
David Capello
5b04293dc3 Fix zlib, png, jpeg, and freetype flags/linking 2018-04-03 12:43:26 -03:00
David Capello
1571fac5a3 Fix linking between third party projects 2018-04-03 11:11:10 -03:00
David Capello
6de103128b Add support for animated webp files (fix #273) 2018-03-26 14:11:40 -03:00
David Capello
12578321d6 Re-organize some compiler flags 2018-03-13 09:56:23 -03:00
David Capello
1898ce2886 Add the thumbnailer COM server for Windows
Note: Moved the desktop integration for Linux to src/desktop/linux
2018-01-02 17:03:46 -03:00
David Capello
5811bba2b1 Several changes to the native file selector on all platforms
* Added she::FileDialog::setType() to select the different kind of
  dialog (open one file, multiple files, save one file, open a folder)
* Added capacity to select folders with she::FileDialog
* Added she::CommonFileDialog so all native dialogs share common code
* Windows:
  * Reimplemented using the IFileDialog COM interface introduced in
    Windows Vista (this one supports choosing folders when
    FOS_PICKFOLDERS flags is used)
  * Added she::ComPtr<> utility class to Windows port (it might be
    useful in laf::base in a future, or we might use the Microsoft
    CComPtr or _com_ptr_t types in a future)
* GTK:
  * Reimplemented to use gdk and gtk directly instead of using gtkmm
    library
  * Now it's centered on the given she::Display (instead of being
    centered on the screen)
  * Default location is the desktop instead of documents (this should
    be configurable in a future "more generic" solution)
  * Removed WITH_DEPRECATED_GLIB_SUPPORT and fixed compilation with GTK
    file selector
2017-12-21 16:35:12 -03:00
David Capello
d088ee0f38 Minor change in USE_SHARED_HARFBUZZ option text 2017-12-20 16:54:41 -03:00
David Capello
7f9d1f64d8 Merge branch 'ft' of https://github.com/winterheart/aseprite into winterheart-ft 2017-12-20 15:09:17 -03:00
David Capello
8c9b8910c1 Use WM_POINTER on Windows 8 platform
First version. Still touch support is not working as expected. The pen,
mouse, and trackpad are working correctly. (Even the eraser tip of the
pen is recognized.)
2017-11-01 22:42:30 -03:00
Azamat H. Hackimov
b1a6b668da Add support for shared harfbuzz
-DUSE_SHARED_HARFBUZZ (OFF by default)
2017-10-31 17:51:55 +05:00
David Capello
c5c964bfcd Update Skia to chrome/m62 (our aseprite-m62 branch) 2017-09-19 13:41:28 -03:00
David Capello
4ed302e4b5 Add ENABLE_DEVMODE flag 2017-08-15 15:47:06 -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
7cbf5fd420 Add some simple benchmarks for color blending functions 2017-07-18 17:03:12 -03:00
David Capello
c08f7705f3 Merge branch 'cmark' of https://github.com/winterheart/aseprite into winterheart-cmark 2017-03-14 08:55:34 -03:00
David Capello
24faae2ca5 Use HarfBuzz to render combining characters correctly 2017-02-20 17:14:41 -03:00
Azamat H. Hackimov
9c6ed6ae2d Added include_directory for static cmark 2017-01-29 02:02:24 +05:00
Azamat H. Hackimov
90624bbc22 Shared cmark library
Making optional linking with shared system cmark library with
-DUSE_SHARED_CMARK option.
2017-01-28 16:18:41 +05:00
Azamat H. Hackimov
52fbbe844c Control for undo tests 2016-12-19 22:19:30 +05:00
David Capello
128ba90394 Add ENABLE_SCRIPTING flag 2016-11-21 10:25:27 -03:00
David Capello
d8d9f8072c Fix compiling tests with dynamic libc on MSVC 2016-11-18 10:27:43 -03:00
David Capello
40000a7e77 Update laf library (MEMLEAK is LAF_MEMLEAK now) 2016-11-02 16:14:01 -03:00
David Capello
91cd50cac4 Update laf library 2016-11-01 13:55:32 -03:00
David Capello
f66ed60a2f Fix test condition in main CMakeLists.txt file 2016-11-01 12:53:58 -03:00
David Capello
c2103df444 Move base module to laf library 2016-11-01 12:47:48 -03:00
David Capello
151a302830 Update Skia to chrome/m55 (aseprite-m55) branch 2016-10-31 19:50:32 -03:00
David Capello
f81cd5a676 Fix typo in CMakeLists.txt 2016-06-14 09:02:19 -03:00
Azamat H. Hackimov
cc77d634c2 Force to build internal libraries as STATIC object
Preventing to some compilation errors where
BUILD_SHARED_LIBS incorrectly enabled (#698).
2016-06-14 00:56:53 +05:00
David Capello
5a278780a0 Disable WITH_DESKTOP_INTEGRATION flag by default 2016-04-28 14:36:23 -03:00
David Capello
1f157a64ec Merge pull request #1048 from sirblackheart/linux-thumbnailers
add linux thumbnailers for Gnome & KDE/Qt
2016-04-28 12:24:16 -03:00
David Capello
82f4d21507 Make Skia the default back-end on OS X
Related to #1066 and #1074
2016-04-19 14:09:01 -03:00
David Capello
8775604e56 Make Aseprite a DPI-aware application (fix #1041) 2016-04-18 13:27:36 -03:00
Gabriel Rauter
b3b96a73a9 rename desk to desktop, remove virtual and add override 2016-04-05 01:06:52 +02:00
Gabriel Rauter
75445d0b67 add linux thumbnailers for Gnome & KDE/Qt
This adds thumbnailer support both for Gnome and KDE5/Qt5. The gnome
thumbnailer is installed by default on linux systems, as it does not add
any additional dependencies at build time and can be used by
GnomeThumbnailFactory. The KDE/Qt thumbnailer need the whole Qt and Kio
stack to build, as well as the distribution dependend variables set.
Because of that it is not build by default. For the thumnailers to work
for all of aseprites supported file formats and additonal mime type file
is installed. Packagers in addition need to call update-mime-database
path-to-mime-database (/usr/share/mime for example) as post install
command.
2016-04-04 23:50:14 +02:00
David Capello
58daa23240 Replace zlib and libpng with submodules 2016-03-31 17:48:54 -03:00
David Capello
e10a3e4a17 Disable tests by default
Sometimes a compilation error in a test is reported when the user only
wants to execute the Aseprite binary (and it's actually already compiled).
2016-03-29 19:07:45 -03:00
Azamat H. Hackimov
7964f1feb1 Make building tests optional
Added new option ENABLE_TESTS in CMake (ON by default)
2016-03-29 15:06:59 +05:00
David Capello
85418c1530 Fix invalid LIBJPEG_DIR reference introduced in 3e9de78fa2 2016-03-26 10:39:26 -03:00
Azamat H. Hackimov
1a682f82eb Replaced LIBCURL_* to CURL_* in CMakeList
According to find_package() variables.
2016-03-26 16:01:45 +05:00
Azamat H. Hackimov
3e9de78fa2 Using FOO_LIBRARIES and FOO_HEADERS from system cmake.
Fixes issue #864 (FREETYPE_INCLUDE_DIRS has not been added to search path)
2016-03-26 15:17:12 +05:00
Azamat H. Hackimov
75f908b45e Use find_package(FOO REQUIRED)
Using more cmake-way finding packages for shared system libraries
where it is possible.
2016-03-26 14:26:22 +05:00
Gabriel Rauter
745fd180d4 Experimental native gtk3 file dialog
This pull request basicly adds the suport for gtk3 dialogs to she.
it is disabled by default and can be enabled with
cmake ... -DWITH_GTK_FILE_DIALOG_SUPPORT=ON ..
and needs the Experimental option "Use native file dialog"
enabled in aseprite enabled.
It is currently only available on *nix and has a external
dependencie on gtkmm >= 3.16 and glibmm >= 2.45

To have at least backwardcompatibility with ubuntu 15.10
the cmake option -D_WITH_DEPRECATED_GLIB_SUPPORT was added
to make use of a deprecated glibmm method.

Further testing ist need to see how far this backward
compatibility works, as of now ubuntu 12.04 does not seem to work.
But as ubuntu 12.04 will reach its end of support this summer and
ubuntu 15.04 having passed its end of life in february the question
is how far back this support is aimed for. Please enter the commit message for your changes. Lines starting
2016-03-04 21:22:44 +01:00
David Capello
1c8d89c31f Merge pull request #973 from farnold/master
OS X: fix clang compile error over non-existent simpleini lib
2016-02-26 19:00:25 -03:00
David Capello
5dd2d8119b Add initial support to Steam API (just inform to Steam that we're running) 2016-02-24 13:21:37 -03:00
Fabio Arnold
d190b88854 OS X: fix clang compile error over non-existent simpleini lib 2016-02-21 01:03:10 +01:00
David Capello
64deb6ed87 Remove mongoose code
The webserver isn't functional yet, and mongoose license is GPL now.
2016-02-16 18:52:15 -03:00
David Capello
26e4678d2d Add functions to encode/decode data in base64 2015-12-21 13:44:02 -03:00
David Capello
7f8cbfd250 New flags required for OS X/Skia port (m48 branch)
As now Skia uses <atomic> header file, we need C++11 and libc++
standard library when we compile with clang.
2015-12-17 17:43:13 -03:00
David Capello
98f026731e Use _DEBUG and NDEBUG instead of DEBUGMODE
DEBUGMODE macro came from Allegro 4.
2015-12-04 12:38:57 -03:00
David Capello
72965b14d2 Add missing -DUSE_SKIA_BACKEND and -DUSE_ALLEG4_BACKEND 2015-10-14 13:30:45 -03:00
David Capello
ce96a77aae Add required flags to link the application with freetype2 library 2015-09-22 19:27:44 -03:00
David Capello
795c4d5a87 Use ctest to run tests 2015-09-21 16:45:25 -03:00
David Capello
2a0f8ca536 Disable webp support by default (related to #799)
There is a new WITH_WEBP_SUPPORT cmake option to enable webp support.
2015-09-07 14:45:31 -03:00
Gabriel Rauter
884b5f2e6f add submodule libwebp for #273 2015-09-01 13:04:11 +02:00
David Capello
7281ef1467 Include Allegro flags in PLATFORM_LIBS when the shared version is used 2015-07-13 13:02:34 -03:00
David Capello
55f90d8b8b Add target_link_libraries() for sublibraries
With this change we remove some internal variables/lists like sys_libs,
libs3rdparty, etc. And we fix dependencies problems between targets.
2015-07-13 12:16:55 -03:00
David Capello
5b17f44526 Add basic scripting support to eval expression in --shell and DevConsole 2015-06-19 20:01:30 -03:00
David Capello
699d60b03f Change scripting engine from V8 to duktape 2015-06-19 13:06:47 -03:00
David Capello
a11e6aff76 Fix for "multiple definition" link error with clang on Linux and shared Allegro lib 2015-06-09 12:47:27 -03:00
David Capello
47a05434fe Remove some remaining parts of USE_SHARED_GTEST option 2015-06-09 10:54:04 -03:00
David Capello
b2fb33a415 Don't use our copy of libpng header files when USE_SHARED_LIBPNG is ON 2015-06-09 10:20:56 -03:00
David Capello
222562db09 Remove USE_SHARED_GTEST option 2015-06-08 18:20:39 -03:00
David Capello
65105f33da Do not link with QuickTime and audio frameworks on OS X 2015-06-01 14:39:30 -03:00
David Capello
73fa7b2107 Define CURL_STATICLIB if we don't use libcurl shared version (might be related to #640)
This problem was introduced in d7bf504887
2015-04-27 12:23:54 -03:00
David Capello
0350ac4bbe Initial work on Skia backend (WIP) 2015-03-16 15:05:13 -03:00
David Capello
5aea29348e Merge branch '1.0'
Conflicts:
	data/gui.xml
	src/app/CMakeLists.txt
	src/app/color_utils.cpp
	src/app/color_utils.h
	src/app/commands/cmd_preview.cpp
	src/app/document_exporter.cpp
	src/app/document_exporter.h
	src/app/ui/editor/standby_state.cpp
	src/config.h
	src/main/resources_win32.rc
2014-12-03 11:15:09 -03:00
David Capello
ce4021ba35 Minor change in main CMakeLists.txt 2014-12-02 01:38:38 -03:00
David Capello
d1c0a61b40 Change the compilation output path to CMAKE_BINARY_DIR/bin and /lib 2014-12-02 01:30:01 -03:00
David Capello
2d57ca4b3e Merge branch '1.0' 2014-11-29 15:07:16 -03:00
David Capello
4a1ee6d557 Fix Profile flags for MSVC in CMakeLists.txt 2014-11-28 23:04:14 -03:00
David Capello
39b8e034b5 Merge branch '1.0'
Conflicts:
	.gitmodules
	CMakeLists.txt
	src/CMakeLists.txt
	src/app/app.h
	src/app/app_menus.cpp
	src/app/commands/cmd_move_mask.cpp
	src/app/commands/cmd_rotate.cpp
	src/app/modules/gui.cpp
	src/doc/resize_image_tests.cpp
	src/ui/accelerator.cpp
	third_party/CMakeLists.txt
2014-10-30 01:06:27 -03:00
David Capello
0cf597c0f4 Add dependency with pixman library 2014-10-25 22:22:58 -03:00
David Capello
2b2d0f34b2 Add simpleini to replace Allegro 4 configuration routines 2014-10-16 21:27:25 -03:00
Matthias Mailänder
8fa93bcc3b don't fail on cmake version 2 2014-09-14 11:00:05 +02:00
David Capello
31e565a2b0 Add "gen" utility to generate UI widget wrappers from XML files 2014-07-13 13:24:57 -03:00
David Capello
7ffce344bd Add CUSTOM_WEBSITE_URL option to test a local webserver 2014-06-02 21:31:44 -03:00
David Capello
dd2ce20e25 Win32: Add support to convert mouse messages (WM_) to ui::Messages (using she::Events)
On Windows, instead of polling Allegro mouse position/buttons we can use
the mouse messages (WM_*) directly to generate she::Events. Those events
are received by the ui::Manager and converted to ui::Messages.
Maybe this is a possible fix for issue #133 (Wacom tablets don't work
properly).

Changes:
- Don't use jmouse_z() directly (new ui::MouseMessage::wheelDelta() member)
- Add ui::_internal_set_mouse_position() to change the jmouse_x/y(0)
  from the new mouse position received in she::Events. The same for
  ui::_internal_set_mouse_buttons().
- Modify the ui::Manager to generate mouse events in any case: using old
  Allegro 4 polling method, or from she::Events.
2014-04-17 22:23:12 -03:00
David Capello
30af4e2620 Add trial-mode without save functionality 2014-04-10 00:33:28 -03: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
2364776c44 Add HTTP webserver feature (for testing only at the moment) 2013-03-31 00:36:00 -03:00
David Capello
9b8e87da10 Update copyright year to 2013 2013-01-27 12:13:13 -03:00
David Capello
7a062b61a8 Add support for VC++11 (2012) 2012-10-30 21:08:33 -03:00
David Capello
a35aa7559a Do not use the embedded libloadpng.
Add the option to use a shared libloadpng library.
Patch by Tobias Hansen <tobias.han@gmx.de>
2012-07-08 21:21:01 -03:00
David Capello
be82a49f86 Add option to compile using shared gtest library (thanks to Tobias Hansen). 2012-03-19 14:33:49 -03:00
David Capello
49614f6f41 Always add third_party/libpng to include directories (thanks to Tobias Hansen).
Because private libpng headers are used by loadpng and
src/file/png_format.cpp.
2012-03-19 14:27:00 -03:00
David Capello
7115806dc4 Create option to build with shared tinyxml (thanks to Tobias Hansen). 2012-03-19 14:04:24 -03:00
David Capello
c4c44bf7e2 Add support to compile with shared Allegro 4 library. 2012-03-19 13:24:15 -03:00
David Capello
9c37384d3b Windows XP is the minimum supported platform. 2012-03-16 22:22:56 -03:00
David Capello
71f044751f Add flags to link with giflib and curl shared libraries.
Removed freetype and libart in the linking process because they
are not used anymore (the source code is still in the repository).
2012-03-15 00:17:49 -03:00
David Capello
bbd14b42b7 Add zlib bin directory to include zconf.h in ase_format.cpp 2012-01-07 21:32:53 -03:00
David Capello
b8fbaad7fb Replace Allegro Sprite Editor or ASE with ASEPRITE in all files. 2012-01-06 01:12:57 -03:00
David Capello
02a9d50524 Update copyright year to 2012. 2012-01-06 00:52:11 -03:00