/// <summary> /// Конструктор /// </summary> /// <param name="element"><see cref="CADLinkType"/> or <see cref="ImportInstance"/></param> /// <param name="uiApplication">Revit uiApp</param> /// <param name="dwgImportManagerVm">Link to main view model</param> /// <param name="deleteElementEvent"></param> /// <param name="changeViewEvent"></param> public DwgImportsItem( Element element, UIApplication uiApplication, DWGImportManagerVM dwgImportManagerVm, DeleteElementEvent deleteElementEvent, ChangeViewEvent changeViewEvent) { _deleteElementEvent = deleteElementEvent; _changeViewEvent = changeViewEvent; _uiApplication = uiApplication; DwgImportManagerVm = dwgImportManagerVm; ViewSpecific = element.ViewSpecific; OwnerViewId = element.OwnerViewId; Category = element.Category; Id = element.Id; Name = GetName(element); if (element is ImportInstance importInstance) { IsLinked = importInstance.IsLinked; } // commands CopyIdToClipboard = new RelayCommandWithoutParameter(CopyIdToClipboardAction); CopyOwnerViewIdToClipboard = new RelayCommandWithoutParameter(CopyOwnerViewIdToClipboardAction); ShowItem = new RelayCommandWithoutParameter(ShowItemAction); DeleteItem = new RelayCommandWithoutParameter(DeleteItemAction); }
public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) { try { #if !DEBUG Statistic.SendCommandStarting(new ModPlusConnector()); #endif _uiApplication = commandData.Application; _currentDocument = _uiApplication.ActiveUIDocument.Document; _deleteElementEvent = new DeleteElementEvent(); _removeEvents = new RemoveEvents(); _changeViewEvent = new ChangeViewEvent(); _deleteManyElementsEvent = new DeleteManyElementsEvent(); SearchImportsAndBind(false); return(Result.Succeeded); } catch (OperationCanceledException) { return(Result.Cancelled); } catch (Exception exception) { message = exception.Message; return(Result.Failed); } }
public void Handle(ChangeViewEvent message) { if (message.PreviousView != PrevView.DataView) { UpdateData(); IncomeSubCategoryDisplay = new BindableCollection <Category>(Income.AllIncomeCategories); ExpenseSubCategoryDisplay = new BindableCollection <Category>(Expense.AllExpenseCategories); } }
public DWGImportManagerVM( UIApplication uiApplication, List <Element> elements, DeleteElementEvent deleteElementEvent, ChangeViewEvent changeViewEvent, DeleteManyElementsEvent deleteManyElementsEvent) { _deleteElementEvent = deleteElementEvent; _changeViewEvent = changeViewEvent; _deleteManyElementsEvent = deleteManyElementsEvent; _uiApplication = uiApplication; DwgImportsItems = new ObservableCollection <DwgImportsItem>(); DwgImportsItems.CollectionChanged += (sender, args) => OnPropertyChanged(nameof(SelectedItemsCount)); FillDwgImportsItems(elements); }
//------------------------------------------------------------------------- public void RaiseChangeViewEvent(ChangeViewEventEventArgs e) { ChangeViewEvent?.Invoke(this, e); }