Commit Graph

419 Commits

Author SHA1 Message Date
spycrab e7318fda34 Qt: Bring column selection up to par with Wx 2017-09-13 22:05:45 +02:00
spycrab 2a7ad0b721 Qt/FilesystemWidget: Use AddAction helper 2017-09-11 14:25:30 +02:00
Mat M a9b339fb65 Merge pull request #6048 from spycrab/qt_fix_tools
Qt: Fix "Load Wii System Menu" being in the wrong place
2017-09-10 02:18:13 -04:00
spycrab c3a08f8653 Qt: Fix "Load Wii System Menu" being in the wrong place 2017-09-10 06:43:29 +02:00
Lioncash 696e1b40b5 Common: Move version strings to their own header
Ideally Common.h wouldn't be a header in the Common library, and instead be renamed to something else, like PlatformCompatibility.h or something, but even then, there's still some things in the header that don't really fall under that label

This moves the version strings out to their own version header that doesn't dump a bunch of other unrelated things into scope, like what Common.h was doing.

This also places them into the Common namespace, as opposed to letting them sit in the global namespace.
2017-09-09 19:28:10 -04:00
Markus Wick 62a331deed Merge pull request #6035 from leoetlino/warning-fixes
Core: Fix warnings
2017-09-08 09:17:31 +02:00
spycrab 16e99985f9 Qt/GameList: Use AddAction for "Change Disc" 2017-09-07 20:42:11 +02:00
Léo Lam a8849f87f1 Core: Fix warnings
Fixes two -Wmissing-declarations warnings
2017-09-07 20:35:17 +02:00
spycrab 0b2b72b366 Qt: Fix Wii Disc options being disabled while core is running 2017-09-07 19:46:06 +02:00
Leo Lam 14bd0fbf4b Merge pull request #6029 from spycrab/qt_change_disc
Qt/GameList: Add "Change Disc" option
2017-09-07 19:24:25 +02:00
Leo Lam c472462498 Merge pull request #6021 from spycrab/qt_build_by_default
CMake: Build DolphinQt2 by default
2017-09-07 19:23:07 +02:00
Leo Lam 0de3593b45 Merge pull request #6008 from spycrab/qt_older
Qt: Support versions < 5.6
2017-09-07 19:22:40 +02:00
Leo Lam 7971a4d66c Merge pull request #5981 from spycrab/qt_filesystem
Qt/GameList: Implement "Filesystem" tab
2017-09-07 19:19:48 +02:00
spycrab 8f8e96f59f Qt/GameList: Add "Change Disc" option 2017-09-07 01:25:22 +02:00
JosJuice b96e4a2bce Merge pull request #5927 from spycrab/qt_gamelist_cache
Qt: Implement gamelist caching
2017-09-05 21:16:22 +02:00
spycrab 28799bbe79 CMake: Build DolphinQt2 by default 2017-09-04 22:28:48 +02:00
spycrab a361a1deed Qt/SettingsWindow: Fix window not being detected as a dialog by some window managers 2017-09-04 19:50:24 +02:00
spycrab 4fdd4e2718 Qt: Support versions < 5.6 2017-09-04 10:40:47 +02:00
spycrab f00456e6bf Qt/ControllersWindow: Use std::map instead of std::unordered_map 2017-09-04 08:58:52 +02:00
spycrab 0d3c4a3883 Qt/DevelopmentWarning: Add "Don't show me this warning again" option 2017-09-03 03:46:23 +02:00
spycrab 1b593fd56b Qt: Implement TAS/Movie shortcuts 2017-09-03 02:58:38 +02:00
spycrab 0e7ed3514f Qt: Implement "Movie" menu 2017-09-03 02:57:44 +02:00
spycrab 4163ee42bc Qt/GameList: Implement SelectionChanged() 2017-09-03 01:49:04 +02:00
spycrab 018c2cfd65 Qt/MSVC: Add icon 2017-09-02 23:51:59 +02:00
spycrab fcdd247f93 Qt: Fix building on <= 5.7.x 2017-09-02 03:20:20 +02:00
spycrab 1173c2f790 Qt: Implement "Extract Certificates from NAND" 2017-08-29 08:31:50 +02:00
spycrab 561d31f887 Qt: Implement "Import BootMii NAND Backup" 2017-08-29 08:31:45 +02:00
spycrab a2b7632850 Qt: Implement "Load GameCube Main Menu" 2017-08-29 02:57:46 +02:00
spycrab 0dfde1d34e Qt: Implement "Export All Wii Saves" 2017-08-28 23:00:14 +02:00
spycrab 9469fc3d6f Qt: Implement "Import Wii Save" 2017-08-28 23:00:14 +02:00
spycrab 95a53a435c Qt/GraphicsWidget: Fix bad layout column 2017-08-27 10:04:06 +02:00
spycrab 8b346b7058 Qt/GameList: Implement "Filesystem" tab 2017-08-26 14:56:33 +02:00
spycrab 56aad4a958 Qt/PropertiesDialog: Make title more like Wx 2017-08-26 14:44:38 +02:00
spycrab 2630fa0ce9 Qt: Only show "Filesystem" Tab when game is disc based 2017-08-25 20:35:41 +02:00
spycrab b9c5a2af05 Qt: Implement gamelist caching 2017-08-24 07:17:31 +02:00
Anthony 935c1da357 Merge pull request #5951 from ligfx/gametrackerworkqueuethread
GameTracker: use new Common::WorkQueueThread instead of signals/slots
2017-08-23 08:02:36 -07:00
Leo Lam 788af71f30 Merge pull request #5949 from ligfx/gamelistmodelupdategame
GameListModel: make UpdateGame update existing files as well
2017-08-22 21:39:29 +02:00
Leo Lam b3a8209821 Merge pull request #5960 from ligfx/gamefiledontstorefilepathparts
GameFile: don't store file path parts
2017-08-22 21:29:30 +02:00
Leo Lam 232b81999a Merge pull request #5961 from ligfx/gamefilebanner
GameFile: handle missing banners in UI instead
2017-08-22 21:26:38 +02:00
Michael M d00ecb7231 GameFile: remove unused m_company 2017-08-22 12:18:49 -07:00
JosJuice 09f3f9b41a Remove NonCopyable
The class NonCopyable is, like the name says, supposed to disallow
copying. But should it allow moving?

For a long time, NonCopyable used to not allow moving. (It declared
a deleted copy constructor and assigment operator without declaring
a move constructor and assignment operator, making the compiler
implicitly delete the move constructor and assignment operator.)
That's fine if the classes that inherit from NonCopyable don't need
to be movable or if writing the move constructor and assignment
operator by hand is fine, but that's not the case for all classes,
as I discovered when I was working on the DirectoryBlob PR.

Because of that, I decided to make NonCopyable movable in c7602cc,
allowing me to use NonCopyable in DirectoryBlob.h. That was however
an unfortunate decision, because some of the classes that inherit
from NonCopyable have incorrect behavior when moved by default-
generated move constructors and assignment operators, and do not
explicitly delete the move constructors and assignment operators,
relying on NonCopyable being non-movable.

So what can we do about this? There are four solutions that I can
think of:

1. Make NonCopyable non-movable and tell DirectoryBlob to suck it.

2. Keep allowing moving NonCopyable, and expect that classes that
   don't support moving will delete the move constructor and
   assignment operator manually. Not only is this inconsistent
   (having classes disallow copying one way and disallow moving
   another way), but deleting the move constructor and assignment
   operator manually is too easy to forget compared to how tricky
   the resulting problems are.

3. Have one "MovableNonCopyable" and one "NonMovableNonCopyable".
   It works, but it feels rather silly...

4. Don't have a NonCopyable class at all. Considering that deleting
   the copy constructor and assignment operator only takes two lines
   of code, I don't see much of a reason to keep NonCopyable. I
   suppose that there was more of a point in having NonCopyable back
   in the pre-C++11 days, when it wasn't possible to use "= delete".

I decided to go with the fourth one (like the commit title says).
The implementation of the commit is fairly straight-forward, though
I would like to point out that I skipped adding "= delete" lines
for classes whose only reason for being uncopyable is that they
contain uncopyable classes like File::IOFile and std::unique_ptr,
because the compiler makes such classes uncopyable automatically.
2017-08-22 16:40:34 +02:00
Michael M 5f30ebed23 GameFile: don't store file path parts 2017-08-21 23:55:45 -07:00
Michael M e88b5f4254 GameFile: add missing include for QFileInfo 2017-08-21 23:55:45 -07:00
Michael M 061da1300a GameFile: handle missing banners in UI instead
Currently, GameFile returns a generic banner if the file didn't have one
available (either because the file format doesn't support it, or because
it's a Wii file without an associated save).

It makes more sense to handle the lack of banner in the UI layer. The
game list will use the generic missing banner explicitly (no change from before), and the game info window now omits the banner display entirely if the file didn't have one (since it's not useful to display/allow the user to save the "missing banner" banner).
2017-08-21 18:00:04 -07:00
Michael M 8c13e0230c GameTracker: use WorkQueueThread 2017-08-20 14:40:56 -07:00
Leo Lam 165a995cc4 Merge pull request #5950 from ligfx/gamelistmodelfilenamefallback
GameListModel: fallback to file name if long name is empty
2017-08-20 23:29:27 +02:00
Michael M 1a59ea3adb GameFile: don't assign English long name for ELF/DOLs 2017-08-20 13:50:24 -07:00
Michael M f3ab974bc6 GameListModel: fallback to file name if long name is empty 2017-08-20 13:50:24 -07:00
Michael M 6bfb280cec GameListModel: make UpdateGame take a const ref 2017-08-20 13:46:49 -07:00
Michael M f724a06108 GameListModel: make UpdateGame update existing files as well 2017-08-20 13:46:49 -07:00