예제 #1
0
        public SettingsViewModel(ContextRepository contextRepository, TagColorProvider tagColorProvider, ExampleDataProvider exampleDataProvider, SettingsProvider settingsProvider)
        {
            DisplayName           = "Einstellungen";
            m_ContextRepository   = contextRepository;
            m_TagColorProvider    = tagColorProvider;
            m_ExampleDataProvider = exampleDataProvider;
            m_SettingsProvider    = settingsProvider;
            m_ExampleDataProvider.SeedCompleted += (s, e) => Save();

            ServerUrl  = m_SettingsProvider.Url;
            ServerPort = m_SettingsProvider.Port;
            UserName   = m_SettingsProvider.UserName;
            Password   = m_SettingsProvider.Password;
        }
예제 #2
0
        public void Startup(StartupEventArgs startupEventArgs)
        {
            var dataProvider = new ExampleDataProvider();

            var listExampleViewModel = new ListExampleViewModel(dataProvider);
            var converterAndBehaviorExampleViewModel = new ConverterAndBehaviorExampleViewModel();
            var commandExampleViewModel = new CommandExampleViewModel();
            var mainWindowViewModel     = new MainWindowViewModel("Run-Time-Title",
                                                                  commandExampleViewModel,
                                                                  converterAndBehaviorExampleViewModel,
                                                                  listExampleViewModel);

            var mainWindow = new MainWindow
            {
                DataContext = mainWindowViewModel
            };

            mainWindow.Show();
        }
예제 #3
0
        public SettingViewModel([Import] ExampleDataProvider exampleDateProvider, [Import] Action <string, int, string, string> newConnectionSettings, [Import] Action <CultureInfo> newLanguageSettings,
                                [Import] Action <Assembly> newThemeSettings, [Import] IDialogManager dialogs, [Import] ISettingsProvider settingsProvider)
        {
            Dialogs = dialogs;
            m_NewConnectionSettings              = newConnectionSettings;
            m_NewLanguageSettings                = newLanguageSettings;
            m_NewThemeSettings                   = newThemeSettings;
            m_ExampleDataProvider                = exampleDateProvider;
            m_ExampleDataProvider.SeedCompleted += (s, e) =>
            {
                Save();
                Mouse.OverrideCursor = null;
            };

            m_SettingsProvider = settingsProvider;

            ServerUrl            = m_SettingsProvider.Url;
            ServerPort           = m_SettingsProvider.Port;
            User                 = m_SettingsProvider.User;
            Password             = m_SettingsProvider.Password;
            m_AvailableLanguages = new List <CultureInfo>();
            m_AvailableLanguages.Add(CultureInfo.GetCultureInfo("de-DE"));
            m_AvailableLanguages.Add(CultureInfo.GetCultureInfo("en-US"));
            SelectedLanguage = m_AvailableLanguages.Single(kvp => kvp.Name == m_SettingsProvider.Language);

            var directoryCatalog = new DirectoryCatalog("./", "Ork.Theme*.dll");

            m_AvailableThemes = directoryCatalog.LoadedFiles.Select(Assembly.LoadFrom)
                                .ToList();
            SelectedTheme = (m_AvailableThemes.Find(at => at.GetName()
                                                    .Name == m_SettingsProvider.Theme) == null) ? m_AvailableThemes.First() : m_AvailableThemes.Find(at => at.GetName()
                                                                                                                                                     .Name == m_SettingsProvider.Theme);


            FrameworkElement.LanguageProperty.OverrideMetadata(typeof(FrameworkElement), new FrameworkPropertyMetadata(XmlLanguage.GetLanguage(SelectedLanguage.IetfLanguageTag)));
            m_oldLanguage = SelectedLanguage;
        }