Commit Graph

77 Commits

Author SHA1 Message Date
Léo Lam 6763a3fce1 Config: Add support for enums
This makes it possible to use enums as the config type.
Default values are now clearer and there's no need for casts
when calling Config::Get/Set anymore.

In order to add support for enums, the common code was updated to
handle enums by using the underlying type when loading/saving settings.

A copy constructor is also provided for conversions from
`ConfigInfo<Enum>` to `ConfigInfo<underlying_type<Enum>>`
so that enum settings can still easily work with code that doesn't care
about the actual enum values (like Graphics{Choice,Radio} in DolphinQt2
which only treat the setting as an integer).
2018-05-12 18:10:26 +02:00
spycrab be007b436c Qt/GraphicsWindow: Fix software renderer breaking layout 2018-05-10 12:08:23 +02:00
spycrab 074a17482b Qt/GraphicsWindow: Refresh settings on construction 2018-05-10 12:08:23 +02:00
spycrab 6a34f2b47c Qt/GeneralWidget: Fix "No" response to backend switch confirmation 2018-05-10 12:08:23 +02:00
spycrab b7b6b5162c Qt/GeneralWidget: Refresh backend settings properly 2018-05-10 12:08:23 +02:00
Anthony 1ec3a4db6c
Merge pull request #6763 from spycrab/qt_fix_prog
Qt/AdvancedWidget: Fix "Enable Progressive Scan"
2018-05-07 09:59:32 -07:00
spycrab a2448c5b66 Qt/GeneralWidget: Various fixes 2018-05-07 17:50:03 +02:00
spycrab 6f65238efc Qt: Fix "Render To Main" 2018-05-06 04:51:13 +02:00
spycrab 6442b32aeb Qt/AdvancedWidget: Fix "Enable Progressive Scan" 2018-05-06 03:16:43 +02:00
Léo Lam 31efec623a
Merge pull request #6695 from Ebola16/UbershadersDecrip
Update Ubershader descriptions
2018-05-05 11:16:30 +02:00
Pierre Bourdon 798639291f
Merge pull request #6749 from spycrab/qt_gcontrols_crash
Qt/GraphicsControls: Fix more random crashes
2018-05-05 03:02:43 +02:00
spycrab e809eef11a Qt/AdvancedWidget: Fix progressive scan checkbox 2018-05-04 21:33:24 +02:00
spycrab 300c3970f3 Qt/GraphicsControls: Fix more random crashes 2018-05-04 13:51:55 +02:00
Stenzek a5e410b7c9
Merge pull request #6744 from stenzek/ui-disable-vram-copies
UI: Add Disable EFB Copies to VRAM to Advanced Options
2018-05-04 12:01:29 +10:00
Mat M 348125eda4
Merge pull request #6738 from spycrab/qt_fix_empty_adapter
Qt/GeneralWidget: Fix empty adapter option
2018-05-03 13:11:00 -04:00
spycrab a61445919d Qt/GraphicsSlider: Fix random crashes 2018-05-03 15:22:40 +02:00
Stenzek d4f6c86eec UI: Add Disable EFB Copies to VRAM to Advanced Options 2018-05-03 14:31:04 +10:00
Stenzek 8a061d6fb4 Qt/AdvancedWidget: Fix borderless fullscreen option not showing 2018-05-03 14:13:35 +10:00
spycrab b99610f1a3 Qt/GeneralWidget: Fix empty adapter option 2018-05-02 19:20:45 +02:00
spycrab ef3f660983 Qt/HacksWidget: Fix "Accuracy" slider 2018-05-02 16:36:15 +02:00
Ryan Meredith 05205ce3d7 Update Ubershader descriptions 2018-05-01 18:57:34 -04:00
Stenzek 6e62d1ab9f
Merge pull request #6722 from spycrab/qt_adapter
Qt/GraphicsSettings: Save Adapter index
2018-05-01 21:57:50 +10:00
spycrab 87d6bffcec Qt/GraphicsSettings: Fix various adapter issues 2018-05-01 13:54:01 +02:00
Léo Lam 78c9bad44f
Merge pull request #6688 from spycrab/qt_dedup
Qt: Deduplicate settings
2018-05-01 11:53:39 +02:00
Stenzek c46882142b
Merge pull request #6369 from stenzek/xfb-copy-filter
Implement copy filter (deflickering/brightness) and XFB gamma
2018-05-01 19:31:54 +10:00
spycrab 417d191c9e Qt/GraphicsControls: Reload values when settings are changed 2018-04-29 12:17:39 +02:00
Stenzek ea4090d92c Dolphin: Add disable copy filter to graphics options 2018-04-29 19:05:20 +10:00
Léo Lam 9c63bae19a
Merge pull request #6687 from spycrab/qt_graphics_caps
Qt/GraphicsWindow: Disable unsupported options
2018-04-28 00:35:47 +02:00
spycrab 4caca2bd7a Qt/GraphicsWindow: Disable unsupported options 2018-04-28 00:01:26 +02:00
spycrab 40a61e7bf5 Qt: Deduplicate settings 2018-04-22 22:26:28 +02:00
spycrab caa18edc79 Qt: Implement "Keep Window on top" 2018-04-22 11:15:39 +02:00
JosJuice 0efbaebe17 Minor fixes to translatable strings
The usual deduplication between DolphinWX and DolphinQt2, plus the removal
of a now unused ubershader string and a fix for the Euphoria i18n comment.
2018-04-16 19:08:58 +02:00
spycrab 40bb9974f2 Reformat all the things! 2018-04-12 21:28:39 +02:00
Mat M d8dd7b9e66
Merge pull request #6533 from spycrab/qt_desc_box
Qt/GraphicsWindow: Decrease description box size
2018-04-01 14:06:50 -04:00
Lioncash 4a1123f519 HacksWidget: Remove duplicate AddDescription() call in AddDescriptions() 2018-03-27 22:36:37 -04:00
Léo Lam b0e4e35cc5
Merge pull request #6478 from spycrab/qt_default_btns
Qt: Replace "OK" with "Close" buttons
2018-03-26 22:48:26 +02:00
spycrab 591c8837e2 Qt: Replace "OK" with "Close" buttons 2018-03-26 09:20:48 +02:00
spycrab 9f13048e1e Qt/GraphicsWindow: Decrease description box size 2018-03-26 08:30:32 +02:00
Stenzek 2f1a7cbee1 Implement "Skip" ubershader mode
Skip ubershader mode works the same as hybrid ubershaders in that the
shaders are compiled asynchronously. However, instead of using the
ubershader to draw the object, it skips it entirely until the
specialized shader is made available.

This mode will likely result in broken effects where a game creates an
EFB copy, and does not redraw it every frame. Therefore, it is not a
recommended option, however, it may result in better performance on
low-end systems.
2018-03-26 01:57:41 +10:00
spycrab 1b06e66f1d Qt: Various layout fixes 2018-03-18 00:10:54 +01:00
spycrab c421848559 Qt: Improve spacing 2018-03-17 16:14:56 +01:00
Stenzek e31cc1f679 ShaderCache: Implement background shader compilation
This enables shaders to be compiled while the game is starting, instead
of blocking startup. If a shader is needed before it is compiled,
emulation will block.
2018-03-10 16:11:19 +10:00
Stenzek 9fa24700b6 VideoConfig: Collapse ubershader configuration fields to a single value 2018-03-10 15:56:45 +10:00
spycrab 7c99f10152 Qt/Graphics: Add ubershader options 2018-02-10 13:11:18 +01:00
Ryan Meredith 1f226ec14f Update Readme.md and various fixes 2017-12-20 10:54:51 +01:00
JosJuice 4973ae9952 Rename GFX_HACK_COPY_EFB_ENABLED to GFX_HACK_COPY_EFB_SCALED
Not sure why it was named like this... It doesn't affect whether
the copy happens or not, only what resolution it uses.
2017-12-18 21:55:02 +01:00
Stenzek 470e8d63b6 VideoConfig: Rename "Full Resolution Frame Dumps" to "Internal"
What is the "full" resolution, anyway?
2017-11-21 17:20:55 +10:00
Stenzek 39559f6358 VideoConfig: Remove bSupportsInternalResolutionFrameDumps
Field is unused as of Hybrid XFB.
2017-11-21 17:19:43 +10:00
Michael M 5dc3ecdb72 Qt: show "Immediately present XFB" option 2017-11-19 15:37:24 -08:00
Leo Lam 80bcc0d58d
Merge pull request #6186 from lioncash/enum-class
VideoConfig: Make AspectMode and StereoMode enum classes
2017-11-19 15:08:16 +01:00