Leon Styhre
be903c0a86
Changed a value for the itemTransitions property for the carousel and grid components.
...
Also changed the position of a grid property and set the minimum columns value to 1.
2022-11-13 23:04:48 +01:00
Leon Styhre
9013faf445
Added proper item spacing, item offsets and element boundary clipping to GridComponent.
2022-11-13 22:31:41 +01:00
Leon Styhre
75ebd839b9
Placed the primary elements first in the ThemeData element map.
2022-11-13 19:59:26 +01:00
Leon Styhre
48111ce5e4
Added basic GridComponent functionality and integration.
2022-11-12 14:08:53 +01:00
Leon Styhre
b4d2babf01
Added a selectedSecondaryColor property to TextListComponent.
2022-11-03 23:24:11 +01:00
Leon Styhre
412a19275d
Added two letterCaseCollections and letterCaseGroupedCollections properties to TextListComponent and CarouselComponent.
...
Also refactored the letterCase logic overall in these two components.
2022-11-03 12:31:42 +01:00
Leon Styhre
7c02db291e
Fixed a minor log formatting issue in ThemeData.
2022-11-01 23:11:06 +01:00
Leon Styhre
9584c1bcc7
Added support for placing aspectRatio tags inside variant tags and variables and colorScheme tags inside aspectRatio tags.
2022-11-01 17:13:37 +01:00
Leon Styhre
98d9ce42d2
Added support for automatic theme aspect ratio detection.
2022-11-01 17:08:51 +01:00
Leon Styhre
0d7468e9b4
Moved the color scheme parsing even earlier to prevent potential issues.
2022-10-31 21:50:54 +01:00
Leon Styhre
f1bd530963
Fixed an issue where the color scheme configuration was parsed after the variant configuration.
2022-10-31 21:02:53 +01:00
Leon Styhre
4e84707e3a
Changed the order of two theme properties to improve consistency.
2022-10-31 20:12:42 +01:00
Leon Styhre
8df54bd80e
Added support for color schemes.
2022-10-31 19:32:13 +01:00
Leon Styhre
c870664615
Missing theme files defined using variables now only trigger debug messages instead of errors or warnings.
...
Also added two DebugSkipMissingThemeFiles and DebugSkipMissingThemeFilesCustomCollections settings.
2022-10-29 13:04:00 +02:00
Leon Styhre
27936131f3
Added a special 'all' shortcut variant.
2022-10-28 21:08:44 +02:00
Leon Styhre
b1a2b3f5ca
Added support for overriding variables and to define them inside the variants tags.
2022-10-28 21:06:01 +02:00
Leon Styhre
103e59b54d
Fixed an issue where mutually exclusive system variables could lead to theme loading errors.
2022-10-17 22:21:52 +02:00
Leon Styhre
45fa3d2c37
Added a pillarboxThreshold property to control these values for the video element.
2022-10-16 16:40:52 +02:00
Leon Styhre
06fd76abc3
Added a fadeAbovePrimary property to control whether elements above the system view carousel and textlist should be rendered during fade transitions.
2022-09-26 20:02:31 +02:00
Leon Styhre
ac5b3b15e0
Added a new 'itemAxisHorizontal' property to the carousel.
...
Also fixed a clipping issue when the vertical origin was not set to zero and cleaned up some code.
2022-09-20 17:05:24 +02:00
Leon Styhre
74a2256037
Added the properties 'itemsBeforeCenter' and 'itemsAfterCenter' to define entries for carousels of the wheel type.
2022-09-19 18:51:05 +02:00
Leon Styhre
bea6889926
Added carousel theme support for setting item transitions to 'slide' or 'instant'.
2022-09-17 12:42:27 +02:00
Leon Styhre
d203f4be27
Changed the location for a theme property.
2022-09-16 19:43:36 +02:00
Leon Styhre
7e892a7855
Changed the order of some theme properties.
2022-09-16 18:51:36 +02:00
Leon Styhre
3a41aa61c5
Fixed an issue where a legacy theme workaround for incorrect element types did not work as expected.
...
Also cleaned up a log warning message related to this.
2022-09-15 17:29:34 +02:00
Leon Styhre
8cc3d1aac5
Added some more workarounds for legacy theme sets with incorrectly defined element types.
2022-09-09 18:03:58 +02:00
Leon Styhre
406aecc6a9
Added two new properties tileHorizontalAlignment and tileVerticalAlignment to the image element.
2022-09-07 20:18:15 +02:00
Leon Styhre
b4b709b589
Added a tileSize property to the image element so that the size of each individual image in tiled textures can be defined.
2022-09-06 21:33:50 +02:00
Leon Styhre
3a9c7b92e3
Added support for arbitrary image aspect ratios to RatingComponent.
...
Also added an overlay property and fixed some potential crashes.
2022-09-01 17:40:29 +02:00
Leon Styhre
f61d0f1df8
Added a property to RatingComponent to set interpolation method (nearest or linear) when using raster images.
2022-08-28 20:45:04 +02:00
Leon Styhre
67488467c3
(Linux) The data installation directory is now excluded for themes and resources when built as an AppImage.
2022-08-20 11:30:15 +02:00
Leon Styhre
de5a642cf6
Added a metadataElement theme property to the image, video, animation and text element types to control fading and hiding of arbitrary elements.
2022-08-18 22:51:21 +02:00
Leon Styhre
e6ae806c31
Added an itemInterpolation theme property to control the interpolation method for carousel items.
2022-08-17 00:26:47 +02:00
Leon Styhre
b69706fc35
The currently loaded theme set name is now logged to to es_log.txt on startup, reload and theme change.
2022-08-14 20:24:26 +02:00
Leon Styhre
5699988767
Added a workaround for legacy theme sets where the md_releasedate and md_lastplayed element types have incorrectly been defined as text instead of datetime.
2022-08-14 14:46:56 +02:00
Leon Styhre
81268fb11c
(Windows) Changed many logging entries to use backslashes instead of forward slashes as directory separators.
2022-07-01 16:39:18 +02:00
Leon Styhre
c9eb9022db
A dummy theme set is now created if no theme sets were found on startup.
2022-06-11 18:35:44 +02:00
Leon Styhre
40bf018aaa
Changed theme loading into a populateThemeSets function and created a separate getter function.
...
Also removed a deprecated theme check in the game directory.
2022-06-11 18:34:53 +02:00
Leon Styhre
269e2e8202
Added a wheelHorizontalAlignment property for aligning the carousel within the overall element area.
2022-06-03 20:53:15 +02:00
Leon Styhre
1798b96cf8
Added reflections support to CarouselComponent.
2022-04-18 21:37:58 +02:00
Leon Styhre
fafca5c194
Added carousel theme support for setting the opacity for unfocused entries.
2022-04-17 13:08:28 +02:00
Leon Styhre
f463766497
Generalized the carousel property names and added support for setting media types for gamelist carousels.
2022-04-16 21:54:58 +02:00
Leon Styhre
7daf69092f
Added theme support for controlling the TextListComponent collection indicators.
2022-04-15 21:20:43 +02:00
Leon Styhre
254e271392
Added theme support for controlling the TextListComponent indicators.
2022-04-15 17:06:33 +02:00
Leon Styhre
d62bc17400
Renamed the default theme set from rbsimple-DE to slate-DE
2022-04-14 22:46:30 +02:00
Leon Styhre
30b02456c0
Added a folder badge including support for a folder link overlay.
2022-04-13 16:53:28 +02:00
Leon Styhre
cb8596ab8a
Prevented themes using the <resolution> tag from loading altogether.
2022-04-10 11:32:55 +02:00
Leon Styhre
3a8d19bad5
Added support for nested theme variables.
2022-04-10 11:24:15 +02:00
Leon Styhre
16955e5318
Fixed an issue where the theme sets were not always sorted correctly.
2022-04-09 15:57:37 +02:00
Leon Styhre
3eacb27c3b
Changed the helpsystem properties entrySpacing and iconTextSpacing to relative values.
...
Also reverted the helpsystem horizontal alignment functionality as it's not needed.
2022-03-20 19:07:52 +01:00
Leon Styhre
6f6f388257
Added RatingComponent support to the system view.
2022-03-18 22:16:53 +01:00
Leon Styhre
a115b3f941
Added alignment support and separate dimming of gamelist and system views to the help system.
2022-03-18 20:14:51 +01:00
Leon Styhre
5de2855d60
Added theme support for defining color saturation for the image, video and animation components.
2022-03-17 19:33:09 +01:00
Leon Styhre
b6e38dcf67
Fixed multiple issues in CarouselComponent.
2022-03-17 00:02:16 +01:00
Leon Styhre
978790956e
Removed Lottie animation support for legacy themes.
2022-03-05 21:16:33 +01:00
Leon Styhre
ed540359c5
Updated GIFAnimComponent to a fully working state.
2022-03-05 20:56:47 +01:00
Leon Styhre
32349dc9a6
Renamed LottieComponent to LottieAnimComponent.
2022-02-23 21:54:57 +01:00
Leon Styhre
e92af0548c
Added DateTimeComponent support to SystemView.
2022-02-20 15:49:32 +01:00
Leon Styhre
3795edb1b9
Removed the broken rotation support for video elements.
2022-02-20 15:03:31 +01:00
Leon Styhre
f803e23fd2
Added theme support for disabling audio playback for each defined video.
2022-02-19 21:45:31 +01:00
Leon Styhre
29514d4db9
Added video support to SystemView.
2022-02-19 21:22:46 +01:00
Leon Styhre
a9d1f6e307
Added support for setting the video fade-in time via the theme configuration.
2022-02-15 21:26:40 +01:00
Leon Styhre
4f019c3775
Added support for defining multiple imageType entries.
...
Also made some improvements to GameSelectorComponent and related logic.
2022-02-14 19:32:07 +01:00
Leon Styhre
cc8123f5a6
Added a GameSelectorComponent for displaying game media in SystemView.
2022-02-13 20:03:34 +01:00
Leon Styhre
31c5b200d1
Added support for using unsigned integers for theme properties.
2022-02-13 15:01:55 +01:00
Leon Styhre
027265da67
Added themeable opacity support for the help system.
2022-02-13 12:18:33 +01:00
Leon Styhre
1bca9e185e
Changed to the more specific imageType and systemdata theme properties.
...
Also made it possible to set the image interpolation method from the theme, and added clamping to the lineSpacing property.
2022-02-13 11:45:06 +01:00
Leon Styhre
f585f87497
Added support for setting component opacity from the theme configuration.
2022-02-12 17:38:55 +01:00
Leon Styhre
85cb10d71a
Changed some string::compare functions to == operators.
...
Also removed an unused theme property.
2022-02-11 18:39:16 +01:00
Leon Styhre
4eb763d816
Replaced the ambiguous alignment properties with specific horizontal and vertical properties.
2022-02-11 00:19:08 +01:00
Leon Styhre
28a3beb9ce
ScrollableContainer parameters are now themeable.
2022-02-10 20:02:56 +01:00
Leon Styhre
70eb937f85
Fixed a potential crash for legacy themes with broken configuration.
2022-02-09 23:12:12 +01:00
Leon Styhre
09bc9770f2
Changed the theme property forceUppercase to the more versatile letterCase property.
2022-02-09 22:06:34 +01:00
Leon Styhre
6db671de3d
Added support to TextComponent for lowercase and capitalized text conversions.
...
Also changed camelCase to capitalized and textStyle to letterCase in various places.
2022-02-09 20:44:22 +01:00
Leon Styhre
9856a3da1b
ThemeData now only prints debug messages for missing files set using variables.
2022-02-09 18:45:03 +01:00
Leon Styhre
69b9b587d6
Added support for text entries to CarouselComponent.
...
Also fixed some issues with the carousel wheels and removed an unused function in ThemeData.
2022-02-07 21:05:56 +01:00
Leon Styhre
061974eddf
Added UI labels to the theme aspect ratios.
2022-01-31 23:22:42 +01:00
Leon Styhre
d140804dad
Adjusted a few log warning messages in ThemeData.
2022-01-30 21:35:39 +01:00
Leon Styhre
1dd5e52760
Updated ThemeData to more strictly enforce the new theme engine format.
2022-01-30 21:13:49 +01:00
Leon Styhre
3bf46c3fb0
Added support for two new 'scrollFadeIn' and 'defaultImage' properties.
...
Also fixed some issues with theming ScrollableContainer.
2022-01-30 19:30:38 +01:00
Leon Styhre
c35a297d9a
Large update to get the new theme engine up and running.
2022-01-29 18:41:22 +01:00
Leon Styhre
dc20a9e21b
Cleaned up ThemeData a bit.
2022-01-23 20:03:50 +01:00
Leon Styhre
644f79ebec
Improved the theme loading error logging.
...
Also cleaned up the code a bit.
2022-01-23 17:50:51 +01:00
Leon Styhre
6229592c74
Added two new 'metadata' and 'scrollHide' elements to ThemeData.
2022-01-22 21:21:13 +01:00
Leon Styhre
a443f86235
Removed a huge amount of unnecessary Window* function arguments.
2022-01-19 18:01:54 +01:00
Leon Styhre
8a6652552f
Set the clang-format option SpaceBeforeCpp11BracedList to true.
2022-01-16 12:09:55 +01:00
Leon Styhre
a233b96c2a
Removed some unnecessary typedefs and replaced the remaining ones with the more modern 'using' keyword.
...
Also harmonized the names of some user defined types and made some other minor cleanup.
2022-01-11 21:57:00 +01:00
Leon Styhre
b4e08ba92b
Renamed Platform to utils/PlatformUtil
2022-01-10 18:56:04 +01:00
Leon Styhre
cd7cfe36ce
Added play direction support to LottieComponent.
...
Also fixed some bugs and cleaned up the code a bit.
2022-01-09 18:17:23 +01:00
Leon Styhre
b16ea29088
Added theme support and proper application integration for LottieComponent.
2022-01-09 13:43:42 +01:00
Leon Styhre
87ace0b8cb
Changed some shared_ptr return values to use values instead of references.
2022-01-04 22:36:15 +01:00
Leon Styhre
254b00a3d8
Large refactoring to improve thread safety and improve singleton pattern usage.
2022-01-04 21:21:26 +01:00
Leon Styhre
af52d9b0ac
Changed most increment and decrement operators from postfix to prefix for es-core.
2021-11-17 17:48:49 +01:00
Sophia Hadash
ac84716273
Merge branch 'master' into 653-properly-apply-z-index-in-the-system-view
2021-10-26 21:56:45 +02:00
Leon Styhre
f32c3dc6f4
Reintroduced column mode for BadgeComponent.
...
Also fixed an issue with direction in FlexboxComponent when using column mode.
2021-10-25 19:13:54 +02:00
Leon Styhre
84514f67d0
Added support for controller types.
2021-10-23 19:08:32 +02:00
shadash
3070a66e2c
introduce 'legacyZIndexMode' tag in carousel
...
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-23 17:34:20 +02:00
Leon Styhre
48db23691d
Merged BadgeComponent code into master branch.
2021-10-12 23:13:38 +02:00
Leon Styhre
ae96cb4c54
Further improvements to the badges code.
2021-10-12 22:53:02 +02:00
shadash
123e50cf17
change dimension constraints to use container size.
...
make margins proportional to screen size.
Signed-off-by: Sophia Hadash <sophiahadash@gmail.com>
2021-10-09 17:04:04 +02:00
Leon Styhre
8c9b664bb1
If the currently configured theme set is missing, attempt to load rbsimple-DE as fallback.
...
Also added a warning log entry when the selected theme set is missing.
2021-10-09 13:12:06 +02:00
Sophia Hadash
aaf5d0209b
Implement flexbox and badges.
2021-09-14 01:01:46 +02:00
Sophia Hadash
fe413bb68f
Initial implementation, including flexbox layout for badges.
2021-09-05 03:40:23 +02:00
Sophia Hadash
6b727e3883
add badges definition to theme interpreter
2021-09-04 21:15:14 +02:00
Sophia Hadash
41375c6f6e
remove brackets.
2021-08-23 20:57:11 +02:00
Sophia Hadash
b8ce3d95e8
rewrite custom button icon tags into customButtonIcon node with attribute.
2021-08-23 12:58:06 +02:00
Sophia Hadash
0826ebb2af
Bump theme xml version from 6 to 7.
2021-08-23 12:58:06 +02:00
Sophia Hadash
76a25d2204
Implement theme customizable button icons.
2021-08-23 12:58:06 +02:00
Sophia Hadash
c2042e66e2
Add help component theme options textColorDimmed
and iconColorDimmed
.
2021-08-23 12:58:06 +02:00
Sophia Hadash
dfffd1057d
Add help component theme options textStyle
.
2021-08-23 12:58:06 +02:00
Sophia Hadash
6672fd1ec8
Add help component theme options entrySpacing
and iconTextSpacing
.
2021-08-23 12:58:06 +02:00
Leon Styhre
7b5d673050
Replaced the internal Vector2i data type and functions with the GLM library equivalent.
...
Also applied some code formatting changes for braced lists using clang-format.
2021-08-17 18:41:45 +02:00
Leon Styhre
1fb0ccef0d
Replaced the internal Vector2f data type and functions with the GLM library equivalent.
2021-08-16 18:25:01 +02:00
Leon Styhre
64a7b8e54a
Replaced the internal Vector3f and Vector4f data types and functions with the GLM library equivalents.
2021-08-15 22:03:17 +02:00
Leon Styhre
23fdc00044
Formatted the es-core source tree using clang-format.
2021-07-07 20:31:46 +02:00
Leon Styhre
3922fdd40a
Improved the logging when there are issues with invalid theme XML files.
2021-02-08 20:53:39 +01:00
Leon Styhre
8f32be00b4
Some general code cleanup.
2021-01-25 18:07:11 +01:00
Leon Styhre
80d29978b8
Minor update to the ThemeData log output.
2021-01-17 22:33:02 +01:00
Leon Styhre
7b19b2cc6b
Improved some log output in ThemeData.
2021-01-17 21:52:34 +01:00
Leon Styhre
f4cfcbed65
Some improvements to the application logging.
2021-01-01 18:36:53 +01:00
Leon Styhre
debf072a0e
Rewrote some code from C to C++
2020-12-16 23:59:00 +01:00
Leon Styhre
7f0aede274
Added gamelist info field which displays some useful information.
2020-10-30 14:19:21 +01:00
Leon Styhre
2eb5125d0e
Some cosmetic code cleanup.
2020-10-18 19:45:26 +02:00
Leon Styhre
930bdce576
Fixed multiple issues reported by the Clang static analyzer.
2020-10-17 14:05:41 +02:00
Leon Styhre
8db04c5fcb
Added SPDX license identifiers to all source files.
2020-09-21 19:17:34 +02:00
Leon Styhre
88a5962926
Changed '#ifdef' to '#if defined()' throughout the code.
2020-08-23 17:04:30 +02:00
Leon Styhre
ffcb578fe7
(macOS) Updates to make ES find resources and themes within the application installation directory.
2020-08-21 21:49:45 +02:00
Leon Styhre
57d6dab2cc
Some cosmetic code changes.
2020-07-13 20:58:25 +02:00
Leon Styhre
29c50ff5a1
Reintroduced the ES executable directory on Unix as a path to look for resources and themes.
2020-07-12 12:47:39 +02:00
Leon Styhre
31da561695
Complete UTF-16 (Unicode) support added for Windows.
...
ROM names with Unicode characters are supported, as well as running ES from a directory that has Unicode characters in its name.
2020-07-10 18:32:23 +02:00
Leon Styhre
76aa239855
Initial update to make the application build and run on Windows.
...
Much more work will be needed to get the Windows port working properly.
2020-07-03 20:23:51 +02:00
Leon Styhre
fb4c5708b7
Made pugixml an external dependency and fixed the cmake/cpack installation and package creation.
...
As pugixml seems to be well supported nowadays and seems to ship with most distributions it's pretty pointless to keep bundling it with EmulationStation.
2020-06-24 17:38:41 +02:00
Leon Styhre
672026632d
Code cleanup and code documentation
2020-06-22 17:27:53 +02:00
Leon Styhre
b560429a20
Moved the CMake install prefix function to FileSystemUtil and implemented the same logic also for theme loading.
2020-06-21 21:08:54 +02:00
Leon Styhre
67aa6b3dbd
Huge code cleanup and code documentation update.
...
Includes lots of conversions from tabs to spaces. Only cosmetic code changes in this commit.
2020-06-21 14:25:28 +02:00
Leon Styhre
49161df0e6
Renamed platform.cpp/platform.h to Platform.cpp/Platform.h
...
The naming convention for the rest of the application is to start the file names with a capital letter.
2020-06-21 12:26:21 +02:00
Leon Styhre
3d6adf9ade
Implemented a much more elegant handling of navigation sounds
2020-05-15 18:21:24 +02:00
Leon Styhre
0aafc1314a
Added navigation sound support (configurable per theme) and implemented proper sound handling at most places in ES
2020-05-15 18:08:26 +02:00
John Rassa
8d759c7c5d
add 'animate' to theme properties for imagegrid; fix blurriness on image upscaling
2019-10-09 18:51:33 -04:00
John Rassa
961571655b
Grid updates. Animate scrolling option, autoLayout option, center selection option, scroll loop option, image source option
2019-09-21 19:38:57 -04:00
John Rassa
fc58af98fd
support for color gradients in drawRect and ImageComponent
2019-08-29 19:47:16 -04:00
Tomas Jakobsson
79cc5a7e8b
Merge pull request #575 from jrassa/guicomponent-visible
...
support 'visible' theme element
2019-08-29 10:25:10 +02:00
Tomas Jakobsson
9de16045c9
whitespace cleanup
...
fix faulty line endings
silence warnings on windows
2019-08-25 17:23:02 +02:00
John Rassa
8de1fc8860
add 'visible' theme element
2019-07-21 23:13:48 -04:00
Jools Wills
5af905e2c1
Merge pull request #494 from jrassa/variables-in-imports
...
allow variables in import elements
2018-10-26 03:57:31 +01:00
John Rassa
4fd0c66b90
allow variables in import elements
2018-10-24 16:19:27 -07:00
John Rassa
a57b0ecfea
create new DateTimeComponent
2018-10-15 20:40:45 -07:00
Koerty
9f10b61dfa
Add 3 new theming properties to the grid tile background
...
Add 3 new theming properties to the grid tile background : - backgroundCornerSize
- backgroundCenterColor
- backgroundEdgeColor
2018-05-18 01:20:58 +02:00
John Rassa
4a1e9d5f11
Merge pull request #415 from Koerty/grid-default-image
...
[GRID 5 & 6] Add grid default image and folder image
2018-04-16 21:30:40 -04:00
Koerty
3100fa3a6d
Add grid default image and folder image
...
Add default game image and folder image to the grid. They can be configured by the theme with the gameImage and folderImage properties of the imagegrid.
2018-04-17 01:37:39 +02:00