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();
 }
Example #2
0
        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();
        }