This gives GUI2 textboxes (and password boxes since they are a subclass)
a simple hover effect by extending the canvas definitions for the widget
accordingly.
This extends to a few other button labels used for replay control. While
checking if commit 46dbbc06c9 was fit for
backporting to 1.14 I found out that "Play" was already in use
exclusively for one of the replay control buttons (which means, no, it
can't be backported). This makes the disambiguation markers absolutely
necessary.
To give a more practical example of why this is a big deal, in Spanish,
"Play" would be translated as "Jugar" in the context of the Campaigns
menu, and "Reproducir" in the context of a replay (or movie). The
Spanish translation in fact already uses the latter in both 1.14 and
master.
[ci skip]
I can see this dialog running out of vertical space on my Wine
configuration and winding up a victim of the dreaded Dialog-Wide
Scrollbar Syndrome.
[ci skip]
* Return paths from fs API in the native format, not the generic
format. The generic format looks wholly out of place on Windows.
* Move the versions selector to the row with the dialog caption and
Search box as per d53ca602b8.
* Relabel options to make the purpose of the combobox clearer even
without the tooltip.
* Fix markup not being taken into account for the combobox option
labels, and protect against potential markup characters in paths
(shouldn't happen on Windows but it can happen on POSIX platforms).
Credit to @shikadiqueen for the idea. This fixes potential crashes if the padding can't fit on certain resolutions.
Also keeps the vertical spread consistent between resolutions (no more < 800 height handling).
We're going to be using NN scaling for the map, and that's already handled automatically
by SDL (and in the future, OGL). We don't need these settings for surface SCALED_TO_ZOOM
and SCALED_TO_HEX scaling. In any case, if we want to scale a surface to zoom or hex, it
will almost certainly be for map rendering (such scaling methods don't make sense in the
UI, for example), so just defaulting to NN is simplest.
This change drops the option to use Linear or xBRZ scaling for map zooming. This was already
the practical case due to me converting map rendering to use textures. NN was used for all
zoom levels, and it's fast and looks good.
Several dialogs have Search boxes accompanying a central element, with
the boxes taking up a whole row of their own. For both aesthetic and
space allocation purposes it turns out to be more convenient to relocate
these boxes to the top right corner of the dialog to share room with the
dialog's caption.
This only applies to the Campaigns menu, Load Game, Create Unit, and
Recall Unit dialogs. The Recruit Unit dialog, interestingly enough,
already used this approach (an accident?).
Chat Log and the Add-ons Manager *could*, in theory, use this same
change, but they are a bit trickier because of the additional controls
attached to the Search box -- especially so in the Add-ons Manager's
case.
[ci skip]
If a save directory from another version is found, a drop-down list of
directories is added below the filter box in the Load Game dialog.
Refactor save_index_class to allow instances for other directories.
Design idea: all new saves go in to the main save directory. Games can be
loaded from other directories, but those directories are treated as read-only.
When building an index for other directories, the index is kept in memory and
not written to disk - this results in some noticeable lag in the UI when
opening the other versions' directories, but not the usual save dir.
Remove unnecessary blank lines and debugging comments
- Adds a preferences entry in the multiplayer/alerts menu so sounds and desktop notifications can be toggled.
Reformat a few points for consistency
Have desktop notification show name and scenario of new game
Have desktop notification show name and scenario of new game
Update desktop notifications to use VGETTEXT for translations
(cherry picked from commit af71dbf1b1)
(cherry picked from commit a2d9943286)
Tooltip now mentions that the game must be restarted for the setting to
take effect. Also removed "to 100%" and "at high resolutions" as these
statements are not accurate.
Make the contents of the table cell the same regardless of whether
actual<expected or actual>expected. For example, 2 hits out of
4 strikes at 70% now shows "8.4%, 26.5%, 65.1%", which are the
probabilities of hitting less than twice, exactly twice, and more than
twice, respectively.
Color has been temporarily removed, will be restored in the next commit.