protected override void OnWidgetSet(IDashboardWidget widget)
        {
            base.OnWidgetSet(widget);

            TagReviewVm.Value.ShowFragmentAndSlice = this.Widget.ShowFragmentAndSlice;
            TagReviewVm.Value.ExtractMode          = this.Widget.ExtractMode;
            TagReviewVm.Value.FabricServiceId      = this.Widget.FabricService;
        }
Пример #2
0
        public WidgetVm ObtainWidgetVm(IDashboardWidget widget)
        {
            WidgetVm widgetVm;

            if (_widgetsVms.TryGetValue(widget, out widgetVm))
            {
                return(widgetVm);
            }

            // Deduce vm type from the Widget type.
            var vmType = _widgetVmTypes.First(it => it.GetCustomAttributes(true).OfType <ConfigAttribute>().Any(it => it.ConfigType == widget.GetType()));

            var vm = (WidgetVm)Activator.CreateInstance(vmType);

            vm.HyperStore = this.HyperStore;
            vm.Widget     = widget;         // ** Order matters here!!
            vm.ParentVm   = this;           // Allows the Vms to take action prior to any UI being renderered.

            _widgetsVms[widget] = vm;

            return(vm);
        }
Пример #3
0
        //public void OnChangeFilters(string[] filters)
        //{
        //	this.RaiseNotify(nameof(Filters));
        //}

        protected override void OnWidgetSet(IDashboardWidget widget)
        {
            var filterGroup = this.DashboardVm?.ObtainFilterGroup(this.Widget.FilterGroup);

            if (filterGroup != null && this.Widget.PredefinedFilters?.Length > 0)
            {
                if (filterGroup.FilterLabels == null)
                {
                    filterGroup.FilterLabels = this.Widget.PredefinedFilters;
                }
                else
                {
                    filterGroup.FilterLabels = filterGroup.FilterLabels.Concat(this.Widget.PredefinedFilters).Distinct().ToArray();
                }
            }

            if (filterGroup != null)
            {
                filterGroup.AllowDynamicFiltration = this.Widget.AllowDynamicFiltration;
            }

            base.OnWidgetSet(widget);
        }
Пример #4
0
 public bool IsDashboadContainer(IDashboardWidget widget)
 {
     return(widget is DashboardContainerWidget);
 }
Пример #5
0
 public string SerializeWidget(IDashboardWidget widget)
 {
     return(JsonHelper.Serialize(widget));
 }
Пример #6
0
 public DashboardFilterGroupData ObtainFilterGroup(IDashboardWidget widget)
 {
     return(this.ObtainFilterGroup(widget.FilterGroup));
 }