From b0c15c9cfb74bba152eceb4d3f4d490cd75c754b Mon Sep 17 00:00:00 2001 From: Al12rs Date: Mon, 6 Aug 2018 20:17:57 +0200 Subject: Added Open File option to downloads tab. --- src/organizer_en.ts | 743 ++++++++++++++++++++++++++-------------------------- 1 file changed, 378 insertions(+), 365 deletions(-) (limited to 'src/organizer_en.ts') diff --git a/src/organizer_en.ts b/src/organizer_en.ts index 01a4abcb..88a8e0a3 100644 --- a/src/organizer_en.ts +++ b/src/organizer_en.ts @@ -414,12 +414,12 @@ p, li { white-space: pre-wrap; } - - - - - - + + + + + + Are you sure? @@ -429,124 +429,129 @@ p, li { white-space: pre-wrap; } - + This will remove all finished downloads from this list and from disk. - + This will remove all installed downloads from this list and from disk. - + This will remove all uninstalled downloads from this list and from disk. - + This will permanently remove all finished downloads from this list (but NOT from disk). - + This will permanently remove all installed downloads from this list (but NOT from disk). - + This will permanently remove all uninstalled downloads from this list (but NOT from disk). - + Install - + Query Info - + Visit on Nexus - - - + + Open File + + + + + + Show in Folder - + Delete - + Un-Hide - + Hide - + Cancel - + Pause - + Remove - + Resume - + Delete Installed... - + Delete Uninstalled... - + Delete All... - + Hide Installed... - + Hide Uninstalled... - + Hide All... - + Un-Hide All... @@ -574,22 +579,22 @@ p, li { white-space: pre-wrap; } - - - + + + Are you sure? - + This will remove all finished downloads from this list and from disk. - - - + + + Delete Files? @@ -599,115 +604,120 @@ p, li { white-space: pre-wrap; } - + This will remove all installed downloads from this list and from disk. - + This will remove all uninstalled downloads from this list and from disk. - + This will remove all finished downloads from this list (but NOT from disk). - + This will remove all installed downloads from this list (but NOT from disk). - + This will remove all uninstalled downloads from this list (but NOT from disk). - + Install - + Query Info - + Visit on Nexus - - - + + Open File + + + + + + Show in Folder - - + + Delete - + Un-Hide - + Hide - + Cancel - + Pause - + Resume - + Delete Installed... - + Delete Uninstalled... - + Delete All... - + Hide Installed... - + Hide Uninstalled... - + Hide All... - + Un-Hide All... @@ -833,7 +843,6 @@ p, li { white-space: pre-wrap; } - VisitNexus: invalid download index %1 @@ -843,164 +852,169 @@ p, li { white-space: pre-wrap; } - + + OpenFileInDownloadsFolder: invalid download index %1 + + + + get pending: invalid download index %1 - + get path: invalid download index %1 - + Main - + Update - + Optional - + Old - + Misc - + Unknown - + display name: invalid download index %1 - + file name: invalid download index %1 - + file time: invalid download index %1 - + file size: invalid download index %1 - + progress: invalid download index %1 - + state: invalid download index %1 - + infocomplete: invalid download index %1 - - + + mod id: invalid download index %1 - + ishidden: invalid download index %1 - + file info: invalid download index %1 - + mark installed: invalid download index %1 - + mark uninstalled: invalid download index %1 - + Memory allocation error (in processing progress event). - + Memory allocation error (in processing downloaded data). - + Information updated - - + + No matching file found on Nexus! Maybe this file is no longer available or it was renamed? - + No file on Nexus matches the selected file by name. Please manually choose the correct one. - + No download server available. Please try again later. - + Failed to request file info from nexus: %1 - + Warning: Content type is: %1 - + Download header content length: %1 downloaded file size: %2 - + Download failed: %1 (%2) - + We were unable to download the file due to errors after four retries. There may be an issue with the Nexus servers. - + failed to re-open %1 @@ -1747,8 +1761,8 @@ p, li { white-space: pre-wrap; } - - + + Refresh @@ -1922,7 +1936,7 @@ p, li { white-space: pre-wrap; } - + Update @@ -1933,7 +1947,7 @@ p, li { white-space: pre-wrap; } - + No Problems @@ -1963,7 +1977,7 @@ Right now this has very limited functionality - + Endorse Mod Organizer @@ -1973,713 +1987,712 @@ Right now this has very limited functionality - - Ctrl+C - - - - + Change Game - + Open the Instance selection dialog to manage a different Game - + Toolbar - + Desktop - + Start Menu - + There is no supported sort mechanism for this game. You will probably have to use a third-party tool. - + Problems - + There are potential problems with your setup - + Everything seems to be in order - + Help on UI - + Documentation Wiki - + Report Issue - + Tutorials - + About - + About Qt - + Name - + Please enter a name for the new profile - + failed to create profile: %1 - + Show tutorial? - + You are starting Mod Organizer for the first time. Do you want to show a tutorial of its basic features? If you choose no you can always start the tutorial from the "Help"-menu. - + Downloads in progress - + There are still downloads in progress, do you really want to quit? - + Plugin "%1" failed: %2 - + Plugin "%1" failed - + Browse Mod Page - + Also in: <br> - + No conflict - + <Edit...> - + This bsa is enabled in the ini file so it may be required! - + Activating Network Proxy - + Notice: Your current MO version (%1) is lower than the previous version (%2).<br>The GUI may not downgrade gracefully, so you may experience oddities.<br>However, there should be no serious issues. - + Choose Mod - + Mod Archive - + Start Tutorial? - + You're about to start a tutorial. For technical reasons it's not possible to end the tutorial early. Continue? - + failed to spawn notepad.exe: %1 - + failed to change origin name: %1 - + failed to move "%1" from mod "%2" to "%3": %4 - + <Contains %1> - + <Checked> - + <Unchecked> - + <Update> - + <Managed by MO> - + <Managed outside MO> - + <No category> - + <Conflicted> - + <Not Endorsed> - + failed to rename mod: %1 - + Overwrite? - + This will replace the existing mod "%1". Continue? - + failed to remove mod "%1" - - - + + + failed to rename "%1" to "%2" - - - - + + + + Confirm - + Remove the following mods?<br><ul>%1</ul> - + failed to remove mod: %1 - - + + Failed - + Installation file no longer exists - + Mods installed with old versions of MO can't be reinstalled in this way. - + You need to be logged in with Nexus to resume a download - - + + You need to be logged in with Nexus to endorse - + Failed to display overwrite dialog: %1 - + Nexus ID for this Mod is unknown - + Web page for this mod is unknown - - - + + + Create Mod... - + This will create an empty mod. Please enter a name: - - + + A mod with this name already exists - + This will move all files from overwrite into a new, regular mod. Please enter a name: - - + + Are you sure? - + About to recursively delete: - + Not logged in, endorsement information will be wrong - + Continue? - + The versioning scheme decides which version is considered newer than another. This function will guess the versioning scheme under the assumption that the installed version is outdated. - - + + Sorry - + I don't know a versioning scheme where %1 is newer than %2. - + Really enable all visible mods? - + Really disable all visible mods? - + Export to csv - + CSV (Comma Separated Values) is a format that can be imported in programs like Excel to create a spreadsheet. You can also use online editors and converters instead. - + Select what mods you want export: - + All installed mods - + Only active (checked) mods from your current profile - + All currently visible mods in the mod list - + Choose what Columns to export: - + Mod_Priority - + Mod_Name - + Mod_Status - + Primary_Category - + Nexus_ID - + Mod_Nexus_URL - + Mod_Version - + Install_Date - + Download_File_Name - + export failed: %1 - + Open Game folder - + Open MyGames folder - + Open Instance folder - + Open Mods folder - + Open Profile folder - + Open Downloads folder - + Open MO2 Install folder - + Open MO2 Plugins folder - + Open MO2 Logs folder - + Install Mod... - + Create empty mod - + Enable all visible - + Disable all visible - + Check all for update - + Export to csv... - + All Mods - + Sync to Mods... - + Clear Overwrite... - - + + Open in Explorer + + + + Open in explorer - + Restore Backup - + Remove Backup... - + Change Categories - + Primary Category - + Change versioning scheme - + Un-ignore update - + Ignore update - + Rename Mod... - + Reinstall Mod - + Remove Mod... - + Un-Endorse - - + + Endorse - + Won't endorse - + Endorsement state unknown - + Ignore missing data - + Mark as converted/working - + Visit on Nexus - + Visit web page - + Information... - - + + Exception: - - + + Unknown exception - + <All> - + <Multiple> - + %1 more - + Are you sure you want to remove the following %n save(s)?<br><ul>%1</ul><br>Removed saves will be sent to the Recycle Bin. @@ -2687,12 +2700,12 @@ You can also use online editors and converters instead. - + Enable Mods... - + Delete %n save(s) @@ -2700,319 +2713,319 @@ You can also use online editors and converters instead. - + failed to remove %1 - + failed to create %1 - + Can't change download directory while downloads are in progress! - + failed to write to file %1 - + %1 written - + Select binary - + Binary - + Enter Name - + Please enter a name for the executable - + Not an executable - + This is not a recognized executable. - - + + Replace file? - + There already is a hidden version of this file. Replace it? - - + + File operation failed - - + + Failed to remove "%1". Maybe you lack the required file permissions? - + There already is a visible version of this file. Replace it? - + file not found: %1 - + failed to generate preview for %1 - + Sorry, can't preview anything. This function currently does not support extracting from bsas. - + Update available - + Open/Execute - + Add as Executable - + Preview - + Un-Hide - + Hide - + Write To File... - + Do you want to endorse Mod Organizer on %1 now? - + Thank you! - + Thank you for your endorsement! - + Request to Nexus failed: %1 - - + + failed to read %1: %2 - - + + Error - + failed to extract %1 (errorcode %2) - + Extract BSA - + This archive contains invalid hashes. Some files may be broken. - + Extract... - + This will restart MO, continue? - + Edit Categories... - + Deselect filter - + Remove - + Enable all - + Disable all - + Unlock load order - + Lock load order - + depends on missing "%1" - + incompatible with "%1" - + Please wait while LOOT is running - + loot failed. Exit code was: %1 - + failed to start loot - + failed to run loot: %1 - + Errors occured - + Backup of load order created - + Choose backup to restore - + No Backups - + There are no backups to restore - - + + Restore failed - - + + Failed to restore the backup. Errorcode: %1 - + Backup of modlist created - + A file with the same name has already been downloaded. What would you like to do? - + Overwrite - + Rename new file - + Ignore file @@ -3853,138 +3866,138 @@ p, li { white-space: pre-wrap; } - + installed version: "%1", newest version: "%2" - + The newest version on Nexus seems to be older than the one you have installed. This could either mean the version you have has been withdrawn (i.e. due to a bug) or the author uses a non-standard versioning scheme and that newest version is actually newer. Either way you may want to "upgrade". - + Categories: <br> - + Invalid name - + Name is already in use by another mod - + drag&drop failed: %1 - + Confirm - + Are you sure you want to remove "%1"? - + Flags - + Content - + Mod Name - + Version - + Priority - + Category - + Source Game - + Nexus ID - + Installation - - + + unknown - + Name of your mods - + Version of the mod (if available) - + Installation priority of your mod. The higher, the more "important" it is and thus overwrites files from mods with lower priority. - + Category of the mod. - + The source game which was the origin of this mod. - + Id of the mod as used on Nexus. - + Emblemes to highlight things that might require attention. - + Depicts the content of the mod:<br><table cellspacing=7><tr><td><img src=":/MO/gui/content/plugin" width=32/></td><td>Game plugins (esp/esm/esl)</td></tr><tr><td><img src=":/MO/gui/content/interface" width=32/></td><td>Interface</td></tr><tr><td><img src=":/MO/gui/content/mesh" width=32/></td><td>Meshes</td></tr><tr><td><img src=":/MO/gui/content/bsa" width=32/></td><td>BSA</td></tr><tr><td><img src=":/MO/gui/content/texture" width=32/></td><td>Textures</td></tr><tr><td><img src=":/MO/gui/content/sound" width=32/></td><td>Sounds</td></tr><tr><td><img src=":/MO/gui/content/music" width=32/></td><td>Music</td></tr><tr><td><img src=":/MO/gui/content/string" width=32/></td><td>Strings</td></tr><tr><td><img src=":/MO/gui/content/script" width=32/></td><td>Scripts (Papyrus)</td></tr><tr><td><img src=":/MO/gui/content/skse" width=32/></td><td>Script Extender plugins</td></tr><tr><td><img src=":/MO/gui/content/skyproc" width=32/></td><td>SkyProc Patcher</td></tr><tr><td><img src=":/MO/gui/content/menu" width=32/></td><td>Mod Configuration Menu</td></tr><tr><td><img src=":/MO/gui/content/inifile" width=32/></td><td>INI files</td></tr></table> - + Time this mod was installed @@ -5240,18 +5253,18 @@ If the folder was still in use, restart MO and try again. - + Please use "Help" from the toolbar to get usage instructions to all elements - - + + <Manage...> - + failed to parse profile %1: %2 -- cgit v1.3.1 From 16a7ef78d386e3724da9663114f9f22c50178b67 Mon Sep 17 00:00:00 2001 From: LostDragonist Date: Thu, 16 Aug 2018 08:15:31 -0500 Subject: Change version to 2.1.5 --- src/organizer_en.ts | 517 ++++++++++++++++++++++++++-------------------------- src/version.rc | 4 +- 2 files changed, 263 insertions(+), 258 deletions(-) (limited to 'src/organizer_en.ts') diff --git a/src/organizer_en.ts b/src/organizer_en.ts index 88a8e0a3..90311b95 100644 --- a/src/organizer_en.ts +++ b/src/organizer_en.ts @@ -35,67 +35,67 @@ - + Major Contributors - + Translators - + Cyb3r (Dutch) - + fruttyx (French) - + Yoplala (French) - + Faron (German) - + Mordan (Greek) - + Yoosk (Polish) - + Brgodfx (Portuguese) - + Jax (Swedish) - + ...and all other Transifex contributors! - + Other Supporters && Contributors - + Close @@ -578,18 +578,6 @@ p, li { white-space: pre-wrap; } Fetching Info 2 - - - - - Are you sure? - - - - - This will remove all finished downloads from this list and from disk. - - @@ -603,6 +591,11 @@ p, li { white-space: pre-wrap; } This will permanently delete the selected download. + + + This will remove all finished downloads from this list and from disk. + + This will remove all installed downloads from this list and from disk. @@ -613,6 +606,13 @@ p, li { white-space: pre-wrap; } This will remove all uninstalled downloads from this list and from disk. + + + + + Are you sure? + + This will remove all finished downloads from this list (but NOT from disk). @@ -851,6 +851,11 @@ p, li { white-space: pre-wrap; } Nexus ID for this Mod is unknown + + + OpenFile: invalid download index %1 + + OpenFileInDownloadsFolder: invalid download index %1 @@ -968,53 +973,53 @@ p, li { white-space: pre-wrap; } - + Information updated - - + + No matching file found on Nexus! Maybe this file is no longer available or it was renamed? - + No file on Nexus matches the selected file by name. Please manually choose the correct one. - + No download server available. Please try again later. - + Failed to request file info from nexus: %1 - + Warning: Content type is: %1 - + Download header content length: %1 downloaded file size: %2 - + Download failed: %1 (%2) - + We were unable to download the file due to errors after four retries. There may be an issue with the Nexus servers. - + failed to re-open %1 @@ -1739,11 +1744,6 @@ p, li { white-space: pre-wrap; } BSAs checked here are loaded in such a way that your installation order is obeyed properly. - - - File - - Data @@ -1761,8 +1761,8 @@ p, li { white-space: pre-wrap; } - - + + Refresh @@ -1771,6 +1771,11 @@ p, li { white-space: pre-wrap; } This is an overview of your data directory as visible to the game (and tools). + + + File + + Mod @@ -1936,7 +1941,7 @@ p, li { white-space: pre-wrap; } - + Update @@ -1947,7 +1952,7 @@ p, li { white-space: pre-wrap; } - + No Problems @@ -1977,7 +1982,7 @@ Right now this has very limited functionality - + Endorse Mod Organizer @@ -1997,702 +2002,702 @@ Right now this has very limited functionality - + Toolbar - + Desktop - + Start Menu - + There is no supported sort mechanism for this game. You will probably have to use a third-party tool. - + Problems - + There are potential problems with your setup - + Everything seems to be in order - + Help on UI - + Documentation Wiki - + Report Issue - + Tutorials - + About - + About Qt - + Name - + Please enter a name for the new profile - + failed to create profile: %1 - + Show tutorial? - + You are starting Mod Organizer for the first time. Do you want to show a tutorial of its basic features? If you choose no you can always start the tutorial from the "Help"-menu. - + Downloads in progress - + There are still downloads in progress, do you really want to quit? - + Plugin "%1" failed: %2 - + Plugin "%1" failed - + Browse Mod Page - + Also in: <br> - + No conflict - + <Edit...> - + This bsa is enabled in the ini file so it may be required! - + Activating Network Proxy - + Notice: Your current MO version (%1) is lower than the previous version (%2).<br>The GUI may not downgrade gracefully, so you may experience oddities.<br>However, there should be no serious issues. - + Choose Mod - + Mod Archive - + Start Tutorial? - + You're about to start a tutorial. For technical reasons it's not possible to end the tutorial early. Continue? - + failed to spawn notepad.exe: %1 - + failed to change origin name: %1 - + failed to move "%1" from mod "%2" to "%3": %4 - + <Contains %1> - + <Checked> - + <Unchecked> - + <Update> - + <Managed by MO> - + <Managed outside MO> - + <No category> - + <Conflicted> - + <Not Endorsed> - + failed to rename mod: %1 - + Overwrite? - + This will replace the existing mod "%1". Continue? - + failed to remove mod "%1" - - - + + + failed to rename "%1" to "%2" - - - - + + + + Confirm - + Remove the following mods?<br><ul>%1</ul> - + failed to remove mod: %1 - - + + Failed - + Installation file no longer exists - + Mods installed with old versions of MO can't be reinstalled in this way. - + You need to be logged in with Nexus to resume a download - - + + You need to be logged in with Nexus to endorse - + Failed to display overwrite dialog: %1 - + Nexus ID for this Mod is unknown - + Web page for this mod is unknown - - - + + + Create Mod... - + This will create an empty mod. Please enter a name: - - + + A mod with this name already exists - + This will move all files from overwrite into a new, regular mod. Please enter a name: - + Are you sure? - + About to recursively delete: - + Not logged in, endorsement information will be wrong - + Continue? - + The versioning scheme decides which version is considered newer than another. This function will guess the versioning scheme under the assumption that the installed version is outdated. - - + + Sorry - + I don't know a versioning scheme where %1 is newer than %2. - + Really enable all visible mods? - + Really disable all visible mods? - + Export to csv - + CSV (Comma Separated Values) is a format that can be imported in programs like Excel to create a spreadsheet. You can also use online editors and converters instead. - + Select what mods you want export: - + All installed mods - + Only active (checked) mods from your current profile - + All currently visible mods in the mod list - + Choose what Columns to export: - + Mod_Priority - + Mod_Name - + Mod_Status - + Primary_Category - + Nexus_ID - + Mod_Nexus_URL - + Mod_Version - + Install_Date - + Download_File_Name - + export failed: %1 - + Open Game folder - + Open MyGames folder - + Open Instance folder - + Open Mods folder - + Open Profile folder - + Open Downloads folder - + Open MO2 Install folder - + Open MO2 Plugins folder - + Open MO2 Logs folder - + Install Mod... - + Create empty mod - + Enable all visible - + Disable all visible - + Check all for update - + Export to csv... - + All Mods - + Sync to Mods... - + Clear Overwrite... - + Open in Explorer - - Open in explorer - - - - + Restore Backup - + Remove Backup... - + Change Categories - + Primary Category - + Change versioning scheme - + Un-ignore update - + Ignore update - + Rename Mod... - + Reinstall Mod - + Remove Mod... - + Un-Endorse - - + + Endorse - + Won't endorse - + Endorsement state unknown - + Ignore missing data - + Mark as converted/working - + Visit on Nexus - + Visit web page - + + Open in explorer + + + + Information... - + Exception: - + Unknown exception - + <All> - + <Multiple> - + %1 more - + Are you sure you want to remove the following %n save(s)?<br><ul>%1</ul><br>Removed saves will be sent to the Recycle Bin. @@ -2700,12 +2705,12 @@ You can also use online editors and converters instead. - + Enable Mods... - + Delete %n save(s) @@ -2713,140 +2718,140 @@ You can also use online editors and converters instead. - + failed to remove %1 - + failed to create %1 - + Can't change download directory while downloads are in progress! - + failed to write to file %1 - + %1 written - + Select binary - + Binary - + Enter Name - + Please enter a name for the executable - + Not an executable - + This is not a recognized executable. - - + + Replace file? - + There already is a hidden version of this file. Replace it? - - + + File operation failed - - + + Failed to remove "%1". Maybe you lack the required file permissions? - + There already is a visible version of this file. Replace it? - + file not found: %1 - + failed to generate preview for %1 - + Sorry, can't preview anything. This function currently does not support extracting from bsas. - + Update available - + Open/Execute - + Add as Executable - + Preview - + Un-Hide - + Hide - + Write To File... - + Do you want to endorse Mod Organizer on %1 now? @@ -5253,18 +5258,18 @@ If the folder was still in use, restart MO and try again. - + Please use "Help" from the toolbar to get usage instructions to all elements - - + + <Manage...> - + failed to parse profile %1: %2 @@ -5671,11 +5676,6 @@ If you use pre-releases, never contact me directly by e-mail or via private mess Paths - - - Base Directory - - @@ -5683,14 +5683,20 @@ If you use pre-releases, never contact me directly by e-mail or via private mess ... + + + Caches + + Overwrite - - Caches + + + Directory where downloads are stored. @@ -5698,6 +5704,11 @@ If you use pre-releases, never contact me directly by e-mail or via private mess Downloads + + + Profiles + + Directory where mods are stored. @@ -5708,25 +5719,19 @@ If you use pre-releases, never contact me directly by e-mail or via private mess Directory where mods are stored. Please note that changing this will break all associations of profiles with mods that don't exist in the new location (with the same name). - - - - Directory where downloads are stored. - - Mods - - Profiles + + Managed Game - - Managed Game + + Base Directory @@ -6121,6 +6126,11 @@ For the other games this is not a sufficient replacement for AI! + + + Hint: right click link and copy link location + + @@ -6131,11 +6141,6 @@ For the other games this is not a sufficient replacement for AI! - - - Hint: right click link and copy link location - - Confirm diff --git a/src/version.rc b/src/version.rc index 39565d70..1b0eba08 100644 --- a/src/version.rc +++ b/src/version.rc @@ -3,8 +3,8 @@ // If VS_FF_PRERELEASE is not set, MO labels the build as a release and uses VER_FILEVERSION to determine version number. // Otherwise, if letters are used in VER_FILEVERSION_STR, uses the full MOBase::VersionInfo parser // Otherwise, uses the numbers from VER_FILEVERSION and sets the release type as pre-alpha -#define VER_FILEVERSION 2,1,4 -#define VER_FILEVERSION_STR "2.1.4\0" +#define VER_FILEVERSION 2,1,5 +#define VER_FILEVERSION_STR "2.1.5\0" VS_VERSION_INFO VERSIONINFO FILEVERSION VER_FILEVERSION -- cgit v1.3.1 From 43b2df9077db98475af6ab613cf7eaf301f84879 Mon Sep 17 00:00:00 2001 From: LostDragonist Date: Thu, 16 Aug 2018 13:55:32 -0500 Subject: Add "enable/disable selected" to plugin list context menu --- src/mainwindow.cpp | 18 ++++++++++++++++++ src/mainwindow.h | 4 ++++ src/organizer_en.ts | 5 ++++- src/pluginlist.cpp | 41 +++++++++++++++++++++++++++++++++++++++++ src/pluginlist.h | 10 ++++++++++ 5 files changed, 77 insertions(+), 1 deletion(-) (limited to 'src/organizer_en.ts') diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index e22fe07f..d638e988 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -4170,6 +4170,19 @@ void MainWindow::unhideFile() } } + +void MainWindow::enableSelectedPlugins_clicked() +{ + m_OrganizerCore.pluginList()->enableSelected(ui->espList->selectionModel()); +} + + +void MainWindow::disableSelectedPlugins_clicked() +{ + m_OrganizerCore.pluginList()->disableSelected(ui->espList->selectionModel()); +} + + void MainWindow::previewDataFile() { QString fileName = QDir::fromNativeSeparators(m_ContextItem->data(0, Qt::UserRole).toString()); @@ -4761,6 +4774,11 @@ void MainWindow::on_espList_customContextMenuRequested(const QPoint &pos) m_ContextRow = m_PluginListSortProxy->mapToSource(ui->espList->indexAt(pos)).row(); QMenu menu; + menu.addAction(tr("Enable selected"), this, SLOT(enableSelectedPlugins_clicked())); + menu.addAction(tr("Disable selected"), this, SLOT(disableSelectedPlugins_clicked())); + + menu.addSeparator(); + menu.addAction(tr("Enable all"), m_OrganizerCore.pluginList(), SLOT(enableAll())); menu.addAction(tr("Disable all"), m_OrganizerCore.pluginList(), SLOT(disableAll())); diff --git a/src/mainwindow.h b/src/mainwindow.h index 6cf83301..085126f7 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -428,6 +428,10 @@ private slots: void hideFile(); void unhideFile(); + // pluginlist context menu + void enableSelectedPlugins_clicked(); + void disableSelectedPlugins_clicked(); + void linkToolbar(); void linkDesktop(); void linkMenu(); diff --git a/src/organizer_en.ts b/src/organizer_en.ts index 90311b95..f96ca5cd 100644 --- a/src/organizer_en.ts +++ b/src/organizer_en.ts @@ -2565,6 +2565,7 @@ You can also use online editors and converters instead. + Open in Explorer @@ -2660,8 +2661,10 @@ You can also use online editors and converters instead. + - Open in explorer + Open in Explorer + Open in explorer diff --git a/src/pluginlist.cpp b/src/pluginlist.cpp index 323cd98f..18e40a6e 100644 --- a/src/pluginlist.cpp +++ b/src/pluginlist.cpp @@ -289,6 +289,47 @@ void PluginList::enableESP(const QString &name, bool enable) } } +void PluginList::enableSelected(const QItemSelectionModel *selectionModel) +{ + if (selectionModel->hasSelection()){ + bool dirty = false; + for (auto row : selectionModel->selectedRows(COL_PRIORITY)) { + int rowPriority = row.data().toInt(); + for (int i = 0; i < m_ESPs.size(); i++) { + if (m_ESPs[i].m_Priority == rowPriority) { + if (!m_ESPs[i].m_Enabled) { + m_ESPs[i].m_Enabled = true; + dirty = true; + } + + break; + } + } + } + if (dirty) emit writePluginsList(); + } +} + +void PluginList::disableSelected(const QItemSelectionModel *selectionModel) +{ + if (selectionModel->hasSelection()){ + bool dirty = false; + for (auto row : selectionModel->selectedRows(COL_PRIORITY)) { + int rowPriority = row.data().toInt(); + for (int i = 0; i < m_ESPs.size(); i++) { + if (m_ESPs[i].m_Priority == rowPriority) { + if (!m_ESPs[i].m_ForceEnabled && m_ESPs[i].m_Enabled) { + m_ESPs[i].m_Enabled = false; + dirty = true; + } + break; + } + } + } + if (dirty) emit writePluginsList(); + } +} + void PluginList::enableAll() { diff --git a/src/pluginlist.h b/src/pluginlist.h index b8e35c32..03d6426a 100644 --- a/src/pluginlist.h +++ b/src/pluginlist.h @@ -244,6 +244,16 @@ public: // implementation of the QAbstractTableModel interface public slots: + /** + * @brief enables selected plugins + **/ + void enableSelected(const QItemSelectionModel *selectionModel); + + /** + * @brief disables selected plugins + **/ + void disableSelected(const QItemSelectionModel *selectionModel); + /** * @brief enables ALL plugins **/ -- cgit v1.3.1 From c27e718fbdb3355bb75a92e8773afebb7d9c69a5 Mon Sep 17 00:00:00 2001 From: LostDragonist Date: Thu, 16 Aug 2018 14:32:28 -0500 Subject: Add "enable/disable selected" to mod list context menu --- src/mainwindow.cpp | 22 ++++- src/mainwindow.h | 2 + src/modlist.cpp | 30 ++++++ src/modlist.h | 4 + src/organizer_en.ts | 263 ++++++++++++++++++++++++++-------------------------- 5 files changed, 190 insertions(+), 131 deletions(-) (limited to 'src/organizer_en.ts') diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index d638e988..e6b454c5 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -3597,13 +3597,19 @@ void MainWindow::on_modList_customContextMenuRequested(const QPoint &pos) menu->addAction(tr("Ignore update"), this, SLOT(ignoreUpdate())); } } + + menu->addSeparator(); + + menu->addAction(tr("Enable selected"), this, SLOT(enableSelectedMods_clicked())); + menu->addAction(tr("Disable selected"), this, SLOT(disableSelectedMods_clicked())); + menu->addSeparator(); menu->addAction(tr("Rename Mod..."), this, SLOT(renameMod_clicked())); menu->addAction(tr("Reinstall Mod"), this, SLOT(reinstallMod_clicked())); - menu->addAction(tr("Remove Mod..."), this, SLOT(removeMod_clicked())); + menu->addAction(tr("Remove Mod..."), this, SLOT(removeMod_clicked())); - menu->addSeparator(); + menu->addSeparator(); if (info->getNexusID() > 0) { switch (info->endorsedState()) { @@ -4183,6 +4189,18 @@ void MainWindow::disableSelectedPlugins_clicked() } +void MainWindow::enableSelectedMods_clicked() +{ + m_OrganizerCore.modList()->enableSelected(ui->modList->selectionModel()); +} + + +void MainWindow::disableSelectedMods_clicked() +{ + m_OrganizerCore.modList()->disableSelected(ui->modList->selectionModel()); +} + + void MainWindow::previewDataFile() { QString fileName = QDir::fromNativeSeparators(m_ContextItem->data(0, Qt::UserRole).toString()); diff --git a/src/mainwindow.h b/src/mainwindow.h index 085126f7..ad0972da 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -417,6 +417,8 @@ private slots: void visitWebPage_clicked(); void openExplorer_clicked(); void information_clicked(); + void enableSelectedMods_clicked(); + void disableSelectedMods_clicked(); // savegame context menu void deleteSavegame_clicked(); void fixMods_clicked(SaveGameInfo::MissingAssets const &missingAssets); diff --git a/src/modlist.cpp b/src/modlist.cpp index 0d084c22..afed2241 100644 --- a/src/modlist.cpp +++ b/src/modlist.cpp @@ -1231,3 +1231,33 @@ bool ModList::eventFilter(QObject *obj, QEvent *event) } return QAbstractItemModel::eventFilter(obj, event); } + + +void ModList::enableSelected(const QItemSelectionModel *selectionModel) +{ + if (selectionModel->hasSelection()) { + bool dirty = false; + for (auto row : selectionModel->selectedRows(COL_PRIORITY)) { + int modID = m_Profile->modIndexByPriority(row.data().toInt()); + if (!m_Profile->modEnabled(modID)) { + m_Profile->setModEnabled(modID, true); + emit modlist_changed(row, 0); + } + } + } +} + + +void ModList::disableSelected(const QItemSelectionModel *selectionModel) +{ + if (selectionModel->hasSelection()) { + bool dirty = false; + for (auto row : selectionModel->selectedRows(COL_PRIORITY)) { + int modID = m_Profile->modIndexByPriority(row.data().toInt()); + if (m_Profile->modEnabled(modID)) { + m_Profile->setModEnabled(modID, false); + emit modlist_changed(row, 0); + } + } + } +} \ No newline at end of file diff --git a/src/modlist.h b/src/modlist.h index 2db98bd1..15376ed5 100644 --- a/src/modlist.h +++ b/src/modlist.h @@ -170,6 +170,10 @@ public slots: void dropModeUpdate(bool dropOnItems); + void enableSelected(const QItemSelectionModel *selectionModel); + + void disableSelected(const QItemSelectionModel *selectionModel); + signals: /** diff --git a/src/organizer_en.ts b/src/organizer_en.ts index f96ca5cd..0d0cae2c 100644 --- a/src/organizer_en.ts +++ b/src/organizer_en.ts @@ -1762,7 +1762,7 @@ p, li { white-space: pre-wrap; } - + Refresh @@ -1941,7 +1941,7 @@ p, li { white-space: pre-wrap; } - + Update @@ -1982,7 +1982,7 @@ Right now this has very limited functionality - + Endorse Mod Organizer @@ -2248,8 +2248,8 @@ Right now this has very limited functionality - - + + failed to rename "%1" to "%2" @@ -2257,7 +2257,7 @@ Right now this has very limited functionality - + Confirm @@ -2340,7 +2340,7 @@ Please enter a name: - + Are you sure? @@ -2368,7 +2368,7 @@ This function will guess the versioning scheme under the assumption that the ins - + Sorry @@ -2565,7 +2565,7 @@ You can also use online editors and converters instead. - + Open in Explorer @@ -2605,102 +2605,107 @@ You can also use online editors and converters instead. - + + + Enable selected + + + + + + Disable selected + + + + Rename Mod... - + Reinstall Mod - + Remove Mod... - + Un-Endorse - - + + Endorse - + Won't endorse - + Endorsement state unknown - + Ignore missing data - + Mark as converted/working - + Visit on Nexus - + Visit web page - - - Open in Explorer - Open in explorer - - - - + Information... - - + + Exception: - - + + Unknown exception - + <All> - + <Multiple> - + %1 more - + Are you sure you want to remove the following %n save(s)?<br><ul>%1</ul><br>Removed saves will be sent to the Recycle Bin. @@ -2708,12 +2713,12 @@ You can also use online editors and converters instead. - + Enable Mods... - + Delete %n save(s) @@ -2721,319 +2726,319 @@ You can also use online editors and converters instead. - + failed to remove %1 - + failed to create %1 - + Can't change download directory while downloads are in progress! - + failed to write to file %1 - + %1 written - + Select binary - + Binary - + Enter Name - + Please enter a name for the executable - + Not an executable - + This is not a recognized executable. - - + + Replace file? - + There already is a hidden version of this file. Replace it? - - + + File operation failed - - + + Failed to remove "%1". Maybe you lack the required file permissions? - + There already is a visible version of this file. Replace it? - + file not found: %1 - + failed to generate preview for %1 - + Sorry, can't preview anything. This function currently does not support extracting from bsas. - + Update available - + Open/Execute - + Add as Executable - + Preview - + Un-Hide - + Hide - + Write To File... - + Do you want to endorse Mod Organizer on %1 now? - + Thank you! - + Thank you for your endorsement! - + Request to Nexus failed: %1 - - + + failed to read %1: %2 - - + + Error - + failed to extract %1 (errorcode %2) - + Extract BSA - + This archive contains invalid hashes. Some files may be broken. - + Extract... - + This will restart MO, continue? - + Edit Categories... - + Deselect filter - + Remove - + Enable all - + Disable all - + Unlock load order - + Lock load order - + depends on missing "%1" - + incompatible with "%1" - + Please wait while LOOT is running - + loot failed. Exit code was: %1 - + failed to start loot - + failed to run loot: %1 - + Errors occured - + Backup of load order created - + Choose backup to restore - + No Backups - + There are no backups to restore - - + + Restore failed - - + + Failed to restore the backup. Errorcode: %1 - + Backup of modlist created - + A file with the same name has already been downloaded. What would you like to do? - + Overwrite - + Rename new file - + Ignore file @@ -4452,84 +4457,84 @@ Continue? - - + + Confirm - + Really enable all plugins? - + Really disable all plugins? - + The file containing locked plugin indices is broken - - + + <b>Origin</b>: %1 - + <br><b><i>This plugin can't be disabled (enforced by the game).</i></b> - + Author - + Description - + Missing Masters - + Enabled Masters - + Loads Archives - + There are Archives connected to this plugin. Their assets will be added to your game, overwriting in case of conflicts following the plugin order. Loose files will always overwrite assets from Archives. (This flag only checks for Archives from the same mod as the plugin) - + Loads INI settings - + There is an ini file connected to this plugin. Its settings will be added to your game settings, overwriting in case of conflicts. - + This ESP is flagged as an ESL. It will adhere to the ESP load order but the records will be loaded in ESL space. - + failed to restore load order for %1 @@ -5267,7 +5272,7 @@ If the folder was still in use, restart MO and try again. - + <Manage...> @@ -5308,12 +5313,12 @@ If the folder was still in use, restart MO and try again. - + failed to access %1 - + failed to set file time %1 -- cgit v1.3.1 From a2eb3e02665ae4dd2d6029142ac28d27f1cef361 Mon Sep 17 00:00:00 2001 From: LostDragonist Date: Sun, 19 Aug 2018 13:02:30 -0500 Subject: Prevent user from deleting currently active profile --- src/organizer_en.ts | 80 +++++++++++++++++++++++++------------------------- src/profilesdialog.cpp | 14 +++++++-- src/profilesdialog.h | 1 + 3 files changed, 52 insertions(+), 43 deletions(-) (limited to 'src/organizer_en.ts') diff --git a/src/organizer_en.ts b/src/organizer_en.ts index 0d0cae2c..8b8bd101 100644 --- a/src/organizer_en.ts +++ b/src/organizer_en.ts @@ -2886,7 +2886,7 @@ You can also use online editors and converters instead. - + Error @@ -2966,79 +2966,79 @@ You can also use online editors and converters instead. - + loot failed. Exit code was: %1 - + failed to start loot - + failed to run loot: %1 - + Errors occured - + Backup of load order created - + Choose backup to restore - + No Backups - + There are no backups to restore - - + + Restore failed - - + + Failed to restore the backup. Errorcode: %1 - + Backup of modlist created - + A file with the same name has already been downloaded. What would you like to do? - + Overwrite - + Rename new file - + Ignore file @@ -4199,108 +4199,108 @@ p, li { white-space: pre-wrap; } - + Error - + Windows Event Log Error - + The Windows Event Log service is disabled and/or not running. This prevents USVFS from running properly. Your mods may not be working in the executable that you are launching. Note that you may have to restart MO and/or your PC after the service is fixed. Continue launching %1? - + No profile set - + Failed to refresh list of esps: %1 - + Multiple esps/esls activated, please check that they don't conflict. - + Download? - + A download has been started but no installed page plugin recognizes it. If you download anyway no information (i.e. version) will be associated with the download. Continue? - + failed to update mod list: %1 - - + + login successful - + Login failed - + Login failed, try again? - + login failed: %1. Download will not be associated with an account - + login failed: %1 - + login failed: %1. You need to log-in with Nexus to update MO. - + MO1 "Script Extender" load mechanism has left hook.dll in your game folder - - + + Description missing - + <a href="%1">hook.dll</a> has been found in your game folder (right click to copy the full path). This is most likely a leftover of setting the ModOrganizer 1 load mechanism to "Script Extender", in which case you must remove this file either by changing the load mechanism in ModOrganizer 1 or manually removing the file, otherwise the game is likely to crash and burn. - + failed to save load order: %1 - + The designated write target "%1" is not enabled. diff --git a/src/profilesdialog.cpp b/src/profilesdialog.cpp index 04c1876d..f0bbe6ed 100644 --- a/src/profilesdialog.cpp +++ b/src/profilesdialog.cpp @@ -53,6 +53,7 @@ ProfilesDialog::ProfilesDialog(const QString &profileName, MOBase::IPluginGame c , ui(new Ui::ProfilesDialog) , m_FailState(false) , m_Game(game) + , m_ActiveProfileName("") { ui->setupUi(this); @@ -66,6 +67,7 @@ ProfilesDialog::ProfilesDialog(const QString &profileName, MOBase::IPluginGame c QListWidgetItem *item = addItem(profileIter.filePath()); if (profileName == profileIter.fileName()) { ui->profilesList->setCurrentItem(item); + m_ActiveProfileName = profileName; } } @@ -182,13 +184,19 @@ void ProfilesDialog::on_copyProfileButton_clicked() void ProfilesDialog::on_removeProfileButton_clicked() { + Profile::Ptr profileToDelete = ui->profilesList->currentItem()->data(Qt::UserRole).value(); + if (profileToDelete->name() == m_ActiveProfileName) { + QMessageBox::warning(this, tr("Deleting active profile"), + tr("Unable to delete active profile. Please change to a different profile first.")); + return; + } + QMessageBox confirmBox(QMessageBox::Question, tr("Confirm"), tr("Are you sure you want to remove this profile (including local savegames if any)?"), QMessageBox::Yes | QMessageBox::No); if (confirmBox.exec() == QMessageBox::Yes) { - Profile::Ptr currentProfile = ui->profilesList->currentItem()->data(Qt::UserRole).value(); QString profilePath; - if (currentProfile.get() == nullptr) { + if (profileToDelete.get() == nullptr) { profilePath = Settings::instance().getProfileDirectory() + "/" + ui->profilesList->currentItem()->text(); if (QMessageBox::question(this, tr("Profile broken"), @@ -199,7 +207,7 @@ void ProfilesDialog::on_removeProfileButton_clicked() } else { // on destruction, the profile object would write the profile.ini file again, so // we have to get rid of the it before deleting the directory - profilePath = currentProfile->absolutePath(); + profilePath = profileToDelete->absolutePath(); } QListWidgetItem* item = ui->profilesList->takeItem(ui->profilesList->currentRow()); if (item != nullptr) { diff --git a/src/profilesdialog.h b/src/profilesdialog.h index cab25f6a..a328ce40 100644 --- a/src/profilesdialog.h +++ b/src/profilesdialog.h @@ -95,6 +95,7 @@ private: QListWidget *m_ProfilesList; bool m_FailState; MOBase::IPluginGame const *m_Game; + QString m_ActiveProfileName; }; #endif // PROFILESDIALOG_H -- cgit v1.3.1