Commit Graph

172 Commits

Author SHA1 Message Date
David Capello
78d3b80df3 Add ScopedAllegro class. 2012-05-12 23:25:36 -03:00
David Capello
27103a231f Convert group_button widget to ButtonSet class.
- Removed radio_button_new() function.
2012-04-19 20:33:57 -03:00
David Capello
55a4002ec5 Add posibility to scroll by-tiles using Ctrl+arrow keys (Paul Pridham idea).
+ Added ScrollCommand.
2012-04-04 00:49:13 -03:00
David Capello
58f5bbd4c0 Don't compile raster/path.cpp so libart header files are not required. 2012-03-22 19:01:05 -03:00
David Capello
ad9a5fde7a Add run_non_ui_unittests target to run tests that doesn't require X11 environment (thanks to Tobias Hansen). 2012-03-22 14:55:28 -03:00
David Capello
dfb43845a9 Updated src/allegro/src/config.c isn't necessary from Allegro 4.2.0.
ASEPRITE requires the following patch in config.c is:
http://alleg.svn.sourceforge.net/viewvc/alleg?view=revision&revision=4660
2012-03-22 13:31:40 -03:00
David Capello
a27d1d3eeb Remove deprecated dialogs: drawtext.cpp, playfli.cpp, repo.cpp. 2012-03-20 13:23:59 -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
c6ad4a94c1 Fix find_library/path to find shared libcurl (thanks to Tobias Hansen) 2012-03-19 14:29:54 -03:00
David Capello
ae8d26bedf Replace find_library/path of giflib with find_package (thanks to Tobias Hansen). 2012-03-19 14:29:29 -03:00
David Capello
7befb6c830 Include ASEPRITE net library only when the updater is enabled. 2012-03-19 14:28:06 -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
d2b11dda2b Minor change in src/CMakeLists.txt 2012-03-19 13:24:34 -03:00
David Capello
c4c44bf7e2 Add support to compile with shared Allegro 4 library. 2012-03-19 13:24:15 -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
95a9524ec2 Avoid duplicated code to flip the image.
- Added raster::algorithm::FlipType enum and flip_image function.
- Added gfx/fwd.h for forward declarations.
2012-02-19 16:25:07 -03:00
David Capello
041140f528 Change "imgtype" int type to PixelFormat enumeration. 2012-02-12 23:21:06 -03:00
David Capello
bc32ded8a5 Add Ctrl+Tab and Ctrl+Shift+Tab keys to switch between tabs. 2012-02-12 11:33:06 -03:00
David Capello
ab333ff02b Remove the ScreenShot command. 2012-02-12 10:55:33 -03:00
David Capello
0d582f9d5f Improve the MovingPixelsState to support Enter and Esc keys to drop the pixels.
Also any executed command will drop the pixels and return the editor to
its standby state.
2012-02-06 00:17:42 -03:00
David Capello
354f6a15fa Add context listeners. 2012-02-02 20:05:26 -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
David Capello
07edcdb1e2 Add transformation support (scale/rotate) to the selected area.
+ Added support to rotate images of IMAGE_BITMAP type.
+ Added transformation_handle & pivot_handle parts in sheet.png.
+ Added rotation cursors in sheet.png.
+ Added gfx::Transformation class and Document::m_transformation field.
+ Added StandbyState::Decorator and TransformHandles class to draw
  transformation handles.
+ Modified PixelsMovement class to support transformation handles.
+ Added new Linear Algebra library with Vector2d class.
2012-01-01 23:08:25 -03:00
David Capello
4f6c43edc5 Remove the editor's default state. Now the editor has a decorator property.
+ Removed Editor::setDefaultState.
+ Removed EditorState::getDecorator.
+ Added Editor::get/setDecorator.
+ Added EditorStatesHistory class and Editor::backToPreviousState() method.
+ Added EditorState::onBeforePopState event.
2011-11-13 20:40:19 -03:00
David Capello
b9b93e6869 Add ExpandCelCanvas to simplify ToolLoopImpl implementation. 2011-10-29 20:50:18 -03:00
David Capello
48000d6f48 Replace interactive_move_layer() with MovingCelState. 2011-10-29 16:25:47 -03:00
David Capello
8a9bb6c45c Add xpm icon for X11. 2011-09-06 19:37:35 -03:00
David Capello
d5dd899d3d Add "Export Sprite Sheet" command. 2011-08-07 22:24:21 -03:00
David Capello
0bddf2611c Add "Import Sprite Sheet" command (part of issue #4). 2011-07-31 22:55:52 -03:00
David Capello
dd65f0cf7f Replace "QuickReference" and "Donate" commands with "Launch". 2011-07-28 19:32:04 -03:00
David Capello
c35c258bd5 Fix problems compiling on Linux with GCC. 2011-07-27 23:08:54 -03:00
David Capello
04c675bd15 Merge branch 'ft-updater' 2011-07-27 22:10:49 -03:00
David Capello
d22d46fd2b Add ENABLE_UPDATER flag to disable the automatic updater. 2011-07-27 21:26:22 -03:00
David Capello
cf9a296e5d Add automatic check for updates with app::CheckUpdateThreadLauncher
and show notifications in StatusBar.
+ Added updater library.
+ Removed "Check for New Version" command.
2011-07-26 23:25:02 -03:00
David Capello
96d263f50e Move src/core/ to src/
+ Renamed cfg.cpp to ini_file.cpp
2011-06-29 22:51:46 -03:00
David Capello
ff481003c8 Now right-clicking a tab shows a popup-menu with useful options for the document.
+ Added OpenInFolder and OpenWithApp commands.
+ Added Launcher::openFolder.
+ Added document_tab_popup_menu.
2011-06-25 14:28:50 -03:00
David Capello
92a7b29e60 Add net-lib (HttpRequest/Response classes). 2011-06-12 10:50:30 -03:00
David Capello
7e6d25db88 Add curl library source code. 2011-06-02 21:03:03 -03:00
David Capello
5be14417f3 Convert menu widgets to Menu, MenuItem, MenuBox, and MenuBar classes. 2011-04-30 15:31:05 -03:00
David Capello
bda7f6c31d Add DropDownButton widget. 2011-04-30 15:31:03 -03:00
David Capello
7260fa20f9 Fix compilation of unit tests on Linux with pthreads. 2011-04-28 22:32:37 -03:00
David Capello
fc2fd9fdfd Rename SelectTileState to SelectBoxState. 2011-04-21 18:30:29 -03:00
David Capello
210e33f76a Improve "Canvas Size" command to show rulers to change the canvas size.
+ Added EditorDecorator and EditorState::getDecorator().
+ Added EditorPreRender and EditorPostRender classes.
+ Added Image::rectblend and image_rectblend functions to draw
  transparent rectangles.
+ Added SelectTileState and Ruler classes.
2011-04-21 17:39:43 -03:00
David Capello
5380877c4a Refactor Editor class to use a state design pattern.
+ Added EditorState and derived classes (StandByState, DrawingState, etc.)
+ Added StatusBarListener.
2011-04-10 20:15:17 -03:00
David Capello
70e76380aa Add mini-editor to see 1px preview when you zoom in.
+ Added EditorView widget.
2011-04-02 18:12:41 -03:00
David Capello
d547a05f4d Add EditorListeners. 2011-04-02 15:47:44 -03:00
David Capello
1fd011c20b Move everything related to tools in "tools" namespace.
+ Splitted tools/tool.h|cpp in several files (ink.h, intertwine.h, etc.).
2011-04-02 10:47:03 -03:00
David Capello
3ad44e3004 Add a "pin" in color selectors to make the popup window floating.
+ Added Frame::hitTest() and Frame::onHitTest().
+ Added LookType enum for SkinProperty.
2011-03-29 21:07:37 -03:00
David Capello
682e7152b7 Replace UndoHistory::undo_int/data/double methods with new safe-undoers.
+ Added SetCelFrame/Opacity/Position, SetMaskPosition, SetStockImgType,
  and SetLayerFlags undoers.
+ Finally removed the Layer::flags_addr() atrocity.
+ Removed RawData undoer.
+ Renamed SetImgType to SetSpriteImgType.
2011-03-27 18:15:00 -03:00
David Capello
8b19d36e51 Add ContextFlags to simplify Command::onEnabled() implementations. 2011-03-27 14:51:02 -03:00
David Capello
d95919beb5 Add a simple DeveloperConsole for debugging purposes (F11 key). 2011-03-26 20:43:43 -03:00
David Capello
8e5c950df8 Refactored the entire Undo system in several layers.
+ Added "undo" library (undo namespace).
+ Moved UndoHistory to undo namespace.
+ Added Undoer and UndoersCollector interfaces.
+ Converted old UndoStream to UndoersStack class.
+ Added new "undoers" namespace and moved each Undoer implementation
  (classes to undo different actions) to "undoers" directory.
+ Added IO operations to "raster" objects (image, cel, layer, palette,
  mask).
2011-03-26 17:40:55 -03:00
David Capello
f816425d5d Add ObjectsContainer interface in src/undo/ so UndoHistory has a way to
obtain any kind of objects (not just GfxObj).
+ Removed GfxObjId.
+ Added ObjectsContainerImpl.
+ Use UniquePtr for each member in Document to avoid memory leaks in
  Document() ctor.
+ Removed RasterModule class.
2011-03-24 18:03:38 -03:00
David Capello
9182f0f14a Move UndoHistory from raster/ to undo/ directory. 2011-03-24 11:50:00 -03:00
David Capello
f08d049ab6 Rename Undoable to UndoTransaction. 2011-03-22 21:22:13 -03:00
David Capello
6e60d3200d Add Document class, to remove app specific properties from Sprite.
+ Moved some properties from Sprite to Document: lock/unlock/mutex,
  filename, isModified flag, undo history, mask boundaries, file
  format options, preferred editor settings, extra cel.
+ A Context now has an active document (instead of an active sprite).
+ Renamed all sprite wrappers to be document wrappers (as the mutex is
  in the Document now).
+ Modifications to SharedPtr<> to be more like C++0x shared_ptr<>.
2011-03-22 21:11:25 -03:00
David Capello
775357d04f Remove deprecated vectmap code. 2011-03-20 16:40:44 -03:00
David Capello
afd5ade856 Add find_unittests() in src/CMakeLists.txt to avoid compiling unittests
with all libraries as dependencies.
2011-03-18 00:26:08 -03:00
David Capello
55c611c08b Convert Documents from std::list<> to a class. 2011-03-13 19:41:59 -03:00
David Capello
9b32ebdad6 Rename Undo class to UndoHistory. 2011-03-13 17:33:42 -03:00
David Capello
a8d9636467 Refactor filters (effects).
+ Added Filter, FilterManager, and FilterIndexedData interfaces.
+ Moved all widgets related to filters to src/commands/filters.
+ Added the filters library.
+ Added FilterWindow and one derived window for each filter.
2011-03-13 15:50:31 -03:00
David Capello
6d5531b998 Replace old gfx-data with graphics from the skin sheet.
+ Removed gfxdata.cpp file.
+ Removed get_gfx() from modules/gfx.h/cpp.
+ Added skin parts for each removed graphics of gfxdata.
+ Added IButtonIcon interface and an implementation for skin theme.
+ Removed "icon_buttons" from gui.cpp.
+ Now icons in button are set through set_gfxicon_to_button function.
+ Removed from Theme class check/radio_icon_size member variables
  (they are replaced with the new IButtonIcon interface).
+ Removed jdraw_inverted_sprite(), now each icon has it normal/selected
  version in the skin sheet.
2011-03-06 16:15:05 -03:00
David Capello
bb1151c0ac Rewrite the entire color selector as C++ class.
+ Added ColorSliders widget for RGB, HSV, and Grayscale sliders.
+ Added HexColorEntry to show a color in HTML format.
2011-03-01 22:50:49 -03:00
David Capello
dea3962502 Remove deprecated colorviewer widget. 2011-02-20 18:40:16 -03:00
David Capello
6ef082ad7f Rename PalEdit to PaletteView widget to avoid confusion with the palette editor command. 2011-01-28 09:28:54 -03:00
David Capello
58b2c1bcd0 Improve palette editor's RGB/HSV sliders.
+ Added SkinSliderProperty and ISliderBgPainter to draw a customized background in sliders.
+ Moved SkinTheme to src/skin/ directory.
2011-01-24 00:03:38 -03:00
David Capello
fc263ddb88 Move SkinneableTheme in src/modules/ directory to SkinTheme in src/. 2011-01-21 17:29:45 -03:00
David Capello
45855b88d3 Move "AseException" to "base::Exception" class.
+ Created XmlException for tinyxml parsing errors.
+ Moved functionality of AseException::show() to Console::showException().
2011-01-20 23:33:57 -03:00
David Capello
bf395fca61 More updates for copyright year to 2011. 2011-01-20 18:32:31 -03:00
David Capello
c2e831d009 Use giflib to load gif files.
With this changes a lot of bugs loading different kind of .gif
files are fixed. GIF files must be loaded as RGBA images to
support background color and different transparent color per
frame combinations.
2011-01-18 20:42:43 -03:00
David Capello
9fa71e5299 Convert FileFormat to a C++ class. 2011-01-16 17:27:18 -03:00
David Capello
d301fc7530 Replace images_ref functions (src/effect) with ImagesCollector class (src/raster). 2010-12-26 17:03:35 -03:00
David Capello
4c8c7463ed Move functions related to quantization and dithering algorithms to raster/quantization.h|cpp. 2010-12-26 10:57:03 -03:00
David Capello
8e54e0cbd5 Include third_party/gtest/include as -I only one time. 2010-12-12 09:53:39 -03:00
David Capello
bc22007455 Fix problems compiling unittests with a Visual Studio solution. 2010-12-11 10:03:59 -03:00
David Capello
742cf18237 As now the window can be resized in all platforms we can remove "Configure Screen" option. 2010-11-04 21:47:54 -03:00
David Capello
07fceb15f7 Remove config.cpp because the config.c in src/allegro already has my patch for override_config_file(). 2010-10-31 00:32:37 -03:00
David Capello
3a8711e6a6 Add GuiXml class to avoid duplicated code and loading gui.xml file several times. 2010-10-27 21:04:05 -03:00
David Capello
87d2d5595f Move link flags and other cmake configuration from Allegro's CMakeLists.txt to the main CMakeLists.txt.
Remove all the "modules" stuff from Allegro's CMakeLists.txt
2010-10-16 17:02:12 -03:00
David Capello
948a5e0a5d Add "allegro" library as part of the ASE build process. 2010-10-16 14:30:04 -03:00
David Capello
ab32c37955 Add "install" target so we can use "make install" on Linux. 2010-10-12 17:19:19 -07:00
David Capello
1bbcf0af38 Remove linking two times aseprite-library in aseprite target. 2010-10-12 10:21:52 -03:00
David Capello
f86c306bab Add ENABLE_MEMLEAK parameter to CMakeLists.txt (fix jmem.cpp so it can be compiled when MEMLEAK is defined). 2010-10-10 16:47:01 -03:00
David Capello
b66371f95a Move thread class to base lib (the new thread class has a C++0x-like api). 2010-10-02 19:00:01 -03:00
David Capello
2a73d6ffb9 Fix order of libraries so we can link loadpng with alleg library with gcc on Windows. 2010-10-02 18:33:06 -03:00
David Capello
b7609686de Add resources_win32.rc in aseprite target on Windows. 2010-10-01 00:23:13 -03:00
David Capello
38a99e2740 Simplify usage of allegro_c_flags setting CMAKE_C_FLAGS variable. 2010-09-30 17:43:00 -03:00
David Capello
485582d816 Add some comments in src/CMakeLists.txt file. 2010-09-30 17:42:06 -03:00
David Capello
3163a5ac98 Add support to link ASE with the shared versions of libjpeg, libpng, and zlib. 2010-09-30 17:04:32 -03:00
David Capello
d09bd2a6ee Fix code in src/CMakeLists.txt to check return value of allegro-config. 2010-09-30 16:17:08 -03:00
David Capello
9f000741a3 Remove WIN32 attribute for tests (so we can see colored output in win cmd console). 2010-09-30 13:22:10 -03:00
David Capello
3d5fd0f07c Remove Vaca source code completely (replace NonCopyable class with DISABLE_COPYING macro). 2010-09-29 17:50:46 -03:00
David Capello
5ccddbc8bc Now the gui-lib is another package compiled with its own CMakeLists.txt. 2010-09-27 19:18:17 -03:00
David Capello
22ad9058af Add allegro-config calls to compile ASE on Linux. 2010-09-26 18:58:53 -03:00
David Capello
cb3dd70fb8 Move Jinete library to src/gui directory (future gui-lib). 2010-09-26 15:59:32 -03:00
David Capello
6c8f395977 Remove old C hash implementation. 2010-09-25 18:07:52 -03:00
David Capello
28d09af036 Move Point/Size/Rect classes to a new gfx-lib. 2010-09-25 16:22:32 -03:00
David Capello
c9dfa8fc03 Separate "base" code under terms of the BSD license. 2010-09-23 20:28:16 -03:00