Subversion Repositories spk

Rev

Rev 183 | Rev 191 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 183 Rev 184
Line 673... Line 673...
673
						}
673
						}
674
					}
674
					}
675
 
675
 
676
					// check for compatabilities
676
					// check for compatabilities
677
					CLinkList<CBaseFile> packages;
677
					CLinkList<CBaseFile> packages;
-
 
678
					Utils::CStringList list;
678
					int compat = m_pPackages->checkCompatabilityAgainstPackages(package, NULL, &packages);
679
					int compat = m_pPackages->checkCompatabilityAgainstPackages(package, &list, &packages);
679
					if ( compat )
680
					if ( compat )
680
					{
681
					{
681
						String ^message = "\nConflicts with:\n";
682
						String ^message = "Conflicts with:\n";
682
						for ( CBaseFile *p = packages.First(); p; p = packages.Next() )
683
						for ( CBaseFile *p = packages.First(); p; p = packages.Next() )
683
							message += _US(p->getFullPackageName(m_pPackages->GetLanguage())) + "\n";
684
							message += _US(p->getFullPackageName(m_pPackages->GetLanguage())) + "\n";
684
 
685
 
-
 
686
						String^ details = "Package Conflicts:\n";
-
 
687
						for (CBaseFile* p = packages.First(); p; p = packages.Next())
-
 
688
							details += _US(p->getFullPackageName(m_pPackages->GetLanguage())) + "\n";
-
 
689
						details += "File Conflicts:\n";
-
 
690
						for (auto itr = list.begin(); itr != list.end(); itr++)
-
 
691
							details += _US((*itr)->str + " <> " + (*itr)->data) + "\n";
685
						if ( MessageBox::Show(this, _US(package->getFullPackageName(m_pPackages->GetLanguage())) + ":\nIncompatabilities found with installed fake patches\n" + message + "\n\nDo you still wish to install?", "Packages Incompatable", MessageBoxButtons::YesNo, MessageBoxIcon::Warning) != Windows::Forms::DialogResult::Yes )
692
						MessageBoxDetails^ msgBox = gcnew MessageBoxDetails("Potential Incomatability Found", _US(package->getFullPackageName(m_pPackages->GetLanguage())) + ":\nIncompatabilities found with installed fake patches\n" + message + "\n\nDo you still wish to install ? ", details, true);
-
 
693
						msgBox->SetOkText("Yes");
-
 
694
						msgBox->SetCancelText("No");
-
 
695
						int height = 200 + (packages.size() * 20);
-
 
696
						msgBox->Height = height > 600 ? 600: height;
-
 
697
						msgBox->Width = 650;
-
 
698
 
-
 
699
						System::Windows::Forms::DialogResult res = msgBox->ShowDialog(this);
-
 
700
						delete msgBox;
-
 
701
						if (res != Windows::Forms::DialogResult::OK)
686
						{
702
						{
687
							m_pPackages->RemovePreparedInstall(package);
703
							m_pPackages->RemovePreparedInstall(package);
688
							errored = true;
704
							errored = true;
689
						}
705
						}
690
					}
706
					}