protected virtual void log(string t, Color? logColor = null)
 {
     LogEventArgs args = new LogEventArgs();
     args.Text = t;
     if (logColor != null)
     {
         args.Color = (Color)logColor;
     }
     this.OnLog(args);
 }
 // ----------------------------------------
 // EVENTS
 // ----------------------------------------
 protected virtual void OnLog(LogEventArgs e)
 {
     if (LogEvent != null)
         LogEvent(this, e);
 }