private static void LoadWindows() { //waiting = true; //foreach (var del in WindowLoadingDelegates) //{ // waiting = true; // del.DynamicInvoke(); // while (waiting) { } //} GroupWindow = new GroupWindow(); CooldownWindow = new CooldownWindow(); BossWindow = new BossWindow(); BuffWindow = new BuffWindow(); CharacterWindow = new CharacterWindow(); ClassWindow = new ClassWindow(); InfoWindow = new InfoWindow(); FlightDurationWindow = new FlightDurationWindow(); LfgListWindow = new LfgListWindow(); SkillConfigWindow = new SkillConfigWindow(); GroupAbnormalConfigWindow = new GroupAbnormalConfigWindow(); CivilUnrestWindow = new CivilUnrestWindow(); FloatingButton = new FloatingButtonWindow(); ChatWindowManager.Instance.InitWindows(); //GroupWindow.Show(); //CooldownWindow.Show(); //BossWindow.Show(); //BuffWindow.Show(); //CharacterWindow.Show(); //ClassWindow.Show(); }
private static void LoadClassWindow() { var t = new Thread(new ThreadStart(() => { SynchronizationContext.SetSynchronizationContext(new DispatcherSynchronizationContext(Dispatcher.CurrentDispatcher)); ClassWindow = new ClassWindow(); ClassWindow.Closed += (s, ev) => ClassWindow.Dispatcher.InvokeShutdown(); ClassWindow.Show(); waiting = false; Dispatcher.Run(); })); t.Name = "Class bar thread"; t.SetApartmentState(ApartmentState.STA); t.Start(); Debug.WriteLine("Class window loaded"); }
private static void LoadClassWindow() { var classWindowThread = new Thread(() => { SynchronizationContext.SetSynchronizationContext( new DispatcherSynchronizationContext(Dispatcher.CurrentDispatcher)); Thread.CurrentThread.Priority = ThreadPriority.Highest; ClassWindow = new ClassWindow(); if (ClassWindow.WindowSettings.Enabled) { ClassWindow.Show(); } AddDispatcher(Thread.CurrentThread.ManagedThreadId, Dispatcher.CurrentDispatcher); Dispatcher.Run(); RemoveDispatcher(Thread.CurrentThread.ManagedThreadId); }) { Name = "Class" }; classWindowThread.SetApartmentState(ApartmentState.STA); classWindowThread.Start(); }