private void buttonRefresh_Click(object sender, EventArgs e) { // get UI input of options m_model.SetTier(this.comboBoxTier.SelectedText); m_model.Options.ExportMullions = this.checkBoxExportMullions.Checked; m_model.Options.IncludeShadingSurfaces = this.checkBoxIncludeShadingSurfaces.Checked; m_model.Options.SimplifyCurtainSystems = this.checkBoxSimplifyCurtainSystems.Checked; m_model.Initialize(); m_model.RefreshAnalysisData(treeViewAnalyticalData); // expand all child treeViewAnalyticalData.ExpandAll(); this.Refresh(); }
///<summary> /// Implement this method as an external command for Revit. /// </summary> /// <param name="commandData">An object that is passed to the external application /// which contains data related to the command, /// such as the application object and active view.</param> /// <param name="message">A message that can be set by the external application /// which will be displayed if a failure or cancellation is returned by /// the external command.</param> /// <param name="elements">A set of elements to which the external application /// can add elements that are to be highlighted in case of failure or cancellation.</param> /// <returns>Return the status of the external command. /// A result of Succeeded means that the API external method functioned as expected. /// Cancelled can be used to signify that the user cancelled the external operation /// at some point. Failure should be returned if the application is unable to proceed with /// the operation.</returns> public Autodesk.Revit.UI.Result Execute(ExternalCommandData commandData, ref string message, Autodesk.Revit.DB.ElementSet elements) { // Create an object that is responsible for collecting users inputs and getting analysis data of current model. EnergyAnalysisModel analysisModel = new EnergyAnalysisModel(commandData.Application.ActiveUIDocument.Document); // Create the UI for users inputs options and view analysis models. using (OptionsAndAnalysisForm form = new OptionsAndAnalysisForm(analysisModel)) { // make analysis data ready analysisModel.Initialize(); // show dialog to browser analysis model if (DialogResult.OK != form.ShowDialog()) { return(Result.Cancelled); } } return(Result.Succeeded); }
///<summary> /// Implement this method as an external command for Revit. /// </summary> /// <param name="commandData">An object that is passed to the external application /// which contains data related to the command, /// such as the application object and active view.</param> /// <param name="message">A message that can be set by the external application /// which will be displayed if a failure or cancellation is returned by /// the external command.</param> /// <param name="elements">A set of elements to which the external application /// can add elements that are to be highlighted in case of failure or cancellation.</param> /// <returns>Return the status of the external command. /// A result of Succeeded means that the API external method functioned as expected. /// Cancelled can be used to signify that the user cancelled the external operation /// at some point. Failure should be returned if the application is unable to proceed with /// the operation.</returns> public Autodesk.Revit.UI.Result Execute(ExternalCommandData commandData, ref string message, Autodesk.Revit.DB.ElementSet elements) { // Create an object that is responsible for collecting users inputs and getting analysis data of current model. EnergyAnalysisModel analysisModel = new EnergyAnalysisModel(commandData.Application.ActiveUIDocument.Document); // Create the UI for users inputs options and view analysis models. using (OptionsAndAnalysisForm form = new OptionsAndAnalysisForm(analysisModel)) { // make analysis data ready analysisModel.Initialize(); // show dialog to browser analysis model if (DialogResult.OK != form.ShowDialog()) { return Result.Cancelled; } } return Result.Succeeded; }