Пример #1
0
        public void ElementChangedEvent(object sender, DocumentChangedEventArgs args)
        {
            ElementFilter filter = new ElementCategoryFilter(BuiltInCategory.OST_Furniture);
            ElementId     elemId = args.GetModifiedElementIds(filter).First();
            string        name   = args.GetTransactionNames().First();

            TaskDialog.Show("Modified Element", $"{elemId.ToString()} changed by {name}");
        }
        public void ElementChangedEvent(object sender, DocumentChangedEventArgs args)
        {
            var elementFilter = new ElementCategoryFilter(BuiltInCategory.OST_Doors);
            var elementId     = args.GetModifiedElementIds(elementFilter).First();
            var nameTrans     = args.GetTransactionNames().First();

            TaskDialog.Show("Warning Changed", "Ban da thay doi doi tuong " + elementId + " Trans name la " + nameTrans);
        }
Пример #3
0
        private void OnDocumentChanged(object sender, DocumentChangedEventArgs e)
        {
            try{
                setInfos(e);

                // get deleted elements ID
                if (e.Operation == UndoOperation.TransactionCommitted)
                {
                    if (e.GetTransactionNames()[0] == "”далить выбранные" || e.GetTransactionNames()[0] == "Delete selection")
                    {
                        foreach (var item in e.GetDeletedElementIds())
                        {
                            if (!addedList.Contains(item))
                            {
                                deletedList.Add(new DeletedElement(item.IntegerValue.ToString(), documentName, username));
                            }
                        }
                    }
                    else if (e.GetTransactionNames()[0] != "ќбновление рабочих наборов до последней версии из хранилища" && e.GetAddedElementIds().Count > 0)
                    {
                        addedList.AddRange(e.GetAddedElementIds().AsEnumerable());
                    }
                }
                // remove deleted elements if the transaction is rolled back
                else if (e.Operation == UndoOperation.TransactionUndone)
                {
                    if (e.GetTransactionNames()[0] == "”далить выбранные" || e.GetTransactionNames()[0] == "Delete selection" && deletedList.Count > 0)
                    {
                        foreach (var item in e.GetAddedElementIds())
                        {
                            try
                            {
                                var removeItem = deletedList.Where(x => x.Id == item.IntegerValue.ToString()).First();
                                deletedList.Remove(removeItem);
                            }
                            catch
                            {
                            }
                        }
                    }
                }
            }
            catch {
            }
        }
Пример #4
0
        void ApplicationDocumentChanged(object sender, DocumentChangedEventArgs args)
        {
            var doc      = args.GetDocument();
            var addedIds = args.GetAddedElementIds();
            var modified = args.GetModifiedElementIds();
            var deleted  = args.GetDeletedElementIds();

            ProcessUpdates(doc, modified, deleted, addedIds, args.GetTransactionNames());
        }