203 Commits

Author SHA1 Message Date
Thierry Crozat
91125bcbcd GUI: Add method to know if a widget contains a given widget 2017-04-06 21:55:28 +01:00
Colin Snover
94e2c67418 GUI: Fix crash when slider values are out-of-bounds
Out-of-bounds values are always indicative of a bug somewhere else,
but at least not crashing here allows the user to recover by
interacting with the slider control. The error will still be
obvious because the associated text field will display the
original weird value.
2016-12-01 13:04:55 -06:00
Eugene Sandulenko
58e38be05c GUI: Initialize the PicButtonWidget class properly 2016-09-04 12:41:05 +02:00
Eugene Sandulenko
a686049c46 GUI: Fix widget clipping 2016-08-24 16:07:55 +06:00
Eugene Sandulenko
6524a8d103 GUI: Added transparency to PicWidgets 2016-08-24 16:07:55 +06:00
Eugene Sandulenko
30f7556bee GUI: Added support for alphabitmaps in picbuttons 2016-08-24 16:07:55 +06:00
Eugene Sandulenko
75f9b099dc GUI: Added possibility to specify scale mode for AlphaBitmaps 2016-08-24 16:07:55 +06:00
Eugene Sandulenko
f0c52096f3 GUI: Implemented possibility to use alphabitmaps in GraphicsWidget 2016-08-24 16:07:55 +06:00
Eugene Sandulenko
762671ccd8 GUI: Added possibility to specify several state images for PicButtonWidget 2016-08-24 16:07:55 +06:00
Eugene Sandulenko
2a9cf65eeb GUI: Add mode to skip drawing of button for PicButton 2016-08-24 16:07:55 +06:00
Alexander Tkachev
64a79fd1ab GUI: Fix TabWidget height issues
Changes theme stx files to specify TabWidget's type. That fixes wrong TabWidget height.

Changes TabWidget's getHeight() to return not only "children" height, but also tabs height. That fixes wrong clipping area.

Changes Widget's findWidget to use getHeight(). That fixes bug when widgets in the bottom of TabWidget were not reacting to the mouse events.
2016-07-12 22:37:57 +06:00
Alexander Tkachev
846619fd42 GUI: Add checks in Widget::getBossClipRect()
Prints a warning if clipping area is invalid and fixes it.
2016-07-03 12:24:56 +02:00
Alexander Tkachev
cea58cc61c JANITORIAL: Remove trailing spaces 2016-07-03 12:24:53 +02:00
Alexander Tkachev
3d636617d0 GUI: Use clipping everywhere 2016-07-03 12:24:46 +02:00
Alexander Tkachev
6fd6043391 GUI: Fix blitAlphaBitmapClip() 2016-07-03 12:24:11 +02:00
Alexander Tkachev
fca0f0ed34 GUI: Make PopUpWidget clip 2016-07-03 12:16:43 +02:00
Alexander Tkachev
d7278cc48b GUI: Prepare button to be clipped 2016-07-03 12:14:45 +02:00
Alexander Tkachev
49caaf77a1 GUI: Add ScrollContainer 2016-07-03 12:10:56 +02:00
Alexander Tkachev
08727857bc GUI: Use boss's x/y/w/h instead of clippingArea 2016-07-03 12:10:26 +02:00
Eugene Sandulenko
b590cc2d8f GUI: Cleanup class initialization 2016-06-01 13:16:12 +02:00
Eugene Sandulenko
b46bb55444 Merge pull request #722 from Abde-/master
GUI: Redraw Widget when setAlign() called
2016-05-16 10:09:09 +02:00
Ori Avtalion
e30a94e6ff GUI: Remove 'sticky button' feature
This feature made pressed buttons wait a few moments before returning to
an unpressed state. It was half-implemented, and caused several visual
bugs. Fixes #7083.
2016-04-14 18:37:12 +03:00
Ori Avtalion
92b7a86e1f GUI: Remove highlighting when button widget is pressed
Without this, buttons would stay highlighted after being un-pressed.
Fixes #7094.
2016-04-13 13:21:27 +03:00
Eugene Sandulenko
3c4ccfc52c GUI: Enhanced StaticTextWidget with font style 2016-03-30 11:09:32 +02:00
Ori Avtalion
031e062252 GUI: Improve handling of button presses while moving the cursor
Keep track of where a mouse press started when deciding how mouse-over
and mouse-up should behave.

This handles the following situations:

1) If a mouse press starts outside a button (e.g. the UI background),
mouse-up inside the button has no effect. Previously, it triggered a
button click.
2) If a mouse press starts inside a button, the cursor moves outside of
its region, then back inside, the button will show as pressed.
Previously, it showed as highlighted instead of pressed.
2016-03-27 23:29:37 +03:00
Abdeselam El-Haman
e55ec6c6ca GUI: Widget: redraw when setAlign() called 2016-03-25 02:34:35 +01:00
Johannes Schickel
f5dfe6725a GUI: Make GPL headers consistent in themselves. 2014-02-18 02:39:35 +01:00
Thierry Crozat
f125dce608 GUI: Initialise _hotkey in ButtonWidget constructor
One of the two ButtonWidget constructor did not initialise _hotkey
when given a non-null value. This caused valgrind to report an
access to uninitialised variable in Dialog::handleKeyDown().
2013-08-10 23:26:53 +01:00
Johannes Schickel
b1bd9322a1 GUI: Take advantage of Surface::getPixels. 2013-08-03 04:02:50 +02:00
Johannes Schickel
103e926c07 GUI: Prefer getBasePtr instead of direct Surface::pixels access. 2013-08-03 04:02:48 +02:00
Torbjörn Andersson
85beaf6fed GUI: Change value by one on mouse wheel, not by one pixel
On file-grained sliders, changing the value by one pixel was
unpredictable because it wouldn't change by the same amount every
time. (And of course, some values were not possible to set.)

On course-grained sliders, changing the value by one pixel would
sometimes not change it at all, causing the slider to seem stuck.

Now the slider can be set to any value.
2012-12-27 10:13:48 +01:00
Johannes Schickel
c2971374cd Merge pull request #257 from lordhoto/graphics-conversion
Extend crossBlit for abitrary (in-place) conversions and add a in-place conversion to Surface
2012-10-08 14:18:33 -07:00
Johannes Schickel
89abab97e3 JANITORIAL: Remove trailing whitespaces.
Powered by:
git ls-files "*.cpp" "*.h" "*.m" "*.mm" | xargs sed -i -e 's/[ \t]*$//'
2012-09-26 04:17:55 +02:00
Johannes Schickel
a1e56adad8 GUI: Use in-place Surface conversion in widget code. 2012-08-28 02:28:17 +02:00
Johannes Schickel
90eb773c5d GUI: Implement saving in the grid based save/load chooser. 2012-07-24 23:23:06 +02:00
Johannes Schickel
0cf00ddfe2 GUI: Make container widget a bit more container like.
Now it is possible to add sub widgets to a ContainerWidget and allow for these
to get events too.
2012-07-09 02:18:22 +02:00
Johannes Schickel
c1426f783d GUI: Use a black rect when no thumbnail is available in the thumbnail load chooser. 2012-06-29 16:16:28 +02:00
Johannes Schickel
cebbc11dac GUI: Allow Surfaces with abitrary RGB pixel formats to be used in PicButtonWidget and GraphicsWidget.
Only 1Bpp aka paletted surfaces are not supported.
2012-06-13 04:48:34 +02:00
Johannes Schickel
13f9349457 GUI: Take advantage of Surface::fillRect in GraphicsWidget::setGfx. 2012-06-12 04:18:59 +02:00
Oleksiy Kurochko
97065c95e6 GUI: Fix bug with button pressed state 2012-05-07 09:54:32 +03:00
Oleksiy Kurochko
e6c317a922 GUI: Implemented pressed state for buttons 2012-05-03 19:32:08 +03:00
Johannes Schickel
f41bc8bd98 GUI: Slight formatting fix. 2012-01-29 21:17:01 +01:00
Tarek Soliman
be0f8407b6 GUI: Handle adding clear buttons that don't exist in layouts
The buttons in the keymapper are dynamically generated and don't exist in
the layout; They have no name.
2011-12-13 08:37:18 -06:00
Tarek Soliman
c6e001a1f5 GUI: Move addClearButton() from options.cpp to widget.cpp
This is so it can be used outside options.cpp
2011-12-13 08:36:41 -06:00
Eugene Sandulenko
b0fe2bbaf9 GUI: Made PicButtonWidget derivative of ButtonWidget 2011-10-25 14:56:04 +01:00
Eugene Sandulenko
9e0c1a38e1 GUI: Consistent behavior of ButtonWidget::setLabel() 2011-08-06 11:30:58 +01:00
Max Horn
333be9c072 GUI: Replace some s(n)printf uses by Common::String::format 2011-06-02 00:07:18 +02:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Johannes Schickel
71bdb86e02 Merge pull request #16 "Add a PixelFormat to Graphics::Surface.".
For further discussion check here:
https://github.com/scummvm/scummvm/pull/16

Conflicts:
	graphics/png.cpp
2011-05-01 16:54:45 +02:00
Ori Avtalion
9414d7a6e2 JANITORIAL: Reduce header dependencies in shared code
Some backends may break as I only compiled SDL
2011-04-28 15:08:58 +03:00