commit 8e2080e0f80bd3ffb9b14b0c0e28968d7ee24ab6
parent a34ef399b950d435d5ee275df585caaf479671e0
Author: cfillion <cfillion@users.noreply.github.com>
Date: Wed, 28 Dec 2016 23:05:56 -0500
about repo: prompt to enable local "Install new packages when sychronizing" override when installing everything
Diffstat:
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/src/about.cpp b/src/about.cpp
@@ -458,7 +458,7 @@ void AboutIndexDelegate::install()
if(!choice)
return;
- const Remote &remote = m_reapack->remote(m_index->name());
+ Remote remote = m_reapack->remote(m_index->name());
if(!remote) {
// In case the user uninstalled the repository while this dialog was opened
@@ -468,6 +468,27 @@ void AboutIndexDelegate::install()
return;
}
+ const InstallOpts &installOpts = m_reapack->config()->install;
+
+ if(choice == INSTALL_ALL && boost::logic::indeterminate(remote.autoInstall())
+ && !installOpts.autoInstall) {
+ const int btn = MessageBox(m_dialog->handle(),
+ AUTO_STR("Do you want ReaPack to install new packages from this repository")
+ AUTO_STR(" when synchronizing in the future?\r\n\r\nThis setting can also be")
+ AUTO_STR(" customized globally or on a per-repository basis in")
+ AUTO_STR(" ReaPack > Manage repositories."),
+ AUTO_STR("Install all packages in this repository"), MB_YESNOCANCEL);
+
+ switch(btn) {
+ case IDYES:
+ remote.setAutoInstall(true);
+ m_reapack->config()->remotes.add(remote);
+ break;
+ case IDCANCEL:
+ return;
+ }
+ }
+
Transaction *tx = m_reapack->setupTransaction();
if(!tx)