Beispiel #1
0
        private void btnCreatePackages_Click(object sender, EventArgs e)
        {
            if (!ValidatePaths())
            {
                return;
            }

            var rootPath   = txtRootPath.Text;
            var outputPath = txtOutputPath.Text;

            var           erroredIds     = new List <string>();
            ExtensionInfo currentPackage = null;

            try
            {
                btnCreatePackages.Enabled = false;
                btnClose.Enabled          = false;

                var creator = new PackageCreator(rootPath, outputPath);

                // create plugin packages
                foreach (var sel in lstPlugins.SelectedItems)
                {
                    currentPackage = (ExtensionInfo)sel;
                    var fi = creator.CreatePluginPackage(currentPackage.Path);
                    if (!LogMessage(fi, currentPackage.Name))
                    {
                        erroredIds.Add(currentPackage.Path);
                    }
                }

                // create theme packages
                foreach (var sel in lstThemes.SelectedItems)
                {
                    currentPackage = (ExtensionInfo)sel;
                    var fi = creator.CreateThemePackage(currentPackage.Path);
                    if (!LogMessage(fi, currentPackage.Name))
                    {
                        erroredIds.Add(currentPackage.Name);
                    }
                }

                var msg = string.Empty;

                if (erroredIds.Count == 0)
                {
                    msg = "Successfully created all {0} packages".FormatCurrent(lstPlugins.SelectedItems.Count + lstThemes.SelectedItems.Count);
                    MessageBox.Show(msg, "Packages created", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    msg = "Successfully created {0} packages.\n\nUnable to create:\n\n".FormatCurrent(lstPlugins.SelectedItems.Count + lstThemes.SelectedItems.Count - erroredIds.Count);
                    erroredIds.Each(x => msg += x + "\n");
                    MessageBox.Show(msg, "Packages created with errors", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("[{0}]: {1}".FormatCurrent(currentPackage, ex.Message), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                btnCreatePackages.Enabled = true;
                btnClose.Enabled          = true;
            }
        }
		private void btnCreatePackages_Click(object sender, EventArgs e)
		{
			if (!ValidatePaths())
				return;
			
			var rootPath = txtRootPath.Text;
			var outputPath = txtOutputPath.Text;

			var erroredIds = new List<string>();
			ExtensionInfo currentPackage = null;

			try
			{
				btnCreatePackages.Enabled = false;
				btnClose.Enabled = false;
				
				var creator = new PackageCreator(rootPath, outputPath);

				// create plugin packages
				foreach (var sel in lstPlugins.SelectedItems)
				{
					currentPackage = (ExtensionInfo)sel;
					var fi = creator.CreatePluginPackage(currentPackage.Path);
					if (!LogMessage(fi, currentPackage.Name))
					{
						erroredIds.Add(currentPackage.Path);
					}
				}

				// create theme packages
				foreach (var sel in lstThemes.SelectedItems)
				{
					currentPackage = (ExtensionInfo)sel;
					var fi = creator.CreateThemePackage(currentPackage.Path);
					if (!LogMessage(fi, currentPackage.Name))
					{
						erroredIds.Add(currentPackage.Name);
					}
				}

				var msg = string.Empty;

				if (erroredIds.Count == 0)
				{
					msg = "Successfully created all {0} packages".FormatCurrent(lstPlugins.SelectedItems.Count + lstThemes.SelectedItems.Count);
					MessageBox.Show(msg, "Packages created", MessageBoxButtons.OK, MessageBoxIcon.Information);
				}
				else
				{
					msg = "Successfully created {0} packages.\n\nUnable to create:\n\n".FormatCurrent(lstPlugins.SelectedItems.Count + lstThemes.SelectedItems.Count - erroredIds.Count);
					erroredIds.Each(x => msg += x + "\n");
					MessageBox.Show(msg, "Packages created with errors", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
				}
			}
			catch (Exception ex)
			{
				MessageBox.Show("[{0}]: {1}".FormatCurrent(currentPackage, ex.Message), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
			}
			finally
			{
				btnCreatePackages.Enabled = true;
				btnClose.Enabled = true;
			}
			
		}