public OutlookProcessor() : base(null, false) { _tracer = new Tracer("OutlookProcessor"); try { OutlookSession.Init(this); OnSettingsChanged(null, null); IdlePeriod = Settings.IdlePeriod * 60000; ThreadName = "Outlook AsyncProcessor"; ThreadPriority = ThreadPriority.Normal; ThreadStarted += new EventHandler(_outlookProcessor_ThreadStarted); ThreadFinished += new EventHandler(_outlookProcessor_ThreadFinished); ProcessMessages = true; ExceptionHandler = new AsyncExceptionHandler(HandleException); _UIManager = Core.UIManager; _UIManager.RegisterIndicatorLight("Outlook", this, 10, OutlookPlugin.LoadIconFromAssembly("OutlookPlugin.Icons.outlook_idle.ico"), OutlookPlugin.LoadIconFromAssembly("OutlookPlugin.Icons.outlook_busy.ico"), OutlookPlugin.LoadIconFromAssembly("OutlookPlugin.Icons.outlook_stuck.ico")); _UIManager.MainWindowClosing += new System.ComponentModel.CancelEventHandler(_UIManager_MainWindowClosing); StartThread(); _inited = true; } catch (Exception exception) { SetLastException(exception); } }