David Capello
22c3651c63
Fix Alt+Mnemonic on Mac OS X
2014-11-01 12:44:07 -03:00
David Capello
b9b3b02882
Fix mouse issues on OS X ( fix #458 )
...
Now we generate she::Event::MouseEnter/Leave events correctly when the
mouse leaves or enters into the window to show the native cursor again
when necessary.
Close #466
2014-11-01 11:36:51 -03:00
David Capello
8bec9be4b2
Fix comparison between ui::Accelerators
2014-10-29 23:50:48 -03:00
David Capello
f939ef5f02
Add keyboard shortcuts customization ( close #253 )
...
Changes:
* Add KeyboardShortcutsCommand and window
* Add SelectAccelerator window
* Replace modules/gui.cpp functions with app::KeyboardShortcuts and
app::Key with the logic to load/save/handle keyboard shortcuts
* Change ui::Accelerator concept: now it represent just one keyboard
shortcut, not a set of shortcuts
* Remove ui::Accelerator from ui::MenuItem, now the key is associated
in app::AppMenuItem and it's a app::Key
* Add Command::onGetFriendlyName() to get a user friendly name of the
command depending on its parameters
2014-10-29 11:58:03 -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
3e18efcd8b
Don't expand MenuBar items on mouseover ( fix #501 )
...
This is how menu-bars work on Windows and OS X.
2014-10-23 11:16:22 -03:00
David Capello
fda9478eb4
Re-center mini-editor when its window is resized
2014-09-11 00:00:28 -03:00
David Capello
bdd64b2c34
Bring back infinite scroll in sprite editor
2014-09-09 21:51:47 -03:00
David Capello
c37958a7f3
Fix focus movement in ui::Entry widget on Mac OS X platform
2014-09-09 09:52:37 -03:00
David Capello
d14a0fe075
Add "Size" options in CanvasSizeCommand to specify width/height
...
- Added canvas icons to change the expansion direction in CanvasSizeCommand
- Added Widget::at() and Widget::offerCapture() member functions
- Improved ButtonSet widget
2014-09-08 02:27:41 -03:00
David Capello
c38c784772
We don't have std::bind() available in Mac OS X SDK 10.4u
2014-09-04 09:07:23 -03:00
David Capello
1d4202d593
Minor change in system.h: remove unused BITMAP forward declaration
2014-09-03 10:26:52 -03:00
David Capello
7d89167e00
Add right-click to ui::Entry to show edit popup menu (cut/copy/paste)
2014-08-31 22:51:17 -03:00
David Capello
bde2ddbe83
Remove ji_screen and ji_clock global variables
...
- Replace JI_SCREEN_W/H with ui::display_w/h()
- Remove GfxMode class
- Move drawing code of ColorCurveEditor widget to onPaint()
- Rename ji_clock -> ui::clock()
2014-08-31 14:17:49 -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
99557a2c1a
Don't change mouse position in ui::Slider
2014-08-25 21:43:55 -03:00
David Capello
355ecbb2af
Add space bar as modifier
...
Now we can scroll with space bar + arrow keys
2014-08-24 23:40:33 -03:00
David Capello
fb68969ba5
Mac OS X port: fix copy & paste in entry field with Cmd+C/Cmd+V keys
2014-08-23 14:51:28 -03:00
David Capello
cab6ecbfda
Minor change in ui/entry.cpp to avoid dependency with Allegro definitions
2014-08-21 22:07:41 -03:00
David Capello
51ab478f49
Fix order of members initialization detected by clang
2014-08-17 20:38:55 -03:00
David Capello
5075c1f86f
Remove unused variables/code
2014-08-17 20:37:12 -03:00
David Capello
dfc1ecd2da
Use #pragma warning only in MSC compiler
2014-08-14 23:38:06 -03:00
David Capello
6824570c4b
Remove base/override.h (use override keyword directly)
2014-08-14 23:07:47 -03:00
David Capello
400ab0c464
Fix a bug in ui::Manager putting the focus in non-visible widgets
...
We've to ask for isVisible() member function because it checks for
the visibility of the widget and its parents.
2014-08-12 08:10:02 -03:00
David Capello
1f25579f5a
Fix bug: avoid clicking window borders when a combobox is open
2014-08-11 08:10:42 -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
4d4958bf35
Move capture/release mouse function to she layer
2014-08-09 22:32:05 -03:00
David Capello
a6933b2c7a
Rename ui::jmouse_poll to ui::_internal_poll_mouse
2014-08-09 11:16:54 -03:00
David Capello
b1b4ed8b39
Don't block Menu::showPopup() with a customized event loop
...
We must call Menu::showPopup() in ui::kMouseUpMessage message.
2014-08-09 11:13:51 -03:00
David Capello
6ccd95e22d
Use a desktop Window in PreviewCommand to avoid a special events loop
2014-08-09 10:37:51 -03:00
David Capello
dfaf097b88
Rename base/compiler_specific.h to base/override.h
2014-08-09 08:08:20 -03:00
David Capello
a856cdf8bd
Add support for command key in Mac OS X platform
...
Other change:
- Fixed ui::Message::onlyCtrl/Shift/AltPressed() member functions
2014-08-06 00:42:50 -03:00
David Capello
4b7bf5b835
Merge she::Color and ui::Color types in gfx::Color
2014-06-28 16:10:39 -03:00
David Capello
901b2acc06
Remove some references to <allegro.h>
2014-06-28 11:17:22 -03:00
David Capello
b37ec489f6
Remove ui::Widget::isScancodeMnemonic() member function
2014-06-28 11:14:03 -03:00
David Capello
738d6ec4ee
Rename _unittest.cpp files to _tests.cpp
2014-06-28 10:49:38 -03:00
David Capello
7ebc90678f
Use ui::Graphics instead of Allegro in Editor's brush preview routines
...
* Remove color_utils::color_for_allegro()
* Rename editor_draw/move/clear_cursor() -> draw/move/clearBrushPreview()
* Rename Editor::get_raw_cursor_color() and Editor::is_cursor_mask()
* Add Graphics::get/putPixel() and Graphics::width/height()
* Add SetClip class
2014-06-28 10:33:58 -03:00
David Capello
5bbff161b9
Now ui::Graphics uses she::Surface instead of Allegro BITMAP
2014-06-26 22:14:39 -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
10bd7142eb
Change ui::ImageView to use she::Surface instead of Allegro BITMAP
2014-06-22 18:57:30 -03:00
David Capello
dbad153698
Add she::Font class (wrapper of Allegro FONT)
...
This is an huge refactor to avoid handling Allegro FONT directly. Some
changes:
* Add she::System::defaultDisplay/Font, createRgbaSurface, loadSurface,
and loadRgbaSurface.
* Rename she::CreateSystem/Instance to she::create_system/instance.
* Remove ui/font.cpp and move ui/fontbmp.cpp to she library.
* ui::IButtonIcon uses she::Surface instead of BITMAP.
* Rename she::LockedSurface::drawAlphaSurface -> drawRgbaSurface
* Rename ui::SetDisplay -> set_display
* Rename _ji_font_text_len -> ui::Graphics::measureUIStringLength
2014-06-22 18:53:14 -03:00
David Capello
1a07472824
Fix issue loading negative splitter position
2014-05-25 16:34:26 -03:00
David Capello
47b6df19ee
Fix problems generating mouse messages with pos=0,0
2014-05-25 16:22:48 -03:00
David Capello
08fb98d40d
New notifications area at the top-right corner
2014-05-25 11:21:10 -03:00
David Capello
e266089368
Make IntersectClip non-copyable
2014-05-04 21:51:52 -03:00
David Capello
778578b210
Fix Editor scroll issues: we cannot process several WM_MOUSEMOVE in one UI loop-cycle
...
We have to wait to validate not-scrolled regions before we can use
Widget::scrollRegion() or Window::moveWindow() again. This is an issue
to see in the future (to avoid lossing mouse move messages). At the moment,
one solution is to use the last received mouse move message.
2014-05-04 21:40:46 -03:00
David Capello
94b2fb6dde
Translate Widget::m_updateRegion field when the widget is moved
2014-05-04 21:32:43 -03:00
David Capello
b45cd3e07e
Minor changes in Widget::scrollRegion()
2014-05-04 21:32:13 -03:00
David Capello
41863f9d3d
Minor changes in Window::moveWindow()
2014-05-04 21:31:59 -03:00
David Capello
4035c6fc13
Fix call to update_mouse_position() when Allegro mouse position is used
2014-05-04 21:18:43 -03:00