using System; using System.ComponentModel; using Autodesk.Revit.ApplicationServices; namespace Revit.SDK.Samples.ProjectInfo.CS { /// /// Wrapper class for ProjectInfo /// public class ProjectInfoWrapper : IWrapper { #region Fields /// /// ProjectInfo /// private Autodesk.Revit.DB.ProjectInfo m_projectInfo; #endregion #region Constructors /// /// Initializes private variables. /// /// ProjectInfo public ProjectInfoWrapper(Autodesk.Revit.DB.ProjectInfo projectInfo) { m_projectInfo = projectInfo; } #endregion #region Properties /// /// Gets gbXMLSettings /// [Category("Energy Analysis"), DisplayName("Energy Settings")] [TypeConverter(typeof(WrapperConverter))] [RevitVersion(ProductType.MEP, ProductType.Architecture)] public ICustomTypeDescriptor EnergyDataSettings { get { return new WrapperCustomDescriptor(new EnergyDataSettingsWrapper(m_projectInfo.Document)); } } /// /// Gets or sets Project Issue Data /// [Category("Other"), DisplayName("Project Issue Data")] public String IssueDate { get { return m_projectInfo.IssueDate; } set { m_projectInfo.IssueDate = value; } } /// /// Gets or sets Project Status /// [Category("Other"), DisplayName("Project Status")] public String Status { get { return m_projectInfo.Status; } set { m_projectInfo.Status = value; } } /// /// Gets or sets Client Name /// [Category("Other"), DisplayName("Client Name")] public String ClientName { get { return m_projectInfo.ClientName; } set { m_projectInfo.ClientName = value; } } /// /// Gets or sets Project Address /// [Category("Other"), DisplayName("Project Address")] public String Address { get { return m_projectInfo.Address; } set { m_projectInfo.Address = value; } } /// /// Gets or sets Project Number /// [Category("Other"), DisplayName("Project Number")] public String Number { get { return m_projectInfo.Number; } set { m_projectInfo.Number = value; } } #region IWrapper Members /// /// Gets the handle object. /// [Browsable(false)] public object Handle { get { return m_projectInfo; } } /// /// Gets the name of the handle. /// [Category("Other"), DisplayName("Project Name")] public String Name { get { return m_projectInfo.Name; } set { m_projectInfo.Name = value; } } #endregion #endregion } }