Exemplo n.º 1
0
        private void UserSettingChanged(object sender, PropertyChangedEventArgs e)
        {
            PropertyInfo prop     = sender.GetType().GetProperty(e.PropertyName);
            object       newValue = prop?.GetValue(sender, null);

            log.Debug($"Setting change: {e.PropertyName} New Value: {newValue}");
            switch (e.PropertyName)
            {
            case nameof(UserSettings.Setting.KeepOnTop):
                Topmost = (bool)newValue;
                break;

            case nameof(UserSettings.Setting.IncludeV6):
                InternalIP.GetMyInternalIP();
                break;

            case nameof(UserSettings.Setting.IncludeDebug):
                NLHelpers.SetLogLevel((bool)newValue);
                break;

            case nameof(UserSettings.Setting.DarkMode):
                SetBaseTheme((int)newValue);
                break;

            case nameof(UserSettings.Setting.PrimaryColor):
                SetPrimaryColor((int)newValue);
                break;

            case nameof(UserSettings.Setting.UISize):
                int    size    = (int)newValue;
                double newSize = UIScale(size);
                MainGrid.LayoutTransform = new ScaleTransform(newSize, newSize);
                break;
            }
        }
Exemplo n.º 2
0
        public void ReadSettings()
        {
            // Set NLog configuration
            NLHelpers.NLogConfig();

            // Unhandled exception handler
            AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;

            // Put the version number in the title bar
            Title = $"{AppInfo.AppName} - {AppInfo.TitleVersion}";

            // Startup message in the temp file
            log.Info($"{AppInfo.AppName} {AppInfo.AppVersion} is starting up");

            // Window position
            Top     = UserSettings.Setting.WindowTop;
            Left    = UserSettings.Setting.WindowLeft;
            Height  = UserSettings.Setting.WindowHeight;
            Width   = UserSettings.Setting.WindowWidth;
            Topmost = UserSettings.Setting.KeepOnTop;

            // .NET version, app framework and OS platform
            string version = Environment.Version.ToString();

            log.Debug($".NET version: {AppInfo.RuntimeVersion.Replace(".NET", "")}  ({version})");
            log.Debug(AppInfo.Framework);
            log.Debug(AppInfo.OsPlatform);

            // Light or dark
            SetBaseTheme(UserSettings.Setting.DarkMode);

            // Primary color
            SetPrimaryColor(UserSettings.Setting.PrimaryColor);

            // UI size
            double size = UIScale(UserSettings.Setting.UISize);

            MainGrid.LayoutTransform = new ScaleTransform(size, size);

            // Initial page viewed
            NavigateToPage(UserSettings.Setting.InitialPage);

            // Settings change event
            UserSettings.Setting.PropertyChanged += UserSettingChanged;
        }
Exemplo n.º 3
0
 private void BtnLog_Click(object sender, RoutedEventArgs e)
 {
     TextFileViewer.ViewTextFile(NLHelpers.GetLogfileName());
 }