88 Commits

Author SHA1 Message Date
David Capello
f4b2b47a2c Add #pragma once 2014-03-29 19:40:17 -03:00
David Capello
6ed35b733c FileSelector: fix combobox behavior as now ComboBox::onChange() event is generated when the combobox is open 2014-03-29 18:42:17 -03:00
David Capello
7253fa59c5 Fix combobox widget: fire Change signal when the combobox is selected with the keyboard 2014-03-29 17:17:06 -03:00
David Capello
04f3c522ba Replace jwidget_get_text_length/height with Widget::getTextWidth/Height
Renamed Widget::getTextSize to Widget::getTextLength as now getTextSize
returns a gfx::Size() (not the strlen() of the text)
2014-03-21 19:45:35 -03:00
David Capello
1212906d5a Move drop files event to she library 2014-03-20 07:31:19 -03:00
David Capello
be6b98995e Add she::EventQueue to she::Display to get events from she library 2014-03-20 00:01:00 -03:00
David Capello
f107dd3cbc Fix issue 352: Context Bar Eats Hotkey Input
Avoid capturing keyboard focus in context bar widgets.
2014-03-08 20:31:55 -03:00
David Capello
d72a7a4dee Fix compilations errors on gcc 2014-02-24 08:30:43 -03:00
David Capello
3b23184c15 Fix compilation error in ui/clipboard_none.h 2014-02-24 08:23:04 -03:00
David Capello
3cbf3e122f Now you can press a mouse button in a ComboBoxEntry and drag the mouse to the ComboBoxListBox (issue 339) 2014-02-08 20:09:42 -03:00
David Capello
7251f4b70a Now you can press a mouse button in a IntEntry and drag the mouse to the slider (issue 339) 2014-02-08 19:39:36 -03:00
David Capello
bb32f1fbf2 slider.cpp: Remove commented code 2014-02-08 19:26:13 -03:00
David Capello
7eb41c73e9 IntEntry: select all text when the value is changed with the slider 2014-02-08 18:58:28 -03:00
David Capello
721734d26c Don't scroll Entry text if it isn't needed 2014-02-08 18:46:27 -03:00
David Capello
f954556683 Fix crash in Entry::getCaretFromMouse() 2014-02-08 18:31:15 -03:00
David Capello
51f70a170a Move code to handle Windows clipboard (text) to ui/clipboard_win.h 2014-02-08 00:41:16 -03:00
David Capello
9b2f5399e9 Add ui::Graphics::fillRegion() 2014-02-06 20:01:32 -03:00
David Capello
9050861d78 Add ui::Widget::getGraphics() and GraphicsPtr 2014-02-06 20:00:59 -03:00
David Capello
936b741f90 Stop propagation of keyboard messages if a child use it
This fix a new bug with the new EditorView's scroll-bars. As 1,2,3,4,5,6
keys change the zoom, they will change the viewport size, and scroll-bars
will be removed/added. We cannot continue iterating the View::m_children
collection after m_children is modified (scroll-bars are removed/added).
2014-02-03 00:22:24 -03:00
David Capello
0a01828ffe Don't eat all keystrokes on ui::TextBox::onProcessMessage() 2014-02-02 20:13:52 -03:00
David Capello
e671508d85 Change infinite scroll implementation
Remove necessity of jmouse_x(1) and jmouse_y(1) calls.

- Renamed jmouse_control_infinite_scroll() -> ui::control_infinite_scroll()
- Renamed jmouse_set_position() -> ui::set_mouse_position()
- Added ui::get_delta_outside_box()
2014-02-02 18:46:19 -03:00
David Capello
78fbf07fc7 Fix scroll bar thumb size calculation 2014-01-28 23:46:04 -03:00
David Capello
eee1719109 Implemented issue 260: Scroll-bars for sprite editor 2014-01-26 13:28:11 -03:00
David Capello
f8e8657093 Move kPaintMessage code to onPaint() event for some widgets
The affected widgets are: ColorBar::ScrollableView, ColorButton, and
StatusBar.

* Added Graphics::drawLine()
* Moved rectgrid and draw_color to modules/gfx.cpp
2013-12-29 21:12:23 -03:00
David Capello
20fb1317a3 Fix bug in Graphics::drawStringAlgorithm() painting invalid background color 2013-12-09 22:58:07 -03:00
David Capello
40fd251c39 Add support for vertical text alignment in Graphics::drawStringAlgorithm() 2013-12-09 22:57:43 -03:00
David Capello
61d5693727 Merge branch 'dev' of git@github.com:dacap/aseprite.git into dev 2013-12-01 22:09:11 -03:00
Joel Madigan
838382791e Tweaked IntEntry behavior
Changed behavior of IntEntry to stop it from continously selecting all
text as long as the mouse is over the input box.  It appears that
something continues to send kMouseEnterMessage messages while use is
typing, even if the mouse is still.  This caused the IntEntry select-all
multiple times and as the user typed would replace what they had already
written.

Also force value to be set within min >= value >= max when focus is lost.
This will get rid of bad values from the entry, such as 10q goes to 10,
40000 goes to 255, etc.
2013-11-30 18:36:22 -05:00
David Capello
3a2ef4644e Move Manager::getDefault() to .h so it can be inlined 2013-11-30 20:02:45 -03:00
David Capello
ad0b28bd63 Change Window() ctor to avoid ambiguity (DesktopWindow, WithoutTitleBar, or WithTitleBar)
In this way we know at the moment of the creation of the window if it
will need the close button.

Issue #280.
https://github.com/aseprite/aseprite/pull/6
2013-11-23 17:47:57 -03:00
David Capello
7dc8e548be Fix issue #280 - Close button doesn't appear in some windows
Thanks to @DocHoncho for the help.
See https://github.com/aseprite/aseprite/pull/6
2013-11-23 17:25:21 -03:00
David Capello
e6450877bb Minor change: Make Splitter::getPosition() inlined 2013-11-10 18:02:20 -03:00
David Capello
dbf4d0d490 Replace JRect/jrect struct with gfx::Rect
- Replaced Widget::rc -> Widget::m_bounds private member.
- Added Widget::offsetWidgets() method.
- Removed View::displaceWidgets().
2013-10-26 12:50:55 -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
d91b05667b Fix compilation errors detected with gcc 2013-08-20 00:51:37 -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
David Capello
1614786408 Convert ui::Message union to a class hierarchy
+ Add ui::KeyScancode enum and ui::KeyModifiers flags.
+ Add ui::MouseButtons enum.
2013-07-28 21:17:07 -03:00
David Capello
6022278260 Remove (unused) MessageSetPos struct 2013-06-02 19:19:01 -03:00
David Capello
e90f86727b Remove jwidget_get_rect() and jwidget_get_child_rect() functions
+ Added Widget::getClientChildrenBounds()
+ Replaced all member functions in Theme::draw_x() to Theme::paintX()
+ Move code to draw tabs from Tabs::onProcessMessage() to Tabs::onPaint().
2013-05-20 20:40:18 -03:00
David Capello
01dfe4d52e Replace kResizeMessage message with ResizeEvent and Widget::onResize()
- Remove jwidget_set_rect() function.
2013-05-11 17:56:27 -03:00
David Capello
3dbf6518f9 Replace all JM_ macros with ui::MessageType enum and add ui::RegisterMessage class to register new UI messages 2013-04-04 21:53:29 -03:00
David Capello
6e62bcb82f Add ui::WidgetType enum to replace JI_WIDGET macros 2013-04-03 22:07:24 -03:00
David Capello
fd6e4ccc21 Add support for transparent background color for ui::Slider to draw ui::IntEntry popup window without background 2013-04-03 21:17:12 -03:00
David Capello
b45dcf7d0d Use ui::ListItem in ui::ComboBox widget 2013-04-03 20:31:02 -03:00
David Capello
1d76e0d545 When a widget is removed (through Widget::removeChild) we've to remove it from its ui::Manager
A widget without parent, cannot be part of the Manager (e.g. cannot be
the capture widget, or focused, or the widget with mouse).
2013-04-03 19:54:40 -03:00
David Capello
dcd8627406 Separate ui::ListBox::Item into ui::ListItem class 2013-04-02 21:34:30 -03:00
David Capello
1bf84bac41 Fix IntEntry's popup if it's beyond the screen border 2013-03-30 20:53:50 -03:00
David Capello
9076ee13ea Don't close IntEntry's popup in case of FOCUSLEAVE message 2013-03-30 20:50:43 -03:00
David Capello
cbb5809c10 Bigger hot region for IntEntry's popup window 2013-03-30 20:50:24 -03:00