aboutsummaryrefslogtreecommitdiff
path: root/gui/widgets/list.cpp
AgeCommit message (Collapse)Author
2020-01-04GUI: Use a dialog theme layout for the unknown game dialogBastien Bouclet
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-10-03GUI: Add Missing Switch Default CasesD G Turner
These are flagged by GCC if -Wswitch-default is enabled.
2019-09-02GUI: Fix Missing Field Initializer in List WidgetD G Turner
This field was introduced by the TTS code changes, but only one of the constructors was modified to set the default value.
2019-09-01TTS: Fix reading of list widgetsJaromir Wysoglad
The TTS read items from list widgets even when the mouse was outside the widget
2019-09-01TTS: Add text to speech to the GUI.Jaromir Wysoglad
2019-08-03GUI: Fix scrollbarsAlexander Tkachev
- removed +1px in ListWidget, added in lordhoto's 2007 commit 68eb28a (aka r29971 in svn) `Fix for bug #1670082 "GUI: Modern theme gfx glitch in launcher".`, because it made clip this last line of scrollbar in all themes, which doesn't look good. In 2007 theme was written in .ini, which is not the case now. I don't see any glitches after removing this "fix"; - fixed how scrollbar top and bottom scroll buttons are drawn in ThemeEngine::drawScrollbar: there were these weird magic numbers, but in reality extra space that buttons should occupy is hardcoded in scrollbar.cpp (ScrollBarWidget) and is just +1px.
2018-04-19GUI: Unify clip and non-clip draw callsBastien Bouclet
2018-01-27GUI: Fix the caret drawing over the scroll bar in the list widgetBastien Bouclet
Also remove the unused linesWidth variable and fix the hlLeftPadding and hlRightPadding widget attributes to actually work. There are still issues remaining with the caret in the list widget due to the ellipsis being used to shorten long text. Ellipsis is accounted for when drawing the text but not when computing the caret position.
2018-01-27GUI: Remove Dialog::markAsDirty to expose full GUI redrawsBastien Bouclet
2018-01-27GUI: Implement dirty-checking for widget redrawsBastien Bouclet
2017-08-06GUI: Mark some fall-through cases as intentionalBastien Bouclet
Comments explain how the num lock handling works before the fall-through cases.
2017-04-06GUI: Add method to know if a widget contains a given widgetThierry Crozat
2016-07-03GUI: Use clipping everywhereAlexander Tkachev
2014-02-18GUI: Make GPL headers consistent in themselves.Johannes Schickel
2013-11-24GUI: Fix ListWidget::getEditRect's returned height.Johannes Schickel
2013-09-30GUI: Fix missing initializers for ListWidget. CID 1002259.D G Turner
2013-04-16GUI: Always try to show as many entries as possible in ListWidget.Johannes Schickel
In case there were less items in the list than on a page, it was possible that a "scrollTo" call scrolled items out of the view even though all could be displayed. This caused odd behavior in the load dialog in T7G. There the list contains 10 entries. In case the last one was loaded via the dialog, the next time it was brought up again it showed the 9th entry at the top of the view and effectively hiding all the others. It furthermore did not show the scroll bar because all entries would have fit onto one page. To prevent this odd behavior, a boundary check has been added to all places where the scroll position is set. This has been taken from "scrollToCurrent" which already tried to prevent this. This fixes the second issue described in bug #3610960 "T7G - savegame glitches".
2012-12-13COMMON: Add wrapper for isprint.Johannes Schickel
This is done in the spirit of 658080deeda79d20ea40643569fbcb072573e7cf.
2011-10-28GUI: Change scrollbar repeat handling from a timer proc to handleTickle.Johannes Schickel
This should be less heavy on timer usage and makes sure no race conditions will occur.
2011-06-02GUI: Replace some s(n)printf uses by Common::String::formatMax Horn
2011-05-25ALL: initialise -> initializeMatthew Hoops
2011-05-17GUI: For a list entry in edit mode, move caret to endMax Horn
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
2010-11-16GUI: Commit some changes missing in my previous commit (oops)Max Horn
svn-id: r54266
2010-11-16GUI: Move major widgets to new directory gui/widgetsMax Horn
Also renamed the source/header files, now they are more closely aligned to how we rename most other source files svn-id: r54264