aboutsummaryrefslogtreecommitdiff
path: root/src/yuzu/configuration/configure_per_game.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [desktop] Rework game list to use MVP architecture (#4042)crueter2026-06-021-1/+2
| | | | | | | | | | | | | | | | | | | | Closes #3480 moves the game list model/worker/private stuff to qt_common for later use in QML - `qt_common/game_list/model.{cpp,h}` is the model - `yuzu/game/game_{grid,tree}.*` are the views - `yuzu/game/game_list.cpp` is the presenter This was done very lazily in a manner that "works" while largely maintaining existing structure as much as possible. Most of it is copy-paste, with some bonus reworks/cleanups thrown in. Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4042 Reviewed-by: MaranBr <maranbr@eden-emu.dev> Reviewed-by: Lizzie <lizzie@eden-emu.dev>
* [desktop] More qt_common reorganization (#3916)crueter2026-05-201-1/+1
| | | | | | | | | | | | Ported from QML branch. Main "big" change is that EmuThread is now a shared state in QtCommon, not individually managed/passed around by GRenderWindow and MainWindow. Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3916 Reviewed-by: Lizzie <lizzie@eden-emu.dev> Reviewed-by: MaranBr <maranbr@eden-emu.dev>
* [meta] clang-format literally all of the Qt code (#3706)crueter2026-03-101-5/+5
| | | | | | | | I'm tired of dealing with this tbh Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3706 Reviewed-by: Lizzie <lizzie@eden-emu.dev>
* [Configuration] Add Applets Tab to Per-Game Configurations (#3623)John2026-02-241-0/+4
| | | | | | | | | | | | | | | | | | | | Some games need specific applets to work. For example for local multiplayer to function the Controller Applet must be set as: - MK8D -> Custom Applet - Absolum -> Real Applet Web/Offline Applet: Assasin Creed and some bundled games might need real applet. Overlay Toggle added for Horizon's ingame menu. Thanks PavelBARABANOV for the help with the PR. Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3623 Reviewed-by: crueter <crueter@eden-emu.dev> Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Co-authored-by: John <john@eden-emu.dev> Co-committed-by: John <john@eden-emu.dev>
* [desktop] Add mod importer from folder and zip (#3472)crueter2026-02-061-1/+1
| | | | | | | | | | | | | | | | | Closes #3125 Adds buttons to the addons page that imports a mod (or mods) from zip or folder. Currently known to work with mods that provide proper romfs/exefs things, unsure about cheats and such. Also works on mods that just stuff things into the root of the zip. TODO: - [ ] test folder more thoroughly - [ ] cheats - [ ] test all sorts of mod pack types Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3472 Reviewed-by: Lizzie <lizzie@eden-emu.dev>
* [desktop, settings] new RendererHacks category, move to Extensions -> ↵crueter2025-12-311-1/+1
| | | | | | | | | | | | | Extras, fix GPU accuracy naming (#3245) added a new RendererHacks category, moved them to the Extensions tab and renamed that tab Extras. Should fit in smaller screens now also Performance -> Fast, GPU Accuracy -> GPU Mode Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3245 Reviewed-by: MaranBr <maranbr@eden-emu.dev>
* [gamemode] Make available on other platforms (#353)lizzie2025-12-071-9/+0
| | | | | | | | | | | Signed-off-by: lizzie <lizzie@eden-emu.dev> Co-authored-by: crueter <crueter@eden-emu.dev> Co-authored-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/353 Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* [qt] configure network per game (#3113)lizzie2025-12-011-0/+4
| | | | | | | | | Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3113 Reviewed-by: crueter <crueter@eden-emu.dev> Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* [qt_common] reorg + checkstate abstraction (#2735)crueter2025-10-151-1/+1
| | | | | | | | no diff. in functionality, just confirm builds on ubuntu 24.04/debian 12 Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2735
* [qt] refactor: qt_common lib (#94)crueter2025-09-151-1/+4
| | | | | | | | | | | | | | | | | This is part of a series of PRs made in preparation for the QML rewrite. this PR specifically moves a bunch of utility functions from main.cpp into qt_common, with the biggest benefit being that QML can reuse the exact same code through ctx passthrough. Also, QtCommon::Frontend is an abstraction layer over several previously Widgets-specific stuff like QMessageBox that gets used everywhere. The idea is that once QML is implemented, these functions can have a Quick version implemented for systems that don't work well with Widgets (sun) or for those on Plasma 6+ (reduces memory usage w/o Widgets linkage) although Quick from C++ is actually anal, but whatever. Other than that this should also just kinda reduce the size of main.cpp which is a 6000-line behemoth rn, and clangd straight up gives up with it for me (likely caused by the massive amount of headers, which this DOES reduce). In the future, I probably want to create a common strings lookup table that both Qt and QML can reference--though I'm not sure how much linguist likes that--which should give us a way to keep language consistent (use frozen-map). TODO: Docs for Qt stuff Co-authored-by: MaranBr <maranbr@outlook.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/94 Reviewed-by: MaranBr <maranbr@eden-emu.dev> Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
* Add dynamic state extension configsswurl2025-04-231-0/+4
| | | | Signed-off-by: swurl <swurl@swurl.xyz>
* Update fmt to allow for v11crueter2025-04-101-1/+1
| | | Signed-off-by: swurl <swurl@swurl.xyz>
* yuzu: Fully hide linux tabgerman772024-02-051-0/+3
|
* yuzu: Add per-game linux gamemode configurationflodavid2024-01-021-0/+6
|
* config: Unify config handling under frontend_commont8952023-11-211-4/+3
| | | | | | Replaces every way of handling config for each frontend with SimpleIni. frontend_common's Config class is at the center where it saves and loads all of the cross-platform settings and provides a set of pure virtual functions for platform specific settings. As a result of making config handling platform specific, several parts had to be moved to each platform's own config class or to other parts. Default keys were put in platform specific config classes and translatable strings for Qt were moved to shared_translation. Default hotkeys, default_theme, window geometry, and qt metatypes were moved to uisettings. Additionally, to reduce dependence on Qt, QStrings were converted to std::strings where applicable.
* general: Use console mode helper across projectlat9nq2023-08-221-3/+2
|
* config(qt): Sanitize docked handheld controllerlat9nq2023-08-221-0/+8
|
* yuzu-qt: Screenshots depend more on the graphics settingslat9nq2023-08-161-1/+2
|
* common,qt-config: Remove usage of forward_listlat9nq2023-07-211-1/+1
|
* configuration: Use a builder to create widgetslat9nq2023-07-211-11/+8
| | | | | This gets rid of some repeated code and sets us up to send more information to the new widget.
* configure_cpu: Generate UIlat9nq2023-07-211-1/+2
|
* configuration: Use a mapping of setting value to namelat9nq2023-07-211-5/+8
| | | | | Makes comboboxes always correspond to the value of the setting they're modifying.
* configure_audio: Implement ui generationlat9nq2023-07-211-1/+1
| | | | | | | | | | | | | | | | Needs a considerable amount of management specific to some of the comoboboxes due to the audio engine configuration. general: Partial audio config implmentation configure_audio: Implement ui generation Needs a considerable amount of management specific to some of the comoboboxes due to the audio engine configuration. general: Partial audio config implmentation settings: Make audio settings as enums
* configure_system: Implement with for looplat9nq2023-07-211-1/+1
|
* per_game: Remove general tablat9nq2023-07-211-3/+0
| | | | It's empty.
* configure_general: Generate UI using containerslat9nq2023-07-211-1/+1
| | | | This leaves per-game config's General tab empty?
* configure_graphics: Partial runtime implementationlat9nq2023-07-211-1/+1
|
* configure_graphics_advance: Generate UI at runtimelat9nq2023-07-211-3/+6
| | | | | | | We can iterate through the AdvancedGraphics settings and generate the UI during runtime. This doesn't help runtime efficiency, but it helps a ton in reducing the amount of work a developer needs in order to add a new setting.
* configure_per_game: Rename group to tab_grouplat9nq2023-07-211-9/+9
|
* configuration: Add base class to tabslat9nq2023-07-211-14/+13
| | | | | Tabs that largely configure SwitchableSetting's are now Tabs and grouped together.
* yuzu-qt: Load Vulkan device info at startuplat9nq2023-06-061-1/+4
| | | | | | | | | Loading it when the configuration opens now incurs a noticeable delay. We also don't need to rediscover the same data repeatedly each time the configuration opens. Moves vulkan device info discovery to yuzu's startup as opposed to the configure_graphics constructor.
* yuzu-qt/config: Add option to disable compute on Intellat9nq2023-05-071-1/+2
| | | | | | | | | | This option is only visible if an Intel GPU using the proprietary driver is found during Vulkan device enumeration. configure_graphics: More directly get driver id Vulkan::Device does quite a bit more than we need just to see the driver ID here.
* main: Globally disable the "?" button on dialogsMorph2023-01-251-2/+0
| | | | Sets the AA_DisableWindowContextHelpButton attribute to disable this useless button globally.
* config: Custom profile detection fixesameerj2022-11-281-1/+1
| | | | Also only reads/writes applicable configs for the custom profiles.
* Configuration: Add per-game input profilesameerj2022-11-201-1/+4
|
* yuzu: Use a debugger to generate minidumpslat9nq2022-09-041-2/+1
| | | | | | yuzu: Move mini_dump out of core startup_checks: Better exception handling
* configure_per_game: Eliminate variable shadowingMorph2022-06-141-3/+3
|
* yuzu: Eliminate variable shadowingMorph2022-06-131-2/+2
|
* general: Convert source file copyright comments over to SPDXMorph2022-04-231-3/+2
| | | | | This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
* yuzu: Reduce unused includesameerj2022-03-201-6/+0
|
* configure_per_game: Initialize tabs after loading custom configurationlat9nq2022-01-041-15/+9
| | | | | | | | | | Changes tab initialization to happen after the configuration is loaded, which means that it no longer happens as member initializers in the ConfigurePerGame constructor. Removes the cluster of ??_tab->SetConfiguration's that I added earlier to get around this issue initially. Fixes a regression in #6774
* Geometry property removal and rewordingMoonlacer2021-10-251-1/+1
|
* yuzu qt: Remove global system instances from config, WaitTree, mainlat9nq2021-10-071-18/+48
|
* Simple resizing of the Per-Game configuration window and removal of useless ↵OZtistic2021-06-231-0/+2
| | | | Help question mark button in the title bar
* yuzu qt: Revert some usages of string_viewlat9nq2021-06-021-3/+8
| | | | | | Causes a heap-use-after free reported by AddressSanitizer. This makes use of std::filesystem::path, but due to that we have to use their string() function which may not work for all characters.
* Merge pull request #6361 from lat9nq/per-hb-cfgbunnei2021-06-011-3/+6
|\ | | | | yuzu qt: Handle per-game configs for title id 0
| * yuzu qt: Restore const qualifierslat9nq2021-05-251-7/+3
| | | | | | | | | | | | This addresses review comments. Co-authored-by: LC <mathew1800@gmail.com>
| * yuzu qt: Handle per-game configs for title id 0lat9nq2021-05-251-3/+10
| | | | | | | | | | | | | | Currently with programs that have a 0 title id, yuzu loads the custom configuration 0000000000000000.ini for per-game configs. This is not ideal since many homebrews share this id. Instead for these programs, we load a config that is simply the file name and `.ini` appended to it.
* | Merge pull request #6346 from lat9nq/apply-config-pgcAmeer J2021-05-271-0/+14
|\ \ | |/ |/| yuzu qt: Add an Apply button to configuration dialogs
| * yuzu qt: Add an Apply button to configuration dialogslat9nq2021-05-251-0/+14
| | | | | | | | | | | | | | | | Most of the code already exists to do this, but the Apply button itself was never added. This adds a button and boolean that tells yuzu to save the configuration after applying settings, even if close/Cancel is pressed on the dialog. Changes after applying will not be saved when Cancel is pressed, though.