public static FormMain CreateForm(IDatabaseCoordinator coordinator, ByteHolder holder,
                                          OrdinaryDifferentialEquations.IDifferentialEquationSolver ordSolver,
                                          DataPerformer.Portable.DifferentialEquationProcessors.DifferentialEquationProcessor diffProcessor,
                                          DataPerformer.Portable.Interfaces.IDataRuntimeFactory strategy,
                                          IApplicationInitializer[] initializers,
                                          IUIFactory[] factories,
                                          bool throwsRepeatException, LightDictionary <string, ButtonWrapper[]> buttons,
                                          Icon icon, string filename, Dictionary <string, object>[] resources, string text,
                                          string ext, string fileFilter, TextWriter logWriter, TestCategory.Interfaces.ITestInterface testInterface)
        {
            EngineeringUIFactory factory = new EngineeringUIFactory(factories, true, ext);

            StaticExtensionDiagramUIFactory.UIFactory = factory;
            IDatabaseCoordinator c = coordinator;

            if (c == null)
            {
                c = AssemblyService.StaticExtensionAssemblyService.GetFirstInterfaceObjectFromBaseDirectory <IDatabaseCoordinator>();
            }
            EngineeringInitializer initializer = new EngineeringInitializer(c, ordSolver, diffProcessor,
                                                                            strategy, initializers, throwsRepeatException, resources, logWriter);
            DefaultApplicationCreator creator = new DefaultApplicationCreator(c, buttons, icon, factory, holder,
                                                                              filename, factory.Start, resources, text,
                                                                              ext, fileFilter, initializer, logWriter, testInterface);

            return(CreateForm(creator));
        }
Beispiel #2
0
 /// <summary>
 /// Creates application form without 3D shapes
 /// </summary>
 /// <param name="coordinator">Database coordinator</param>
 /// <param name="holder">byte holder for editor of proprerties</param>
 /// <param name="ordSolver">Ordinary differential equations solver</param>
 /// <param name="diffProcessor">Ordinary differential equations processor</param>
 /// <param name="initializers">Array of initializers</param>
 /// <param name="factories">UI Factotries</param>
 /// <param name="throwsRepeatException">The "throw exception for repeat" sign</param>
 /// <param name="buttons">Palette buttons</param>
 /// <param name="icon">Form icon</param>
 /// <param name="filename">File name</param>
 /// <param name="resources">Localization resourses</param>
 /// <param name="text">Caption text</param>
 /// <param name="ext">File extesion</param>
 /// <returns>The Application form</returns>
 /// <returns></returns>
 public static FormMain CreateForm(IDatabaseCoordinator coordinator, ByteHolder holder,
                                   OrdinaryDifferentialEquations.IDifferentialEquationSolver ordSolver,
                                   DataPerformer.Portable.DifferentialEquationProcessors.DifferentialEquationProcessor diffProcessor,
                                   IApplicationInitializer[] initializers,
                                   IUIFactory[] factories,
                                   bool throwsRepeatException, LightDictionary <string, ButtonWrapper[]> buttons,
                                   Icon icon,
                                   string filename,
                                   Dictionary <string, object>[] resources,
                                   string text,
                                   string ext, string fileFilter, TextWriter logWriter, TestCategory.Interfaces.ITestInterface testInterface)
 {
     return(CreateForm(coordinator, holder,
                       ordSolver,
                       diffProcessor,
                       initializers,
                       factories,
                       throwsRepeatException,
                       buttons,
                       icon,
                       null,
                       filename,
                       resources,
                       text,
                       ext, fileFilter, logWriter, testInterface));
 }
 public BasicEngineeringInitializer(OrdinaryDifferentialEquations.IDifferentialEquationSolver ordSolver,
                                    DataPerformer.Interfaces.IDifferentialEquationProcessor diffProcessor,
                                    IDataRuntimeFactory strategy, IApplicationInitializer[] initializers,
                                    bool throwsRepeatException) : base(initializers, throwsRepeatException)
 {
     this.ordSolver     = ordSolver;
     this.diffProcessor = diffProcessor;
     this.strategy      = strategy;
 }
Beispiel #4
0
        /// <summary>
        /// Creates application form
        /// </summary>
        /// <param name="coordinator">Database coordinator</param>
        /// <param name="holder">byte holder for editor of proprerties</param>
        /// <param name="ordSolver">Ordinary differential equations solver</param>
        /// <param name="diffProcessor">Ordinary differential equations processor</param>
        /// <param name="initializers">Array of initializers</param>
        /// <param name="factories">UI Factotries</param>
        /// <param name="throwsRepeatException">The "throw exception for repeat" sign</param>
        /// <param name="buttons">Palette buttons</param>
        /// <param name="icon">Form icon</param>
        /// <param name="positionFactory">Position factory</param>
        /// <param name="filename">File name</param>
        /// <param name="resources">Localization resourses</param>
        /// <param name="text">Caption text</param>
        /// <param name="ext">File extesion</param>
        /// <returns>The Application form</returns>
        public static BasicEngineering.UI.Factory.Advanced.Forms.FormMain CreateForm(IDatabaseCoordinator coordinator, ByteHolder holder,
                                                                                     OrdinaryDifferentialEquations.IDifferentialEquationSolver ordSolver,
                                                                                     DataPerformer.Portable.DifferentialEquationProcessors.DifferentialEquationProcessor diffProcessor,
                                                                                     IApplicationInitializer[] initializers,
                                                                                     IUIFactory[] factories,
                                                                                     bool throwsRepeatException, LightDictionary <string, ButtonWrapper[]> buttons,
                                                                                     Icon icon,
                                                                                     IPositionObjectFactory positionFactory,
                                                                                     string filename,
                                                                                     Dictionary <string, object>[] resources,
                                                                                     string text,
                                                                                     string ext,
                                                                                     string fileFilter,
                                                                                     TextWriter logWriter, TestCategory.Interfaces.ITestInterface testInterface)
        {
            Motion6D.PositionFactory.Factory = Motion6D.Drawing.Factory.ColoredPositionFactory.Object;
            Motion6D.UI.UserControls.SimpleChooser.Chooser = Motion6D.UI.UserControls.ColoredChooser.Object;
            List <IUIFactory> fact = null;

            if (factories == null)
            {
                fact = new List <IUIFactory>();
            }
            else
            {
                fact = new List <IUIFactory>(factories);
            }
            fact.Add(MotionFactory.Object);
            if (positionFactory != null)
            {
                VisibleFactory vf = new VisibleFactory(positionFactory);
                fact.Add(vf);
            }
            List <IApplicationInitializer> apps = new List <IApplicationInitializer>(initializers);

            apps.Add(Motion6D.ApplicationInitializer.Object);
            apps.Add(Event.Basic.ApplicationInitializer.Singleton);
            FormMain form = DefaultApplicationCreator.CreateForm(coordinator, holder, ordSolver, diffProcessor,
                                                                 Motion6D.Runtime.DataRuntimeFactory.Object,
                                                                 apps.ToArray(),
                                                                 fact.ToArray(),
                                                                 throwsRepeatException,
                                                                 buttons, icon, filename, resources, text, ext, fileFilter, logWriter, testInterface);

            StaticExtensionMotion6D.Animation = form;
            return(form);
        }
        public static FormMain CreateForm(IDatabaseCoordinator coordinator, ByteHolder holder,
                                          OrdinaryDifferentialEquations.IDifferentialEquationSolver ordSolver,
                                          DataPerformer.Portable.DifferentialEquationProcessors.DifferentialEquationProcessor diffProcessor,
                                          IApplicationInitializer[] initializers,
                                          IUIFactory[] factories,
                                          bool throwsRepeatException, LightDictionary <string, ButtonWrapper[]> buttons,
                                          Icon icon, string filename, Dictionary <string, object>[] resources, string text,
                                          string ext, string fileFilter, TextWriter logWriter, TestCategory.Interfaces.ITestInterface testInterface)
        {
            EngineeringUIFactory   factory     = new EngineeringUIFactory(factories, true, ext);
            EngineeringInitializer initializer = new EngineeringInitializer(coordinator, ordSolver, diffProcessor,
                                                                            DataPerformer.Runtime.DataRuntimeFactory.Object, initializers, throwsRepeatException, resources, logWriter);
            DefaultApplicationCreator creator = new DefaultApplicationCreator(coordinator, buttons, icon, factory, holder, filename,
                                                                              factory.Start, resources, text,
                                                                              ext, fileFilter, initializer, logWriter, testInterface);

            return(CreateForm(creator));
        }
        private static void Initialize(OrdinaryDifferentialEquations.IDifferentialEquationSolver ordSolver,
                                       IDataRuntimeFactory strategy, IDatabaseCoordinator coordinator, IApplicationInitializer[] initializers,
                                       bool throwsRepeatException)
        {
            List <IApplicationInitializer> init = null;

            if (initializers == null)
            {
                init = new List <IApplicationInitializer>();
            }
            else
            {
                init = new List <IApplicationInitializer>(initializers);
            }
            IApplicationInitializer initializer = new BasicEngineeringInitializer(ordSolver,
                                                                                  DataPerformer.Portable.DifferentialEquationProcessors.RungeProcessor.Processor, strategy, init.ToArray(),
                                                                                  throwsRepeatException);

            initializer.InitializeApplication();
        }
 public EngineeringInitializer(IDatabaseCoordinator coordinator, OrdinaryDifferentialEquations.IDifferentialEquationSolver ordSolver,
                               DataPerformer.Portable.DifferentialEquationProcessors.DifferentialEquationProcessor diffProcessor,
                               DataPerformer.Portable.Interfaces.IDataRuntimeFactory strategy, IApplicationInitializer[] initializers,
                               bool throwsRepeatException, Dictionary <string, object>[] resources, TextWriter logWriter)
 {
     this.coordinator           = coordinator;
     this.ordSolver             = ordSolver;
     this.diffProcessor         = diffProcessor;
     this.strategy              = strategy;
     this.initializers          = initializers;
     this.throwsRepeatException = throwsRepeatException;
     if (coordinator == null)
     {
         DataWarehouse.StaticExtensionDataWarehouse.SetAppBaseCoordinator();
     }
     else
     {
         DataWarehouse.StaticExtensionDataWarehouse.Coordinator = coordinator;
     }
     this.resources = resources;
     this.logWriter = logWriter;
 }