73 Commits

Author SHA1 Message Date
David Capello
ed90055bf7 Replace modules/editors.cpp with widgets::Workspace class
Now we have one editor for each Document we want to edit. Before we were
creating one editor and switching the document on it, but now we have
several Editors (one for each opened Document). This simplifies the
Document implementation, because it doesn't need to know temporal
Editor information (like "preferred editor settings").

- Removed all code from modules/editors.cpp (legacy from C code).
- Removed PreferredEditorSettings class and
  Document::getPreferredEditorSettings().
- Added Workspace/WorkspaceView classes.
- Added DocumentView (a DocumentObserver).
- Added MiniEditorWindow class.
- Removed SelectFileCommand & CloseEditorCommand.
- Added TabView interface instead of using a raw void* in
  Tabs/TabsDelegate classes.
- Modified editors_draw_sprite() calls to Document::notifySpritePixelsModified
  notifications.
- The "current_editor" global variable wasn't removed because it's
  used in several places yet, but it will be removed in the near future.
  (Also this variable now can be NULL when we don't have an opened
  document.)
2013-01-20 18:40:37 -03:00
David Capello
c5cf588370 Rename some member_functions to memberFunctions 2013-01-11 12:43:25 -03:00
David Capello
b381d3a7b3 Add IDocumentSettings to separate document related settings from ISettings
This is the first step to have settings per document. Currently
IDocumentSettings is implemented as a global instance so all documents
share the configuration (as it was already working). But in the future
a project will be able to provide an alternative implementation to save
the configuration of each document in the same project.
2012-11-18 10:21:06 -03:00
David Capello
cd23721a97 Add MainWindow & MainMenuBar, and replace rootmenu module with AppMenus class.
Also the ToolBar widget was published in the toolbar.h header file.
2012-07-09 13:20:58 -03:00
David Capello
91bf74350e Rename ui::Frame to ui::Window. 2012-07-08 23:24:42 -03:00
David Capello
51df7a3af6 Rename src/widgets/statebar.[cpp/h] to src/widgets/status_bar.[cpp/h]. 2012-06-17 22:56:40 -03:00
David Capello
55aca8567c Move src/gui/ to src/ui/ 2012-06-17 22:49:58 -03:00
David Capello
14dd4e7ae2 Add GUI library stuff into "ui" namespace (now ui-lib). 2012-06-17 22:02:54 -03:00
David Capello
a74b9d89a0 Remove JWidget type (replaced with Widget*). 2012-06-16 00:05:01 -03:00
David Capello
02e8c66da4 Remove signals and hooks in GUI code.
Several refactoring tasks where made:
- Removed the old Widget::id field (JID).
- Renamed Widget::get/setName to get/setId.
- Moved load_widget_from_xmlfile() to app::load_widget and WidgetLoader
  class.
- Removed jhook structure & jwidget_add_hook function. Hooks were replaced
  subclassing widgets.
- Added InitThemeEvent class and Widget::onInitTheme member function.
2012-06-15 23:37:59 -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
48f0a88d66 Remove jwidget_free() function. 2012-04-15 16:04:03 -03:00
David Capello
e018cf099d Conert all mask_* functions to Mask function members. 2012-01-08 22:34:36 -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
ed6090bc36 Convert all newline to LF style and remove all tabs.
This was done to avoid mixed files (CRLF & LF) in the repository.
2012-01-05 19:45:03 -03:00
David Capello
ff897fea34 Remove JMessage and jmessage union, use Message* and Message instead. 2011-04-02 13:14:07 -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
d57677d80b Remove jwidget_find_name() function. 2011-03-29 21:42:21 -03:00
David Capello
0bd6e19093 Replace jwidget_add_child/remove_child/replace_child with Widget's methods. 2011-03-29 21:35:17 -03:00
David Capello
b40a20e8aa Move src/widgets/editor.h to src/widgets/editor/editor.h. 2011-03-27 14:54:37 -03:00
David Capello
0b495085cc Move the active mask from Sprite class to Document.
+ Removed masks and paths repositories.
+ Added Document::isMaskVisible and Document::setMaskVisible methods.
2011-03-23 00:06:43 -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
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
2baa342a65 Remove "j" prefix from some files in gui library. 2011-01-30 19:12:10 -03:00
David Capello
cb6d70521f Replace jwidget_dirty/invalidate and Widget::dirty functions with new Widget::invalidate* member functions. 2011-01-21 19:45:04 -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
cf2f042cbf Rename CommandsModule::get_command_by_name to getCommandByName. 2011-01-20 20:49:03 -03:00
David Capello
3887173fac Rename all commands to camel case. 2011-01-20 20:46:58 -03:00
David Capello
8e8ac7aa50 Refactor all member functions of Context class to camel case. 2011-01-20 19:58:11 -03:00
David Capello
d6eb20ef7e Update copyright year to 2011. 2011-01-18 20:49:53 -03:00
David Capello
551efd4313 Convert jslider to Slider class.
+ Changed JI_SIGNAL_SLIDER_CHANGE to Slider::Change signal.
2010-12-04 16:13:21 -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
cd6b8d3d23 Move Signal/Slot/Bind stuff to base-lib. 2010-09-25 17:20:59 -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
733ee5b705 Rename colbut.h to color_button.h. 2010-08-23 18:25:57 -03:00
David Capello
7d47093acc Convert jbutton widget to ButtonBase, Button, CheckBox, and RadioButton C++ classes.
+ Add ButtonBase::Click signal.
+ Button does not close the window by default (you have to configure this action manually when Click signal is triggered).
+ Add "closewindow" attribute to <button> widget in XML files.
+ Move "bevels" to SkinProperty.
+ Convert colorbutton widget in ColorButton C++ class.
2010-08-23 17:41:19 -03:00
David Capello
d4eae74a53 Make "Tools Configuration" dialog wider when it is needed. 2010-08-13 11:31:52 -03:00
David Capello
4fc1b7f9f8 Show/hide opacity and tolerance parameters depending if the current tool supports these. 2010-08-13 11:11:21 -03:00
David Capello
78366fa545 Spray settings are hidden when we do not have the Spray tool selected. 2010-08-13 11:04:17 -03:00
David Capello
dec4bbc6a4 Add "Tolerance" parameter for some tools like Magic Wand and Paint Bucket (Trent Gamblin idea). 2010-08-13 10:41:13 -03:00
David Capello
4e72997a02 Use Allegro's ASSERT() instead of assert(). 2010-08-03 23:33:44 -03:00
David Capello
a0bbb5dfab Renamed locked_sprite_exception to LockedSpriteException. 2010-07-31 12:28:03 -03:00
David Capello
4b2f341af1 Refactored Command class to contain extensions points (virtual methods) as protected members (except clone() method).
+ Renamed Command::load_params -> onLoadParams
+ Renamed Command::enabled -> onEnabled
+ Renamed Command::checked -> onChecked
+ Renamed Command::execute -> onExecute
+ Added public (non-virtual methods) Command::execute/loadParams/isChecked/isEnabled.
2010-07-31 12:23:45 -03:00
David Capello
c4ab208e4b Replaced jwidget_show/hide/is_visible/is_hidden functions with Widget::isVisible/setVisible methods. 2010-07-04 12:03:14 -03:00
David Capello
447f6438a4 Removed jwidget_select/deselect/set_selected/is_selected/is_deselected functions. 2010-07-03 15:03:26 -03:00
David Capello
2af3160b3f Added an option in Tools Configuration dialog to show the pixel grid. 2010-04-28 23:46:17 -03:00
David Capello
8dd69cada9 Moved "Cursor Color" setting from "Tools Configuration" to "Options" dialog. 2010-04-25 23:35:05 -03:00
David Capello
5665b7dd1a Added grid_settings command (feature #2874433). 2010-04-25 15:31:44 -03:00
David Capello
ed792eba1e Added getRgbMap() methods to Sprite class.
Added Palette* parameter to image_to_allegro() function and Image::to_allegro().
Removed orig_rgb_map.
Removed rgb_map usage (the Allegro global variable).
2010-04-20 23:44:31 -03:00