Commit graph

5067 commits

Author SHA1 Message Date
athrxx d7e8a54756 AUDIO/GUI: add Mac sound option 2024-05-30 20:10:51 +02:00
sluicebox 697840c372 GUI: Improve save/load list input handling
- Selecting a list item with the keyboard no longer automatically enters
  edit mode; this makes keyboard navigation on the save list possible
  because subsequent keys are no longer trapped by the text field.
- Clicking a selected item that's not in edit mode will now correctly
  cause it to enter edit mode, instead of doing nothing.
- "Untitled saved game" edit mode initialization is no longer skipped
  when entering edit mode by pressing the Enter key.
- Deleting an item now leaves the slot selected so that the selection
  can be changed with the keyboard.
2024-05-22 21:47:07 -04:00
sluicebox 4308849811 GUI: Add ListWidget commands: single click and edit start
These commands allow greater control over editable ListWidgets, although
the save dialog's list is currently the only one.

kListItemSingleClickedCmd allows clients to respond to selection changes
based on the method used (mouse vs keyboard) and allows responding to
clicking on an already selected item. In the next commit, this will fix
multiple save issues.

kListItemEditModeStartedCmd allows clients to initialize edit mode
consistently. The save dialog has been doing custom initialization after
calling startEditMode, but this is incorrect because ListWidget calls
startEditMode in response to Enter, so the initialization is skipped.
2024-05-22 21:47:07 -04:00
sluicebox 7fb6052aa7 GUI: Allow delete/backspace on editable ListWidgets
Fixes the delete/backspace hotkey on the save list dialog; it was only
working on the load list even though they both have the same delete
functionality.

This is a check from 17 years ago that I believe was confused and had
no effect at the time. I believe the intent was to ignore these keys
while in edit mode, which makes sense, but instead this code ignored
these keys on all editable lists when *not* in edit mode. This wasn't
noticeable because there's only one editable ListWidget in ScummVM,
the save list, and it didn't listen for kListItemRemovalRequestCmd
until three years ago: aac1eb12bf
2024-05-22 21:47:07 -04:00
sluicebox e83073df0a GUI: Disable quick select on save/load list
Fixes alphanumeric keys causing unpredictable item selection.
Quick select is only for sorted lists.
2024-05-22 21:47:07 -04:00
sluicebox 425ee5e8d7 GUI: Fix saveload display of selected empty items
Fixes minor bug introduced in 829c600a02

In the saveload list dialog, selecting an empty slot before the last
save stopped coloring most of the row. Empty slots after the last save
continued to display correctly. Now both code blocks are consistent and
the selected row is always fully colored.
2024-05-22 21:46:24 -04:00
Eugene Sandulenko 6a753db237
FONTS: Replaced Material Icons with a bigger font
The file was renamed from "MaterialSymbolsSharp[FILL,GRAD,opsz,wght].ttf"

The upstream version taken is ace1af08508a6562ef05055a606cf44ea583ce3b
from May 17, 2024
2024-05-21 22:38:44 +02:00
Eugene Sandulenko aa3d6f3771
FONTS: Replaced OpenFontIcons.ttf with MaterialIcons-Regular.ttf
OpenFontIcons.ttf appeared to be badly broken, all SVG contain
strokes which does not render well on non-SVG rasters.
2024-05-21 21:59:46 +02:00
Hubert Maier 2df817fa0e JANITORIAL: Fix layed typo in widget.h 2024-05-18 13:52:31 +02:00
Hubert Maier fce28ad66b JANITORIAL: Fix didnt typo in predictivedialog.cpp 2024-05-18 13:52:31 +02:00
Hubert Maier 8182ce82d3 JANITORIAL: Fix pubisher typo in launcher.cpp 2024-05-18 13:52:31 +02:00
Hubert Maier bcfacb98e8 JANITORIAL: Fix avaliable typo in editgamedialog.cpp 2024-05-18 13:52:31 +02:00
Hubert Maier 2b102beb6c JANITORIAL: Fix choosen typo in dialog.cpp 2024-05-18 13:52:31 +02:00
sluicebox 66d1f6d56a GUI: Make EditableWidget::caretVisualPos const 2024-05-13 09:04:07 -07:00
sluicebox d4c41f6214 GUI: Fix ListWidget drawing caret on disabled items
When in edit mode on the save dialog, clicking on a disabled item, such
as the Autosave slot 0, would draw the stale caret on the disabled item
at the x position of the previous item.
2024-05-13 09:04:07 -07:00
Eugene Sandulenko 6fc5c46539
GUI: Disable the super-slow TTF font rendering in RichText
It requires proper font caching
2024-05-12 15:26:33 +02:00
Eugene Sandulenko 5bd7b57282
GRAPHICS: MACGUI: Switch TTFMap to saner data structure not requiring global constructor 2024-05-12 15:23:30 +02:00
Little Cat 2e2e2c41be SCUMM HE: GUI: Add map generator dialog and bump theme version. 2024-05-12 15:08:27 +02:00
sluicebox 6ec7d5b811 GUI: Move Mass Add list code into MassAddListWidget
Fixes list colors in other dialogs that use ListWidget

See: e9f2468df9
2024-05-10 12:16:11 +02:00
Le Philousophe 868b0d3c00 GUI: Initialize _path while constructing PathWidget
Without this, if PathWidget is never set, the getLabel function returns
an empty Path.
Thanks to athrxx for finding this and proposing a fix.
2024-05-05 15:48:26 +02:00
InariInDream e70ea93149 GRAPHICS: MACGUI: Add support for TTF font maps 2024-05-04 00:14:31 +02:00
AndywinXp 69b9f8e231 GUI: Implement handleMouseUp for Grid layout
This makes it so that games are started on the release
of the left mouse button after a double click, instead of
during it being pressed.
This fixes the left mouse button release leaking into the
launched game as actual engine input.
2024-05-03 23:53:15 +02:00
scemino a08689672f DISTS: Add OpenFontIcons.ttf + fonts.dat, fonts-cjk.dat regenerated 2024-05-02 22:06:25 +02:00
Torbjörn Andersson a46913545f GUI: Keep caret visible in editable widgets while moving it
This was actually the intention all along. But if a redraw of the widget
itself was triggered at the same time, it would draw over the caret,
effectively erasing it. To get around this, the caret is now also drawn
as part of the widget, when necessary.
2024-04-25 00:57:04 +02:00
Eugene Sandulenko 65184d8aa2
CREDITS: Added Linus as Finnish translator 2024-04-24 13:30:29 +02:00
Eugene Sandulenko 8c33d23e9c
GUI: Make sure we reload bitmaps on changed scale
Fixes GMM in TWP and other OpenGL-based engines
2024-04-23 12:36:38 +02:00
Eugene Sandulenko 4b51ee1f98
GUI: Remplace [?] with "Help"
It looks like the users do not even pay attention or have no understanding
what does "?" mean, thus, putting it into words.

Next step is to make the button jumping with animation.
2024-04-21 22:31:07 +02:00
scemino 00b8ccd19b CREDITS: Add myself to TWP credits 2024-04-12 20:58:19 +02:00
HectorRecloud e9f2468df9 GUI: Skip games during Mass Add
Use [x] for selected games, as well as enabled list items.

Co-Authored-By: Filippos Karapetis <bluegr@gmail.com>
2024-04-07 14:06:33 +02:00
Matthew Jimenez 83aa8dc291 GRAPHICS: Remove palette start from surface convertToInPlace.
The palette start value was always zero, and was not properly multiplied by three when used in the function
2024-03-31 23:16:59 +03:00
D G Turner 4af395ebb9 GUI: Jamnitorial Cleanup of Code Formatting
No functional change.
2024-03-30 17:26:24 +00:00
D G Turner e52f32cdd2 GUI: Fix Signed vs. Unsigned GCC Compiler Warnings 2024-03-30 17:17:04 +00:00
kunxl-gg da3c3d097c GUI: Fix selector position after removing a game.
Signed-off-by: kunxl-gg <tiwari.25@iitj.ac.in>

Added algorithm for feature

Signed-off-by: kunxl-gg <tiwari.25@iitj.ac.in>

Fix merge conflicts

Signed-off-by: kunxl-gg <tiwari.25@iitj.ac.in>

Added conditional statement

Signed-off-by: kunxl-gg <tiwari.25@iitj.ac.in>

Removed equality sign in getNextPos

Signed-off-by: kunxl-gg <tiwari.25@iitj.ac.in>

Fix lint issues

Signed-off-by: kunxl-gg <tiwari.25@iitj.ac.in>

Fix redundant variables

Signed-off-by: kunxl-gg <tiwari.25@iitj.ac.in>

Removed redundant include

Signed-off-by: kunxl-gg <tiwari.25@iitj.ac.in>

Fix lint issues

Signed-off-by: kunxl-gg <tiwari.25@iitj.ac.in>

Fix lint issues

Signed-off-by: kunxl-gg <tiwari.25@iitj.ac.in>
2024-03-28 13:47:02 +01:00
Matthew Jimenez 9cb227e000 GUI: Replace byte arrays with Palette class in image album dialog 2024-03-14 08:42:07 +02:00
Matthew Jimenez 5219c99400 GRAPHICS: Move PaletteManager definition to a separate header 2024-03-12 12:24:00 +02:00
Lars Sundström 3c36c1fbc3 GUI: Put backend options tab elements into a ScrollContainer
The backend options tab is for backend specific options. The backends
supporting it implements the function buildBackendOptionsWidget which
defines the options elements and layout.

The backend options tab layout may differ depending on the current
domain. The options in the "Global options" tab applies to all games
while the options in the "Game options" tab only applies to a specific
game. The options in the "Global config" options tab can be set during
game play. Some options, e.g. graphics cannot be changed while running
the game while backend options can.

The first version of the backend options tab was a non-scrollable
container. The "Game options" tab includes an "Override Global options
checkbox" which, when checked, enables the options defined by the
backend.

The number of iOS7 backend options increased rapidly which caused some
options to fall outside the tab container on screens with limited
space in height. An attempt to fix that was made by the same creator
of this commit in the commit: 8db736f155

The attempt was not perfect in any way, else this commit wouldn't
exist... The "Override Global options checkbox" on the "Game options"
tab became misplaced. It also required the backend to add padding
to GUI elements it shouldn't know of.

To fix this properly put the backend options tab in a single Scroll-
Container. This way the "Override Global options checkbox" can be
properly placed related to the backend options widgets. All backend
options can also be accessed in every backend options tab layout,
Global options, Game options and Global config thanks to the scrollbar
automatically provided by the ScrollContainer.

Update all themes with the new layout.
2024-03-11 01:03:37 +01:00
Le Philousophe 4591a74b82 GUI: Don't display save and extra path when it's the default one 2024-03-02 12:59:03 +01:00
Christian Kündig 82d0a4b06c EMSCRIPTEN: Load icons directly (not from an archive) 2024-02-27 17:07:13 +01:00
Darkhood148 1acc434bf5 GUI: Improve algorithm of drag-selection process in gui/console.cpp
Redrawing only the affected lines instead of the whole dialog box
2024-02-11 16:35:52 +01:00
Darkhood148 cc214d0f4d GUI: Implement auto scrolling when drag-selecting text 2024-02-11 16:35:52 +01:00
Darkhood148 2f552e423c GUI: Add feature to copy text from console 2024-02-11 16:35:52 +01:00
Torbjörn Andersson e14e571ec1 GUI: Hopefully fix download dialog regression
I don't know how to test this, but appendComponent() returns a new path,
so use that instead of assuming it added things to the existing path. I
discussed this with lephilousophe before committing.
2024-02-10 10:43:04 +01:00
Torbjörn Andersson a1c8db3201 JANITORIAL: Clean up some whitespace and double semicolons 2024-01-29 19:32:00 +01:00
Eugene Sandulenko 6db11ef605
GUI: Allow manual setting of custom GUI scale values
We keep this value and do not override it
2024-01-20 20:56:53 +01:00
Eugene Sandulenko c1aca01197
GUI: Add percentage values to the gui scale values 2024-01-20 20:34:45 +01:00
Eugene Sandulenko 10a7b42587
GUI: Added more GUI scale values
Should we add a slider perhaps?
2024-01-20 20:15:59 +01:00
Cameron Cawley f3fbd2477c GRAPHICS: Allow specifying separate xdpi and ydpi values in loadTTFFont 2024-01-08 23:41:50 +01:00
elasota 6a1909a162 GUI: Fix garbled browser last path on Windows 2024-01-08 17:18:40 +02:00
Cameron Cawley f63ed4b9c3 COMMON: Fix translation of error messages 2024-01-02 01:00:54 +02:00
Eugene Sandulenko 8722701a94
ALL: Set copyright year to 2024 2024-01-01 00:04:27 +01:00