Commit Graph

419 Commits

Author SHA1 Message Date
Michael M
623026f420 Connect to Settings::PathAdded/Removed directly in GameListModel
It no longer makes sense to connect these signals in GameList, since
GameListModel is now owned by Settings.
2017-08-19 15:59:40 -07:00
Michael M
7d9ad88bc5 Add initial paths to GameTracker after construction
It's strange to see GameTracker add its own initial paths in
construction, because you might expect a race condition where the
GameLoaded signal is emitted before it gets connected to in
GameListModel.

In fact, this doesn't happen, but only because of how it abuses the Qt
signals mechanism to load files asynchronously: GameLoader emits a
GameLoaded signal which gets forwarded to the GameTracker::GameLoaded
signal _after_ control returns to the event loop, at which point
GameListModel has connected.

This commit moves the logic of adding initial paths out of GameTracker
to a point after the signals are connected, which is more obvious and
doesn't rely on how GameTracker implements concurrency.
2017-08-19 15:59:40 -07:00
Michael M
abf55be70d RunOnObject: add missing QThread include 2017-08-17 16:41:35 -07:00
Leo Lam
a53b01360c Merge pull request #5898 from ligfx/extractupnp
Common: extract UPnP namespace from NetPlayServer
2017-08-17 03:11:41 +08:00
Léo Lam
d2452b8ecf Qt: Fix old usage of GetSelectedGame
Waited too long before merging a PR, which managed to break the build
because GetSelectedGame was changed without introducing any conflict :(
2017-08-16 13:21:14 +02:00
Leo Lam
3748384008 Merge pull request #5746 from leoetlino/disc-updates
Add support for installing disc updates from the game list
2017-08-16 19:02:42 +08:00
Jonathan Hamilton
5c213a5ad5 Qt frontend build fix for USE_UPNP=OFF
A couple of missing "#ifdef USE_UPNP" around
NetPlaySetupDialog::m_host_upnp
2017-08-14 13:31:55 -07:00
Michael M
b5d070b0cf NetPlayServer: handle port forwarding in constructor 2017-08-13 18:50:52 -07:00
Michael M
4b50e77a26 NetPlayClient/Server: apply Parameter Object pattern to traversal parameters 2017-08-13 18:50:52 -07:00
Michael M
fdb5828d62 Qt MainWindow: clean up Netplay settings logic 2017-08-13 18:50:52 -07:00
JosJuice
9747a4c697 DolphinQt2: Replace "Pad size" with "Buffer size"
"Pad size" just doesn't make much sense. Let's go with "Buffer size"
instead, since the control for it is labeled "Buffer".

(Another possibility is "Pad buffer size", but I'm against that,
because we've stopped referring to controllers as "pads" in almost
all GUI strings.)
2017-08-11 12:22:44 +02:00
Leo Lam
438610a58d Merge pull request #5748 from nitrousox1de/hide-mouse-delay-fullscreen
Hide mouse delay fullscreen
2017-08-11 17:34:46 +08:00
Léo Lam
b2c41cec0a Config: Include SYSCONF in base layer
Settings that come from the SYSCONF are now included in Dolphin's
config system as part of the base layer. They are handled in a
special way compared to other settings to make sure they are only
loaded from and saved to the SYSCONF (to avoid different, possibly
contradicting sources of truth).
2017-08-11 15:36:31 +08:00
Michael M
3c002f0213 GameList: make GetSelectedGame a pointer to GameFile 2017-08-10 13:22:35 -07:00
Léo Lam
5ba6182bbc Qt: Fix WiiUpdate progress dialog cancel button
We didn't properly remove the default cancellation handler, which would
cause crashes if the dialog was gone too early.
2017-08-10 23:47:18 +08:00
Léo Lam
ea3b351d92 Qt: Add menu item to perform system update from disc 2017-08-10 23:47:18 +08:00
Léo Lam
0fdae2adb8 UI: Refactor Wii update code
This moves the progress dialog logic and the result dialog to separate
functions that can easily be reused for disc updates.
2017-08-10 23:47:18 +08:00
JosJuice
e806928071 Make DolphinQt2 netplay strings more like in DolphinWX 2017-08-10 15:58:04 +02:00
spycrab
366d4c7744 Qt/NetPlay: Use TraversalClient::FailureReason 2017-08-10 15:41:01 +02:00
Leo Lam
e41a9905c0 Merge pull request #5744 from JosJuice/remove-non-integer-irs
Remove non-integer IRs
2017-08-10 17:10:26 +08:00
spycrab
9b65f38382 Make Visual Studio happy 2017-08-10 06:49:57 +02:00
spycrab
78cc759d56 Settings: Implement NetPlay globals 2017-08-10 06:49:57 +02:00
spycrab
2e29509b75 Qt/GameList: Add "Host with NetPlay" option 2017-08-10 06:49:57 +02:00
spycrab
13fac93a29 Qt: Implement NetPlay 2017-08-10 06:49:57 +02:00
spycrab
d5629017b9 Qt/NetPlay: Implement MD5 dialog 2017-08-09 23:13:20 +02:00
spycrab
962af060a0 Qt/GameList: Add method to get unique ID for item 2017-08-09 00:05:48 +02:00
spycrab
e9138f7512 Qt/GameList: Implement GetModel() 2017-08-09 00:05:48 +02:00
spycrab
655778f7f1 Qt: Implement GetUniqueID() 2017-08-09 00:05:48 +02:00
spycrab
ca1646d99b Qt: Add "Start NetPlay" option to the menubar 2017-08-09 00:05:48 +02:00
JosJuice
f090a94319 Remove non-integer IRs 2017-08-08 12:09:50 +02:00
Andrew
d38987e1e8 Hide mouse cursor after delay in DolphinQt 2017-08-06 17:52:37 -04:00
Lioncash
2363be4c63 ElidedButton: Make constructor explicit
Prevents implicit conversions to ElidedButton.
2017-08-06 17:31:29 -04:00
Lioncash
5153271278 ElidedButton: Add missing override specifier on paintEvent() 2017-08-06 17:26:07 -04:00
JosJuice
fa4723ffb4 DolphinQt2: Rename "Table"/"List" to "List View"/"Grid View"
Sentret_C posted this comment on Transifex recently:

"What Dolphin refers to as "Table View" and "List View" are
similar to "List View" and "Grid View" in Steam, and I think
the Steam names describe them better."

I agree with that, so here's a commit that changes the names.
2017-08-06 11:35:45 +02:00
Leo Lam
9bab7ffa83 Merge pull request #5794 from spycrab/qt_menubar
Qt: Overhaul menubar
2017-08-04 14:42:58 +08:00
Leo Lam
51af8d4aeb Merge pull request #5829 from ligfx/qtmsgalerthandler
Qt: register MsgAlertHandler
2017-08-04 09:53:24 +08:00
Michael M
7bdfd862d7 Qt: register MsgAlertHandler
This is the thing that pops up a message box when something goes wrong,
or when you want to override a previously dumped file, etc.
2017-08-03 13:29:59 -07:00
Michael M
76459d88bf QtUtils: add RunOnObject 2017-08-03 13:29:59 -07:00
JosJuice
b29ca4f830 DolphinQt2: Make logging strings more like in DolphinWX
Like PR 5817 but for strings that were added after that PR was merged.
2017-08-03 16:43:50 +02:00
Leo Lam
d6e051c942 Merge pull request #5703 from ligfx/blockuserinputfilter
QtUtils: add BlockUserInputFilter
2017-08-02 12:13:56 +08:00
Leo Lam
f208ed8924 Merge pull request #5861 from JosJuice/pr-5817-fixup
PR #5817 fixup
2017-08-02 11:57:14 +08:00
Leo Lam
9b0fae3183 Merge pull request #5730 from spycrab/qt_logging
Qt: Implement logging window
2017-08-01 23:51:35 +08:00
JosJuice
a345ab2515 PR 5817 fixup 2017-08-01 14:34:44 +02:00
JosJuice
09832caf41 DolphinQt2: Fix memory leak in GameLoader::LoadGame 2017-08-01 11:36:40 +02:00
JosJuice
5fe3745750 Don't show "extra" files from DirectoryBlobs in game list
For instance, we don't want to show TGC files that might be
inside the /files/ directory of a GameCube DirectoryBlob,
and we don't want to show the /sys/main.dol files for extra
partitions of Wii DirectoryBlobs.
2017-08-01 11:36:40 +02:00
JosJuice
12cbeb2288 Remove DVD root and apploader path settings 2017-08-01 11:36:40 +02:00
spycrab
84b44fa467 Qt: Implement logging widget (+ configuration) 2017-08-01 01:36:08 +02:00
spycrab
962d684ca2 Qt: Implement logging settings and signals 2017-08-01 01:36:08 +02:00
spycrab
5b733b8710 Qt: Add log menubar options 2017-08-01 01:36:08 +02:00
Lioncash
f6c21e002b General: Remove unnecessary semicolons 2017-07-30 16:39:53 -04:00
Stenzek
1fccbd5be3 DolphinWX: Add a progress dialog host command
Allows feedback from backends to be communicated to the user when
long-running operation are performed (e.g. shader compilation).
2017-07-30 12:38:48 +10:00
spycrab
b3e93c5273 Qt: Overhaul menubar 2017-07-29 21:19:05 +02:00
Anthony
97ea97564f Merge pull request #5833 from leoetlino/unused
Qt/Config: Remove unused members
2017-07-27 12:00:33 -07:00
Anthony
6fe33f844f Merge pull request #5770 from ligfx/lognewconfig
LogManager: use layered config
2017-07-27 11:58:57 -07:00
Léo Lam
27924a1e2e Qt/Config: Remove unused members 2017-07-27 17:26:28 +08:00
Leo Lam
7a51b0bcec Merge pull request #5807 from leoetlino/connect-wiimote
Move the Wiimote connect code out of Host
2017-07-27 15:02:28 +08:00
Leo Lam
5c29ea54c5 Merge pull request #5817 from JosJuice/qt-strings-match-wx
Make DolphinQt2 strings more like DolphinWX strings
2017-07-27 15:01:56 +08:00
Leo Lam
b140a6eb04 Merge pull request #5830 from lioncash/prototypes
DolphinQt2: Remove unimplemented prototypes
2017-07-27 15:01:29 +08:00
Lioncash
fb42c3eddc DolphinQt2: Add missing include guards 2017-07-26 16:31:58 -04:00
Lioncash
80b938b403 DolphinQt2: Remove unimplemented prototypes
Also removes an unnecessary includes in related files
2017-07-26 16:26:55 -04:00
Michael M
0437f4c486 IOWindow: use BlockUserInputFilter 2017-07-26 10:30:02 -07:00
Michael M
c624ef43f0 MappingButton: use BlockUserInputFilter 2017-07-26 10:30:02 -07:00
Michael M
7d438da911 QtUtils: Add BlockUserInputFilter 2017-07-26 10:30:01 -07:00
JosJuice
de6bd80f9c DolphinQt2: Add i18n comments for Table/List
To avoid confusion with the verb "list" and the kind of table
that's a type of furniture.
2017-07-26 08:04:10 +02:00
JosJuice
b32fe5e41d DolphinQt2: Remove the %1 from "%1 Banner Details"
It's not particularily useful to list the platform here,
and these kinds of messages that use words as parameters
are more likely to be mistranslated than the average string.
2017-07-26 08:04:10 +02:00
JosJuice
ce11b34e74 Make DolphinQt2 strings more like DolphinWX strings
Without this, we would be pushing a lot of extra strings onto
translators now that 55fb6ef is merged.
2017-07-26 08:04:10 +02:00
JosJuice
8deba867e8 DolphinQt2: Remove ellipses from settings menu options
The action that these menu options perform is to open a
settings window, and that action is completed instantly,
so we shouldn't have ellipses.
2017-07-26 08:00:17 +02:00
Leo Lam
10db1bcbca Merge pull request #5828 from ligfx/qtqueueonobject
Qt: add QueueOnObject
2017-07-26 12:56:08 +08:00
Leo Lam
be8324380d Merge pull request #5786 from grimpunch/qt_viewoptions
Qt: Implement Show Platforms / Show Regions
2017-07-26 12:02:14 +08:00
Michael M
2c03cfacc2 Qt WiiUpdate: use QueueOnObject instead of Core::QueueHostJob 2017-07-25 17:44:07 -07:00
Michael M
734c9e1459 QtUtils: add QueueOnObject 2017-07-25 17:44:07 -07:00
JosJuice
8292d378ea Merge pull request #5824 from lioncash/include-guard
ListProxyModel: Add missing include guard
2017-07-25 08:23:49 +02:00
Mat M
63f1f122fa Merge pull request #5729 from ligfx/qtremoveoldsyntax
DolphinQt2: update old SLOT/SIGNAL syntax
2017-07-24 18:48:20 -05:00
Lioncash
7373474888 ListProxyModel: Add missing include guard 2017-07-24 19:46:25 -04:00
Christian Murphy
df35a26628 Qt: Implement Show Platforms / Show Regions
Porting the View config logic from WX to Qt.
Adds to the View Menu
2017-07-24 14:36:09 +01:00
Leo Lam
a23a38da23 Merge pull request #5821 from JosJuice/qt-builtin-database-placement
DolphinQt2: Change the placement of "Use Built-In Database of Game Names"
2017-07-24 11:06:20 +08:00
Michael Maltese
aafb61c187 DolphinQt2: Remove 'slots:' syntax from headers
With Qt5's new connection syntax, method pointers and functors are
connected directly. There's no need to declare slots.
2017-07-23 15:07:49 -07:00
Michael Maltese
f0fd38698e DolphinQt2: use new connection syntax instead of old syntax 2017-07-23 15:07:49 -07:00
Michael Maltese
a365686956 GameList: fix Decompress slot typo
There is no such `DecompressISO` slot.
2017-07-23 15:07:49 -07:00
Leo Lam
7c70e77c74 Merge pull request #5818 from JosJuice/qt-localization-fixes
DolphinQt2: Fix localization issues
2017-07-23 22:04:17 +08:00
Leo Lam
96a8fb720d Merge pull request #5819 from JosJuice/qt-analytics-message
DolphinQt2: Reword the analytics message
2017-07-23 22:02:02 +08:00
JosJuice
bb3bbb2887 DolphinQt2: Fix saving "Use Built-In Database of Game Names"
This one is my fault too
2017-07-23 15:29:43 +02:00
JosJuice
22fbd65d47 DolphinQt2: Change the placement of "Use Built-In Database of Game Names"
When I added this setting, I didn't notice that the interface
pane in DolphinQt2 was split into two different sections.
2017-07-23 15:28:34 +02:00
JosJuice
34cacd4944 DolphinQt2: Reword the analytics message
"this" made sense when "Do you authorize..." was on the bottom,
but it doesn't make sense when it's at the top.

Also removing unnecessary newlines.
2017-07-23 15:18:12 +02:00
JosJuice
20172196f5 DolphinQt2: Let game properties show names for WADs 2017-07-23 15:11:18 +02:00
JosJuice
5938c58f99 DolphinQt2: Fix localization issues 2017-07-23 10:50:20 +02:00
Léo Lam
ee868e2362 Move the Wiimote connect code out of Host
I don't know who thought it would be a good idea to put the Wiimote
connect code as part of the Host interface, and have that called
from both the UI code and the core. And then hack around it by having
"force connect" events whenever Host_ConnectWiimote is called
from the core...
2017-07-23 15:47:32 +08:00
Léo Lam
9357fa3514 Qt/AboutDialog: Fix the copyright string 2017-07-23 14:58:01 +08:00
Leo Lam
673210afea Merge pull request #5814 from ligfx/macremovecfbundlelocalizations
Remove CFBundleLocalizations from Info.plist
2017-07-23 14:48:38 +08:00
Leo Lam
3cbf56a9ad Merge pull request #5797 from ligfx/qtoptionsmenu
Qt: implement remainder of 'Options' menu
2017-07-23 14:46:48 +08:00
Leo Lam
55fb6efea3 Merge pull request #5812 from ligfx/gettexttizeqt
gettextize: extract arguments to Qt's `tr`
2017-07-23 14:35:44 +08:00
Leo Lam
a7c3d035c8 Merge pull request #5806 from Starsam80/qt-movable-headers
Qt: Allow the game list headers to be rearranged
2017-07-23 14:19:46 +08:00
Michael Maltese
03f26ec5b3 Remove CFBundleLocalizations from Info.plist
It's only needed for apps that don't use .lproj folders.
2017-07-22 23:15:14 -07:00
Michael Maltese
4776fdc130 Qt/AboutDialog: remove literal UTF-8 characters 2017-07-22 22:35:25 -07:00
Leo Lam
efd318df64 Merge pull request #5791 from leoetlino/wiimote-indicator
Remove Wii Remote connection status from status bar
2017-07-22 22:03:25 +08:00
Starsam80
d9a09cff14
Qt: Allow the game list headers to be rearranged 2017-07-22 00:38:09 -06:00
Léo Lam
f106a9637d Replace balanced Core::PauseAndLock calls with RunAsCPUThread
Core::PauseAndLock requires all calls to it to be balanced, like this:

    const bool was_unpaused = Core::PauseAndLock(true);
    // do stuff on the CPU thread
    Core::PauseAndLock(false, was_unpaused);

Aside from being a bit cumbersome, it turns out all callers really
don't need to know about was_unpaused at all. They just need to do
something on the CPU thread safely, including locking/unlocking.

So this commit replaces Core::PauseAndLock with a function that
makes both the purpose and the scope of what is being run on the
CPU thread visually clear. This makes it harder to accidentally run
something on the wrong thread, or forget the second call to
PauseAndLock to unpause, or forget that it needs to be passed
was_unpaused at the end.

We also don't need comments to indicate code X is being run on the
CPU thread anymore, as the function name makes it obvious.
2017-07-21 16:45:59 +08:00
Anthony
39e17ccc41 Merge pull request #5793 from spycrab/qt_fullscreen_fix
Qt: Fix missing window border after exiting fullscreen under Windows
2017-07-19 08:52:22 -07:00
Michael Maltese
e1554c04a1 Qt: implement remainder of 'Options' menu 2017-07-16 18:23:59 -07:00
Michael Maltese
2b712bdbaa ListTabWidget: disallow deselecting items 2017-07-16 18:23:59 -07:00