public LayerPropertyGroupViewModel(LayerPropertyGroup layerPropertyGroup, IProfileEditorService profileEditorService, ILayerPropertyVmFactory layerPropertyVmFactory)
        {
            _profileEditorService   = profileEditorService;
            _layerPropertyVmFactory = layerPropertyVmFactory;

            LayerPropertyGroup = layerPropertyGroup;
            IsVisible          = !LayerPropertyGroup.IsHidden;

            TreeGroupViewModel = _layerPropertyVmFactory.TreeGroupViewModel(this);
            TreeGroupViewModel.ConductWith(this);
            TimelineGroupViewModel = _layerPropertyVmFactory.TimelineGroupViewModel(this);
            TimelineGroupViewModel.ConductWith(this);
        }
Beispiel #2
0
        public double GetDepth()
        {
            int depth = 0;
            LayerPropertyGroup current = LayerPropertyGroup.Parent;

            while (current != null)
            {
                depth++;
                current = current.Parent;
            }

            return(depth);
        }
        public LayerPropertyGroupViewModel(LayerPropertyGroup layerPropertyGroup, ILayerPropertyVmFactory layerPropertyVmFactory)
        {
            _layerPropertyVmFactory = layerPropertyVmFactory;

            LayerPropertyGroup = layerPropertyGroup;
            Children           = new BindableCollection <PropertyChangedBase>();

            TreeGroupViewModel     = layerPropertyVmFactory.TreeGroupViewModel(this);
            TimelineGroupViewModel = layerPropertyVmFactory.TimelineGroupViewModel(this);

            LayerPropertyGroup.VisibilityChanged += LayerPropertyGroupOnVisibilityChanged;
            IsVisible = !LayerPropertyGroup.IsHidden;

            PopulateChildren();
        }