Summary description for WizardDialog.
Inheritance: System.Windows.Forms.Form
		private void AddPanels(object sender, WizardDialog dlg, ExtensionContext context)
		{
			dlg.AddPanel(panel);
		}
示例#2
0
		private void AddPanels(object sender, WizardDialog dlg, ExtensionContext context)
		{
			panel = new MRTestPanel();
			
			dlg.AddPanel(panel);
		}
		protected override void AddPanels(WizardDialog dlg)
		{
			panel = new ARPanel();

			dlg.AddPanel(panel);
		}
示例#4
0
		protected override void AddPanels(WizardDialog dlg)
		{
			dlg.AddPanel(optionsPanel);
			dlg.AddPanel(integrationPanel);
		}
示例#5
0
		public void Execute(object Application, int hwndOwner, 
			ref object[] ContextParams, ref object[] CustomParams, ref EnvDTE.wizardResult retval)
		{
			// TODO: Add magic here
			IWizardExtension[] extensions = LoadExtensions(CustomParams);

			foreach(IWizardExtension extension in extensions)
			{
				extension.Init(this);
			}

			try
			{
				dteInstance = (DTE) Application;
				owner = hwndOwner;

				projectName = (String) ContextParams[1];
				localProjectPath = (String) ContextParams[2];
				installationDirectory = (String) ContextParams[3];
				exclusive = (bool) ContextParams[4];
				solutionName = (String) ContextParams[5];

				context = new ExtensionContext(dteInstance, projectName, localProjectPath, installationDirectory, solutionName);

				if (exclusive)
				{
					vsPromptResult promptResult = dteInstance.ItemOperations.PromptToSave;

					if (promptResult == vsPromptResult.vsPromptResultCancelled)
					{
						retval = wizardResult.wizardResultCancel;
						return;
					}
				}

				using(WizardDialog dlg = new WizardDialog(context))
				{
					dlg.WizardTitle = WizardTitle;
					
					AddPanels(dlg);

					WizardUIEventHandler eventHandler = (WizardUIEventHandler) eventList[AddPanelsEventKey];
					
					if (eventHandler != null)
					{
						eventHandler(this, dlg, context);
					}

					dlg.ShowDialog(this);
					retval = dlg.WizardResult;

					if (retval == wizardResult.wizardResultSuccess)
					{
						CreateProject(dlg);
					}
					else
					{
						retval = wizardResult.wizardResultCancel;
						return;
					}
				}
			}
			catch(Exception ex)
			{
				String message = ex.GetType().Name + "\r\n\r\n" + ex.Message + "\r\n\r\n" + ex.StackTrace;
				
				MessageBox.Show(this, "Exception during project creation. \r\n" + message, 
					"Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
				
				throw;
			}
			finally
			{
				foreach(IWizardExtension extension in extensions)
				{
					extension.Terminate(this);
				}
			}
		}
示例#6
0
		protected abstract void AddPanels(WizardDialog dlg);
示例#7
0
		protected void CreateProject(WizardDialog dlg)
		{
			AddProjects(context);

			SetupProjectsProperties(context);

			AddReferences(context);

			SetupBuildEvents(context);

			PostProcess(context);
		}