示例#1
0
 public CommandsCollectionModel(
     IConsoleSettings settings,
     IConsoleCommandFactory commandFactory
     )
 {
     this.settings       = settings;
     this.commandFactory = commandFactory;
 }
示例#2
0
 public static ConsoleInputDetectorModel Create(
     ICoroutineRunner runner,
     IConsoleStateProvider console,
     IConsoleSettings settings
     )
 {
     return(new ConsoleInputDetectorModel(runner, new UnityInput(), console, settings));
 }
 public ProgramServiceConfigDependent(
     IConsoleSettings consoleSettings,
     IEnvironmentSettings envSettings,
     IApplicationConfiguration applicationConfiguration)
 {
     _consoleSettings          = consoleSettings;
     _envSettings              = envSettings;
     _applicationConfiguration = applicationConfiguration;
 }
示例#4
0
 public static IConsoleHintModel Create(
     IConsoleInputHistoryModel history,
     ICommandsCollectionModel commandsCollection,
     IConsoleSettings settings
     )
 {
     return(new ConsoleHintModel(
                commandsCollection,
                history,
                settings
                ));
 }
示例#5
0
 public ConsoleInputDetectorModel(
     ICoroutineRunner runner,
     IInput input,
     IConsoleStateProvider console,
     IConsoleSettings settings
     )
 {
     this.input    = input;
     this.console  = console;
     this.runner   = runner;
     this.settings = settings;
 }
示例#6
0
        public static IAnsiConsole CreateConsole(this IConsoleSettings settings)
        {
            if (settings is null)
            {
                throw new ArgumentNullException(nameof(settings));
            }

            return(AnsiConsole.Create(new AnsiConsoleSettings
            {
                Out = settings.Out,
                Ansi = settings.Ansi.GetAnsiSupport(),
                ColorSystem = settings.Colors.GetColorSystem(),
            }));
        }
示例#7
0
 public static ConsoleHintUIController Create(
     IConsoleHintModel model,
     IHintUIView hintView,
     IConsoleUIView consoleView,
     IConsoleInputDetectorModel input,
     IConsoleSettings settings
     )
 {
     return(new ConsoleHintUIController(
                model,
                hintView,
                consoleView,
                new ConsoleHintEntryUIViewFactory(),
                input,
                settings
                ));
 }
示例#8
0
        public ConsoleHintUIController(
            IConsoleHintModel model,
            IHintUIView hintView,
            IConsoleUIView consoleView,
            IConsoleHintEntryUIViewFactory entryFactory,
            IConsoleInputDetectorModel input,
            IConsoleSettings settings
            )
        {
            this.model            = model;
            this.view             = hintView;
            this.entryFactory     = entryFactory;
            this.input            = input;
            this.settings         = settings;
            model.OnEnableChange += HandleEnableChange;
            consoleView.InputField.onValueChanged.AddListener(HandleInputValueChanged);

            hintView.SetActive(false);
        }
示例#9
0
    public static void Initialize()
    {
        if (model != null)
        {
            return;
        }

        IConsoleSettings          settings           = ConsoleSettings.Instance;
        IConsoleInputHistoryModel historyModel       = ConsoleInputHistoryModelFactory.Create(settings);
        ICommandsCollectionModel  commandsCollection = CommandsCollectionFactory.Create(settings);

        model = ConsoleModelFactory.Create(historyModel, commandsCollection);

        IConsoleHintModel hintModel = ConsoleHintModelFactory.Create(
            historyModel,
            commandsCollection,
            settings
            );

        ConsoleUIView view = ConsoleUIViewFactory.Create(settings);
        IConsoleInputDetectorModel inputDetector = ConsoleInputDetectorModelFactory.Create(
            view,
            model,
            settings
            );

        ConsoleUIControllerFactory.Create(model, view, inputDetector, hintModel);
        ConsoleHintUIControllerFactory.Create(
            hintModel,
            view.HintUI,
            view,
            inputDetector,
            settings
            );
        Task.Run(commandsCollection.Initialize);
        inputDetector.Initialize();
    }
示例#10
0
 public static IConsoleInputHistoryModel Create(IConsoleSettings settings)
 {
     return(new ConsoleInputHistoryModel(settings));
 }
示例#11
0
 public IHintEntryUIView Create(IConsoleSettings settings, Transform parent)
 {
     return(Object.Instantiate(settings.HintSkinPrefab, parent));
 }
示例#12
0
 public static ICommandsCollectionModel Create(IConsoleSettings settings)
 {
     return(new CommandsCollectionModel(settings, new ConsoleCommandFactory()));
 }
示例#13
0
 public ConsoleInputHistoryModel(IConsoleSettings settings)
 {
     this.settings = settings;
     inputHistory  = new List <string>(settings.HistorySize);
 }
 public ProgramServiceConfigDependent(IConsoleSettings consoleSettings, IEnvironmentSettings envSettings)
 {
     _consoleSettings = consoleSettings;
     _envSettings     = envSettings;
 }
示例#15
0
        /// <summary>
        /// Configures the console.
        /// </summary>
        /// <param name="configurator">The configurator.</param>
        /// <param name="console">The console settings.</param>
        /// <returns>A configurator that can be used to configure the application further.</returns>
        public static IConfigurator ConfigureConsole(this IConfigurator configurator, IConsoleSettings console)
        {
            if (configurator == null)
            {
                throw new ArgumentNullException(nameof(configurator));
            }

            configurator.Settings.Console = console;
            return(configurator);
        }
示例#16
0
 public static ConsoleUIView Create(IConsoleSettings settings)
 {
     return(Object.Instantiate(settings.ConsoleSkinPrefab));
 }