/// <summary>
        /// Handler begin creating new item.
        /// </summary>
        /// <param name="sender">Data grid control sender.</param>
        /// <param name="e">Item event args.</param>
        private void _DataGridCollectionViewSourceCreatingNewItem(object sender, DataGridCreatingNewItemEventArgs e)
        {
            e.NewItem = new Order(App.Current.Project.CapacitiesInfo, App.Current.Project.OrderCustomPropertiesInfo);

            // NOTE : workaround - used to show drop-downs cell editors in orders insertion row.
            _ordersInsertionRow.CellEditorDisplayConditions = CellEditorDisplayConditions.CellIsCurrent;

            DataObjectCanceledEventArgs args = new DataObjectCanceledEventArgs((ESRI.ArcLogistics.Data.DataObject)e.NewItem);

            // Raise event about creating new object was started.
            if (CreatingNewObject != null)
            {
                CreatingNewObject(this, args);
            }
            e.Handled = true;

            if (!args.Cancel) // If action was not cancelled - begin creating new item.
            {
                _handler.CreateNewItem(e);
                _isNewItemCreated = true; // Set flag to true because new object was created.
            }
            else
            {
                _isNewItemCreated = false; // Set flag to false because new object wasn't created.
                e.Cancel          = true;
            }

            // Reset new item if adding of new item was canceled.
            if (e.Cancel)
            {
                e.NewItem = null;
            }
        }
Exemple #2
0
 private void CollectionView_CreatingNewItem(object sender, DataGridCreatingNewItemEventArgs e)
 {
     e.NewItem = new Editable <Customer>(new Customer {
         FirstName = "", LastName = ""
     })
     {
         IsNew = true
     };
     e.Handled = true;
 }
Exemple #3
0
        /// <summary>
        /// Handler for the Xceed.Wpf.DataGrid.DataGridCollectionViewSource.CreatingNewItem event.
        /// </summary>
        /// <param name="sender">DataGridCollectionViewSource object.</param>
        /// <param name="e">Event arguments.</param>
        private void _DataGridCollectionViewSourceCreatingNewItem(object sender, DataGridCreatingNewItemEventArgs e)
        {
            // Create new custom order property.
            e.NewItem = new CustomOrderProperty();

            // Set flag indicating that new object is being edited now.
            _isEdititngInProgress = true;

            // Make the "Delete" button enabled.
            _buttonDelete.IsEnabled = true;

            // Set flag indicating that event was handled.
            e.Handled = true;
        }
Exemple #4
0
        private void CollectionView_CreatingNewItem(object sender, DataGridCreatingNewItemEventArgs e)
        {
            DeleteButton.IsEnabled = false;
            if (SymbologyManager.SymbologyType == SymbologyType.CategorySymbology)
            {
                e.NewItem = new OrderCategory(false);
            }
            else
            {
                e.NewItem = new OrderQuantity(false);
            }

            e.Handled = true;
            _StartEdit((SymbologyRecord)e.NewItem);
        }
        /// <summary>
        /// Occurs when set focus to inits insertion row.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void DataGridCollectionViewSource_CreatingNewItem(object sender, DataGridCreatingNewItemEventArgs e)
        {
            e.NewItem = new ProjectDataWrapper(true, string.Empty, string.Empty);
            e.Handled = true;

            DeleteButton.IsEnabled = true;

            // If user clicks into "IsCurrent" cell in insertion row - move focus to "Name" cell and start edit it.
            if (_InsertionRow.Cells[IS_CURRENT_COLUMN_CAPTION].IsCurrent)
            {
                Dispatcher.BeginInvoke(new ZeroParamsDelegate(_BeginEditNameCell), System.Windows.Threading.DispatcherPriority.SystemIdle);
            }

            _statusBuilder.FillCreatingStatus(PROJECT_TYPE_NAME, this);
            _needToUpdateStatus = false;
        }
Exemple #6
0
        /// <summary>
        /// Creates new object.
        /// </summary>
        public void CreateNewItem(DataGridCreatingNewItemEventArgs e)
        {
            Debug.Assert(e.NewItem is Route);

            if (_mapControl.IsInEditedMode)
            {
                e.Cancel = true;
            }
            else
            {
                e.NewItem   = _CreateRouteWithDefaultValues();
                _addedRoute = (Route)e.NewItem;
                e.Handled   = true;
                _mapControl.StartEdit(e.NewItem);
                _statusBuilder.FillCreatingStatus((string)App.Current.FindResource("Route"), _parentPage);
            }
        }
        /// <summary>
        /// Creates new object.
        /// </summary>
        public void CreateNewItem(DataGridCreatingNewItemEventArgs e)
        {
            Project project = App.Current.Project;

            if (!_geocodablePage.IsGeocodingInProcess)
            {
                e.NewItem = new Order(project.CapacitiesInfo, project.OrderCustomPropertiesInfo);
                _geocodablePage.OnCreatingNewItem(e);
            }
            else
            {
                e.Cancel = true;
            }
            e.Handled = true;

            _statusBuilder.FillCreatingStatus((string)App.Current.FindResource("Order"), _parentPage);
        }
Exemple #8
0
        /// <summary>
        /// React on creating new item.
        /// </summary>
        /// <param name="e">Creating item event args.</param>
        public void OnCreatingNewItem(DataGridCreatingNewItemEventArgs e)
        {
            _mapCtrl.CurrentTool = null;

            _currentItem = (object)e.NewItem;

            // Graphic, which created to show not yet committed new item.
            Graphic graphic = _parentLayer.CreateGraphic(_currentItem);

            DataGraphicObject dataGraphicObject = graphic as DataGraphicObject;

            if (dataGraphicObject != null && _parentLayer.LayerContext != null)
            {
                dataGraphicObject.ObjectContext = _parentLayer.LayerContext;
            }

            _parentLayer.MapLayer.Graphics.Add(graphic);

            _EditStarted(_currentItem);
            _SetToolsEnabled(true);
        }
        /// <summary>
        /// New item creating.
        /// </summary>
        /// <param name="sender">Ignored.</param>
        /// <param name="e">Ignored.</param>
        private void _DataGridCollectionViewSourceCreatingNewItem(object sender,
                                                                  DataGridCreatingNewItemEventArgs e)
        {
            // Add new break of specific type.
            if (App.Current.Project.BreaksSettings.DefaultBreaks.Count < Breaks.MaximumBreakCount)
            {
                if (App.Current.Project.BreaksSettings.BreaksType == BreakType.TimeWindow)
                {
                    e.NewItem = new TimeWindowBreak();
                }
                else if (App.Current.Project.BreaksSettings.BreaksType == BreakType.DriveTime)
                {
                    e.NewItem = new DriveTimeBreak();
                }
                else if (App.Current.Project.BreaksSettings.BreaksType == BreakType.WorkTime)
                {
                    e.NewItem = new WorkTimeBreak();
                }
                else
                {
                    // Unknown type of break.
                    Debug.Assert(false);
                }

                // Set flags.
                _isNewItemCreated   = true;
                IsEditingInProgress = true;
                e.Handled           = true;
            }
            else
            {
                IsEditingInProgress = false;
                e.Cancel            = true;
                _isNewItemCreated   = false;
            }
        }
Exemple #10
0
 /// <summary>
 /// Creates new item
 /// </summary>
 protected abstract void _CreateNewItem(DataGridCreatingNewItemEventArgs e);
Exemple #11
0
 /// <summary>
 /// Creates new item
 /// </summary>
 /// <param name="e"></param>
 protected override void _CreateNewItem(DataGridCreatingNewItemEventArgs e)
 {
     e.NewItem = new VehicleSpecialty();
 }