예제 #1
0
 public void End(ILongOperationResult result)
 {
     ExecuteAsync(() =>
     {
         if (_progressWindow != null)
         {
             _progressWindow.ForceClose();
         }
         _processResultAction(result);
     });
 }
예제 #2
0
 public void Refresh(ILongOperationResult result)
 {
     ExecuteAsync(() => _processResultAction(result));
 }
예제 #3
0
        public void Reload(ILongOperationResult result)
        {
            try
            {
                if (result == null)
                {
                    return;
                }

                if (result.CustomAction != null)
                {
                    result.CustomAction();
                }

                if (result.RefreshAll)
                {
                    Reload();
                    return;
                }

                if (result.DataPublished)
                {
                    UIApplication.MessageDialogs.Info("DataSaved".Localize());
                    Reload();
                    return;
                }

                if (result.RefreshProductOrders)
                {
                    _productOrdersData = null;
                    NotifyPropertyChanged("ProductOrdersData");
                }

                if (result.RefreshMaterialOrders)
                {
                    _materialOrdersData = null;
                    NotifyPropertyChanged("MaterialOrdersData");
                }

                if (result.RefreshExternStorageStats)
                {
                    _externStorageMaterialsData = null;
                    NotifyPropertyChanged("ExternStorageMaterialsData");
                }

                if (result.RefreshAllMaterial)
                {
                    _materialsData = null;
                    NotifyPropertyChanged("MaterialsData");
                }

                if (result.MaterialRefreshList != null)
                {
                    foreach (ObjectId materialId in result.MaterialRefreshList)
                    {
                        MaterialListNotificator.Notify(materialId);
                    }
                }
            }
            catch (Exception ex)
            {
                ApplicationContext.Log.Error(GetType(), ex);
            }
        }