예제 #1
0
        private void uiAnalyseButton_Click(object sender, RoutedEventArgs e)
        {
            Demo demo = uiDemoListView.GetSelectedDemo();

            Debug.Assert(demo != null);

            AnalysisWindow window = AnalysisWindowFactory.CreateAnalysisWindow(demo);

            window.Owner = this;
            canOpenDemo  = false;

            try
            {
                window.ShowDialog();
            }
            catch (Exception ex)
            {
                window.Close();
                Common.Message(this, "Analysis window error.", ex, MessageWindow.Flags.Error);
            }
            finally
            {
                canOpenDemo = true;
            }
        }
예제 #2
0
        public static AnalysisWindow CreateAnalysisWindow(Demo demo)
        {
            AnalysisWindow window = null;

            switch (demo.Engine)
            {
            case Demo.Engines.HalfLife:
            case Demo.Engines.HalfLifeSteam:
                window = new HalfLifeAnalysisWindow(demo);
                break;

            case Demo.Engines.Source:
                window = new SourceAnalysisWindow(demo);
                break;
            }

            if (window == null)
            {
                return(null);
            }

            //window.SetDemo(demo);
            return(window);
        }