예제 #1
0
 internal static IProject GetProject(IProjectManager projectManager, IDocumentContext projectItemDocumentContext)
 {
     if (projectItemDocumentContext != null && DocumentReferenceLocator.GetDocumentReference(projectItemDocumentContext) != (DocumentReference)null && projectManager.CurrentSolution != null)
     {
         DocumentReference documentReference = DocumentReferenceLocator.GetDocumentReference(projectItemDocumentContext);
         foreach (IProject project in projectManager.CurrentSolution.Projects)
         {
             if (project.FindItem(documentReference) != null)
             {
                 return(project);
             }
         }
     }
     return((IProject)null);
 }
예제 #2
0
        private void OnViewXamlCommand()
        {
            List <DocumentNode> itemsDocumentNodes = this.GetSelectedItemsDocumentNodes();

            if (itemsDocumentNodes == null || itemsDocumentNodes.Count <= 0)
            {
                return;
            }
            IProjectItem projectItem = (IProjectItem)null;

            foreach (IProject project in this.projectManager.CurrentSolution.Projects)
            {
                projectItem = project.FindItem(DocumentReferenceLocator.GetDocumentReference(itemsDocumentNodes[0].Context));
                if (projectItem != null)
                {
                    break;
                }
            }
            SceneView sceneView = projectItem.OpenView(true) as SceneView;

            if (sceneView == null)
            {
                return;
            }
            DocumentNode rootNode = itemsDocumentNodes[0].DocumentRoot.RootNode;

            if (itemsDocumentNodes.Count == 1 && itemsDocumentNodes[0] == rootNode)
            {
                sceneView.EnsureXamlEditorVisible();
            }
            else
            {
                if (itemsDocumentNodes.Contains(rootNode))
                {
                    itemsDocumentNodes.Remove(rootNode);
                }
                GoToXamlCommand.GoToXaml(sceneView.ViewModel.XamlDocument, itemsDocumentNodes);
            }
        }
 private void CreateProviders(IPlatform platform)
 {
     this.themeManager = new UserThemeManager(platform);
     foreach (IDocumentLocator documentLocator in (IEnumerable <IDocumentLocator>) this.themeManager.Themes)
     {
         this.AddProvider((AssetProvider) new UserThemeAssetProvider(this.designerContext, (ThemeManager)this.themeManager, DocumentReferenceLocator.GetDocumentReference(documentLocator)));
     }
 }