Commit Graph

1081 Commits

Author SHA1 Message Date
spycrab
c39f00194d Qt/MappingButton: Fix window becoming unresponsive after mapping 2018-05-24 00:01:05 +02:00
Léo Lam
c99ac40700 Port FS, SD and dump path to onion config
This ports the Wii filesystem root, Wii SD card path and dump path
settings to the new config system (OnionConfig).

My initial plan was to wait until DolphinWX was removed before porting
most of the Main (Core, DSP, General) settings to onion config, but
I've decided to submit a small part of those changes to fix
[issue 10566](https://bugs.dolphin-emu.org/issues/10566).

Removes the need to manually set the FileUtil path in the UI frontends
and gets rid of some more members that don't really belong in SConfig.

Also fixes a bug which would cause the dump path not to get created
after change.
2018-05-23 16:07:18 +02:00
JosJuice
58743416bb Make the support for unencrypted Wii disc images less broken
These disc images are only used on dev units and not retail units.
There are two important differences compared to normal Wii disc images:

- The data starts 0x8000 bytes into each partition instead of 0x20000
- The data of a partition is stored unencrypted and contains no hashes

Our old implementation was just guesswork and doesn't work at all.
According to testing by GerbilSoft, this commit's implementation
is able to read and extract files in the filesystem correctly,
but the tested game still isn't able to boot. (It's thanks to their
info about unencrypted disc images that I was able to make this commit.)
2018-05-23 08:40:37 +02:00
spycrab
51410b7672
Merge pull request #6946 from spycrab/qt_rob
Qt/RunOnObject: Fix no result being returned
2018-05-23 01:15:59 +02:00
spycrab
1f3df1811b Qt/RunOnObject: Fix no result being returned 2018-05-23 01:07:08 +02:00
spycrab
94e97d47a0 Qt/FIFOPlayer: Implement Analyzer 2018-05-22 23:51:01 +02:00
Sepalani
8fa898fe9a DebugInterface: MemoryPatches methods added
CodeView: Restore instruction added
2018-05-22 10:31:31 +04:00
spycrab
6747543502 Qt: Fix crash on game start 2018-05-22 04:37:08 +02:00
spycrab
54f85c3320 Qt/FIFOPlayerWindow: Properly reset ranges 2018-05-22 01:32:26 +02:00
riking
268b424843 QtUtils/RunOnObject: Make safe under object destruction
Co-Authored-By: cancel <cancel@cancel.fm>
2018-05-21 15:49:19 -07:00
spycrab
f31f1a08fb
Merge pull request #6927 from spycrab/qt_mpwnd_size
Qt/MappingWindow: Make sure widgets don't need scrolling by default
2018-05-21 21:16:32 +02:00
flatulation
93e0a2e52a Qt: Implement post-processing shader configuration window 2018-05-21 16:09:04 +01:00
spycrab
9eb3bce520 Qt/MappingWindow: Make sure widgets don't need scrolling by default 2018-05-21 15:47:09 +02:00
Lioncash
437c954b60 DolphinQt2/GeckoCodeWidget: Remove unimplemented OnDelete() prototype
Tidies up the interface a little (and prevents a linker error from
occurring in the future, should it ever have been called).
2018-05-20 16:42:13 -04:00
spycrab
8af8c58eb9
Merge pull request #6917 from spycrab/qt_mpbtn_size
Qt/MappingButton: Enforce more consistent size
2018-05-20 21:27:41 +02:00
spycrab
0e8aa213a3 Qt/MappingButton: Enforce more consistent size 2018-05-20 21:20:45 +02:00
spycrab
b4f1c489a3 Qt/MappingIndicator: Center trigger labels 2018-05-20 21:16:14 +02:00
spycrab
b0b14853c4 Qt/MappingIndicator: Improve render quality 2018-05-20 17:50:26 +02:00
Léo Lam
0706add584
Merge pull request #6699 from 404-Name-Not-Found/alphabetize-gecko-qt
Adds a toggleable function for sorting the gecko codes alphabetically to the gecko code menu
2018-05-20 11:13:38 +02:00
Justin Futrell
c7f0c7484d GeckoCodeWidget: Add a Sort button 2018-05-20 11:05:11 +02:00
Léo Lam
464bfb073e
Merge pull request #6912 from spycrab/qt_jit_widget
Qt/JITWidget: Add object name
2018-05-20 10:44:21 +02:00
spycrab
f7b188c7b4 Qt/JITWidget: Add object name 2018-05-20 03:58:54 +02:00
spycrab
ef803613d0 Qt/SoftwareRendererWidget: Fix backend info not getting updated properly 2018-05-19 23:28:23 +02:00
spycrab
49f8d5aefb Qt/AdvancedWidget: Save progressive scan when toggled 2018-05-19 20:59:30 +02:00
spycrab
bc504d9f84 Qt/GraphicsWindow: Show display name in title 2018-05-19 17:44:22 +02:00
spycrab
7a8b2da55e Qt/ToolBar: Fix checkbox not properly reflecting toolbar visibility 2018-05-19 15:50:21 +02:00
Léo Lam
d399b0f59e
Merge pull request #6900 from lioncash/buffer
PPCAnalyst: Make CodeBuffer an alias for std::vector<CodeOp>
2018-05-19 12:10:19 +02:00
spycrab
bf0fbdbc52
Merge pull request #6893 from spycrab/qt_gc_checkboxes
Qt/GameConfigWidget: Fix checkboxes not being saved properly
2018-05-19 03:34:24 +02:00
spycrab
adcaf3c581
Merge pull request #6887 from spycrab/qt_slider_accuracy
Qt/HacksWidget: Fix slider not showing overridden settings
2018-05-19 03:00:34 +02:00
Lioncash
3a8a67025e PPCAnalyst: Make CodeBuffer an alias for std::vector<CodeOp>
This class effectively acted as a "discount vector", that would simply
allocate memory and then delete it in the destructor when it goes out of
scope.

We can just use a std::vector directly to reduce this boilerplate.
2018-05-18 17:19:45 -04:00
spycrab
5e3d7dc162 Qt/HacksWidget: Fix slider not showing overridden settings 2018-05-18 20:19:21 +02:00
spycrab
707b966496 Qt/GameConfigWidget: Fix checkboxes not being saved properly 2018-05-18 20:15:14 +02:00
spycrab
57f9928c49
Merge pull request #6891 from spycrab/qt_fs_glitch
Qt/HotkeyScheduler: Fix toggle fullscreen glitches
2018-05-18 19:30:42 +02:00
Léo Lam
49c9c1ee40
Merge pull request #6853 from aldelaro5/qt-debugger-hotkey-fixes
Qt debugger hotkey fixes
2018-05-18 19:06:17 +02:00
spycrab
cc55817ec9 Qt/HotkeyScheduler: Fix toggle fullscreen glitches 2018-05-18 09:40:03 +02:00
spycrab
eef2092854 Qt/D3D: Fix render widget size not being restored properly 2018-05-18 09:27:56 +02:00
spycrab
9bdf7c4b5a
Merge pull request #6890 from aldelaro5/qt-fix-random-windows
Qt/CheatWarningWidget: properly supply a parent for the widget
2018-05-18 08:08:42 +02:00
aldelaro5
6dd5a3a866
Qt/CheatWarningWidget: properly supply a parent for the widget
Because it wasn't parented properly, it would show briefly the widget in its own window when creating an ARCodeWidget or a GeckoCodeWidget which would occur when accessing the game properties page or when the state changes to pause/running.
2018-05-18 01:31:43 -04:00
Tilka
bdce441bb9
Merge pull request #6889 from lioncash/mmu
PowerPC: Move MMU-specifics from PowerPC.h to MMU.h
2018-05-18 02:28:13 +01:00
Tilka
cbc85d928b
Merge pull request #6860 from Zexaron/qt_generalwidget_remove_wrong_description
Qt/GeneralWidget remove unnecesary description wiring
2018-05-18 02:24:08 +01:00
Lioncash
b9aad3310e PowerPC: Move MMU-specifics from PowerPC.h to MMU.h
PowerPC.h at this point is pretty much a general glob of stuff, and it's
unfortunate, since it means pulling in a lot of unrelated header
dependencies and a bunch of other things that don't need to be seen by
things that just want to read memory.

Breaking this out into its own header keeps all the MMU-related stuff
together and also limits the amount of header dependencies being
included (the primary motivation for this being the former reason).
2018-05-17 19:18:55 -04:00
Tilka
e67f2dcada
Merge pull request #6888 from lioncash/qt-override
DolphinQt2: Minor changes
2018-05-17 22:16:23 +01:00
Lioncash
c1f92d304f DolphinQt2/NetPlay/GameListDialog: Make GetSelectedUniqueID() const qualified
Given this member function returns a const reference to a QString, it
can be made const qualified, since it doesn't modify internal state.
2018-05-17 16:35:48 -04:00
Tilka
6ef7578321
Merge pull request #6886 from lioncash/dqt
DolphinQt2/Settings: Remove unimplemented IsInDevelopmentWarningEnabled() prototype
2018-05-17 21:33:37 +01:00
Lioncash
c98a8b59d5 DolphinQt2/NetPlay: Mark constructors explicit where applicable 2018-05-17 16:33:05 -04:00
Lioncash
dfa1126946 DolphinQt2: Add missing override specifiers 2018-05-17 16:28:35 -04:00
Lioncash
3d8cca2682 DolphinQt2/Settings: Remove unimplemented IsInDevelopmentWarningEnabled() prototype
The "in development" dialog was removed quite a while ago, so this is
just a leftover remnant that must have been missed during said removal.
2018-05-17 16:09:56 -04:00
spycrab
0b5d29a347
Merge pull request #6883 from spycrab/qt_fix_hk_state
Qt/HotkeyScheduler: Fix state loading
2018-05-17 22:08:57 +02:00
spycrab
72a66d3fbb
Merge pull request #6877 from aldelaro5/qt-debugger-load-symbols
Qt/debugger: properly update when we load the symbols on boot
2018-05-17 21:41:55 +02:00
aldelaro5
65d2a6c590
Qt/debugger: properly update when we load the symbols on boot
This host event is still useful because the emu thread will load the symbols on boot if required.
2018-05-17 15:33:47 -04:00
spycrab
f25213139d Qt/HotkeyScheduler: Fix state loading 2018-05-17 20:27:14 +02:00
aldelaro5
0a2357f044
Qt/hotkeys: do not show the debugging tab if the debugger is disabled 2018-05-17 07:22:34 -04:00
aldelaro5
3d9d516bd3
Qt: do not toggle the screensaver when pausing or playing
This fixes 2 crashes with the pause function.  One is when spamming the pause hotkey and the other is to press pause and step hotkeys at the same time.  It does disable the screensaver getting disabled when the emulator is running, but paused, though, a better solution would have to be done without introducing these crashes.
2018-05-17 07:14:44 -04:00
master0fdisaster
2a9283ee3d
Fix "Show Input Display" 2018-05-16 21:07:15 +02:00
spycrab
b203024a26
Merge pull request #6868 from aldelaro5/qt-debugger-fix-updatediasm
Qt/Debugger: Use QApplication::instance() as the connection context in Host_UpdateDisasmDialog()
2018-05-16 18:54:21 +02:00
Léo Lam
47fd8c6eff
Merge pull request #6855 from aldelaro5/qt-render-min-width
Qt: allow to resize the render widget however wanted on render to main
2018-05-16 14:11:51 +02:00
Léo Lam
4de2c5040d
Merge pull request #6867 from jackoalan/code-view-bg
Qt/CodeViewWidget: Dynamic background dimming for dark themes
2018-05-16 14:08:02 +02:00
Léo Lam
9335400f65
Merge pull request #6862 from aldelaro5/qt-unify-pause-play
Qt: make the pause play button only one button
2018-05-16 14:07:35 +02:00
Jack Andersen
d14f6e9ee6 Qt/CodeViewWidget: Dynamic background dimming for dark themes 2018-05-15 18:59:40 -10:00
aldelaro5
33ed5b2e99
Qt/Debugger: Use QApplication::instance() as the connection context in Host_UpdateDisasmDialog()
Because running on the host instance doesn't actually allow to fire the event.  This fix a regression where stepping would not udpate the GUI at all.
2018-05-16 00:42:35 -04:00
aldelaro5
bc43f45119
Qt: make the pause play button only one button
This is to avoid several issue with using 2 actions and switching between them.  This commit will instead have one action get his property changed on pause and play.
2018-05-15 23:37:50 -04:00
spycrab
6c09ce3d95 Qt: Use proper signals 2018-05-15 20:13:12 +02:00
spycrab
79533ef789 Qt/PathPane: Disable "Remove" button when not applicable 2018-05-15 20:13:12 +02:00
spycrab
40e6abad09 Qt/AudioPane: Improve layout 2018-05-15 20:13:12 +02:00
spycrab
54d81ed13a Qt/SettingsWindow: Wrap tabs in scrollareas 2018-05-15 20:13:12 +02:00
spycrab
b9bd4ecbcb Qt/Host: Fix random crashes when exiting fullscreen 2018-05-15 18:22:26 +02:00
spycrab
e922f91cc3 Qt/GeneralWidget: Restore the adapter properly 2018-05-14 21:16:20 +02:00
Léo Lam
159f6115e2
Merge pull request #6851 from lioncash/usage
BreakpointWidget: Move variables closer to usage sites in OnLoad()
2018-05-14 19:18:05 +02:00
Léo Lam
b5761f9dc7
Merge pull request #6852 from lioncash/code
CodeViewWidget: Minor changes
2018-05-14 19:17:35 +02:00
Léo Lam
5b15060127
Merge pull request #6857 from spycrab/qt_minor_win
Qt: Minor window fixes
2018-05-14 19:11:56 +02:00
Zexaron
ff971b1a6f Qt/GeneralWidget remove unnecesary description wiring 2018-05-14 18:18:18 +02:00
spycrab
ca5dc25694
Merge pull request #6858 from lioncash/capture
DolphinQt2: Resolve unused lambda capture warnings
2018-05-14 16:47:55 +02:00
spycrab
26b1048975
Merge pull request #6850 from lioncash/moc
DolphinQt2: Add missing Q_OBJECT macro to all QObject-related classes missing it
2018-05-14 16:29:53 +02:00
Lioncash
e2543ea801
DolphinQt2: Resolve unused lambda capture warnings
Resolves -Wunused-lambda-capture warnings.
2018-05-14 10:11:47 -04:00
spycrab
7e9bf12246 Qt: Minor window fixes
* Remove some more "What's this?" buttons
* Add some missing titles
2018-05-14 11:10:04 +02:00
aldelaro5
6f2d8fad8f
Qt: allow to resize the render widget however wanted on render to main 2018-05-14 00:43:31 -04:00
Lioncash
d7a3ce26de CodeViewWidget: Get rid of magic values in OnInsertBLR() and OnInsertNOP()
A call like ReplaceAddress(address, 0) is pretty ambiguous; so is
ReplaceAddress(address, false), so use an enum class that tells people
straight-up what the replacer is.

This also gets rid of the really weird naming, where if 'blr' is true,
we'd be replacing the address with a NOP, rather than an actual BLR
instruction, so we invert that so it actually makes sense. There's no
actual bug fixed here though, considering the OnInsert functions
specified the correct values; it's literally just weird naming.
2018-05-13 18:33:51 -04:00
Lioncash
bbc0aee5ea CodeViewWidget: Replaces usages of QString::fromStdString with QStringLiteral where applicable
There's no need to construct a std::string here, when there's no dynamic
elements to the text.
2018-05-13 18:11:09 -04:00
Lioncash
644bbb29f3 CodeViewWidget: Remove unnecessary includes 2018-05-13 18:06:37 -04:00
Lioncash
7032863569 CodeViewWidget: Remove unnecessary QColor constructions
QBrush also accepts regular GlobalColor values as well.
2018-05-13 18:01:10 -04:00
Lioncash
a0a0295f9d BreakpointWidget: Move variables closer to usage sites in OnLoad()
In the early-out case, we now don't end up constructing two vectors
that aren't even used. It also keeps relevant code together.
2018-05-13 17:56:03 -04:00
aldelaro5
2c861e75f5
Qt/debugger: only consider debugger hotkeys if debugging is enabled 2018-05-13 17:39:44 -04:00
Léo Lam
345838d517
Merge pull request #6842 from spycrab/qt_map_apply
Qt/Mapping: Fix mapping changes not being applied instantly
2018-05-13 23:34:18 +02:00
Lioncash
222fe58e25 DolphinQt2: Add missing Q_OBJECT macro to all QObject-related classes missing it
Without this macro, if any signals or slots were attempted to be used,
they wouldn't work; neither would various other features of the Qt
meta-object system. This can also lead to weird behavior in other
circumstances. Qt's documentation specifically states:

"Therefore, we strongly recommend that all subclasses of QObject use the
Q_OBJECT macro regardless of whether or not they actually use signals,
slots, and properties."

on its page for "The Meta-Object System", which can be seen here:
https://doc.qt.io/qt-5/metaobjects.html

Let's opt for "always do the right thing", and keep the code extensible
for the future and not have random things blow up on us.
2018-05-13 17:33:32 -04:00
spycrab
c7a0b6c9f8
Merge pull request #6831 from spycrab/qt_memcard_fixes
Qt/GCMemcardManager: Fix multiple issues
2018-05-13 23:14:46 +02:00
JosJuice
74d561085c
Merge pull request #6848 from lioncash/guard
DolphinQt2: Add missing header guards for CheatCodeEditor and MappingIndicator
2018-05-13 22:21:40 +02:00
Lioncash
b03c433543 DolphinQt2: Add missing header guards for CheatCodeEditor and MappingIndicator
Prevents potential double inclusion issues from ever happening.
2018-05-13 16:11:30 -04:00
Léo Lam
8f44423a5b
Merge pull request #6846 from spycrab/qt_native_sep
Qt: Use native dir separators
2018-05-13 22:10:10 +02:00
Léo Lam
6c38e4b47f
Merge pull request #6847 from lioncash/fs-include
FilesystemWidget: Replace DiscIO includes with forward declarations
2018-05-13 22:08:09 +02:00
Lioncash
d1d584d16b FilesystemWidget: Replace DiscIO includes with forward declarations
Avoids the need to use an ugly ifdef around a header, and also resolves
an indirect inclusion in PropertiesDialog.
2018-05-13 16:01:16 -04:00
Léo Lam
1fe92b8be7
Merge pull request #6845 from lioncash/patch-dlg
NewPatchDialog/PatchesWidget: Use forward declarations where applicable
2018-05-13 22:00:43 +02:00
Léo Lam
07b57c7ac6
Merge pull request #6843 from lioncash/patch
PatchEngine: Minor changes
2018-05-13 21:58:55 +02:00
spycrab
5673a64612 Qt: Use native dir separators 2018-05-13 21:51:38 +02:00
Lioncash
0995cfef6a PatchEngine: Make PatchType an enum class
Makes the enum strongly typed. A function for retrieving the string
representation of the enum is also added, which allows hiding the array
that contains all of the strings from view (i.e. we operate on the API,
not the exposed internals). This also allows us to bounds check any
querying for the strings.
2018-05-13 15:46:51 -04:00
Lioncash
799e4154be PatchesWidget: Convert Core and UICommon includes into forward declarations
Avoids propagating inclusions through UI headers
2018-05-13 15:38:58 -04:00
Lioncash
df3f9af6d7 NewPatchDialog: Convert PatchEngine include into a forward declaration
Avoids needing to include Core headers in UI-related header files,
preventing unintentional propagation.
2018-05-13 15:34:46 -04:00
spycrab
9e2f9db94c Qt/Mapping: Fix mapping changes not being applied instantly 2018-05-13 21:21:31 +02:00
spycrab
b9ae157835 Qt/RenderWidget: Fix render-to-main focus 2018-05-13 21:08:34 +02:00
Lioncash
a166cf2481 PatchEngine: Give Patch and PatchEntry default member initializers
Avoids potentially using the values uninitialized. While we're at it,
also drop the prefixed underscores from one of the constructors.
2018-05-13 15:08:32 -04:00
Lioncash
15a522fe9b DolphinQt2/NewPatchDialog: Remove unused <iostream> include
Including <iostream> causes a static constructor to be injected into the
translation unit, even if the everything from the header itself is
unused.
2018-05-13 14:04:22 -04:00