public LocalDetailsEditor(Idea IdeaSource, VisualSymbol SymbolSource, bool AccessToGlobalDetails,
                                  bool AccessOnlyTables = false, DetailDesignator InitialDesignatorToEdit = null)
            : this()
        {
            this.IdeaSource            = IdeaSource;
            this.SymbolSource          = SymbolSource;
            this.AccessToGlobalDetails = AccessToGlobalDetails;

            if (AccessOnlyTables)
            {
                this.EntitlingPanel.SetVisible(false);
            }

            if (this.AccessToGlobalDetails)
            {
                this.VisualGlobalDetailsSource = DetailEditingCard.GenerateGlobalDetailsFor(this.IdeaSource, this.SymbolSource);
                this.GlobalDetailsMaintainer.SetDetailsSource(this.IdeaSource, this.SymbolSource, this.VisualGlobalDetailsSource, false,
                                                              false, InitialDesignatorToEdit);
                this.GlobalDetailsMaintainer.ShowCustomLookZone = true; // (this.SymbolSource != null);
            }
            else
            {
                this.LocalDetailsMaintainer.Title = "Designations...";
                this.AppearanceTitlePanel.SetVisible(false);
                this.BtnSwitchDetailsScopeOrder.SetVisible(false);
                this.GlobalDetailsMaintainer.SetVisible(false);
            }

            this.VisualLocalDetailsSource = DetailEditingCard.GenerateLocalDetailsFor(this.IdeaSource, this.SymbolSource, this.VisualGlobalDetailsSource);
            this.LocalDetailsMaintainer.SetDetailsSource(this.IdeaSource, this.SymbolSource, this.VisualLocalDetailsSource, true,
                                                         AccessOnlyTables, InitialDesignatorToEdit);
            this.LocalDetailsMaintainer.ShowCustomLookZone = true; // (this.SymbolSource != null);
        }
Пример #2
0
        private void DetailsToolPanel_AddClicked(object arg1, RoutedEventArgs arg2)
        {
            var Owner         = Ownership.Create <IdeaDefinition, Idea>(this.SourceIdea);
            var CreatedDetail = SourceEngine.CreateIdeaDetail(Owner, this.SourceIdea,
                                                              this.DetailsSource.Select(card => card.Designator.Value),
                                                              this.AccessOnlyTables);

            if (CreatedDetail == null)
            {
                return;
            }

            var NewEditCard = new DetailEditingCard(false, new Assignment <DetailDesignator>(CreatedDetail.Designation, this.IsLocal), CreatedDetail);

            this.DetailsSource.Add(NewEditCard);
            this.DetailsListBox.SelectedItem = NewEditCard;
        }