// // (C) Copyright 2003-2019 by Autodesk, Inc. // // Permission to use, copy, modify, and distribute this software in // object code form for any purpose and without fee is hereby granted, // provided that the above copyright notice appears in all copies and // that both that copyright notice and the limited warranty and // restricted rights notice below appear in all supporting // documentation. // // AUTODESK PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS. // AUTODESK SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF // MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. AUTODESK, INC. // DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE // UNINTERRUPTED OR ERROR FREE. // // Use, duplication, or disclosure by the U.S. Government is subject to // restrictions set forth in FAR 52.227-19 (Commercial Computer // Software - Restricted Rights) and DFAR 252.227-7013(c)(1)(ii) // (Rights in Technical Data and Computer Software), as applicable. // using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using Autodesk.Revit.UI; using TaskDialog = Autodesk.Revit.UI.TaskDialog; namespace Revit.SDK.Samples.SharedCoordinateSystem.CS { /// /// dupliate coordiante data form /// public partial class DuplicateForm : System.Windows.Forms.Form { CoordinateSystemData m_data; //the reference of the CoordinateSystemData class CoordinateSystemDataForm m_dataForm; //the reference of the CoordinateSystemDataForm class string m_locationName; //the name of selected location /// /// constructor /// /// /// /// public DuplicateForm(CoordinateSystemData data, CoordinateSystemDataForm coorinateForm, string locationName) { m_data = data; m_dataForm = coorinateForm; m_locationName = locationName; InitializeComponent(); } /// /// duplicate a new project location /// /// /// private void okButton_Click(object sender, EventArgs e) { //check whether the name has been used foreach (string name in m_data.LocationNames) { if (name == newNameTextBox.Text) { TaskDialog.Show("Revit", "The name entered is already in use. Enter a unique name.", TaskDialogCommonButtons.Ok); return; } } try { m_data.DuplicateLocation(m_locationName, newNameTextBox.Text); m_dataForm.NewLocationName = newNameTextBox.Text; } catch (ArgumentException ex) { TaskDialog.Show("Revit", ex.Message, TaskDialogCommonButtons.Ok); return; } this.DialogResult = DialogResult.OK; // set dialog result this.Close(); // close the form } /// /// cancel the command /// /// /// private void cancelButton_Click(object sender, EventArgs e) { this.DialogResult = DialogResult.Cancel;// set dialog result this.Close(); // close the form } /// /// invoked while the form was been loaded /// /// /// private void DuplicateForm_Load(object sender, EventArgs e) { newNameTextBox.Focus(); } } }