示例#1
0
 private void LoadSelectionCollection(ISupportAsyncLoadingCollection viewer, Type classType)
 {
     if (this._loadCollectionAfterFormLoad)
     {
         this.PopupForm.Load += (sender, e) =>
         {
             viewer.PopulateCollectionAsync(() => { return(GetCollection(classType)); },
                                            () => { this.PopupForm.Text = "Please select..."; });
         };
     }
     else // branch to make testing easier
     {
         viewer.BusinessObjectCollection = GetCollection(classType);
     }
 }
示例#2
0
        private IControlHabanero GenerateSelectionInterface(IClassDef lookupTypeClassDef,
                                                            out ISupportAsyncLoadingCollection viewer, out int minHeight, out int minWidth, out IGenericGridFilterControl filterControlPanel)
        {
            filterControlPanel = null;
            IControlHabanero          control;
            IGenericGridFilterControl addFilterEvents = null;

            if (this.EnableEditing)
            {
                var iboGridAndEditorControl = this.ControlFactory.CreateGridAndBOEditorControl(lookupTypeClassDef);
                iboGridAndEditorControl.SkipSaveOnSelectionChanged         = true;
                iboGridAndEditorControl.GridControl.Grid.RowDoubleClicked += this.SelectClickHandler;
                control         = iboGridAndEditorControl;
                viewer          = iboGridAndEditorControl;
                minWidth        = iboGridAndEditorControl.MinimumSize.Width;
                minHeight       = iboGridAndEditorControl.MinimumSize.Height;
                addFilterEvents = iboGridAndEditorControl.FilterControl;
            }
            else
            {
                var grid = this.ControlFactory.CreateReadOnlyGridControl();
                filterControlPanel = this.ControlFactory.CreateGenericGridFilter(grid.Grid);
                grid.DoubleClickEditsBusinessObject = false;
                grid.AllowUsersToAddBO      = false;
                grid.AllowUsersToDeleteBO   = false;
                grid.AllowUsersToEditBO     = false;
                grid.Grid.RowDoubleClicked += SelectClickHandler;
                grid.Buttons.Visible        = false;
                control         = grid;
                viewer          = grid;
                minWidth        = grid.MinimumSize.Width;
                minHeight       = grid.MinimumSize.Height;
                addFilterEvents = filterControlPanel;
            }
            if (addFilterEvents != null)
            {
                addFilterEvents.FilterStarted   += (s, e) => { this.PopupForm.Text = "Filtering..."; };
                addFilterEvents.FilterCompleted += (s, e) => { this.PopupForm.Text = "Please select..."; };
            }
            return(control);
        }
 private void LoadSelectionCollection(ISupportAsyncLoadingCollection viewer, Type classType)
 {
     if (this._loadCollectionAfterFormLoad)
     {
         this.PopupForm.Load += (sender, e) =>
             {
                 viewer.PopulateCollectionAsync(() => { return GetCollection(classType); },
                                                () => { this.PopupForm.Text = "Please select..."; }); 
             };
     }
     else // branch to make testing easier
     {
         viewer.BusinessObjectCollection = GetCollection(classType);
     }
 }
 private IControlHabanero GenerateSelectionInterface(IClassDef lookupTypeClassDef, 
     out ISupportAsyncLoadingCollection viewer, out int minHeight, out int minWidth, out IGenericGridFilterControl filterControlPanel)
 {
     filterControlPanel = null;
     IControlHabanero control;
     IGenericGridFilterControl addFilterEvents = null;
     if (this.EnableEditing)
     {
         var iboGridAndEditorControl = this.ControlFactory.CreateGridAndBOEditorControl(lookupTypeClassDef);
         iboGridAndEditorControl.SkipSaveOnSelectionChanged = true;
         iboGridAndEditorControl.GridControl.Grid.RowDoubleClicked += this.SelectClickHandler;
         control = iboGridAndEditorControl;
         viewer = iboGridAndEditorControl;
         minWidth = iboGridAndEditorControl.MinimumSize.Width;
         minHeight = iboGridAndEditorControl.MinimumSize.Height;
         addFilterEvents = iboGridAndEditorControl.FilterControl;
     }
     else
     {
         var grid = this.ControlFactory.CreateReadOnlyGridControl();
         filterControlPanel = this.ControlFactory.CreateGenericGridFilter(grid.Grid);
         grid.DoubleClickEditsBusinessObject = false;
         grid.AllowUsersToAddBO = false;
         grid.AllowUsersToDeleteBO = false;
         grid.AllowUsersToEditBO = false;
         grid.Grid.RowDoubleClicked += SelectClickHandler;
         grid.Buttons.Visible = false;
         control = grid;
         viewer = grid;
         minWidth = grid.MinimumSize.Width;
         minHeight = grid.MinimumSize.Height;
         addFilterEvents = filterControlPanel;
     }
     if (addFilterEvents != null)
     {
         addFilterEvents.FilterStarted += (s, e) => { this.PopupForm.Text = "Filtering..."; };
         addFilterEvents.FilterCompleted += (s, e) => { this.PopupForm.Text = "Please select..."; };
     }
     return control;
 }