C# 클래스 VsTeXProject.VisualStudio.Project.ProjectContainerNode

상속: ProjectNode, IVsParentProject, IBuildDependencyOnProjectContainer
파일 보기 프로젝트 열기: mimura1133/vstex

Private Properties

프로퍼티 타입 설명
GetNestedHierarchy int
GetRegisteredProject RegisteredProjectType
OnNestedProjectFileChangedOnDisk void
RunVsTemplateWizard void

공개 메소드들

메소드 설명
CloseChildren ( ) : int
EnumNestedHierachiesForBuildDependency ( ) : IVsHierarchy[]

Enumerates the nested hierachies that should be added to the build dependency list.

IsItemDirty ( uint itemId, IntPtr punkDocData, int &pfDirty ) : int
OpenChildren ( ) : int
ReloadItem ( uint itemId, uint reserved ) : int

Called to reload a project item. Reloads a project and its nested project nodes.

SaveItem ( VSSAVEFLAGS dwSave, string silentSaveAsName, uint itemid, IntPtr punkDocData, int &pfCancelled ) : int

보호된 메소드들

메소드 설명
AddExistingNestedProject ( ProjectElement element, __VSCREATEPROJFLAGS creationFlags ) : NestedProjectNode

Add an existing project as a nested node of our hierarchy. This is used while loading the project and can also be used to add an existing project to our hierarchy.

AddNestedProjectFromTemplate ( ProjectElement element, __VSCREATEPROJFLAGS creationFlags ) : NestedProjectNode

This will clone a template project file and add it as a subproject to our hierarchy. If you want to create a project for which there exist a vstemplate, consider using RunVsTemplateWizard instead.

AddNestedProjectFromTemplate ( string fileName, string destination, string projectName, ProjectElement element, __VSCREATEPROJFLAGS creationFlags ) : NestedProjectNode

This can be called directly or through RunVsTemplateWizard. This will clone a template project file and add it as a subproject to our hierarchy. If you want to create a project for which there exist a vstemplate, consider using RunVsTemplateWizard instead.

AddVirtualProjects ( ) : void

Links the nested project nodes to the solution. The default implementation parses all nested project nodes and calles AddVirtualProjectEx on them.

CreateNestedProjectNode ( ProjectElement element ) : NestedProjectNode

Override this method if you want to provide your own type of nodes. This would be the case if you derive a class from NestedProjectNode

CreateNestedProjectNodes ( ) : void

This is used when loading the project to loop through all the items and for each SubProject it finds, it create the project and a node in our Hierarchy to hold the project.

FilterItemTypeToBeAddedToHierarchy ( string itemType ) : bool
GetProjectTemplatePath ( ProjectElement element ) : string

Based on the Template and TypeGuid properties of the element, generate the full template path. TypeGuid should be the Guid of a registered project factory. Template can be a full path, a project template (for projects that support VsTemplates) or a relative path (for other projects).

Reload ( ) : void

Reloads a project and its nested project nodes.

ReloadNestedProjectNode ( NestedProjectNode node ) : void

Reloads a nested project node by deleting it and readding it.

RemoveNestedProjectNodes ( ) : void

비공개 메소드들

메소드 설명
GetNestedHierarchy ( uint itemId, System.Guid &iidHierarchyNested, IntPtr &ppHierarchyNested, uint &pItemId ) : int
GetRegisteredProject ( ProjectElement element ) : RegisteredProjectType

Get information from the registry based for the project factory corresponding to the TypeGuid of the element

OnNestedProjectFileChangedOnDisk ( object sender, FileChangedOnDiskEventArgs e ) : void

Event callback. Called when one of the nested project files is changed.

RunVsTemplateWizard ( ProjectElement element, bool silent ) : void

메소드 상세

AddExistingNestedProject() 보호된 메소드

Add an existing project as a nested node of our hierarchy. This is used while loading the project and can also be used to add an existing project to our hierarchy.
protected AddExistingNestedProject ( ProjectElement element, __VSCREATEPROJFLAGS creationFlags ) : NestedProjectNode
element ProjectElement
creationFlags __VSCREATEPROJFLAGS
리턴 NestedProjectNode

AddNestedProjectFromTemplate() 보호된 메소드

This will clone a template project file and add it as a subproject to our hierarchy. If you want to create a project for which there exist a vstemplate, consider using RunVsTemplateWizard instead.
protected AddNestedProjectFromTemplate ( ProjectElement element, __VSCREATEPROJFLAGS creationFlags ) : NestedProjectNode
element ProjectElement
creationFlags __VSCREATEPROJFLAGS
리턴 NestedProjectNode

AddNestedProjectFromTemplate() 보호된 메소드

This can be called directly or through RunVsTemplateWizard. This will clone a template project file and add it as a subproject to our hierarchy. If you want to create a project for which there exist a vstemplate, consider using RunVsTemplateWizard instead.
protected AddNestedProjectFromTemplate ( string fileName, string destination, string projectName, ProjectElement element, __VSCREATEPROJFLAGS creationFlags ) : NestedProjectNode
fileName string
destination string
projectName string
element ProjectElement
creationFlags __VSCREATEPROJFLAGS
리턴 NestedProjectNode

AddVirtualProjects() 보호된 메소드

Links the nested project nodes to the solution. The default implementation parses all nested project nodes and calles AddVirtualProjectEx on them.
protected AddVirtualProjects ( ) : void
리턴 void

CloseChildren() 공개 메소드

public CloseChildren ( ) : int
리턴 int

CreateNestedProjectNode() 보호된 메소드

Override this method if you want to provide your own type of nodes. This would be the case if you derive a class from NestedProjectNode
protected CreateNestedProjectNode ( ProjectElement element ) : NestedProjectNode
element ProjectElement
리턴 NestedProjectNode

CreateNestedProjectNodes() 보호된 메소드

This is used when loading the project to loop through all the items and for each SubProject it finds, it create the project and a node in our Hierarchy to hold the project.
protected CreateNestedProjectNodes ( ) : void
리턴 void

EnumNestedHierachiesForBuildDependency() 공개 메소드

Enumerates the nested hierachies that should be added to the build dependency list.
public EnumNestedHierachiesForBuildDependency ( ) : IVsHierarchy[]
리턴 IVsHierarchy[]

FilterItemTypeToBeAddedToHierarchy() 보호된 메소드

protected FilterItemTypeToBeAddedToHierarchy ( string itemType ) : bool
itemType string
리턴 bool

GetProjectTemplatePath() 보호된 메소드

Based on the Template and TypeGuid properties of the element, generate the full template path. TypeGuid should be the Guid of a registered project factory. Template can be a full path, a project template (for projects that support VsTemplates) or a relative path (for other projects).
protected GetProjectTemplatePath ( ProjectElement element ) : string
element ProjectElement
리턴 string

IsItemDirty() 공개 메소드

public IsItemDirty ( uint itemId, IntPtr punkDocData, int &pfDirty ) : int
itemId uint
punkDocData System.IntPtr
pfDirty int
리턴 int

OpenChildren() 공개 메소드

public OpenChildren ( ) : int
리턴 int

Reload() 보호된 메소드

Reloads a project and its nested project nodes.
protected Reload ( ) : void
리턴 void

ReloadItem() 공개 메소드

Called to reload a project item. Reloads a project and its nested project nodes.
public ReloadItem ( uint itemId, uint reserved ) : int
itemId uint Specifies itemid from VSITEMID.
reserved uint Reserved.
리턴 int

ReloadNestedProjectNode() 보호된 메소드

Reloads a nested project node by deleting it and readding it.
protected ReloadNestedProjectNode ( NestedProjectNode node ) : void
node NestedProjectNode The node to reload.
리턴 void

RemoveNestedProjectNodes() 보호된 메소드

protected RemoveNestedProjectNodes ( ) : void
리턴 void

SaveItem() 공개 메소드

public SaveItem ( VSSAVEFLAGS dwSave, string silentSaveAsName, uint itemid, IntPtr punkDocData, int &pfCancelled ) : int
dwSave VSSAVEFLAGS
silentSaveAsName string
itemid uint
punkDocData System.IntPtr
pfCancelled int
리턴 int