ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/RomCheater/trunk/RomCheater/RomCheaterConfigDialog.cs
(Generate patch)

Comparing trunk/RomCheater/RomCheaterConfigDialog.cs (file contents):
Revision 814 by william, Tue Apr 15 15:58:50 2014 UTC vs.
Revision 815 by william, Tue Apr 15 16:34:03 2014 UTC

--- 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)