Ejemplo n.º 1
0
        public void SelectApplication(ResearchApplication application)
        {
            if (_researchMatrixGrid == null)
            {
                return;
            }

            var parent = _researchMatrixGrid.Parent as FrameworkElement;

            while ((parent != null) &&
                   !(parent.Parent is Selector))
            {
                parent = parent.Parent as FrameworkElement;
            }
            if ((parent != null) && parent.IsDescendantOf(this))
            {
                parent.SetValue(Selector.IsSelectedProperty, true);
            }
            _researchMatrixGrid.BringIntoView();

            if (_selectedApplication != null)
            {
                _selectedApplication.SetValue(Selector.IsSelectedProperty, false);
                _selectedApplication = null;
            }
            if (_applicationDetailsHost != null)
            {
                if (application != null)
                {
                    foreach (Grid internalGrid in _researchMatrixGrid.Children)
                    {
                        foreach (ContentControl appContainer in internalGrid.Children)
                        {
                            if (((ResearchApplicationData)appContainer.Content).Application == application)
                            {
                                var detailsContainer = new ContentControl();

                                _selectedApplication = appContainer;
                                _selectedApplication.SetValue(Selector.IsSelectedProperty, true);

                                detailsContainer.Content = new ResearchApplicationDetails(
                                    application,
                                    AppContext.LocalPlayerEmpire);
                                _applicationDetailsHost.Child = detailsContainer;

                                break;
                            }
                        }
                    }
                }
                else
                {
                    _applicationDetailsHost.Child = null;
                }
            }
        }
Ejemplo n.º 2
0
 public ResearchApplicationDetails(ResearchApplication application, CivilizationManager civManager)
 {
     if (application == null)
     {
         throw new ArgumentNullException("application");
     }
     if (civManager == null)
     {
         throw new ArgumentNullException("civManager");
     }
     _application = application;
     _civManager  = civManager;
 }
Ejemplo n.º 3
0
 public ResearchApplicationData(ResearchApplication application, ResearchPool pool)
 {
     if (application == null)
     {
         throw new ArgumentNullException("application");
     }
     if (pool == null)
     {
         throw new ArgumentNullException("pool");
     }
     _application = application;
     _pool        = pool;
 }