Compare commits

...
260 Commits
Author SHA1 Message Date
LePresidente 35e0bc2285 Disable BSA Conflict Checking.
Version Bump to 2.1.0.1 (Once off using the 4th point do to change being so minor) Next version will be 2.1.1
2017-12-26 11:53:29 +02:00
LePresidente 2ea23c4129 Disable the bsa tab for release
Version bump to 2.1.0
Updated about window
2017-12-25 07:04:55 +02:00
Brian Munro 100f57dea1 Merge pull request #161 from erasmux/deactivate_bug_fix
Fix rare crash when deactiving mods
2017-12-24 17:37:54 +02:00
Eran Mizrahi 708928e643 Fix rare crash when deactiving mods 2017-12-24 17:24:46 +02:00
Brian Munro db1e63dc72 Merge pull request #160 from erasmux/dev
Deploy also styles/qwindowsvistastyle.dll
2017-12-24 09:06:54 +02:00
Eran Mizrahi 74e88b00c8 Deploy also styles/qwindowsvistastyle.dll 2017-12-22 11:37:06 +02:00
Brian Munro 28a68cf51b Merge pull request #156 from erasmux/vs_usvfs_plus_various_fixes
Vs usvfs plus various fixes
2017-12-21 08:31:25 +02:00
Eran Mizrahi a24a1cbf25 Hide boost compiler version warnings 2017-12-20 02:14:14 +02:00
Eran Mizrahi 0c75ff1836 Fix modorganizer staging 2017-12-20 02:00:56 +02:00
Eran Mizrahi 5c192fb8c5 Use Qt deploy also for Qt plugins (cherry picking only the ones we need) 2017-12-19 15:44:28 +02:00
Eran Mizrahi 80fc713273 fix usvfs includes (following usvfs VS project) 2017-12-19 15:44:28 +02:00
Eran Mizrahi cb1c9f5e83 Tie moshortcuts to a specific instance 2017-12-19 15:44:27 +02:00
Eran Mizrahi 7dad8bcb28 avoid splash screen when running a shortcut 2017-12-18 20:04:45 +02:00
Eran Mizrahi 302a9b744d Ensure clearing currentInstance reg key when selecting portable install 2017-12-18 20:04:45 +02:00
Eran Mizrahi ff31ce636b Fix mod rename with custom profiles path 2017-12-18 20:04:44 +02:00
Eran Mizrahi 90421277e7 Ensure all mostlist writing is done through the DelayedFileWriter 2017-12-18 20:04:44 +02:00
Eran Mizrahi 4656ba9447 Increase mo_interface log to help diagnose problems 2017-12-18 20:03:05 +02:00
Jeremy Rimpo b157ebb28c Merge pull request #154 from Silarn/mainline_dev
Implementing archive parsing some prioritization
2017-12-17 21:36:57 -06:00
Jeremy Rimpo 385a888c0b Implement file priority for loose files > archives 2017-12-17 21:33:04 -06:00
Jeremy Rimpo 7b45d807d6 Restore archive tab and partial functionality 2017-12-15 15:01:39 -06:00
Jeremy Rimpo f0597eb243 Merge remote-tracking branch 'up/new_vfs_library' into mainline_dev 2017-12-15 14:39:29 -06:00
Eran Mizrahi 8839e11636 Improve responsiveness of unlock button 2017-12-13 16:53:20 -06:00
Eran Mizrahi 240cbd6a27 Wait for injected processes on MO close 2017-12-13 16:53:20 -06:00
Eran Mizrahi 81344771dd Locked dialog fixes (fix mainwindow modalness; use normal window to fix parentless scenario) 2017-12-13 16:53:20 -06:00
Eran Mizrahi 2c28107ae8 fix waitForProcessCompletion bug 2017-12-13 16:53:20 -06:00
Eran Mizrahi da35cd3ea0 Allow silent closing during instance selection 2017-12-13 16:53:20 -06:00
Eran Mizrahi bd48d2f8bc Remove auto-generated files from source control 2017-12-13 16:53:20 -06:00
Jeremy Rimpo 554b468475 Merge pull request #148 from erasmux/lockeddialog_fixes
Lockeddialog fixes
2017-12-13 15:58:43 -06:00
Eran Mizrahi 604d86ed07 Improve responsiveness of unlock button 2017-12-13 22:27:11 +02:00
Eran Mizrahi a5bb70f53b Wait for injected processes on MO close 2017-12-13 22:27:11 +02:00
Eran Mizrahi 0586b2856b Locked dialog fixes (fix mainwindow modalness; use normal window to fix parentless scenario) 2017-12-13 22:27:11 +02:00
Eran Mizrahi 184b6d3907 fix waitForProcessCompletion bug 2017-12-13 22:27:11 +02:00
Eran Mizrahi 4d54b962aa Allow silent closing during instance selection 2017-12-13 22:27:11 +02:00
Eran Mizrahi 6773e14fc5 Remove auto-generated files from source control 2017-12-13 22:27:11 +02:00
Jeremy Rimpo e4b952278d Merge pull request #147 from Silarn/mainline_dev
Insert the game rather than replacing the current entry
2017-12-13 13:39:24 -06:00
Jeremy Rimpo dda5272dc9 Insert the game rather than replacing the current entry 2017-12-13 13:38:33 -06:00
Jeremy Rimpo 062e0cce2d Merge pull request #145 from Silarn/mainline_dev
A number of fixes and improvements
2017-12-13 13:10:09 -06:00
Jeremy Rimpo 027f941bb1 Properly shut down QtWebEngine 2017-12-13 12:29:23 -06:00
Jeremy Rimpo 083d107875 A number of improvements and fixes
* Move diagnostics tab to un-break tutorials targeting tab 3
* Restrict order locking for force-enabled plugins
* Cascade locked positions in the case of a conflict
* Should remove existing invalid locks
* Add some info to primary plugins in plugin list
* Differentiate plugin names for DLC and CC content
2017-12-13 03:11:03 -06:00
Jeremy Rimpo 2226a483d1 Merge pull request #144 from erasmux/crash_fixes
Crash dumps fixes
2017-12-12 15:43:21 -06:00
Eran Mizrahi 240900de39 Move crash dumps to instance-dependant data folder 2017-12-12 23:22:04 +02:00
Eran Mizrahi 2c69f9c407 call previous unhandled exception filter 2017-12-11 20:23:42 +02:00
Eran Mizrahi ebb30e0c37 Revert "Collect crash dumps also for vectored exceptions"
This reverts commit b75e3c1231.
2017-12-11 20:13:35 +02:00
Jeremy Rimpo 361e59e40d Merge pull request #140 from erasmux/shortcut_fixes
Shortcut fixes
2017-12-11 09:53:28 -06:00
Eran Mizrahi ad702537bd Use single instance also for MO shortcuts 2017-12-11 00:11:17 +02:00
Eran Mizrahi ebf378cda0 Turn on application icon for executables by default 2017-12-10 23:45:20 +02:00
Eran Mizrahi d43f35f56b Run shortcuts using moshortcut:// to avoid command line problems 2017-12-10 23:33:01 +02:00
Eran Mizrahi db973f7422 Allow copying an executable without changing details 2017-12-10 23:32:29 +02:00
Eran Mizrahi 7ab98cb451 move crash dumps to their own folder 2017-12-10 21:34:19 +02:00
LePresidente bf02d13ed4 Added issue template for future issues to stick to a standard 2017-12-10 15:50:15 +02:00
Jeremy Rimpo b2d7181ca7 Merge pull request #139 from erasmux/better_diagnostics_and_shortcuts_fix
Better diagnostics and shortcuts fix
2017-12-09 23:44:21 -06:00
Eran Mizrahi 689248619a rewrite waitForProcessCompletion more robustly 2017-12-10 02:53:20 +02:00
Eran Mizrahi 66b17eea8a Wait for processes run using command line shortcuts 2017-12-10 02:53:19 +02:00
Eran Mizrahi 89b1f1d48d add logging of process spawn 2017-12-10 02:53:19 +02:00
Eran Mizrahi b75e3c1231 Collect crash dumps also for vectored exceptions 2017-12-10 02:53:19 +02:00
Eran Mizrahi 1b4b6dbeb4 cycle crash dumps 2017-12-10 02:53:19 +02:00
Eran Mizrahi 4adb13c943 generate dumps using new diagnostics settings 2017-12-10 02:53:09 +02:00
Eran Mizrahi 54fd26fee1 new diagnostics settings dialog tab 2017-12-10 02:53:08 +02:00
Brian Munro 0aaece55d8 Merge pull request #138 from Silarn/mainline_dev
Fixes for local saves and configuration handling
2017-12-08 19:41:04 +02:00
Jeremy Rimpo ef21bd6193 Scan for and include script extender save files when transferring saves 2017-12-08 02:42:34 -06:00
Jeremy Rimpo b45b6f3342 Don't set save path or mygamesdirectory in initweaks 2017-12-07 21:53:31 -06:00
Jeremy Rimpo d7a1955f18 Use settings to get correct overwrite path for relative location calc.
(Fixes drag & drop from overwrite to mods.)
2017-12-07 14:04:45 -06:00
Jeremy Rimpo 7c80181e01 Merge pull request #137 from Silarn/mainline_dev
Minor correction of HTML structure
2017-12-07 10:58:40 -06:00
Eran Mizrahi 88e218d83e Fix lootcli sorting when temp dir contains a space (i.e. user name has a space) 2017-12-07 10:56:41 -06:00
Eran Mizrahi 720e4dd516 update gitignore 2017-12-07 10:56:41 -06:00
Jeremy Rimpo 2497d4e151 Merge pull request #136 from erasmux/dev
Small fix when running lootcli and temp dir contains a space (i.e. user name has a space)
2017-12-07 10:50:05 -06:00
Eran Mizrahi 9a2a1a4301 Fix lootcli sorting when temp dir contains a space (i.e. user name has a space) 2017-12-07 18:22:37 +02:00
Eran Mizrahi b3898c5d66 update gitignore 2017-12-07 18:20:51 +02:00
Jeremy Rimpo 6794713165 Minor change to correct broken HTML tags 2017-12-06 20:41:03 -06:00
Brian Munro fa598e86db Merge pull request #135 from LePresidente/QT5.7
All changes done for 2.1.0
2017-12-05 06:34:47 +02:00
Jeremy Rimpo ffdc5ca7cc Merge pull request #133 from Silarn/mainline_dev
Final highlighting changes
2017-12-02 13:38:26 -06:00
Jeremy Rimpo e19597ee4e Final highlighting changes 2017-12-02 13:36:33 -06:00
Jeremy Rimpo c55a923bb8 Merge pull request #132 from Silarn/mainline_dev
Numerous updates
2017-11-30 20:55:00 -06:00
Jeremy Rimpo 797a007eab Add unmanaged mods and fix plugin identification 2017-11-30 17:34:28 -06:00
Jeremy Rimpo d7bc542b3d Implement mod/plugin highlighting when pair is selected 2017-11-30 16:37:14 -06:00
Jeremy Rimpo 977d562976 Set the default WebEngineProfile settings to webcache 2017-11-30 00:36:10 -06:00
Jeremy Rimpo af16521a2d Merge remote-tracking branch 'up/QT5.7' into mainline_dev 2017-11-15 18:34:00 -06:00
Jeremy Rimpo 581a8871c6 Category fixes 2017-11-15 18:33:54 -06:00
Jeremy Rimpo 53a54230eb Add resource image for MCM detection 2017-11-13 08:47:44 -06:00
Brian Munro 7ec0b79eb4 Merge pull request #126 from Al12rs/QT5.7
Fix for MO finding the wrong game to manage.
2017-11-11 21:00:28 +02:00
Al12rs 3974ddced4 Fix for MO finding the wrong game to manage.
Commented out code that tried to deduce game and found wrong one. Now, if not already set in INI, file MO will ask the user which one to manage.
2017-11-10 21:00:24 +01:00
Jeremy Rimpo d0099a9dbb Merge remote-tracking branch 'up/QT5.7' into mainline_dev 2017-11-10 14:00:11 -06:00
Jeremy Rimpo 3cf3de700e Add MCM detection (but doesn't fix loading issues :() 2017-11-08 19:30:20 -06:00
Jeremy Rimpo 9ec913945a Add missing Nexus categories 2017-11-08 19:29:10 -06:00
Jeremy Rimpo 092596f57a Don't truncate, bypass the issue by fixing the progress window size 2017-11-07 23:31:07 -06:00
Jeremy Rimpo 8d5c67296f Forcing the progress window to resize seems to hang the extraction process 2017-11-07 22:18:55 -06:00
Jeremy Rimpo 58e17777de Merge pull request #125 from Helidoc65/QT5.7
Fixed to get rid of WindowsWindow::setGeometry: Unable to set geometry bug.
2017-11-07 11:49:06 -06:00
Helidoc65 836e550dd0 Add files via upload
Fixed to get rid of WindowsWindow::setGeometry: Unable to set geometry bug.
2017-11-07 10:42:43 -07:00
Jeremy Rimpo 4cd09a2f3b Wait for mousebutton to reduce MO cpu use while waiting 2017-11-05 14:03:02 -06:00
Jeremy Rimpo a92fc98246 Remove cruft and reapply input event listening on subprocess delay 2017-11-05 13:47:00 -06:00
Jeremy Rimpo 9a3cf3bc1c Merge pull request #121 from Silarn/mainline_dev
Rework waitForProcessCompletion - reduce handle use and add delay
2017-11-05 03:52:22 -06:00
Jeremy Rimpo 853c42081d Rework waitForProcessCompletion - reduce handle use and add delay 2017-11-05 01:45:57 -06:00
LePresidente 901bf0059d processes should be deleted at end of waitForProcessCompletion 2017-11-04 09:54:47 +02:00
Jeremy Rimpo b2d0abe0e4 Merge pull request #120 from Silarn/mainline_dev
Fix remaining handle leaks
2017-11-02 16:05:09 -05:00
Jeremy Rimpo 00af56f7c7 Fix remaining handle leaks 2017-11-02 16:01:55 -05:00
Jeremy Rimpo 55a65b16cc Merge pull request #119 from Silarn/mainline_dev
Process completion fixes
2017-11-02 01:55:13 -05:00
Jeremy Rimpo 51ad72c74d Process completion fixes
* Closes all old handles
* Hides 'unknown' processes
* Correctly detects process chains
2017-11-02 01:41:11 -05:00
Brian Munro 080cfeea41 Merge pull request #117 from Al12rs/QT5.7
Added !found condition to for loop to avoid possible leak.
2017-11-01 06:38:14 +02:00
Jeremy Rimpo ef699514c9 Merge pull request #118 from Silarn/mainline_dev
Do not attempt to add or delete if arch not found
2017-10-31 21:32:19 -05:00
Jeremy Rimpo 087f3841f3 If architecture is not detected, skip handling 2017-10-31 21:29:12 -05:00
Jeremy Rimpo 627660ebb7 Merge remote-tracking branch 'up/QT5.7' into mainline_dev 2017-10-31 17:20:18 -05:00
Al12rs 0825cd0f20 Added !found condition to for loop to ensure that a valid processHandle can't be overwritten to avoid handle leaks. 2017-10-31 23:20:06 +01:00
LePresidente 66e04f636e Merge branch 'QT5.7' of https://github.com/LePresidente/modorganizer into QT5.7 2017-10-31 16:06:38 +02:00
LePresidente 6c54ef5ec2 More fixes to waitForProcessCompletion 2017-10-31 16:00:58 +02:00
Brian Munro 9cc196ae3a Merge pull request #114 from Al12rs/QT5.7
Changed segment of while condition in waitForProcessCompletion()
2017-10-31 15:24:40 +02:00
Al12rs c8118ea0fa Merge pull request #1 from LePresidente/QT5.7
merge pull request: multiple fixes to waitForProcessCompletion.
2017-10-31 12:05:57 +01:00
LePresidente 2f1d270c08 multiple fixes to waitForProcessCompletion. 2017-10-31 12:13:25 +02:00
Jeremy Rimpo 5cb0d1cb3d Merge pull request #2 from Al12rs/QT5.7
Merge upstream + potential while fix
2017-10-30 17:45:03 -05:00
Al12rs d53591c6c9 Changed segment of while condition in waitForProcessCompletion() from OR to AND as it alwais evaluated true. 2017-10-30 19:56:23 +01:00
LePresidente 701e6e4927 Close the handle that is created by FindFirstFileW correctly. 2017-10-30 15:30:28 +02:00
Brian Munro d15262b903 Merge pull request #113 from Silarn/mainline_dev
Updates for script extender usvfs loading
2017-10-30 12:41:05 +02:00
Jeremy Rimpo 88452e5d76 Reimplement ScriptExtender handling by detecting USVFS arch 2017-10-29 19:34:35 -05:00
LePresidente cabffa23a9 Use ScriptExtender PluginPath instead of appending "/plugin" to the old script extender name variable. 2017-10-29 11:38:06 +02:00
Jeremy Rimpo 7e2811cb46 Merge remote-tracking branch 'up/QT5.7' into mainline_dev 2017-10-28 21:58:41 -05:00
LePresidente ebe6011174 Fixes the handle leak in the OrganizerCore::waitForProcessCompletion 2017-10-28 08:30:23 +02:00
Jeremy Rimpo d659ad7294 Update master parsing and detect ESLs by extension 2017-10-26 16:28:15 -05:00
LePresidente 139ee36a3f Fixes
https://github.com/LePresidente/modorganizer/issues/108
2017-10-26 15:50:35 +02:00
LePresidente 4124bc3976 Merge branch 'QT5.7' of https://github.com/LePresidente/modorganizer into QT5.7 2017-10-24 13:56:45 +02:00
LePresidente 643477de2f Updated dll manifest. 2017-10-24 13:56:06 +02:00
Brian Munro bf505d2d5f Merge pull request #107 from Silarn/mainline_dev
Hopefully final ESL corrections
2017-10-24 08:48:11 +02:00
Jeremy Rimpo 2866a494d4 Merge remote-tracking branch 'upstream/QT5.7' into mainline_dev 2017-10-24 01:45:59 -05:00
Jeremy Rimpo 56a3dd4624 Fix minor ESL issues and set a useful URL for issue reporting 2017-10-24 01:45:29 -05:00
Brian Munro 126f8deb55 Merge pull request #106 from Silarn/mainline_dev
Updates for tutorials and nexus description links
2017-10-24 06:18:00 +02:00
Jeremy Rimpo f0f2112c15 Merge remote-tracking branch 'upstream/QT5.7' into mainline_dev 2017-10-23 16:12:15 -05:00
Jeremy Rimpo 0c6f983148 Fix up tutorial scripts
* Patches for QtQuick 2.x
* Fix up tab refs, names, and other out-of-date info
2017-10-23 16:11:38 -05:00
Jeremy Rimpo ac3953030d Fix the nexus description link handler 2017-10-23 16:10:11 -05:00
LePresidente 03608230ac added a catch all for the remote version check when checking for updates. Should stop a hard crash but should probably be reviewed at a date. 2017-10-23 18:33:42 +02:00
Jeremy Rimpo fe44deb765 Update QtQuick import to 2.7 (for Qt 5.7) - works with 5.9
Requires update to uibase
2017-10-23 02:31:22 -05:00
LePresidente b09f8ce7b4 Updated version to 2.1.0beta
Added QtQuick to cmake to try address tutorial issue [Untested]
2017-10-22 21:05:06 +02:00
Brian Munro 2d4b463338 Merge pull request #104 from Silarn/mainline_dev
Updates for ESL support
2017-10-22 08:00:13 +02:00
Jeremy Rimpo e4d431fe21 Display the index of the ESL in the mod index space to differentiate ESLs 2017-10-21 23:00:32 -05:00
Jeremy Rimpo eaeb48d745 Correctly render the modindex for ESLs 2017-10-21 22:43:45 -05:00
Jeremy Rimpo b16a0ab3d9 Add ESL flag type detection
* ESL files can be sorted like ESMs
* ESL files are displayed italicized but not bold
2017-10-20 23:16:04 -05:00
Jeremy Rimpo a611c355ce Basic ESL updates 2017-10-20 20:27:06 -05:00
LePresidente 4689db7624 Fixed cmake to use the QTROOT Parameter instead of hard coding the directory, 2017-10-19 11:24:20 +02:00
LePresidente 8bea685640 windeployqt doesn't automatically detect the requirement for qtwebenginewidgets, so we force it. 2017-05-05 08:39:51 +02:00
LePresidente 91eaba8b44 Updated manifest to use new dll's. 2017-05-01 20:23:53 +02:00
Brian Munro 822534e16a Merge pull request #69 from LePresidente/new_vfs_library
Bring in line with main branch
2017-03-29 02:44:31 -07:00
LePresidente c64e12a289 Version Bump. 2.0.8.3b 2017-02-06 22:21:31 -08:00
Brian Munro 9438098cf1 Merge pull request #51 from ZachHaber/new_vfs_library
Fixed an issue with sort button
2017-01-25 23:53:10 -08:00
ZachHaber 4269e82c80 Fixed an issue with sort button
Sort button will now correctly create the new loadorder.txt.
2017-01-25 20:51:23 -06:00
Brian Munro d63c164a74 Merge pull request #49 from ZachHaber/new_vfs_library
Loot Button & Overwrite
2017-01-17 20:21:58 -08:00
ZachHaber 45cc67da05 Re-enabled the boss button
Properly this time =P
2017-01-17 17:14:38 -06:00
ZachHaber 0da2060da4 Revert "Loot Button"
This reverts commit f2b33d75cb.
2017-01-17 17:11:06 -06:00
ZachHaber 4149ce4cdb Fixing overwrite problems
Changes the organizerproxy to pull from the settings rather than try and
figure it out on its own.
2017-01-17 16:30:42 -06:00
ZachHaber f2b33d75cb Loot Button
Re-enabled the button
2017-01-16 19:34:02 -06:00
Brian Munro d869d99785 Version bump. 2017-01-13 09:15:43 +02:00
Brian Munro bfeda873c4 Merge remote-tracking branch 'ZackHaber-upstream/new_vfs_library' into new_vfs_library 2017-01-13 08:16:23 +02:00
Brian Munro c9766b6e1a Fixes the error code 5/6 issues 2017-01-11 15:47:09 +02:00
LePresidente 99156abc6e First attempt to update to QT5.7 2017-01-04 14:23:53 +02:00
Brian Munro 03328e9f55 Update selfupdater.cpp
Reverted Tabs to spaces
2017-01-03 19:36:15 +02:00
Brian Munro c48d1c36b7 Update mainwindow.ui
Reverted Tabs to spaces
2017-01-03 19:34:56 +02:00
ZachHaber 866a004438 Fixed pluginListPath to allow spaces
lootcli was failing on FO4 b/c it was passing in a space.
2016-12-28 03:37:14 -06:00
Zanoth 8b8ddc8163 Got rid of some unnecesarry code
Removed some parameters that were being sent to lootcli.exe that aren't
relevant anymore, commented out the report viewing, and set the
masterlist update boolean to switch only when there was no error.
2016-12-27 22:18:49 -06:00
ZachHaber 5dc1ee3da6 Adding *.bak to .gitignore
*.bak is winmerge's backup files, no point in adding that to git by
accident again.
2016-12-27 22:14:06 -06:00
ZachHaber dd653c3752 Remove excess file
Shouldn't have been committed.
2016-12-27 16:55:55 -06:00
ZachHaber a8556eacb6 Added preliminary support for changes to lootcli project
Hopefully re-enabled lootcli report. Added new argument for lootcli.exe:
pluginListPath, so it can determine what to read and thus change.
Need to figure out how to determine the current language in a format
that's easily understood.
2016-12-27 16:41:12 -06:00
ZachHaber f0810bfa43 Merge pull request #1 from LePresidente/new_vfs_library
Updating from LePresidente's changes
2016-12-27 14:53:03 -06:00
Brian Munro 7432f7870b Reverted Change
Reverted silly edit.
2016-12-21 13:11:23 +02:00
Brian Munro 71f9c4f69d Update organizercore.cpp
Shoud be an "or" query instead of "and",
2016-12-21 11:46:10 +02:00
LePresidente 71b4911c8c Build Number Version Bump. 2016-12-21 00:55:51 -08:00
LePresidente d1ed7ae5d7 Migrate to version numbers with buildnumber.
Added Comment for removal of ModBase::isOneof
2016-12-21 00:54:41 -08:00
LePresidente 1cf368c126 Reverted use of MOBase::isOneOf was causing the lock to fail. 2016-12-20 03:18:43 -08:00
TanninOne a3671a5557 Merge pull request #1031 from LePresidente/new_vfs_library
New vfs library
2016-12-12 19:58:29 +01:00
LePresidente afa0cb9446 Version Bump,
Basic SkyrimSE changes
2016-12-12 05:12:20 -08:00
lepresidente 0657774e2e Use my repo for the updates for now. 2016-12-12 08:26:19 +02:00
lepresidente 695593968b updated email for dump reports. 2016-12-04 18:15:59 +02:00
lepresidente 61edeb12f1 gameShortName has been replaced by gameNexusName due to syrimse on nexus using skyrimspecialediton. 2016-12-04 17:56:07 +02:00
TanninOne 5ae681e6d5 Merge pull request #1023 from LePresidente/new_vfs_library
Updated icu libs to 54 in release build.
2016-11-30 20:53:52 +01:00
lepresidente db6b536fb1 Updated icu libs to 54 in release build. 2016-11-30 20:38:24 +02:00
Tannin 64590a10d7 Merge branch 'master' into new_vfs_library 2016-06-30 22:15:50 +02:00
TanninOne 4a582e524d Merge pull request #837 from ThosRTanner/issue/309
Changes for TanninOne/modorganizer#309 (3 of 3)
2016-06-30 19:03:45 +02:00
Tannin a00cda607c updated to changed usvfs api 2016-06-30 18:56:41 +02:00
Thomas Tanner 42407866e9 Some include-what-you-use suggested changes 2016-06-27 21:21:54 +01:00
Thomas Tanner c3a8a0b9eb Moved QuestionBoxMemory clearance from settings into QuestionBoxMemory 2016-06-26 20:27:50 +01:00
Thomas Tanner 607b2a10aa Restore commented out code 2016-06-26 20:27:13 +01:00
Thomas Tanner 6b60d54853 Extra question box functionality 2016-06-25 14:03:37 +01:00
Thomas Tanner c7101be7d8 Some refactoring of the spawn code and to make waitForApplication get the right error code (usually)
A note: It is possible for the executed program to completely exit before MO attempts to get hold of the pid from the job handle,
in which case strangeness will happen (this has always been an issue)
2016-06-25 11:47:15 +01:00
Thomas Tanner d80a77a4cb Fix a small bug in listing forward references 2016-06-25 09:47:28 +01:00
Tannin 33b544112c fixed categories list didn't get updated on switching instance 2016-06-23 21:38:54 +02:00
Tannin 8a3af93b39 fixed creation of data paths after changing paths in settings and update of profile list after change 2016-06-23 21:00:46 +02:00
Tannin 352975e757 updated to use the unmanaged-mod game plugin feature 2016-06-19 16:01:51 +02:00
Tannin cd83f4e732 reduced number of mod content icons a bit because they take too much space 2016-06-19 16:01:15 +02:00
Tannin 4f25a0689f updated translation 2016-06-19 16:00:13 +02:00
Tannin 3d642563cb usvfs log level can now be changed without a restart 2016-06-19 15:59:50 +02:00
Tannin 0100c86887 download list and data tree now also maintain their layout between sessions 2016-06-19 15:58:37 +02:00
Tannin 8d04c77c29 updated version number and translation file 2016-06-05 14:23:27 +02:00
Tannin b935ce3862 bugfix: unnecessary repeat of delayed operations 2016-06-05 14:20:49 +02:00
Tannin fcebf21c44 fixed startup errors 2016-06-05 14:16:55 +02:00
Tannin 3d1dfadb40 automatic update of translation file during build 2016-06-04 15:29:52 +02:00
Tannin c2c48bd39a testing the hook for updating the translation-page 2016-06-04 14:33:24 +02:00
Tannin 9163a6dc34 added transifex configuration 2016-06-04 11:40:06 +02:00
Tannin 8bf3037d4b bugfix: changing from local language to english doesn't stick 2016-06-03 18:49:48 +02:00
Tannin 4f1bb36933 fixed some filename/modname handling for names received from nexus 2016-06-02 19:45:04 +02:00
Tannin cbdea13a9c minor cleanup 2016-06-01 19:34:01 +02:00
Tannin b36c666899 fixed: mandatory esms could get disabled without a way in the ui to re-enable them 2016-06-01 19:33:37 +02:00
Tannin bbab59f681 fixed handling of base dir in settings dialog (and fixed the tab order in the settings dialog) 2016-05-27 15:51:01 +02:00
Tannin bfbb190998 moved button to switch instance (and to portable mode) to the main window 2016-05-27 14:04:00 +02:00
Tannin c3b7737ae4 bugfix: incorrect url-encoding for passwords prevented login with some special characters 2016-05-19 19:18:46 +02:00
Tannin 30878ae394 added button to clear webcaches and cookies 2016-05-19 19:17:15 +02:00
Tannin 45a182a381 bugfix: initial setup didn't offer a portable install even if the global install dir is gone 2016-05-19 19:15:19 +02:00
Tannin 0b07cfa3f0 cleanup 2016-05-19 19:10:33 +02:00
Tannin 986330a3bd removed obsolete stuff 2016-05-16 16:03:36 +02:00
Tannin 81c5ca5308 Merge branch 'master' into new_vfs_library 2016-05-16 15:48:38 +02:00
Tannin 3a8da159da removed obsolete inject code 2016-05-16 14:46:54 +02:00
Tannin f6c3b516fd changes to primary category are now saved immediately instead of after the menu is closed 2016-05-15 15:09:14 +02:00
Tannin 5665be7fd1 fixed calls to helper.exe using wrong path 2016-05-15 14:58:54 +02:00
Thomas Tanner a625acd17b Merge remote-tracking branch 'refs/remotes/TanninOne/master' 2016-05-15 12:23:55 +01:00
Tannin e522afa63b removed highlighting of dummy plugins 2016-05-15 13:07:46 +02:00
Tannin e3c3c2dcc4 fixed: after running an external application the plugin list was potentially not updated correctly 2016-05-15 13:06:31 +02:00
Tannin 519f215fd7 fixed saves list wasn't updated after removing a save game 2016-05-15 12:59:50 +02:00
TanninOne 89221af929 Merge pull request #677 from writemorecode/master
FIXED #302 Edited tooltip in Executables menu
2016-05-15 12:50:41 +02:00
Thomas Tanner f5a815185f Updates for QT5.5 2016-05-15 11:03:43 +01:00
Tannin 59a36107a1 fixed crash when disabling mods 2016-05-11 20:12:14 +02:00
Tannin bc5d5d8bfa ssl libraries can now be placed in dlls directory 2016-05-11 20:10:18 +02:00
Gustav Karlsson a294f8410f Edited tooltip in Executables menu
Edited a tooltip in the Executables menu.
2016-05-09 20:47:25 +02:00
Tannin 256cdb8df7 fixed priority ordering after enabling/disabling mod 2016-05-09 20:36:13 +02:00
Tannin 32480f7a81 minor fixes 2016-05-07 00:23:13 +02:00
Tannin e43762e7db profiles can now be configured to use the global game settings instead of profile-local 2016-05-07 00:22:23 +02:00
Tannin afe0d749c4 added option to use a mod as the target to create now files instead of "overwrite" 2016-05-07 00:18:23 +02:00
Tannin eb97c46ed6 cleanup 2016-05-07 00:03:38 +02:00
Tannin d958e11e2b now using github for self updater 2016-05-06 23:47:51 +02:00
Tannin b0e3e86a61 moved plugins.txt reading/writing to game plugin 2016-05-06 23:39:08 +02:00
Tannin 9df612c7ca more configuration options
- overwrite path configurable
- one can now set a base directory for all configurable paths
- user can now opt in/out of receiving pre-release updates (not functional yet)
2016-03-02 21:28:17 +01:00
Tannin 0899724d90 profile- and group-dropdown no longer switch by mouse-wheel. Plus fixed refreshing of right-hand side tabs 2016-03-02 21:22:26 +01:00
Tannin 53d9789740 updated icon and splash screen. MO can now use custom instance specific splash screens and splashes stored in game plugins 2016-03-02 21:20:38 +01:00
Tannin 4f8c71d626 merged master into new_vfs_library 2016-02-12 19:08:25 +01:00
TanninOne ba8464f01f Merge pull request #456 from ThosRTanner/issue/418
Refactor save game code into plugins
2016-02-10 18:37:28 +01:00
Tannin fd68248698 fixed browse-button for mod directory (in settings) 2016-02-09 20:57:20 +01:00
Tannin 1ad2115e01 fixed cleanup of file handles 2016-02-09 20:55:39 +01:00
Tannin 8d1dd6238f fixed display of process name in unlock-widget 2016-02-09 20:54:54 +01:00
Tannin aaa1f52bdd fixed cleanup on restart 2016-02-09 20:53:09 +01:00
Tannin b085aeea0e changed focus policy on grouping selection to prevent accidentally changing the grouping mode 2016-02-09 20:51:56 +01:00
Tannin ea621ef859 fixed update of window title 2016-02-09 20:50:07 +01:00
Tannin 3202713cff updated to match current usvfs api 2016-02-09 20:46:46 +01:00
Tannin ad9d50e5f0 replaced boost&qt foreach-implementations by the c++11 variant 2016-02-09 20:32:26 +01:00
Tannin 63eaf453e0 portable setup is no longer offered if the directory isn't writable 2016-02-09 20:05:41 +01:00
Tannin 8a9a1680b0 code formatting (clang_format) 2016-02-09 20:02:58 +01:00
Tannin 1439347def updated version number 2016-02-08 20:33:53 +01:00
Thomas Tanner 0e9a86ebfc Merge branch 'master' into issue/418
# Conflicts:
#	SConstruct
#	src/organizerproxy.cpp
2016-01-24 18:10:25 +00:00
Thomas Tanner 8da9ba5404 Removing the 'get' in all function names and making FO4 plugin build
Merge branch 'master' of https://github.com/TanninOne/modorganizer
2016-01-24 15:25:38 +00:00
Thomas Tanner 387326f2d6 thoughts 2016-01-24 10:22:27 +00:00
Tannin a9a51f5085 fixed a potential crash-cause when querying download info and slight improvement (?) to the regex that extracts the modid 2016-01-10 20:22:50 +01:00
Tannin 2aae65d6f6 made instance-switching usable
this includes tons and tons of changes to how paths are determined.
the profiles-dir can now also be configured
2016-01-10 20:19:56 +01:00
Thomas Tanner d07b4f7ff0 Fixes an issue with doing connect for download cancel at the wrong time
Also cleaned up header usage per include-what-you-use
2015-12-31 23:08:24 +00:00
Thomas Tanner 197c49e996 Fixes for building with qt5.5 2015-12-31 23:06:52 +00:00
Thomas Tanner 0d50427b83 Patch to build with QT5.5 2015-12-30 16:38:47 +00:00
Thomas Tanner e90fbb1df2 Patch to build with QT5.5 2015-12-30 16:24:47 +00:00
Thomas Tanner a4dbe82be7 Removes the gameinfo + related files from shared to hookdll 2015-12-27 13:50:46 +00:00
Thomas Tanner 42417b6a01 Fix missing functions and also a bit of const correctness 2015-12-26 15:49:19 +00:00
Thomas Tanner f2b2ee1a11 Merge remote-tracking branch 'TanninOne/master' into issue/418 2015-12-26 15:27:34 +00:00
Thomas Tanner ae6bb99c52 Remove savegameinfowidget from organizer core 2015-12-26 08:23:43 +00:00
Thomas Tanner 3869eaaf2b Transferring the savegame widget into gamebryo + some cleanup 2015-12-25 21:57:23 +00:00
Thomas Tanner 6edf12f2f7 Rename the save game identifier method to make it clearer what it's for. 2015-12-20 21:22:38 +00:00
Thomas Tanner f55a5f2b21 Managed to remove SaveGame and SaveGameGamebryo classes from organizer 2015-12-20 21:08:14 +00:00
Thomas Tanner 5f5184ebfe Changes to support getting list of mods / esps to activate from game plugin 2015-12-19 20:49:54 +00:00
Thomas Tanner 30b29635f6 unsaved edits... 2015-12-15 16:00:15 +00:00
Thomas Tanner 0c536a4c12 Makes iSaveGame responsible for returning all files involved in savegame.
Cleans up save deletion and save transfer dialogue somewhat
2015-12-15 15:58:01 +00:00
Thomas Tanner 967c2ae653 Removes the SaveGame class from mainwindow. Using include what you use to add/remove #includes 2015-12-14 22:25:57 +00:00
Thomas Tanner ba176e5e9b Remove dependency of TransferSave on SaveGameBryo, part of fix for #418
Added a method to Profile class to get location of save games for the profile. I haven't added this to IProfile as am in two minds.

Aside from this have done cleanups of issues suggested by include-what-you-use, and some OCD sorting of #includes
2015-12-13 18:30:40 +00:00
157 changed files with 6296 additions and 10656 deletions
+25
View File
@@ -0,0 +1,25 @@
# The problem
Briefly describe the issue you are experiencing (or the feature you want to see added to Mod Organizer). Tell us what you were trying to do and what happened instead. Remember, this is _not_ a place to ask questions. For that, go to our discord channel
# Environment
* Mod Organizer Version that exhibits the issue:
* Last Mod Organizer Verison that did not exhibit the issue (if applicable):
* Desktop OS/version used to run Mod Organizer:
# Details
If necessary, describe the problem you have been experiencing in more detail.
# Link to Mod Organizer logs
## USVFS
Create a [GIST](https://gist.github.com) which is a paste of your USVFS logs, and link them here.
Do _NOT_ paste your full USVFS logs here, as it will make this issue very long and hard to read!
If you are reporting a bug, _always_ include the USVFS logs!
## MO Interface
Create a [GIST](https://gist.github.com) which is a paste of your mo_interface logs, and link them here.
Do _NOT_ paste your full mo_interface logs here, as it will make this issue very long and hard to read!
If you are reporting a bug, _always_ include the mo_interface logs!
+6
View File
@@ -2,11 +2,17 @@
Thumbs.db
src/moc_*.cpp
src/ui_*.h
src/organizer_en.ts
src/*.qrc.depends
src/Modorganizer.*
src/*.bak
CMakeLists.txt.user
edit
stderr.log
stdout.log
vs_stderr.log
vs_stdout.log
build
/vsbuild
/CMakeFiles
.idea
+82
View File
@@ -0,0 +1,82 @@
[main]
host = https://www.transifex.com
[mod-organizer.organizer]
file_filter = organizer/organizer_<lang>.ts
source_file = organizer/organizer_en.ts
source_lang = en
[mod-organizer.diagnosebasic]
file_filter = plugins/diagnoseBasic/diagnoseBasic_<lang>.ts
source_file = plugins/diagnoseBasic/diagnoseBasic_en.ts
source_lang = en
[mod-organizer.bsaextractor]
file_filter = plugins/bsaExtractor/bsaExtractor_<lang>.ts
source_file = plugins/bsaExtractor/bsaExtractor_en.ts
source_lang = en
[mod-organizer.checkfnis]
file_filter = plugins/checkFNIS/checkFNIS_<lang>.ts
source_file = plugins/checkFNIS/checkFNIS_en.ts
source_lang = en
[mod-organizer.inieditor]
file_filter = plugins/iniEditor/iniEditor_<lang>.ts
source_file = plugins/iniEditor/iniEditor_en.ts
source_lang = en
[mod-organizer.installerbain]
file_filter = plugins/installerBAIN/installerBAIN_<lang>.ts
source_file = plugins/installerBAIN/installerBAIN_en.ts
source_lang = en
[mod-organizer.installerbundle]
file_filter = plugins/installerBundle/installerBundle_<lang>.ts
source_file = plugins/installerBundle/installerBundle_en.ts
source_lang = en
[mod-organizer.installerfomod]
file_filter = plugins/installerFomod/installerFomod_<lang>.ts
source_file = plugins/installerFomod/installerFomod_en.ts
source_lang = en
[mod-organizer.installermanual]
file_filter = plugins/installerManual/installerManual_<lang>.ts
source_file = plugins/installerManual/installerManual_en.ts
source_lang = en
[mod-organizer.installerncc]
file_filter = plugins/installerNCC/installerNCC_<lang>.ts
source_file = plugins/installerNCC/installerNCC_en.ts
source_lang = en
[mod-organizer.installerquick]
file_filter = plugins/installerQuick/installerQuick_<lang>.ts
source_file = plugins/installerQuick/installerQuick_en.ts
source_lang = en
[mod-organizer.nmmimport]
file_filter = plugins/NMMImport/NMMImport_<lang>.ts
source_file = plugins/NMMImport/NMMImport_en.ts
source_lang = en
[mod-organizer.previewbase]
file_filter = plugins/previewBase/previewBase_<lang>.ts
source_file = plugins/previewBase/previewBase_en.ts
source_lang = en
[mod-organizer.previewdds]
file_filter = plugins/previewDDS/previewDDS_<lang>.ts
source_file = plugins/previewDDS/previewDDS_en.ts
source_lang = en
[mod-organizer.proxypython]
file_filter = plugins/proxyPython/proxyPython_<lang>.ts
source_file = plugins/proxyPython/proxyPython_en.ts
source_lang = en
[mod-organizer.configurator]
file_filter = plugins/pyniEdit/pyniEdit_<lang>.ts
source_file = plugins/pyniEdit/pyniEdit_en.ts
source_lang = en
+3 -3
View File
@@ -2,13 +2,13 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
PROJECT(organizer)
SET(DEPENDENCIES_DIR CACHE PATH "")
# hint to find qt in dependencies path
LIST(APPEND CMAKE_PREFIX_PATH ${DEPENDENCIES_DIR}/qt5/lib/cmake)
LIST(APPEND CMAKE_PREFIX_PATH ${QT_ROOT}/lib/cmake)
FILE(GLOB_RECURSE BOOST_ROOT ${DEPENDENCIES_DIR}/boost*/project-config.jam)
GET_FILENAME_COMPONENT(BOOST_ROOT ${BOOST_ROOT} DIRECTORY)
SET(ZLIB_ROOT ${DEPENDENCIES_DIR}/zlib)
ADD_SUBDIRECTORY(src)
ADD_SUBDIRECTORY(src)
+33 -10
View File
@@ -431,16 +431,24 @@ msvs_version = int(env['MSVS_VERSION'].split('.')[0]) + 2000
if msvs_version > 2010:
msvs_version += 1
# Need more work on the qt version stuff
#build-ModOrganizer-Desktop_Qt_5_4_1_MSVC2013_OpenGL_32bit-Debug
build_dir = 'scons-ModOrganizer-QT_%s_for_MSVS%d_32bit-%s' % (
#os.path.basename(env['QTDIR']).replace('.', '_'),
'5_4_1_OpenGL',
# Read the QT version info
with open(os.path.join(env['QTDIR'], 'mkspecs', 'qconfig.pri')) as qtinfo:
for line in qtinfo:
info = re.split(r'\s*=\s*', line.rstrip())
if info[0] == 'QT_VERSION':
env[info[0]] = info[1]
elif '_VERSION' in info[0]:
env[info[0]] = int(info[1])
build_dir = 'scons-ModOrganizer-QT_%s_%sfor_MSVS%d_32bit-%s' % (
env['QT_VERSION'].replace('.', '_'),
'OpenGL_' if 'opengl' in env['QTDIR'] else '',
msvs_version,
config.title())
# Put the sconsign file somewhere sane
env.SConsignFile(os.path.join(build_dir, '.sconsign.dblite'))
env.CacheDir(os.path.join(build_dir, '.cache'))
#this doesn't seem to work
#env.VariantDir('build/$CONFIG', 'source')
@@ -531,9 +539,6 @@ qt_env = env.Clone()
if qt_env['CONFIG'] != 'debug':
qt_env.AppendUnique(CPPDEFINES = [ 'QT_NO_DEBUG' ])
# Better way of working this out
qt_env['QT_MAJOR_VERSION'] = 5 #int(os.path.basename(env['QTDIR']).split('.')[0])
qt_env.Tool('qt%d' % qt_env['QT_MAJOR_VERSION'])
# FIXME See if I can work out how to get official scons qt to work. Appears
@@ -618,6 +623,20 @@ if qt_env['QT_MAJOR_VERSION'] > 4:
]
# Finally, set up rules to install the DLLs.
# use windeployqt.exe to install all required libraries
#SET(windeploy_parameters --no-translations --no-plugins --libdir dlls --release-with-debug-info --no-compiler-runtime)
#INSTALL(
# CODE
# "EXECUTE_PROCESS(
# COMMAND
# ${qt5bin}/windeployqt.exe ModOrganizer.exe ${windeploy_parameters}
# COMMAND
# ${qt5bin}/windeployqt.exe uibase.dll ${windeploy_parameters}
# WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX}/bin
# )"
#)
# this should probably be a rule though it seems to produce an awful lot of
# Stuff(TM). or a postaction
dll_path = os.path.join('$INSTALL_PATH', 'DLLs')
@@ -648,8 +667,12 @@ if 'WebKit' in libs_to_install and qt_env['QT_MAJOR_VERSION'] == 4:
if qt_env['QT_MAJOR_VERSION'] > 4:
# Guesswork a bit.
dlls_to_install += [
os.path.join(env['QTDIR'], 'bin', 'icu%s53.dll' % lib)
for lib in ('dt','in', 'uc')
os.path.join(env['QTDIR'],
'bin',
'icu%s%d%d.dll' % (lib,
qt_env['QT_MAJOR_VERSION'],
qt_env['QT_MINOR_VERSION'] - 1))
for lib in ('dt','in', 'uc')
]
platform_dlls = []
+23 -12
View File
@@ -35,7 +35,8 @@ removing = None
includes = dict()
adding = None
added = dict()
added = defaultdict(list)
lcadded = dict()
foundline = None
@@ -69,9 +70,10 @@ def process_next_line(line, outfile):
elif adding:
m = re.match(r'.*class (.*);', line)
if m:
added[m.group(1)] = (adding, line)
added[m.group(1)].append((adding, line))
lcadded[m.group(1).lower() + '.h'] = m.group(1)
else:
added[line] = (adding, line)
added[line].append((adding, line))
elif removing:
# Really we should stash these so that if we get a 'class xxx' in
# the add lines we can print it here. also we could do the case
@@ -79,12 +81,20 @@ def process_next_line(line, outfile):
m = re.match(r'- #include [<"](.*)[">] +// lines (.*)-', line)
if m:
foundline = m.group(2)
if m.group(1) in added:
messages[removing].append(
'%s(%s) : warning I0004: Replace include of %s with '
'forward reference %s' % (
removing, m.group(2), m.group(1), added[m.group(1)][1]))
del added[m.group(1)]
# Note: In this project at least we have a naming convention of
# lower case filename and upper case classname.
clname = m.group(1)
if clname not in added:
if clname in lcadded:
clname = lcadded[clname]
if clname in added:
for item in added[clname]:
if removing == item[0]:
messages[removing].append(
'%s(%s) : warning I0004: Replace include of %s'
' with forward reference %s' % (
removing, m.group(2), m.group(1), item[1]))
del added[clname]
else:
messages[removing].append(
'%s(%s) : warning I0001: Unnecessary include of %s' % (
@@ -132,9 +142,10 @@ if foundline is None:
foundline = '1'
for add in added:
messages[added[add][0]].append(
'%s(%s) : warning I0003: Need to include %s' % (
added[add][0], foundline, added[add][1]))
for item in added[add]:
messages[item[0]].append(
'%s(%s) : warning I0003: Need to include %s' % (
item[0], foundline, item[1]))
for file in sorted(messages.keys(), reverse = True):
for line in messages[file]:
+1 -1
View File
@@ -2463,7 +2463,7 @@
{ include: [ "@\"(QtCore/)?qglobal\\.h\"", "private", "<QtGlobal>", "public" ] },
{ include: [ "@\"(QtCore/)?qnamespace\\.h\"", "private", "<Qt>", "public" ] },
{ include: [ "@\"(QtCore/)?qlogging\\.h\"", "private", "<QtDebug>", "public" ] }, #qDebug, qWarning, etc
{ include: [ "@\"(QtCore/)?qalgorithms\\.h\"", "private", "<QAlgorithms>", "public" ] }, #qSort, etc
{ include: [ "@\"(QtCore/)?qalgorithms\\.h\"", "private", "<QtAlgorithms>", "public" ] }, #qSort, etc
{ include: [ "@\"(QtWinExtras/)?qwinfunctions\\.h\"", "private", "<QtWin>", "public" ] }, # for fromHICON
# These ones are just madness. For instance, why with the above do we get
+61 -53
View File
@@ -18,15 +18,12 @@ SET(organizer_SRCS
settings.cpp
selfupdater.cpp
selectiondialog.cpp
savegameinfowidgetgamebryo.cpp
savegameinfowidget.cpp
savegamegamebryo.cpp
savegame.cpp
queryoverwritedialog.cpp
profilesdialog.cpp
profile.cpp
pluginlistsortproxy.cpp
pluginlist.cpp
pluginlistview.cpp
overwriteinfodialog.cpp
nxmaccessmanager.cpp
nexusinterface.cpp
@@ -35,17 +32,19 @@ SET(organizer_SRCS
modlist.cpp
modinfodialog.cpp
modinfo.cpp
modinfobackup.cpp
modinfoforeign.cpp
modinfooverwrite.cpp
modinforegular.cpp
modinfowithconflictinfo.cpp
modinfobackup.cpp
modinfoforeign.cpp
modinfooverwrite.cpp
modinforegular.cpp
modinfowithconflictinfo.cpp
messagedialog.cpp
mainwindow.cpp
main.cpp
loghighlighter.cpp
logbuffer.cpp
lockeddialogbase.cpp
lockeddialog.cpp
waitingonclosedialog.cpp
loadmechanism.cpp
installationmanager.cpp
helper.cpp
@@ -80,26 +79,21 @@ SET(organizer_SRCS
previewdialog.cpp
aboutdialog.cpp
json.cpp
safewritefile.cpp
modflagicondelegate.cpp
genericicondelegate.cpp
organizerproxy.cpp
viewmarkingscrollbar.cpp
plugincontainer.cpp
organizercore.cpp
instancemanager.cpp
usvfsconnector.cpp
eventfilter.cpp
moshortcut.cpp
shared/inject.cpp
shared/windows_error.cpp
shared/error_report.cpp
shared/directoryentry.cpp
shared/gameinfo.cpp
shared/oblivioninfo.cpp
shared/fallout3info.cpp
shared/fallout4info.cpp
shared/falloutnvinfo.cpp
shared/util.cpp
shared/skyriminfo.cpp
shared/appconfig.cpp
shared/leaktrace.cpp
shared/stackdata.cpp
@@ -114,15 +108,12 @@ SET(organizer_HDRS
settings.h
selfupdater.h
selectiondialog.h
savegameinfowidgetgamebryo.h
savegameinfowidget.h
savegamegamebyro.h
savegame.h
queryoverwritedialog.h
profilesdialog.h
profile.h
pluginlistsortproxy.h
pluginlist.h
pluginlistview.h
overwriteinfodialog.h
nxmaccessmanager.h
nexusinterface.h
@@ -131,16 +122,18 @@ SET(organizer_HDRS
modlist.h
modinfodialog.h
modinfo.h
modinfobackup.h
modinfoforeign.h
modinfooverwrite.h
modinforegular.h
modinfowithconflictinfo.h
modinfobackup.h
modinfoforeign.h
modinfooverwrite.h
modinforegular.h
modinfowithconflictinfo.h
messagedialog.h
mainwindow.h
loghighlighter.h
logbuffer.h
lockeddialogbase.h
lockeddialog.h
waitingonclosedialog.h
loadmechanism.h
installationmanager.h
helper.h
@@ -175,27 +168,24 @@ SET(organizer_HDRS
previewdialog.h
aboutdialog.h
json.h
safewritefile.h
modflagicondelegate.h
genericicondelegate.h
organizerproxy.h
viewmarkingscrollbar.h
plugincontainer.h
organizercore.h
ilockedwaitingforprocess.h
iuserinterface.h
instancemanager.h
usvfsconnector.h
eventfilter.h
descriptionpage.h
moshortcut.h
shared/inject.h
shared/windows_error.h
shared/error_report.h
shared/directoryentry.h
shared/gameinfo.h
shared/oblivioninfo.h
shared/fallout3info.h
shared/fallout4info.h
shared/falloutnvinfo.h
shared/util.h
shared/skyriminfo.h
shared/appconfig.h
shared/appconfig.inc
shared/leaktrace.h
@@ -208,7 +198,6 @@ SET(organizer_UIS
simpleinstalldialog.ui
settingsdialog.ui
selectiondialog.ui
savegameinfowidget.ui
queryoverwritedialog.ui
profilesdialog.ui
overwriteinfodialog.ui
@@ -217,6 +206,7 @@ SET(organizer_UIS
messagedialog.ui
mainwindow.ui
lockeddialog.ui
waitingonclosedialog.ui
installdialog.ui
finddialog.ui
editexecutablesdialog.ui
@@ -254,19 +244,22 @@ SET(CMAKE_INCLUDE_CURRENT_DIR ON)
SET(CMAKE_AUTOMOC ON)
SET(CMAKE_AUTOUIC ON)
FIND_PACKAGE(Qt5Widgets REQUIRED)
FIND_PACKAGE(Qt5Declarative REQUIRED)
FIND_PACKAGE(Qt5QuickWidgets REQUIRED)
FIND_PACKAGE(Qt5Quick REQUIRED)
FIND_PACKAGE(Qt5Network REQUIRED)
FIND_PACKAGE(Qt5WinExtras REQUIRED)
FIND_PACKAGE(Qt5WebKitWidgets REQUIRED)
FIND_PACKAGE(Qt5WebEngineWidgets REQUIRED)
FIND_PACKAGE(Qt5LinguistTools)
QT5_WRAP_UI(organizer_UIHDRS ${organizer_UIS})
QT5_ADD_RESOURCES(organizer_RCCPPS ${organizer_QRCS})
QT5_CREATE_TRANSLATION(organizer_translations_qm ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/src/organizer_en.ts)
INCLUDE_DIRECTORIES(${Qt5Declarative_INCLUDES})
ADD_DEFINITIONS(-DQT_MESSAGELOGCONTEXT)
# Boost
SET(Boost_USE_STATIC_LIBS ON)
SET(Boost_USE_STATIC_LIBS OFF)
SET(Boost_USE_MULTITHREADED ON)
SET(Boost_USE_STATIC_RUNTIME OFF)
FIND_PACKAGE(Boost REQUIRED)
@@ -291,18 +284,24 @@ INCLUDE_DIRECTORIES(${project_path}/uibase/src
${project_path}/bsatk/src
${project_path}/esptk/src
${project_path}/archive/src
${project_path}/../usvfs/usvfs
${project_path}/../usvfs/include
${project_path}/game_gamebryo/src
${project_path}/game_features/src)
MESSAGE(STATUS ${project_path}/gameGamebryo/src)
${project_path}/game_features/src
${project_path}/githubpp/src)
INCLUDE_DIRECTORIES(shared ${ZLIB_INCLUDE_DIRS})
LINK_DIRECTORIES(${lib_path}
${project_path}/../zlib/lib)
ADD_DEFINITIONS(-D_UNICODE -DUNICODE -DNOMINMAX -D_CRT_SECURE_NO_WARNINGS)
EXECUTE_PROCESS(
COMMAND git log -1 --format=%h
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_COMMIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
ADD_DEFINITIONS(-D_UNICODE -DUNICODE -DNOMINMAX -D_CRT_SECURE_NO_WARNINGS -DBOOST_CONFIG_SUPPRESS_OUTDATED_MESSAGE -DGITID="${GIT_COMMIT_HASH}")
IF("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
SET(usvfs_name usvfs_x64)
@@ -310,21 +309,23 @@ ELSE()
SET(usvfs_name usvfs_x86)
ENDIF()
ADD_EXECUTABLE(ModOrganizer WIN32 ${organizer_HDRS} ${organizer_SRCS} ${organizer_UIHDRS} ${organizer_RCS} ${organizer_RCCPPS})
ADD_EXECUTABLE(ModOrganizer WIN32 ${organizer_HDRS} ${organizer_SRCS} ${organizer_UIHDRS} ${organizer_RCS} ${organizer_RCCPPS} ${organizer_translations_qm})
TARGET_LINK_LIBRARIES(ModOrganizer
Qt5::Widgets Qt5::WinExtras Qt5::WebKitWidgets
Qt5::Widgets Qt5::WinExtras Qt5::WebEngineWidgets Qt5::Quick
${Boost_LIBRARIES}
zlibstatic
uibase esptk bsatk
uibase esptk bsatk githubpp
${usvfs_name}
Dbghelp advapi32 Version Shlwapi)
SET_TARGET_PROPERTIES(ModOrganizer PROPERTIES COMPILE_FLAGS /GL)
IF (NOT "${OPTIMIZE_COMPILE_FLAGS}" STREQUAL "")
SET_TARGET_PROPERTIES(ModOrganizer PROPERTIES COMPILE_FLAGS_RELWITHDEBINFO
${OPTIMIZE_COMPILE_FLAGS})
ENDIF()
SET_TARGET_PROPERTIES(ModOrganizer PROPERTIES LINK_FLAGS_RELWITHDEBINFO
"/LARGEADDRESSAWARE ${OPTIMIZE_LINK_FLAGS}")
QT5_USE_MODULES(ModOrganizer Widgets Declarative Network WebKitWidgets)
QT5_USE_MODULES(ModOrganizer Widgets Script Qml QuickWidgets Quick Network WebEngineWidgets)
###############
@@ -336,23 +337,30 @@ FIND_PROGRAM(WINDEPLOYQT_COMMAND windeployqt PATHS ${qt5bin} NO_DEFAULT_PATH)
INSTALL(TARGETS ModOrganizer
RUNTIME DESTINATION bin)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/ModOrganizer.pdb
INSTALL(FILES $<TARGET_PDB_FILE:ModOrganizer>
DESTINATION pdb)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/dlls.manifest.qt5
DESTINATION bin/dlls
RENAME dlls.manifest)
# use windeployqt.exe to install all required libraries
SET(windeploy_parameters --no-translations --no-plugins --libdir dlls --release-with-debug-info --no-compiler-runtime)
SET(windeploy_parameters "--no-translations --plugindir qtplugins --libdir dlls --release-with-debug-info --no-compiler-runtime")
INSTALL(
CODE
"EXECUTE_PROCESS(
COMMAND
${qt5bin}/windeployqt.exe ModOrganizer.exe ${windeploy_parameters}
${qt5bin}/windeployqt.exe ModOrganizer.exe --webenginewidgets ${windeploy_parameters}
COMMAND
${qt5bin}/windeployqt.exe uibase.dll ${windeploy_parameters}
WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX}/bin
)"
)
file(REMOVE_RECURSE ${CMAKE_INSTALL_PREFIX}/bin/platforms)
file(REMOVE_RECURSE ${CMAKE_INSTALL_PREFIX}/bin/styles)
file(REMOVE_RECURSE ${CMAKE_INSTALL_PREFIX}/bin/dlls/imageformats)
file(RENAME ${CMAKE_INSTALL_PREFIX}/bin/qtplugins/platforms ${CMAKE_INSTALL_PREFIX}/bin/platforms)
file(RENAME ${CMAKE_INSTALL_PREFIX}/bin/qtplugins/styles ${CMAKE_INSTALL_PREFIX}/bin/styles)
file(RENAME ${CMAKE_INSTALL_PREFIX}/bin/qtplugins/imageformats ${CMAKE_INSTALL_PREFIX}/bin/dlls/imageformats)
file(REMOVE_RECURSE ${CMAKE_INSTALL_PREFIX}/bin/qtplugins)"
)
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/stylesheets
+12 -1
View File
@@ -22,6 +22,14 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>.
#include "ui_aboutdialog.h"
#include <utility.h>
#include <QApplication>
#include <QLabel>
#include <QListWidget>
#include <QListWidgetItem>
#include <QTextBrowser>
#include <QVariant>
#include <Qt>
AboutDialog::AboutDialog(const QString &version, QWidget *parent)
: QDialog(parent)
@@ -46,10 +54,13 @@ AboutDialog::AboutDialog(const QString &version, QWidget *parent)
addLicense("RRZE Icon Set", LICENSE_CCBY3);
addLicense("Icons by Lorc, Delapouite and sbed available on http://game-icons.net", LICENSE_CCBY3);
addLicense("Castle Core", LICENSE_APACHE2);
addLicense("LOOT", LICENSE_GPL3);
ui->nameLabel->setText(QString("<span style=\"font-size:12pt; font-weight:600;\">%1 %2</span>").arg(ui->nameLabel->text()).arg(version));
#ifdef HGID
#if defined(HGID)
ui->revisionLabel->setText(ui->revisionLabel->text() + " " + HGID);
#elif defined(GITID)
ui->revisionLabel->setText(ui->revisionLabel->text() + " " + GITID);
#else
ui->revisionLabel->setText(ui->revisionLabel->text() + " unknown");
#endif
+4 -3
View File
@@ -22,10 +22,11 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>.
#define ABOUTDIALOG_H
#include <QDialog>
#include <QListWidgetItem>
class QListWidgetItem;
#include <QObject>
#include <QString>
#include <map>
#include <vector>
#include <utility>
namespace Ui {
class AboutDialog;
+91 -8
View File
@@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>508</width>
<height>335</height>
<width>604</width>
<height>369</height>
</rect>
</property>
<property name="windowTitle">
@@ -18,13 +18,50 @@
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="iconLabel">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>250</width>
<height>250</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>250</width>
<height>250</height>
</size>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap resource="resources.qrc">:/MO/gui/mo_icon.ico</pixmap>
<pixmap resource="resources.qrc">:/MO/gui/splash</pixmap>
</property>
<property name="scaledContents">
<bool>true</bool>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
@@ -83,7 +120,7 @@
<item>
<widget class="QLabel" name="label_3">
<property name="text">
<string notr="true">Copyright 2011-2015 Sebastian Herbord</string>
<string notr="true">Copyright 2011-2016 Sebastian Herbord</string>
</property>
</widget>
</item>
@@ -114,11 +151,47 @@
</widget>
<widget class="QWidget" name="credits">
<attribute name="title">
<string>Credits</string>
<string>Thanks</string>
</attribute>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<item>
<item>
<widget class="QGroupBox" name="groupBox">
<property name="title">
<string>Current Maintainers</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_6">
<item>
<widget class="QListWidget" name="listWidget_2">
<property name="selectionMode">
<enum>QAbstractItemView::NoSelection</enum>
</property>
<item>
<property name="text">
<string notr="true">LePresidente</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">Silarn</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">erasmux</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">Diana</string>
</property>
</item>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox_2">
<property name="title">
<string>Translators</string>
</property>
@@ -200,9 +273,9 @@
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox_2">
<widget class="QGroupBox" name="groupBox_3">
<property name="title">
<string>Others</string>
<string>Other Supporter</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_7">
<item>
@@ -210,6 +283,11 @@
<property name="selectionMode">
<enum>QAbstractItemView::NoSelection</enum>
</property>
<item>
<property name="text">
<string notr="true">Al12 (Discord) </string>
</property>
</item>
<item>
<property name="text">
<string notr="true">blacksol</string>
@@ -265,6 +343,11 @@
<string notr="true">thosrtanner</string>
</property>
</item>
<item>
<property name="text">
<string>ogrotten</string>
</property>
</item>
</widget>
</item>
</layout>
+13 -14
View File
@@ -21,37 +21,36 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>.
#include "ui_activatemodsdialog.h"
#include <QComboBox>
#include <QHeaderView>
#include <QLabel>
#include <QString>
#include <QTableWidget>
ActivateModsDialog::ActivateModsDialog(const std::map<QString, std::vector<QString> > &missingPlugins, QWidget *parent)
#include <QtGlobal>
ActivateModsDialog::ActivateModsDialog(SaveGameInfo::MissingAssets const &missingAssets, QWidget *parent)
: TutorableDialog("ActivateMods", parent), ui(new Ui::ActivateModsDialog)
{
ui->setupUi(this);
QTableWidget *modsTable = findChild<QTableWidget*>("modsTable");
QHeaderView *headerView = modsTable->horizontalHeader();
#if QT_VERSION >= QT_VERSION_CHECK(5,0,0)
headerView->setSectionResizeMode(0, QHeaderView::Stretch);
headerView->setSectionResizeMode(1, QHeaderView::Interactive);
#else
headerView->setResizeMode(0, QHeaderView::Stretch);
headerView->setResizeMode(1, QHeaderView::Interactive);
#endif
int row = 0;
modsTable->setRowCount(missingPlugins.size());
modsTable->setRowCount(missingAssets.size());
for (std::map<QString, std::vector<QString> >::const_iterator espIter = missingPlugins.begin();
espIter != missingPlugins.end(); ++espIter, ++row) {
modsTable->setCellWidget(row, 0, new QLabel(espIter->first));
if (espIter->second.size() == 0) {
for (SaveGameInfo::MissingAssets::const_iterator espIter = missingAssets.begin();
espIter != missingAssets.end(); ++espIter, ++row) {
modsTable->setCellWidget(row, 0, new QLabel(espIter.key()));
if (espIter->size() == 0) {
modsTable->setCellWidget(row, 1, new QLabel(tr("not found")));
} else {
QComboBox* combo = new QComboBox();
for (std::vector<QString>::const_iterator modIter = espIter->second.begin();
modIter != espIter->second.end(); ++modIter) {
combo->addItem(*modIter);
for (QString const &mod : espIter.value()) {
combo->addItem(mod);
}
modsTable->setCellWidget(row, 1, combo);
}
+8 -2
View File
@@ -20,8 +20,14 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>.
#ifndef ACTIVATEMODSDIALOG_H
#define ACTIVATEMODSDIALOG_H
#include "savegameinfo.h"
#include "tutorabledialog.h"
#include <map>
#include <QObject>
class QString;
class QWidget;
#include <set>
namespace Ui {
@@ -42,7 +48,7 @@ public:
* @param missingPlugins a map containing missing plugins that need to be activated
* @param parent ... Defaults to 0.
**/
explicit ActivateModsDialog(const std::map<QString, std::vector<QString> > &missingPlugins, QWidget *parent = 0);
explicit ActivateModsDialog(SaveGameInfo::MissingAssets const &missingAssets, QWidget *parent = 0);
~ActivateModsDialog();
/**
+2 -2
View File
@@ -17,14 +17,14 @@
<item>
<widget class="QTableWidget" name="modsTable">
<property name="toolTip">
<string>This is a list of esps and esms that were active when the save game was created.</string>
<string>This is a list of esps, esms, and esls that were active when the save game was created.</string>
</property>
<property name="whatsThis">
<string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:8pt;&quot;&gt;This is a list of esps and esms that were active when the save game was created.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:8pt;&quot;&gt;This is a list of esps, esms, and esls that were active when the save game was created.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:8pt;&quot;&gt;For each esp, the right column contains the mod (or mods) that can be enabled to make the missing esps/esms available.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:8pt;&quot;&gt;If you hit Ok, all the mods selected in the right columns and all missing esps that have become available will be activated.&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+16 -16
View File
@@ -28,13 +28,13 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>.
#include <utility.h>
#include "settings.h"
#include <QWebEngineSettings>
#include <QNetworkCookieJar>
#include <QNetworkCookie>
#include <QMenu>
#include <QInputDialog>
#include <QWebHistory>
#include <QWebEngineHistory>
#include <QDir>
#include <QWebFrame>
#include <QDesktopWidget>
#include <QKeyEvent>
@@ -77,8 +77,8 @@ void BrowserDialog::closeEvent(QCloseEvent *event)
void BrowserDialog::initTab(BrowserView *newView)
{
newView->page()->setNetworkAccessManager(m_AccessManager);
newView->page()->setForwardUnsupportedContent(true);
//newView->page()->setNetworkAccessManager(m_AccessManager);
//newView->page()->setForwardUnsupportedContent(true);
connect(newView, SIGNAL(loadProgress(int)), this, SLOT(progress(int)));
connect(newView, SIGNAL(titleChanged(QString)), this, SLOT(titleChanged(QString)));
@@ -86,14 +86,14 @@ void BrowserDialog::initTab(BrowserView *newView)
connect(newView, SIGNAL(startFind()), this, SLOT(startSearch()));
connect(newView, SIGNAL(urlChanged(QUrl)), this, SLOT(urlChanged(QUrl)));
connect(newView, SIGNAL(openUrlInNewTab(QUrl)), this, SLOT(openInNewTab(QUrl)));
connect(newView->page(), SIGNAL(downloadRequested(QNetworkRequest)), this, SLOT(downloadRequested(QNetworkRequest)));
connect(newView->page(), SIGNAL(unsupportedContent(QNetworkReply*)), this, SLOT(unsupportedContent(QNetworkReply*)));
connect(newView, SIGNAL(downloadRequested(QNetworkRequest)), this, SLOT(downloadRequested(QNetworkRequest)));
connect(newView, SIGNAL(unsupportedContent(QNetworkReply*)), this, SLOT(unsupportedContent(QNetworkReply*)));
ui->backBtn->setEnabled(false);
ui->fwdBtn->setEnabled(false);
m_Tabs->addTab(newView, tr("new"));
newView->settings()->setAttribute(QWebSettings::PluginsEnabled, true);
newView->settings()->setAttribute(QWebSettings::AutoLoadImages, true);
newView->settings()->setAttribute(QWebEngineSettings::PluginsEnabled, true);
newView->settings()->setAttribute(QWebEngineSettings::AutoLoadImages, true);
}
@@ -133,10 +133,10 @@ void BrowserDialog::openUrl(const QUrl &url)
void BrowserDialog::maximizeWidth()
{
int viewportWidth = getCurrentView()->page()->viewportSize().width();
int viewportWidth = getCurrentView()->page()->contentsSize ().width();
int frameWidth = width() - viewportWidth;
int contentWidth = getCurrentView()->page()->mainFrame()->contentsSize().width();
int contentWidth = getCurrentView()->page()->contentsSize().width();
QDesktopWidget screen;
int currentScreen = screen.screenNumber(this);
@@ -190,7 +190,7 @@ QString BrowserDialog::guessFileName(const QString &url)
void BrowserDialog::unsupportedContent(QNetworkReply *reply)
{
try {
QWebPage *page = qobject_cast<QWebPage*>(sender());
QWebEnginePage *page = qobject_cast<QWebEnginePage*>(sender());
if (page == nullptr) {
qCritical("sender not a page");
return;
@@ -252,10 +252,10 @@ void BrowserDialog::startSearch()
void BrowserDialog::on_searchEdit_returnPressed()
{
BrowserView *currentView = getCurrentView();
if (currentView != nullptr) {
currentView->findText(ui->searchEdit->text(), QWebPage::FindWrapsAroundDocument);
}
// BrowserView *currentView = getCurrentView();
// if (currentView != nullptr) {
// currentView->findText(ui->searchEdit->text(), QWebEnginePage::FindWrapsAroundDocument);
// }
}
void BrowserDialog::on_refreshBtn_clicked()
@@ -274,7 +274,7 @@ void BrowserDialog::on_browserTabWidget_currentChanged(int index)
void BrowserDialog::on_urlEdit_returnPressed()
{
QWebView *currentView = getCurrentView();
QWebEngineView *currentView = getCurrentView();
if (currentView != nullptr) {
currentView->setUrl(QUrl(ui->urlEdit->text()));
}
+1 -1
View File
@@ -24,7 +24,7 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>.
#include <QNetworkRequest>
#include <QNetworkReply>
#include <QTimer>
#include <QWebView>
#include <QWebEngineView>
#include <QQueue>
#include <QTabWidget>
#include <QAtomicInt>
+18 -17
View File
@@ -21,23 +21,23 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>.
#include <QEvent>
#include <QKeyEvent>
#include <QWebFrame>
#include <QWebElement>
#include <QNetworkDiskCache>
#include <QWebEngineContextMenuData>
#include <QWebEngineSettings>
#include <QMenu>
#include <Shlwapi.h>
#include "utility.h"
BrowserView::BrowserView(QWidget *parent)
: QWebView(parent)
: QWebEngineView(parent)
{
installEventFilter(this);
page()->settings()->setMaximumPagesInCache(10);
//page()->settings()->setMaximumPagesInCache(10);
}
QWebView *BrowserView::createWindow(QWebPage::WebWindowType)
QWebEngineView *BrowserView::createWindow(QWebEnginePage::WebWindowType)
{
BrowserView *newView = new BrowserView(parentWidget());
emit initTab(newView);
@@ -59,17 +59,18 @@ bool BrowserView::eventFilter(QObject *obj, QEvent *event)
mouseEvent->ignore();
return true;
}
} else if (event->type() == QEvent::MouseButtonRelease) {
QMouseEvent *mouseEvent = static_cast<QMouseEvent*>(event);
if (mouseEvent->button() == Qt::MidButton) {
QWebHitTestResult hitTest = page()->frameAt(mouseEvent->pos())->hitTestContent(mouseEvent->pos());
if (hitTest.linkUrl().isValid()) {
emit openUrlInNewTab(hitTest.linkUrl());
}
mouseEvent->ignore();
return true;
}
// TODO This is due to that QTWebEnginePage doesn't support QWebFrame anymore
// } else if (event->type() == QEvent::MouseButtonRelease) {
// QMouseEvent *mouseEvent = static_cast<QMouseEvent*>(event);
// if (mouseEvent->button() == Qt::MidButton) {
// QWebEngineContextMenuData hitTest = page()->hitTestContent(mouseEvent->pos());
// if (hitTest.linkUrl().isValid()) {
// emit openUrlInNewTab(hitTest.linkUrl());
// }
// mouseEvent->ignore();
//
// return true;
// }
}
return QWebView::eventFilter(obj, event);
return QWebEngineView::eventFilter(obj, event);
}
+4 -4
View File
@@ -24,13 +24,13 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>.
class QEvent;
class QUrl;
class QWidget;
#include <QWebView>
#include <QWebPage>
#include <QWebEngineView>
#include <QWebEnginePage>
/**
* @brief web view used to display a nexus page
**/
class BrowserView : public QWebView
class BrowserView : public QWebEngineView
{
Q_OBJECT
@@ -66,7 +66,7 @@ signals:
protected:
virtual QWebView *createWindow(QWebPage::WebWindowType type);
virtual QWebEngineView *createWindow(QWebEnginePage::WebWindowType type);
virtual bool eventFilter(QObject *obj, QEvent *event);
+57 -32
View File
@@ -44,6 +44,10 @@ QString CategoryFactory::categoriesFilePath()
CategoryFactory::CategoryFactory()
{
atexit(&cleanup);
}
void CategoryFactory::loadCategories()
{
reset();
QFile categoryFile(categoriesFilePath());
@@ -188,7 +192,7 @@ int CategoryFactory::addCategory(const QString &name, const std::vector<int> &ne
void CategoryFactory::addCategory(int id, const QString &name, const std::vector<int> &nexusIDs, int parentID)
{
int index = m_Categories.size();
int index = static_cast<int>(m_Categories.size());
m_Categories.push_back(Category(index, id, name, nexusIDs, parentID));
for (int nexusID : nexusIDs) {
m_NexusMap[nexusID] = index;
@@ -201,42 +205,63 @@ void CategoryFactory::loadDefaultCategories()
{
// the order here is relevant as it defines the order in which the
// mods appear in the combo box
addCategory(1, "Animations", MakeVector<int>(1, 51), 0);
addCategory(2, "Armour", MakeVector<int>(1, 54), 0);
addCategory(3, "Sound & Music", MakeVector<int>(1, 61), 0);
addCategory(5, "Clothing", MakeVector<int>(1, 60), 0);
addCategory(6, "Collectables", MakeVector<int>(1, 92), 0);
addCategory(28, "Companions", MakeVector<int>(2, 66, 96), 0);
addCategory(7, "Creatures & Mounts", MakeVector<int>(2, 83, 65), 0);
addCategory(8, "Factions", MakeVector<int>(1, 25), 0);
addCategory(9, "Gameplay", MakeVector<int>(1, 24), 0);
addCategory(10, "Hair", MakeVector<int>(1, 26), 0);
addCategory(1, "Animations", MakeVector<int>(2, 4, 51), 0);
addCategory(52, "Poses", MakeVector<int>(1, 29), 1);
addCategory(2, "Armour", MakeVector<int>(2, 5, 54), 0);
addCategory(53, "Power Armor", MakeVector<int>(1, 53), 2);
addCategory(3, "Audio", MakeVector<int>(3, 33, 35, 106), 0);
addCategory(38, "Music", MakeVector<int>(2, 34, 61), 0);
addCategory(39, "Voice", MakeVector<int>(2, 36, 107), 0);
addCategory(5, "Clothing", MakeVector<int>(2, 9, 60), 0);
addCategory(41, "Jewelry", MakeVector<int>(1, 102), 5);
addCategory(42, "Backpacks", MakeVector<int>(1, 49), 5);
addCategory(6, "Collectables", MakeVector<int>(2, 10, 92), 0);
addCategory(28, "Companions", MakeVector<int>(3, 11, 66, 96), 0);
addCategory(7, "Creatures, Mounts, & Vehicles", MakeVector<int>(4, 12, 65, 83, 101), 0);
addCategory(8, "Factions", MakeVector<int>(2, 16, 25), 0);
addCategory(9, "Gameplay", MakeVector<int>(2, 15, 24), 0);
addCategory(27, "Combat", MakeVector<int>(1, 77), 9);
addCategory(43, "Crafting", MakeVector<int>(2, 50, 100), 9);
addCategory(48, "Overhauls", MakeVector<int>(2, 24, 79), 9);
addCategory(49, "Perks", MakeVector<int>(1, 27), 9);
addCategory(54, "Radio", MakeVector<int>(1, 31), 9);
addCategory(55, "Shouts", MakeVector<int>(1, 104), 9);
addCategory(22, "Skills & Levelling", MakeVector<int>(2, 46, 73), 9);
addCategory(58, "Weather & Lighting", MakeVector<int>(1, 56), 9);
addCategory(44, "Equipment", MakeVector<int>(1, 44), 43);
addCategory(45, "Home/Settlement", MakeVector<int>(1, 45), 43);
addCategory(10, "Body, Face, & Hair", MakeVector<int>(2, 17, 26), 0);
addCategory(39, "Tattoos", MakeVector<int>(1, 57), 10);
addCategory(40, "Character Presets", MakeVector<int>(1, 58), 0);
addCategory(11, "Items", MakeVector<int>(2, 27, 85), 0);
addCategory(32, "Mercantile", MakeVector<int>(1, 69), 0);
addCategory(19, "Weapons", MakeVector<int>(1, 55), 11);
addCategory(36, "Weapon & Armour Sets", MakeVector<int>(1, 39), 11);
addCategory(12, "Locations", MakeVector<int>(7, 22, 30, 70, 88, 89, 90, 91), 0);
addCategory(31, "Landscape Changes", MakeVector<int>(1, 58), 0);
addCategory(4, "Cities", MakeVector<int>(1, 53), 12);
addCategory(29, "Environment", MakeVector<int>(1, 74), 0);
addCategory(30, "Immersion", MakeVector<int>(1, 78), 0);
addCategory(32, "Mercantile", MakeVector<int>(2, 23, 69), 0);
addCategory(37, "Ammo", MakeVector<int>(1, 3), 11);
addCategory(19, "Weapons", MakeVector<int>(2, 41, 55), 11);
addCategory(36, "Weapon & Armour Sets", MakeVector<int>(1, 42), 11);
addCategory(23, "Player Homes", MakeVector<int>(2, 28, 67), 0);
addCategory(25, "Castles & Mansions", MakeVector<int>(1, 68), 23);
addCategory(51, "Settlements", MakeVector<int>(1, 48), 23);
addCategory(12, "Locations", MakeVector<int>(10, 20, 21, 22, 30, 47, 70, 88, 89, 90, 91), 0);
addCategory(4, "Cities", MakeVector<int>(1, 53), 12);
addCategory(31, "Landscape Changes", MakeVector<int>(1, 58), 0);
addCategory(29, "Environment", MakeVector<int>(2, 14, 74), 0);
addCategory(30, "Immersion", MakeVector<int>(2, 51, 78), 0);
addCategory(20, "Magic", MakeVector<int>(3, 75, 93, 94), 0);
addCategory(21, "Models & Textures", MakeVector<int>(1, 29), 0);
addCategory(33, "Modders resources", MakeVector<int>(1, 82), 0);
addCategory(13, "NPCs", MakeVector<int>(1, 33), 0);
addCategory(14, "Patches", MakeVector<int>(2, 79, 84), 0);
addCategory(24, "Bugfixes", MakeVector<int>(1, 95), 0);
addCategory(35, "Utilities", MakeVector<int>(1, 39), 0);
addCategory(26, "Cheats", MakeVector<int>(1, 40), 0);
addCategory(23, "Player Homes", MakeVector<int>(1, 67), 0);
addCategory(15, "Quests", MakeVector<int>(1, 35), 0);
addCategory(21, "Models & Textures", MakeVector<int>(2, 19, 29), 0);
addCategory(33, "Modders resources", MakeVector<int>(2, 18, 82), 0);
addCategory(13, "NPCs", MakeVector<int>(3, 22, 33, 99), 0);
addCategory(24, "Bugfixes", MakeVector<int>(2, 6, 95), 0);
addCategory(14, "Patches", MakeVector<int>(2, 25, 84), 24);
addCategory(35, "Utilities", MakeVector<int>(2, 38, 39), 0);
addCategory(26, "Cheats", MakeVector<int>(1, 8), 0);
addCategory(15, "Quests", MakeVector<int>(2, 30, 35), 0);
addCategory(16, "Races & Classes", MakeVector<int>(1, 34), 0);
addCategory(27, "Combat", MakeVector<int>(1, 77), 0);
addCategory(22, "Skills", MakeVector<int>(1, 73), 0);
addCategory(34, "Stealth", MakeVector<int>(1, 76), 0);
addCategory(17, "UI", MakeVector<int>(1, 42), 0);
addCategory(18, "Visuals", MakeVector<int>(1, 62), 0);
addCategory(17, "UI", MakeVector<int>(2, 37, 42), 0);
addCategory(18, "Visuals", MakeVector<int>(2, 40, 62), 0);
addCategory(50, "Pip-Boy", MakeVector<int>(1, 52), 18);
addCategory(46, "Shader Presets", MakeVector<int>(3, 13, 97, 105), 0);
addCategory(47, "Miscellaneous", MakeVector<int>(2, 2, 28), 0);
}
+5
View File
@@ -75,6 +75,11 @@ public:
**/
void reset();
/**
* @brief read categories from file
*/
void loadCategories();
/**
* @brief save the categories to the categories.dat file
**/

Some files were not shown because too many files have changed in this diff Show More