Beispiel #1
0
 protected override void OnActivated()
 {
     base.OnActivated();
     if (View.Id == DashboardViewId)
     {
         SourceItem = (DashboardViewItem)View.FindItem(FilterSourceID);
         TargetItem = (DashboardViewItem)View.FindItem(FilterTargetId);
         if (SourceItem != null)
         {
             SourceItem.ControlCreated += SourceItem_ControlCreated;
         }
         if (TargetItem != null)
         {
             if (TargetItem.Frame != null)
             {
                 DisableNavigationActions(TargetItem.Frame);
             }
             else
             {
                 TargetItem.ControlCreated += (s, e) =>
                 {
                     DisableNavigationActions(TargetItem.Frame);
                 }
             }
         }
         ;
     }
 }
Beispiel #2
0
        private static DetailView CreateDetailView(DetailView detailView, object o, ListView listView,
                                                   DashboardViewItem dashboardViewItem, Frame frame)
        {
            var objectTypeLink = ((IModelApplicationMasterDetail)detailView.Model.Application).DashboardMasterDetail
                                 .ObjectTypeLinks
                                 .FirstOrDefault(link => {
                if (link.ModelClass.TypeInfo.Type == o.GetType())
                {
                    var fitForCriteria = listView.ObjectSpace.IsObjectFitForCriteria(o, CriteriaOperator.Parse(link.Criteria));
                    return(!fitForCriteria.HasValue || fitForCriteria.Value);
                }
                return(false);
            });

            if (objectTypeLink != null)
            {
                detailView.Close();
                dashboardViewItem.Frame.SetView(null);
                var application = dashboardViewItem.Frame.Application;
                var objectSpace = application.CreateObjectSpace();
                detailView = application.CreateDetailView(objectSpace, objectTypeLink.DetailView.Id,
                                                          true, dashboardViewItem.InnerView);
                dashboardViewItem.Frame.SetView(detailView, true, frame);
            }

            detailView.CurrentObject = detailView.ObjectSpace.GetObject(o);
            return(detailView);
        }
        ListView FilteredListView(ListView listView, DashboardViewItem dashboardViewItem, IModelDashboardViewItemEx modelDashboardViewItemFiltered)
        {
            var filteredColumn       = modelDashboardViewItemFiltered.Filter.FilteredColumn;
            var filteredListView     = ((ListView)dashboardViewItem.Frame.View);
            var collectionSourceBase = filteredListView.CollectionSource;

            collectionSourceBase.Criteria[modelDashboardViewItemFiltered.Filter.DataSourceView.Id] = CriteriaSelectionOperator(listView, filteredColumn);
            return(filteredListView);
        }
Beispiel #4
0
 protected override void OnDeactivated()
 {
     if (SourceItem != null)
     {
         SourceItem.ControlCreated -= SourceItem_ControlCreated;
         SourceItem = null;
     }
     TargetItem = null;
     base.OnDeactivated();
 }
Beispiel #5
0
        private void SourceItem_ControlCreated(object sender, EventArgs e)
        {
            DashboardViewItem dashboardItem = (DashboardViewItem)sender;
            ListView          innerListView = dashboardItem.InnerView as ListView;

            if (innerListView != null)
            {
                innerListView.SelectionChanged -= innerListView_SelectionChanged;
                innerListView.SelectionChanged += innerListView_SelectionChanged;
            }
        }
Beispiel #6
0
        protected override void OnActivated()
        {
            base.OnActivated();
            // Perform various tasks depending on the target View.
            DashboardViewItem viewItem = ((DashboardView)View).FindItem("MessageOfTheDay") as DashboardViewItem;

            if (viewItem != null)
            {
                viewItem.ControlCreated += new EventHandler <EventArgs>(viewItem_ControlCreated);
            }
        }
Beispiel #7
0
        ListView FilteredListView(ListView listView, DashboardViewItem dashboardViewItem, IModelDashboardViewItemEx modelDashboardViewItemFiltered)
        {
            var filteredColumn = modelDashboardViewItemFiltered.Filter.FilteredColumn;

            if (filteredColumn != null)
            {
                var filteredListView          = ((ListView)dashboardViewItem.Frame.View);
                var collectionSourceBase      = filteredListView.CollectionSource;
                var criteriaSelectionOperator = CriteriaSelectionOperator(listView, filteredColumn);
                collectionSourceBase.SetCriteria(modelDashboardViewItemFiltered.Filter.DataSourceView.Id, criteriaSelectionOperator.ToString());
                return(filteredListView);
            }

            return(null);
        }
 protected override void OnViewControlsCreated()
 {
     base.OnViewControlsCreated();
     foreach (var result in View.Items.OfType <DashboardViewItem>())
     {
         var frame1 = result.Frame;
         if (frame1 != null && frame1.View is ListView)
         {
             var listView = ((ListView)frame1.View);
             DashboardViewItem result1 = result;
             listView.SelectionChanged += (sender, args) => OnSelectionChanged(new SelectionChangedArgs(listView, result1));
         }
     }
     ResetMasterDetailModes();
 }
 protected override void OnViewControlsCreated()
 {
     base.OnViewControlsCreated();
     foreach (var viewItem in View.Items.OfType <DashboardViewItem>())
     {
         var frame = viewItem.Frame;
         if (frame != null)
         {
             var listView = frame.View as ListView;
             if (listView != null)
             {
                 DashboardViewItem result1 = viewItem;
                 listView.SelectionChanged += (sender, args) => OnSelectionChanged(new SelectionChangedArgs(listView, result1));
             }
         }
     }
     ResetMasterDetailModes();
 }
        private void CurrentRequestWindow_PagePreRender(object sender, EventArgs e)
        {
            if (View == null)
            {
                return;
            }
            DashboardViewItem sourceItem = (DashboardViewItem)View.FindItem(FilterSourceID);

            if (sourceItem.InnerView == null)
            {
                return;
            }
            ListView           listView = (ListView)sourceItem.InnerView;
            ASPxGridListEditor editor   = (ASPxGridListEditor)listView.Editor;

            if (editor == null)
            {
                return;
            }
            ICallbackManagerHolder holder = (ICallbackManagerHolder)WebWindow.CurrentRequestPage;
            string script = holder.CallbackManager.GetScript();

            script = string.Format(CultureInfo.InvariantCulture, @"
function(s, e) {{
    if(e.isChangedOnServer){{
        {0}
    }}else{{
        var xafCallback = function() {{
            s.EndCallback.RemoveHandler(xafCallback);
            {0}
        }};
        s.EndCallback.AddHandler(xafCallback);
    }}
}}
                ", script);
            ClientSideEventsHelper.AssignClientHandlerSafe(editor.Grid, "SelectionChanged", script, "DashboardRefreshController");
        }
        private static DetailView CreateDetailView(this IModelMasterDetailViewObjectTypeLink objectTypeLink, DetailView detailView, DashboardViewItem dashboardViewItem, Frame frame)
        {
            detailView.Close();
            dashboardViewItem.Frame.SetView(null);
            var application = dashboardViewItem.Frame.Application;
            var objectSpace = application.CreateObjectSpace();

            detailView = application.CreateDetailView(objectSpace, objectTypeLink.DetailView.Id, true, dashboardViewItem.InnerView);
            dashboardViewItem.Frame.SetView(detailView, true, frame);
            return(detailView);
        }
        private static DetailView SynchronizeCurrentObject(this DetailView detailView, object o, ListView listView, DashboardViewItem dashboardViewItem, NestedFrame frame)
        {
            var objectTypeLink = detailView.GetObjectTypeLink(o, listView);

            if (objectTypeLink != null)
            {
                detailView = objectTypeLink.CreateDetailView(detailView, dashboardViewItem, frame);
            }

            if (detailView.ObjectSpace == null)
            {
                dashboardViewItem.Frame.SetView(null);
                detailView = (DetailView)frame.Application.NewView(detailView.Model);
                dashboardViewItem.Frame.SetView(detailView);
            }
            detailView.CurrentObject = detailView.ObjectSpace.GetObject(o);
            return(detailView);
        }
Beispiel #13
0
 public SelectionChangedArgs(ListView listView, DashboardViewItem dashboardViewItem)
 {
     _listView          = listView;
     _dashboardViewItem = dashboardViewItem;
 }
Beispiel #14
0
 public ListViewFilteringArgs(DashboardViewItem dashboardViewItem, IModelDashboardViewItemEx model, ListView dataSourceListView)
 {
     _dashboardViewItem  = dashboardViewItem;
     _model              = model;
     _dataSourceListView = dataSourceListView;
 }
Beispiel #15
0
 bool ViewMatch(DashboardViewItem item, IModelListView dataSourceView)
 {
     return(item.Frame != null && item.Frame.View != null && item.Frame.View.Model == dataSourceView);
 }
Beispiel #16
0
 public static IModelDashboardViewItem GetModel(this DashboardViewItem item, DashboardView view)
 {
     return((IModelDashboardViewItem)view.Model.Items[item.Id]);
 }