public void Setup(ObjectSpace objectSpace, XafApplication application)
 {
     if (helper == null)
         helper = new LookupEditorHelper(application, objectSpace, ObjectTypeInfo, Model);
     
     helper.SetObjectSpace(objectSpace);
 }
示例#2
0
 public override void Setup(XafApplication application) {
     base.Setup(application);
     CustomCollectionSourceManager.Register(typeof(LinqQueryCountry1));
     CustomCollectionSourceManager.Register(typeof(LinqQueryCountry2));
     CustomCollectionSourceManager.Register(typeof(LinqQueryCountry3));
     CustomCollectionSourceManager.Register(typeof(testCountry4));
 }
示例#3
0
        ApplicationModulesManager CreateModulesManager(XafApplication application, string configFileName, string assembliesPath, ITypesInfo typesInfo) {
            if (!string.IsNullOrEmpty(configFileName)) {
                bool isWebApplicationModel = string.Compare(Path.GetFileNameWithoutExtension(configFileName), "web", true) == 0;
                if (string.IsNullOrEmpty(assembliesPath)) {
                    assembliesPath = Path.GetDirectoryName(configFileName);
                    if (isWebApplicationModel) {
                        assembliesPath = Path.Combine(assembliesPath + "", "Bin");
                    }
                }
            }
            ReflectionHelper.AddResolvePath(assembliesPath);
            try {
                var result = new ApplicationModulesManager(new ControllersManager(), assembliesPath);
                if (application != null) {
                    foreach (ModuleBase module in application.Modules) {
                        result.AddModule(module);
                    }
                    result.Security = application.Security;
                }
                if (!string.IsNullOrEmpty(configFileName)) {
                    result.AddModuleFromAssemblies(GetModulesFromConfig(application));
                }
                if (typesInfo is TypesInfo)
                    XpandModuleBase.Dictiorary = ((TypesInfo)typesInfo).Source.XPDictionary;

                result.Load(typesInfo);
                return result;
            } finally {
                XpandModuleBase.Dictiorary = XafTypesInfo.XpoTypeInfoSource.XPDictionary;
                ReflectionHelper.RemoveResolvePath(assembliesPath);
            }

        }
示例#4
0
 public override void Setup(XafApplication application)
 {
     base.Setup(application);
     AdditionalExportedTypes.Add(typeof(ReportData));
     AdditionalExportedTypes.Add(typeof(BusinessObjects.PersonReportParametersObject));
     // Manage various aspects of the application UI and behavior at the module level.
 }
示例#5
0
        public override void Setup(XafApplication application) {
            base.Setup(application);

            xApplication = application;

            application.SetupComplete += application_SetupComplete;
        }
 public void Setup(IObjectSpace objectSpace, XafApplication application) {
     if (helper == null) {
         helper = new ObjectEditorHelper(MemberInfo.MemberTypeInfo, Model);
     }
     _application = application;
     _objectSpace = objectSpace;
 }
示例#7
0
 static void RegisterControllers(XafApplication application, params Controller[] controllers) {
     var methodInfo = application.GetType().GetMethod("CreateApplicationModulesManager",BindingFlags.NonPublic|BindingFlags.Instance);
     Isolate.NonPublic.WhenCalled(application,"CreateApplicationModulesManager").DoInstead(context => {
         ((ControllersManager) context.Parameters[0]).RegisterController(controllers);
         return methodInfo.Invoke(application, new[] { context.Parameters[0] });
     });
 }
示例#8
0
 public override void Setup(XafApplication application) {
     base.Setup(application);
     InitializeInstanceXafApplicationManager();
     application.SetupComplete += ApplicationOnSetupComplete;
     application.CreateCustomObjectSpaceProvider +=
         (sender, args) => ConnectionString = getConnectionStringWithOutThreadSafeDataLayerInitialization(args);
 }
        /// <summary>
        /// Показать (установить данные для показа) детальное представление объекта операции
        /// </summary>
        /// <param name="obj">Объект операции</param>
        /// <param name="app">Объект XafApplication</param>
        /// <param name="sp">Объект ShowViewParameters</param>
        /// <exception cref="System.ArgumentNullException" />
        public static void Show(this OperationObject obj, XafApplication app, ShowViewParameters sp)
        {
            if (obj == null)
            {
                throw new ArgumentNullException("obj");
            }
            if (app == null)
            {
                throw new ArgumentNullException("app");
            }
            if (sp == null)
            {
                throw new ArgumentNullException("sp");
            }

            var isComposite = obj.Children != null && obj.Children.Count > 0;
            if (isComposite)
            {
                sp.CreatedView = app.CreateDetailView(ObjectSpaceInMemory.CreateNew(), "OperationObject_DetailView_(Composite)", true, obj);
            }
            else
            {
                sp.CreatedView = app.CreateDetailView(ObjectSpaceInMemory.CreateNew(), obj);
            }

            sp.TargetWindow = TargetWindow.NewModalWindow;
            sp.Context = TemplateContext.PopupWindow;
        }
 public ListView CreateListView(XafApplication application, IObjectSpace objectSpace, ISupportSequenceObject supportSequenceObject) {
     var nestedObjectSpace = (XPNestedObjectSpace)objectSpace.CreateNestedObjectSpace();
     var objectType = XafTypesInfo.Instance.FindBussinessObjectType<ISequenceReleasedObject>();
     var collectionSource = application.CreateCollectionSource(nestedObjectSpace, objectType, application.FindListViewId(objectType));
     collectionSource.Criteria["ShowReleasedSequences"] = CriteriaOperator.Parse("TypeName=?", supportSequenceObject.Prefix + supportSequenceObject.ClassInfo.FullName);
     return application.CreateListView(nestedObjectSpace, objectType, true);
 }
示例#11
0
 private void AttachDialogController(ShowViewParameters svp, XafApplication app) {
     var dc = app.CreateController<DialogController>();
     dc.AcceptAction.Execute += AcceptAction_Execute;
     dc.CancelAction.Enabled.SetItemValue("Cancel Disabled", false);
     dc.CancelAction.Active.SetItemValue("Cancel Disabled", false);
     svp.Controllers.Add(dc);
 }
示例#12
0
 public override void Setup(XafApplication application) {
     base.Setup(application);
     if (ManifestModuleName == null)
         ManifestModuleName = application.GetType().Assembly.ManifestModule.Name;
     OnApplicationInitialized(application);
     application.SetupComplete += ApplicationOnSetupComplete;
 }
示例#13
0
 public ApplicationModulesManager CreateApplicationModulesManager(XafApplication application, string configFileName, string assembliesPath, ITypesInfo typesInfo) {
     if (!string.IsNullOrEmpty(configFileName)) {
         bool isWebApplicationModel =
             String.Compare(Path.GetFileNameWithoutExtension(configFileName), "web", StringComparison.OrdinalIgnoreCase) == 0;
         if (string.IsNullOrEmpty(assembliesPath)) {
             assembliesPath = Path.GetDirectoryName(configFileName);
             if (isWebApplicationModel) {
                 assembliesPath = Path.Combine(assembliesPath + "", "Bin");
             }
         }
     }
     ReflectionHelper.AddResolvePath(assembliesPath);
     try {
         var result = new ApplicationModulesManager(new ControllersManager(), assembliesPath);
         foreach (ModuleBase module in application.Modules) {
             result.AddModule(module);
         }
         result.Security = application.Security;
         if (GetModulesFromConfig(application) != null) {
             result.AddModuleFromAssemblies(GetModulesFromConfig(application));
         }
         return result;
     } finally {
         ReflectionHelper.RemoveResolvePath(assembliesPath);
     }
 }
示例#14
0
 public override void Setup(XafApplication application)
 {
     base.Setup(application);
     application.CreateCustomModelDifferenceStore += Application_CreateCustomModelDifferenceStore;
     application.CreateCustomUserModelDifferenceStore += Application_CreateCustomUserModelDifferenceStore;
     // Manage various aspects of the application UI and behavior at the module level.
 }
示例#15
0
        public static IEnumerable<Controller> CreateRegistrationControllers(XafApplication app) {
            var typeInfo = app.TypesInfo.FindTypeInfo(typeof(IPasswordScoreController)).Implementors.FirstOrDefault();
            if (typeInfo != null)
                yield return app.CreateController(typeInfo.Type);

            yield return app.CreateController<ManageUsersOnLogonController>();
        }
示例#16
0
        public override void Setup(XafApplication application)
        {
            base.Setup(application);

            RegisterEntities();
            SequenceGeneratorInitializer.Register(application);
        }
示例#17
0
 public override void Setup(XafApplication application) {
     base.Setup(application);
     if (RuntimeMode) {
         AddToAdditionalExportedTypes("Xpand.Persistent.BaseImpl.PersistentMetaData");
         application.CreateCustomObjectSpaceProvider += ApplicationOnCreateCustomObjectSpaceProvider;
     }
 }
示例#18
0
 protected override void OnApplicationInitialized(XafApplication xafApplication) {
     if (xafApplication == null)
         return;
     if (RuntimeMode)
         _connectionString = xafApplication.GetConnectionString();
     base.OnApplicationInitialized(xafApplication);
 }
示例#19
0
 internal ModelEditorController GetModelEditorController(XafApplication application)
 {
     var controller = new ModelEditorController(getDictionary(), new DummyStore(), application.Modules);
     controller.ModifiedChanged += ControllerModifiedChanged;
     controller.SetCurrentAspectByName(CurrentObject.CurrentLanguage);
     return controller;
 }
示例#20
0
 public override void Setup(XafApplication application) {
     base.Setup(application);
     application.LoggingOn += (sender, args) => {
         if (ModelsLoaded.HasValue)
             LoadModels(!ModelsLoaded.Value);
         ModelsLoaded = true;
     };
 }
示例#21
0
 private void AttachDialogController(ShowViewParameters svp, XafApplication app, MessageBoxEventHandler accept, EventHandler cancel) {
     LocalAccept = accept;
     LocalCancel = cancel;
     var dc = app.CreateController<DialogController>();
     dc.AcceptAction.Execute += AcceptAction_Execute;
     dc.Cancelling += dc_Cancelling;
     svp.Controllers.Add(dc);
 }
 public override void Setup(XafApplication application)
 {
     base.Setup(application);
     if ((bool) (!ComparerIsSet)) {
         ObjectAccessComparerBase.SetCurrentComparer(new MemberLevelObjectAccessComparer());
         ComparerIsSet = true;
     }
 }
示例#23
0
 protected virtual void AddRegistrationControllers(XafApplication application, Dictionary<Type, Controller> controllers) {
     var registrationControllers = CreateRegistrationControllers(application).ToArray();
     var appearenceControllers = application.CreateAppearenceControllers();
     var validationControllers = application.CreateValidationControllers();
     foreach (var registrationController in registrationControllers.Concat(appearenceControllers).Concat(validationControllers)){
         controllers.Add(registrationController.GetType(),registrationController);
     }
 }
示例#24
0
 /// <summary>
 /// Initialize collector.
 /// </summary>
 /// <param name="application">The application.</param>
 /// <param name="dataStoreProviderFactory">The provider factory.</param>
 internal void Initialize(XafApplication application, IDataStoreProviderFactory dataStoreProviderFactory)
 {
     providerFactory = dataStoreProviderFactory;
     application.CreateCustomObjectSpaceProvider += application_CreateCustomObjectSpaceProvider;
     application.ObjectSpaceCreated += application_ObjectSpaceCreated;
     application.SetupComplete += application_SetupComplete;
     application.Disposed += application_Disposed;
 }
示例#25
0
 public override void Setup(XafApplication application)
 {
     base.Setup(application);
     // Manage various aspects of the application UI and behavior at the module level.
     // https://www.devexpress.com/Support/Center/Question/Details/T233084
     //application.SetupComplete += delegate(object sender, EventArgs e)
     //{ new SetCopiesReportHelper(((XafApplication)sender).Modules); };
 }
示例#26
0
 public override void Setup(XafApplication application) {
     base.Setup(application);
     if (application != null && !DesignMode) {
         if (!(application is ISupportModelsManager))
             throw new NotImplementedException("Implement " + typeof(ISupportModelsManager).FullName + " at your " + Application.GetType().FullName + " descenant or derive from XpandWinApplication or XpandWebApplication");
         application.CreateCustomUserModelDifferenceStore += ApplicationOnCreateCustomUserModelDifferenceStore;
     }
 }
//        protected abstract bool? ComparerIsSet { get; set; }
        public override void Setup(XafApplication application)
        {
            base.Setup(application);
            if (!DesignMode && !_comparerIsLock){
                ObjectAccessComparerBase.SetCurrentComparer(new MemberLevelObjectAccessComparer());
                _comparerIsLock = true;
            }
        }
示例#28
0
 IModelApplication GetModelApplication(XafApplication application, ApplicationModulesManager modulesManager) {
     var modelApplicationCreator = XpandModuleBase.ModelApplicationCreator;
     XpandModuleBase.ModelApplicationCreator = null;
     var modelApplication = new DesignerModelFactory().CreateApplicationModel(application, modulesManager, null, null);
     AddAfterSetupLayer(modelApplication);
     XpandModuleBase.ModelApplicationCreator = modelApplicationCreator;
     return modelApplication;
 }
示例#29
0
 public override void Setup(XafApplication application) {
     base.Setup(application);
     if (application != null && !DesignMode) {
         application.SetupComplete += ApplicationOnSetupComplete;
     }
     if (RuntimeMode) {
         AddToAdditionalExportedTypes(typeof(SendEmailJobDataMap).Namespace, GetType().Assembly);
     }
 }
示例#30
0
 public override void Setup(XafApplication application) {
     base.Setup(application);
     if (application != null && !DesignMode) {
         application.SettingUp += ApplicationOnSettingUp;
     }
     if (RuntimeMode) {
         AddToAdditionalExportedTypes(typeof(ModelDifferenceObject).Namespace, GetType().Assembly);
     }
 }
示例#31
0
 public static void ProjectSetup(this XafApplication application)
 {
     application.OptimizedControllersCreation = true;
     application.ConnectionString             = InMemoryDataStoreProvider.ConnectionString;
     application.NewSecurityStrategyComplexV2 <XpandPermissionPolicyUser, XpandPermissionPolicyRole>(typeof(AuthenticationStandard), typeof(AuthenticationStandardLogonParameters));
 }
示例#32
0
 public override void Setup(XafApplication application)
 {
     base.Setup(application);
     AuditTrailService.Instance.CustomizeAuditTrailSettings += new CustomizeAuditSettingsEventHandler(AuditTrailServiceInstance_CustomizeAuditTrailSettings);
 }
示例#33
0
 public override void Setup(XafApplication application)
 {
     base.Setup(application);
     // Manage various aspects of the application UI and behavior at the module level.
     application.ObjectSpaceCreated += Application_ObjectSpaceCreated;
 }
示例#34
0
 internal static IObservable <View> Connect(this XafApplication application)
 {
     return(application != null?application.WhenAutoCommitObjectViewCreated().Publish().RefCount().AutoCommit() : Observable.Empty <View>());
 }
示例#35
0
 public override void Setup(XafApplication application)
 {
     base.Setup(application);
     application.CreateCustomLogonWindowControllers += Application_CreateCustomLogonWindowControllers;
 }
 public static IObservable <Window> WhenPopupWindowCreated(this XafApplication application) => RxApp.PopupWindows.Where(_ => _.Application == application);
 public static IObservable <ITypesInfo> WhenCustomizingTypesInfo(this XafApplication application) =>
 application.Modules.OfType <ReactiveModule>().ToObservable()
 .SelectMany(_ => _.SetupCompleted).Cast <ReactiveModule>().SelectMany(_ => _.ModifyTypesInfo)
 .TraceRX();
示例#38
0
 private static IObservable <ListView> WhenPositionInListCreated(this XafApplication application)
 => application.WhenListViewCreated().Where(_ => application.Model.IsPositionInListView(_.Model.Id));
 public override void Setup(IObjectSpace objectSpace, XafApplication application)
 {
     base.Setup(objectSpace, application);
     helper = new WebLookupEditorHelper(application, objectSpace, MemberInfo.MemberTypeInfo, Model);
 }
示例#40
0
 public override void Setup(XafApplication application)
 {
     base.Setup(application);
     RxApp.XafApplication = application;
 }
示例#41
0
        public static bool FitToObjectType(this CustomShowNavigationItemEventArgs args, XafApplication application, Type objectType)
        {
            var viewShortcut = args.ActionArguments.SelectedChoiceActionItem.Data as ViewShortcut;

            if (viewShortcut != null)
            {
                var view = application.Model.Views[viewShortcut.ViewId] as IModelObjectView;
                return(view != null && view.ModelClass.TypeInfo.FullName == objectType.FullName);
            }

            return(false);
        }
示例#42
0
 public override void Setup(XafApplication application)
 {
     base.Setup(application);
     // Manage various aspects of the application UI and behavior at the module level.
 }
 void IComplexViewItem.Setup(DevExpress.ExpressApp.IObjectSpace objectSpace, DevExpress.ExpressApp.XafApplication application)
 {
     this.ObjectSpace = objectSpace;
     this.Application = application;
 }
        public static IObservable <Window> WhenWindowCreated(this XafApplication application, bool isMain = false)
        {
            var windowCreated = application.WhenFrameCreated().OfType <Window>();

            return(isMain ? WhenMainWindowAvailable(application, windowCreated) : windowCreated.TraceRX(window => window.Context));
        }
 public static IObservable <(XafApplication application, CreateCustomObjectSpaceProviderEventArgs e)> WhenCreateCustomObjectSpaceProvider(this XafApplication application) =>
this XafApplication application, Func <TController, ActionBase> action) where TController : Controller =>
 public static IObservable <IModelApplication> WhenModelChanged(this XafApplication application) =>
 Observable.FromEventPattern <EventHandler, EventArgs>(h => application.ModelChanged += h, h => application.ModelChanged -= h, ImmediateScheduler.Instance)
 .Select(pattern => (XafApplication)pattern.Sender).Select(xafApplication => xafApplication.Model)
 .TraceRX();
 public static IObservable <NestedFrame> WhenNestedFrameCreated(this XafApplication application) => application.WhenFrameCreated().OfType <NestedFrame>();
示例#49
0
        public static IEnumerable <(string viewId, string objects, string storage)> CreateClientDataSource(this XafApplication application)
        {
            var modelClientDataSource = application.ReactiveModulesModel().LookupCascadeModel().Wait().ClientDatasource;
            var storage  = modelClientDataSource.ClientStorage.ToString().FirstCharacterToLower();
            var viewsIds = modelClientDataSource.LookupViews.Select(view => view.LookupListView.Id);

            return(viewsIds.ToObservable(ImmediateScheduler.Instance)
                   .SelectMany(viewId => application.CreateClientDataSource((IModelListView)application.FindModelView(viewId))).ToEnumerable()
                   .Select(_ => (_.viewId, _.objects, storage)));
        }
 public static IObservable <Frame> WhenFrameCreated(this XafApplication application) => RxApp.Frames.Where(_ => _.Application == application);
        public static async Task <(Frame frame, GraphServiceClient client)> InitGraphServiceClient(this XafApplication application, bool newAuthentication = true)
        {
            if (newAuthentication)
            {
                application.ObjectSpaceProvider.NewAuthentication();
            }

            var todoModel       = application.Model.ToReactiveModule <IModelReactiveModuleOffice>().Office.Microsoft().Calendar();
            var window          = application.CreateViewWindow();
            var service         = CalendarService.Client.Select(tuple => tuple).FirstAsync().SubscribeReplay();
            var modelObjectView = todoModel.Items.Select(item => item.ObjectView).First();

            window.SetView(application.NewView(modelObjectView));
            return(await service.ToTaskWithoutConfigureAwait());
        }
 public static IObservable <XafApplication> WhenCompatibilityChecked(this XafApplication application) =>
 (bool)application.GetPropertyValue("IsCompatibilityChecked")
         ? application.ReturnObservable() : application.WhenObjectSpaceCreated().FirstAsync()
 .Select(_ => _.application).TraceRX();
 /// <summary>
 /// Initializes a new instance of the <see cref="ConsoleWindow"/> class.
 /// </summary>
 /// <param name="application">An <see cref="T:DevExpress.ExpressApp.XafApplication" /> object that provides methods and properties to manage the current application. This value is assigned to the <see cref="P:DevExpress.ExpressApp.Frame.Application" /> property.</param>
 /// <param name="context">A <see cref="T:DevExpress.ExpressApp.TemplateContext" /> object representing the created Window's context. This value is assigned to the <see cref="P:DevExpress.ExpressApp.Frame.Context" /> property.</param>
 /// <param name="controllers">A ICollection&lt;<see cref="T:DevExpress.ExpressApp.Controller" />&gt; Controllers collection.</param>
 /// <param name="isMain">true if the created Window is main; otherwise, false. This value is assigned to the <see cref="P:DevExpress.ExpressApp.Window.IsMain" /> property.</param>
 /// <param name="activateControllersImmediately">true if Controllers are created immediately after the Window has been created and before the Window's <see cref="P:DevExpress.ExpressApp.Window.Template" /> is created; false if Controllers are created after the Window's <see cref="P:DevExpress.ExpressApp.Window.Template" /> has been created.</param>
 public ConsoleWindow(XafApplication application, TemplateContext context, ICollection <Controller> controllers, bool isMain, bool activateControllersImmediately)
     : base(application, context, controllers, isMain, activateControllersImmediately)
 {
     Tracing.Tracer.LogVerboseValue("ConsoleWindow.activateControllersImmediately", activateControllersImmediately);
     CreateTemplate();
 }
 public static IObservable <TSource> BufferUntilCompatibilityChecked <TSource>(this XafApplication application, IObservable <TSource> source) =>
 source.Buffer(application.WhenCompatibilityChecked().FirstAsync()).FirstAsync().SelectMany(list => list)
 .Concat(Observable.Defer(() => source)).Select(source1 => source1);
示例#55
0
        public override void Setup(XafApplication application)
        {
            base.Setup(application);

            application.SetupComplete += application_SetupComplete;
        }
 public static IObservable <(XafApplication application, ObjectSpaceCreatedEventArgs e)> WhenObjectSpaceCreated(this XafApplication application, bool includeNonPersistent = false) =>
示例#57
0
 public static void ShowView(this XafApplication application, View view)
 {
     application.ShowViewStrategy.ShowView(new ShowViewParameters(view), new ShowViewSource(application.MainWindow, null));
 }
 public static IObservable <(XafApplication application, CreateCustomTemplateEventArgs e)> WhenCreateCustomTemplate(this XafApplication application) =>
 public DataExtractDataManager(XafApplication application)
 {
     Application = application;
 }
示例#60
0
 void IComplexViewItem.Setup(IObjectSpace objectSpace, XafApplication application)
 {
     _application = application;
 }