--- trunk/RomCheater/RomCheaterConfigDialog.cs 2014/04/15 15:58:50 814 +++ trunk/RomCheater/RomCheaterConfigDialog.cs 2014/04/15 16:34:03 815 @@ -114,52 +114,54 @@ namespace RomCheater private void load_loggerflags() { - //gLog.Info.WriteLine(" Loading logger flags..."); - //object o_flags = LoggingettingsSubscriber.GetValue("LoggingFlags"); - //loggerflags logflags = (ushort)Convert.ChangeType(o_flags, typeof(ushort)); - //if (logflags != logger.GetLoggingFlags()) - //{ - // logflags = logger.GetLoggingFlags(); // we apparently have forced the logging flags (possible for testing) - //} + gLog.Info.WriteLine(" Loading logger flags..."); + + bool upgraded_flags = Convert.ToBoolean(LoggingettingsSubscriber.GetValue("UpgradedLogLevel")); + object o_flags = null; + if (!upgraded_flags) + { + o_flags = new LoggingFlagsConverter(Logging.Properties.Settings.Default.LoggingFlags).ConvertFlags(); + LoggingettingsSubscriber.SetValue("UpgradedLogLevel", true); + LoggingettingsSubscriber.SetValue("gLogLoggingFlags", Convert.ToUInt32(o_flags)); + LoggingettingsSubscriber.SaveSettings(); + } + o_flags = LoggingettingsSubscriber.GetValue("gLogLoggingFlags"); + LogLevel log_level = (LogLevel)o_flags; #if DISABLE_VERBOSE_DEBUG_MESSAGES_FOR_SPEED_BOOST - //lFlags = logflags; - //ushort pflags = lFlags.Value; - //if (lFlags.HasFlag(loggerflags.VERBOSE_DEBUG)) - //{ - // pflags = lFlags.Value; - // pflags = (ushort)(lFlags.Value & ~loggerflags.VERBOSE_DEBUG.Value); - // logger.SetLoggingFlags(pflags); - //} + gLog.SetLogLevel(log_level & ~LogLevel.kLogLevel_Verbose); #endif - //var logger_flags = loggerflags.GetValues(); - - //foreach (loggerflags flags in logger_flags) - //{ - // if (flags == loggerflags.ALL || - // flags == loggerflags.NONE || - // flags == loggerflags.DEFAULT) - // continue; - // string name = flags.Name; - // ushort value = (ushort)flags; - // CheckBox chkloggerflags = new CheckBox(); - // chkloggerflags.Font = this.Font; - // chkloggerflags.Name = name; - // chkloggerflags.Text = name; - // chkloggerflags.Tag = value; - // Graphics g = chkloggerflags.CreateGraphics(); - // Size size = g.MeasureString(chkloggerflags.Text, chkloggerflags.Font).ToSize(); - // chkloggerflags.Width = size.Width + 25; - // grpLoggingFlags_flow.Controls.Add(chkloggerflags); - // logger.VerboseDebug.WriteLine("\tAdding logger flag: {0} value: 0x{1:x4}", name, value); - // if (logflags.HasFlag(value)) - // { - // chkloggerflags.Checked = true; - // logger.VerboseDebug.WriteLine("\tTurning on logger flag: {0} value: 0x{1:x4}", name, value); - // } - //} + foreach (LogLevel t in Enum.GetValues(typeof(LogLevel))) + { + if (t == LogLevel.kLogLevel_All || + t == LogLevel.kLogLevel_Disable || + t == LogLevel.kLogLevel_None || + t == LogLevel.kLogLevel_All_NoProgress || + t == LogLevel.kLogLevel_Default || + t == LogLevel.kLogLevel_Verbose) + { + continue; + } + CheckBox chkloggerflags = new CheckBox(); + chkloggerflags.Font = this.Font; + string name = Enum.GetName(typeof(LogLevel), t).Replace("kLogLevel_", ""); + LogLevel value = t; + chkloggerflags.Name = name; + chkloggerflags.Text = name; + chkloggerflags.Tag = value; + Graphics g = chkloggerflags.CreateGraphics(); + Size size = g.MeasureString(chkloggerflags.Text, chkloggerflags.Font).ToSize(); + chkloggerflags.Width = size.Width + 25; + grpLoggingFlags_flow.Controls.Add(chkloggerflags); + if (log_level.HasFlag(t)) + { + chkloggerflags.Checked = true; + gLog.Verbose.Debug.WriteLine("\tTurning on logger flag: {0} value: 0x{1:x4}", name, value); + } + } //grpLoggingFlags.AutoSize = true; //grpLoggingFlags.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; - //gLog.Info.WriteLine(" Loaded logger flags."); + + gLog.Info.WriteLine(" Loaded logger flags."); } private void btnSave_Click(object sender, EventArgs e) { @@ -194,18 +196,18 @@ namespace RomCheater } private void SaveLoggingFlags() { - //gLog.Debug.WriteLine("Saving Logger flags..."); - //ushort logflags = loggerflags.NONE; - //foreach (CheckBox cb in grpLoggingFlags_flow.Controls) - //{ - // if (!cb.Checked) continue; - // ushort value = Convert.ToUInt16(cb.Tag); - // logflags = (ushort)(logflags | value); - // gLog.Verbose.Debug.WriteLine("\tAdding flag: {0} value: 0x{1:x4} LoggingFlags=0x{2:x4}", cb.Text, value, (int)logflags); - //} + gLog.Debug.WriteLine("Saving Logger flags..."); + LogLevel logflags = LogLevel.kLogLevel_None; + foreach (CheckBox cb in grpLoggingFlags_flow.Controls) + { + if (!cb.Checked) continue; + uint value = Convert.ToUInt32(cb.Tag); + logflags = logflags | (LogLevel)value; + gLog.Verbose.Debug.WriteLine("\tAdding flag: {0} value: 0x{1:x8} LoggingFlags=0x{2:x4}", cb.Text, value, (int)logflags); + } - //LoggingettingsSubscriber.SetValue("LoggingFlags", (ushort)logflags); - //gLog.Debug.WriteLine("Saved Logger flags."); + LoggingettingsSubscriber.SetValue("gLogLoggingFlags", (uint)logflags); + gLog.Debug.WriteLine("Saved Logger flags."); } private void RomCheaterConfigDialog_FormClosing(object sender, FormClosingEventArgs e) |