aboutsummaryrefslogtreecommitdiff
path: root/gui/widget.h
AgeCommit message (Collapse)Author
2020-01-04GUI: Introduce dynamic layoutsBastien Bouclet
Prior to this change, a GUI layout was only affected by the screen size. Now, a layout can additionally be influenced by the GUI dialog and widgets that uses it. This capability is leveraged to implement the following features: * Layout elements that are not bound to a GUI widget do not take space. This means that dialogs where the widgets shown depend on for example a feature being enabled at configure time no longer have blank spaces. * Widgets can define a minimal required size for their contents not to be cut. For now this is only used for buttons so their width is always sufficient for their caption not to be cut. This mechanism could be applied to other widget types in the future.
2019-11-24GUI: Add DropdownButtonWidget and use it in the launcher for mass addBastien Bouclet
DropdownButtonWidget is a button split in two parts vertically. Clicking the left part triggers a default action. Clicking the right part shows a list of other actions the user can choose from. Using this widget on the launcher lets 'Mass add' be a secondary action of the 'Add' button, removing the necessity of pressing the shift key to access the feature.
2019-09-01TTS: Add text to speech to the GUI.Jaromir Wysoglad
2019-09-01TTS: Add part of linux TTSJaromir Wysoglad
2018-04-19GUI: Unify clip and non-clip draw callsBastien Bouclet
2018-04-19GUI: Remove alpha bitmap supportBastien Bouclet
It was never used since its introduction 4 years ago It was not updated to work with the clipping rect
2018-01-27GUI: Implement dirty-checking for widget redrawsBastien Bouclet
2017-04-06GUI: Add method to know if a widget contains a given widgetThierry Crozat
2016-08-24GUI: Added support for alphabitmaps in picbuttonsEugene Sandulenko
2016-08-24GUI: Added possibility to specify scale mode for AlphaBitmapsEugene Sandulenko
2016-08-24GUI: Implemented possibility to use alphabitmaps in GraphicsWidgetEugene Sandulenko
2016-08-24GUI: Added possibility to specify several state images for PicButtonWidgetEugene Sandulenko
2016-08-24GUI: Add mode to skip drawing of button for PicButtonEugene Sandulenko
2016-07-03GUI: Add checks in Widget::getBossClipRect()Alexander Tkachev
Prints a warning if clipping area is invalid and fixes it.
2016-07-03GUI: Make PopUpWidget clipAlexander Tkachev
2016-07-03GUI: Add ScrollContainerAlexander Tkachev
2016-04-14GUI: Remove 'sticky button' featureOri Avtalion
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-03-30GUI: Enhanced StaticTextWidget with font styleEugene Sandulenko
2016-03-27GUI: Improve handling of button presses while moving the cursorOri Avtalion
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.
2014-02-18GUI: Make GPL headers consistent in themselves.Johannes Schickel
2012-08-28GUI: Use in-place Surface conversion in widget code.Johannes Schickel
2012-07-09GUI: Make container widget a bit more container like.Johannes Schickel
Now it is possible to add sub widgets to a ContainerWidget and allow for these to get events too.
2012-06-29GUI: Use a black rect when no thumbnail is available in the thumbnail load ↵Johannes Schickel
chooser.
2012-06-20GUI: Allow tooltips to be changed after widget creation.Johannes Schickel
2012-06-13GUI: Allow Surfaces with abitrary RGB pixel formats to be used in ↵Johannes Schickel
PicButtonWidget and GraphicsWidget. Only 1Bpp aka paletted surfaces are not supported.
2012-05-03GUI: Implemented pressed state for buttonsOleksiy Kurochko
2011-12-13GUI: Handle adding clear buttons that don't exist in layoutsTarek Soliman
The buttons in the keymapper are dynamically generated and don't exist in the layout; They have no name.
2011-12-13GUI: Move addClearButton() from options.cpp to widget.cppTarek Soliman
This is so it can be used outside options.cpp
2011-10-25GUI: Made PicButtonWidget derivative of ButtonWidgetEugene Sandulenko
2011-08-06GUI: Consistent behavior of ButtonWidget::setLabel()Eugene Sandulenko
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-04-28JANITORIAL: Reduce header dependencies in shared codeOri Avtalion
Some backends may break as I only compiled SDL
2011-01-20GUI: Fix Memory Leak from PicButtonWidget _gfx Member.David Turner
This widget is only currently used by Hugo. svn-id: r55364
2011-01-03GUI: Implement PicButtonWidgetEugene Sandulenko
It is a button with picture intead of text. To be used by Hugo engine svn-id: r55099
2010-07-23GUI: Fix tooltip drawingEugene Sandulenko
With help of Tanoku tooltips were switched from widgets to dialogs which helped to fix nasty bug with background not being restored. Although it is basically a hack around inconsistent font backbuffering in our GUI code, for the time being it is feasible. The patch was extended with way to specify tooltip background in the theme file. svn-id: r51217
2010-07-21Strip trailing whitespaces in our common code base.Johannes Schickel
svn-id: r51094
2010-06-15GUI: Implement tooltips. FR #2821513.Eugene Sandulenko
FR #2821513: "GUI: add tooltips". Added tooltips for Add Game button, clear field buttons and couple other. Current problem: Only first call correctly restores text. I could not find where restore information gets lost. svn-id: r49774
2010-06-15GUI: Implement radiobuttons.Eugene Sandulenko
Implement radiobuttons in GUI. Also closes FR #2821529: "GUI: volume and subtitles speed sliders". Subtitle toggle button is replaced by three radiobuttons grouped by a single group. Updated translations and themes. svn-id: r49767
2010-06-15GUI: Added in-place hotkeys for widgets.Eugene Sandulenko
Now it is possible to specify hotkeys in place for ButtonWidget and CheckboxWidget (the only widgets with hotkeys now). Use de-facto standard with putting hotkey between tildes (~). Like '~O~pen'. The tildes gets stripped before after hotkey is extracted. This is done for giving translators possibility to specify their own hotkeys. Old hotkeys defined at widget instance creation are left for leaving possibility to specify non-printable hotkeys such as Common::ASCII_ESCAPE. Translation files were updated respectively. svn-id: r49766
2010-03-11cleanupMax Horn
svn-id: r48240
2009-05-24Strip trailing whitespaces in the whole code base.Johannes Schickel
svn-id: r40867
2009-01-02Got rid of GuiManager::clearDragWidget instead handle it via a new widget ↵Johannes Schickel
flag WIDGET_IGNORE_DRAG. svn-id: r35662
2008-12-27GUI: Added Widget::setVisible convenience wrapperMax Horn
svn-id: r35572
2008-12-24Added valueToBarWidth to calculate SliderWidget's bar width like it was done ↵Jordi Vilalta Prat
before (as discussed with LordHoto) svn-id: r35519
2008-12-23Modify the SliderWidget value by using the mouse wheelJordi Vilalta Prat
svn-id: r35513
2008-11-12Renamed Graphics::TextAlignment -> Graphics::TextAlign and merged it with ↵Max Horn
GUI::ThemeEngine::TextAlignVertical svn-id: r35023
2008-11-12GUI: Got rid of the WidgetSize stuffMax Horn
svn-id: r35022
2008-11-12GUI: Got rid of most 'built-in' variablesMax Horn
svn-id: r35018
2008-11-10Merged GUI::Theme and Gui::ThemeEngine into the same class, GUI::ThemeEngine.Vicent Marti
Massive cleanup. svn-id: r34983
2008-11-08Pushing down some header depsMax Horn
svn-id: r34936