Exemple #1
0
        private void Application_Startup(object sender, StartupEventArgs e)
        {
            string languageCode = "en";

            var profileConfigPath = Path.Combine(Directory.GetCurrentDirectory(), "config");
            var configFile        = Path.Combine(profileConfigPath, "config.json");
            var translationsDir   = Path.Combine(profileConfigPath, "Translations");
            var subPath           = "";
            var validateJSON      = false; // TODO Need to re-enable validation for GUI.

            if (File.Exists(configFile))
            {
                try {
                    var config = GlobalSettings.Load(subPath, validateJSON);
                    languageCode = config.ConsoleConfig.TranslationLanguageCode;
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Config Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    Shutdown();
                }
            }

            if (!Directory.Exists(translationsDir))
            {
                Directory.CreateDirectory(translationsDir);
            }

            var uiTranslation = new UITranslation(languageCode);

            TinyIoCContainer.Current.Register(uiTranslation);

            MainWindow = new MainClientWindow();


            ConsoleHelper.AllocConsole();
            UILogger logger = new UILogger()
            {
                LogToUI = ((MainClientWindow)MainWindow).LogToConsoleTab
            };

            Logger.AddLogger(logger, string.Empty);

            Task.Run(() =>
            {
                NecroBot.CLI.Program.RunBotWithParameters(OnBotStartedEventHandler, new string[] { });
            });

            if (Settings.Default.ConsoleToggled == true)
            {
                ConsoleHelper.ShowConsoleWindow();
            }
            if (Settings.Default.ConsoleToggled == false)
            {
                ConsoleHelper.HideConsoleWindow();
            }

            MainWindow.Show();
        }
        public FilterSetting(PokemonId pokemonId, IPokemonFilter filter, string filterName, Action <PokemonId, IPokemonFilter> onSave)
        {
            this.data  = filter;
            translator = TinyIoCContainer.Current.Resolve <UITranslation>();

            this.Title = string.Format(translator.TransferFilterFormTitle, pokemonId.ToString());

            this.PokemonId    = pokemonId;
            this.FilterName   = filterName;
            this.onSaveFilter = onSave;
            this.DataContext  = data;
            InitializeComponent();
            pnlFilters.Children.Add(BuildObjectForm(filter));
            DisplayListPokemons(filter.AffectToPokemons);
        }
        public void InitForm()
        {
            translator  = TinyIoCContainer.Current.Resolve <UITranslation>();
            DataContext = Settings;
            foreach (var item in Settings.GetType().GetFields())
            {
                var att = item.GetCustomAttributes <NecrobotConfigAttribute>(true).FirstOrDefault();
                if (att != null)
                {
                    string resKey = $"Setting.{item.Name}";

                    string name    = string.IsNullOrEmpty(att.Key) ? item.Name : att.Key;
                    var    tabItem = new TabItem()
                    {
                        Content = BuildForm(item, item.GetValue(Settings), att), FontSize = 11, Header = translator.GetTranslation(resKey)
                    };

                    tabControl.Items.Add(tabItem);
                }
            }
        }
Exemple #4
0
        private void Application_Startup(object sender, StartupEventArgs e)
        {
            string languageCode = "en";

            if (File.Exists("config\\config.json"))
            {
                var config = GlobalSettings.Load("config", false);
                languageCode = config.ConsoleConfig.TranslationLanguageCode;
            }

            if (!System.IO.Directory.Exists(@"config\Translations"))
            {
                System.IO.Directory.CreateDirectory(@"config\Translations");
            }

            var uiTranslation = new UITranslation(languageCode);

            TinyIoCContainer.Current.Register <UITranslation>(uiTranslation);

            MainWindow = new MainClientWindow();


            ConsoleHelper.AllocConsole();
            UILogger logger = new UILogger();

            logger.LogToUI = ((MainClientWindow)MainWindow).LogToConsoleTab;

            Logger.AddLogger(logger, string.Empty);

            Task.Run(() =>
            {
                NecroBot.CLI.Program.RunBotWithParameters(OnBotStartedEventHandler, new string[] { });
            });
            ConsoleHelper.HideConsoleWindow();
            MainWindow.Show();
        }