Example #1
0
            // basic / RevitVisibility
            public Criteria(DataItems.CompareVisEnum filterEnum,
                            ICompBasic compareOpr, RevisionVisibility testValue)
            {
                FilterEnum = filterEnum;
                CompareOpr = (CompareOpRoot)compareOpr;
                TestValue  = new ItemValue(testValue);
//				IgnoreCase = true;
            }
Example #2
0
        /// <summary>
        /// Create new Revision
        /// </summary>
        /// <param name="name"></param>
        /// <param name="visibility"></param>
        /// <param name="revDate"></param>
        /// <param name="description"></param>
        /// <param name="issued"></param>
        /// <param name="issuedBy"></param>
        /// <param name="issuedTo"></param>
        /// <param name="numberType"></param>
        private void Init(string name, RevisionVisibility visibility, string revDate, string description, bool issued, string issuedBy, string issuedTo, RevisionNumberType numberType)
        {
            // Get document and open transaction
            Autodesk.Revit.DB.Document document = DocumentManager.Instance.CurrentDBDocument;
            TransactionManager.Instance.EnsureInTransaction(document);

            // Get existing element if any
            var RevisionElem = ElementBinder.GetElementFromTrace <Autodesk.Revit.DB.Revision>(document);

            if (RevisionElem == null)
            {
                RevisionElem = Autodesk.Revit.DB.Revision.Create(document);
            }

            // Apply properties
            if (RevisionElem.Visibility != visibility)
            {
                RevisionElem.Visibility = visibility;
            }

            if (RevisionElem.Description != description)
            {
                RevisionElem.Description = description;
            }

            if (RevisionElem.RevisionDate != revDate)
            {
                RevisionElem.RevisionDate = revDate;
            }

            if (RevisionElem.Issued != issued)
            {
                RevisionElem.Issued = issued;
            }

            if (RevisionElem.IssuedBy != issuedBy)
            {
                RevisionElem.IssuedBy = issuedBy;
            }

            if (RevisionElem.IssuedTo != issuedTo)
            {
                RevisionElem.IssuedTo = issuedTo;
            }

            if (RevisionElem.NumberType != numberType)
            {
                RevisionElem.NumberType = numberType;
            }

            InternalSetElement(RevisionElem);

            // commit transaction and set element for trace
            TransactionManager.Instance.TransactionTaskDone();
            ElementBinder.SetElementForTrace(this.InternalElement);
        }
Example #3
0
 public RevisionData(Revision r)
 {
     Sequence    = r.SequenceNumber;
     Numbering   = r.NumberType;
     Date        = r.RevisionDate;
     Description = r.Description;
     Issued      = r.Issued;
     IssuedTo    = r.IssuedTo;
     IssuedBy    = r.IssuedBy;
     Show        = r.Visibility;
 }
        public static bool Verify(RevisionVisibility a, RevisionFilters.Criteria c)
        {
            bool result = false;

            RevisionFilters.ICompRoot opr = c.CompareOpr;

            if (c.CompareOpr == ANY)
            {
                result = true;
            }
            else if (opr == EQUAL ||
                     opr == NOT_EQUAL)
            {
                result = (a == c.TestValue.AsVisibility) == (opr == EQUAL);
            }

            return(result);
        }
Example #5
0
        /// <summary>
        /// Construct a new Revit Revision by Name
        /// </summary>
        /// <param name="name">Revision Name</param>
        /// <param name="visibility">Visibility settings</param>
        /// <param name="revDate">Revision Date</param>
        /// <param name="description">Description</param>
        /// <param name="issued">Issuing status</param>
        /// <param name="issuedBy">Issued by</param>
        /// <param name="issuedTo">Issued to</param>
        /// <param name="numberType">Number type</param>
        /// <returns></returns>
        public static Revision ByName(string name, string revDate, string description, bool issued, string issuedBy, string issuedTo, string visibility = "", string numberType = "")
        {
            RevisionVisibility revVisibility = RevisionVisibility.CloudAndTagVisible;

            if (!Enum.TryParse <RevisionVisibility>(visibility, out revVisibility))
            {
                revVisibility = RevisionVisibility.CloudAndTagVisible;
            }

            RevisionNumberType revNumberType = RevisionNumberType.Alphanumeric;

            if (!Enum.TryParse <RevisionNumberType>(numberType, out revNumberType))
            {
                revNumberType = RevisionNumberType.Alphanumeric;
            }

            return(new Revision(name, revVisibility, revDate, description, issued, issuedBy, issuedTo, revNumberType));
        }
Example #6
0
 /// <summary>
 /// Create Revision
 /// </summary>
 /// <param name="name"></param>
 /// <param name="visibility"></param>
 /// <param name="revDate"></param>
 /// <param name="description"></param>
 /// <param name="issued"></param>
 /// <param name="issuedBy"></param>
 /// <param name="issuedTo"></param>
 /// <param name="numberType"></param>
 private Revision(string name, RevisionVisibility visibility, string revDate, string description, bool issued, string issuedBy, string issuedTo, RevisionNumberType numberType)
 {
     SafeInit(() => Init(name, visibility, revDate, description, issued, issuedBy, issuedTo, numberType));
 }