FlavoredProject Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
A project that is a subtype or flavor of an inner project. All methods by default delegate to the inner project. Non-default behaviors should be handled by the flavored project.
public ref class FlavoredProject abstract : Microsoft::VisualStudio::ProjectAggregator::CProjectAggregatorClass, IServiceProvider, Microsoft::VisualStudio::OLE::Interop::IOleCommandTarget, Microsoft::VisualStudio::Shell::Interop::IVsAggregatableProject, Microsoft::VisualStudio::Shell::Interop::IVsTrackProjectDocumentsEvents2, Microsoft::VisualStudio::Shell::Interop::IVsUIHierarchy
public abstract class FlavoredProject : Microsoft.VisualStudio.ProjectAggregator.CProjectAggregatorClass, IServiceProvider, Microsoft.VisualStudio.OLE.Interop.IOleCommandTarget, Microsoft.VisualStudio.Shell.Interop.IVsAggregatableProject, Microsoft.VisualStudio.Shell.Interop.IVsTrackProjectDocumentsEvents2, Microsoft.VisualStudio.Shell.Interop.IVsUIHierarchy
type FlavoredProject = class
inherit CProjectAggregatorClass
interface IVsAggregatableProject
interface IServiceProvider
interface IVsHierarchy
interface IVsUIHierarchy
interface IOleCommandTarget
interface IVsTrackProjectDocumentsEvents2
Public MustInherit Class FlavoredProject
Inherits CProjectAggregatorClass
Implements IOleCommandTarget, IServiceProvider, IVsAggregatableProject, IVsTrackProjectDocumentsEvents2, IVsUIHierarchy
- Inheritance
- Implements
Remarks
For more information on flavored projects, see Project Subtypes.
Constructors
FlavoredProject() |
When overridden in a derived class, initializes an instance of the FlavoredProject class. |
Fields
innerOleCommandTarget |
The IOleCommandTarget interface of the inner project. |
innerVsAggregatableProject |
The IVsAggregatableProject of the inner project. |
innerVsHierarchy |
The IVsHierarchy interface of the inner project. |
innerVsUIHierarchy |
The IVsUIHierarchy interface of the inner project. |
serviceProvider |
The service provider of the project. |
Methods
AdviseHierarchyEvents(IVsHierarchyEvents) |
Subscribes to hierarchy events. |
Close() |
Closes and cleans up a hierarchy once the environment determines that it is no longer used. |
ExecCommand(UInt32, Guid, UInt32, UInt32, IntPtr, IntPtr) |
Executes a command on a specific item within a UI hierarchy window, or on the hierarchy itself. |
GetCanonicalName(UInt32, String) |
Gets the unique name associated with an item in the hierarchy. Used for workspace persistence, such as remembering window positions. |
GetGuidProperty(UInt32, Int32) |
Gets properties whose values are GUIDs. |
GetNestedHierarchy(UInt32, Guid, IntPtr, UInt32) |
Determines whether or not a node is a nested hierarchy. |
GetProperty(UInt32, Int32, Object) |
Gets the value of a property for a given node. |
GetSite() |
Gets the service provider from which to access the services. |
InitializeForOuter(String, String, String, UInt32, Guid, Boolean) |
Called by the outer project subtype to have the owned inner project subtype do its initialization work. |
OnAggregationComplete() |
Subscribes to IVsTrackProjectDocumentsEvents2 events. It is not required to flavor a project but makes it easier for derived classes to subscribe to these events. |
ParseCanonicalName(String, UInt32) |
Returns the identifier of the hierarchy item, given its canonical name. |
QueryClose() |
Determines whether the hierarchy can be closed. |
QueryStatusCommand(UInt32, Guid, UInt32, OLECMD[], IntPtr) |
Gets the status of the specified commands. |
SetGuidProperty(UInt32, Int32, Guid) |
Sets properties whose values are GUIDs. |
SetInner(Object) |
Sets the inner project. (Inherited from CProjectAggregatorClass) |
SetInnerProject(Object) |
Sets up the interfaces and menu commands for the inner project. |
SetProperty(UInt32, Int32, Object) |
Sets properties of a specific node or of the hierarchy. |
UnadviseHierarchyEvents(UInt32) |
Disables client notification of hierarchy events. |
Unused0() |
A placeholder for a future method. |
Unused1() |
A placeholder for a future method. |
Unused2() |
A placeholder for a future method. |
Unused3() |
A placeholder for a future method. |
Unused4() |
A placeholder for a future method. |
Events
DirectoryAdded |
Raised after a directory has been added to the project. |
DirectoryRemoved |
Raised after a directory has been removed from the project. |
DirectoryRenamed |
Raised after a directory in the project has been renamed. |
FileAdded |
Raised after a file has been added to the project. |
FileRemoved |
Raised after a file has been removed from the project. |
FileRenamed |
Raised after a file in the project has been renamed. |
SccStatusChanged |
Raised after the source code control status of an item in the project has changed. |
Explicit Interface Implementations
Extension Methods
IsCapabilityMatch(IVsHierarchy, String) |
Checks whether a given project matches the requirements prescribed in an AppliesTo expression. |
EnumImportingProjects(IVsHierarchy) |
Enumerates all the projects that are importing shared assets owned by the given Shared Project hierarchy. |
EnumOwningProjectsOfSharedAssets(IVsHierarchy) |
Enumerates all the Shared Projects that own and manage the shared assets being imported by the given project. |
GetActiveProjectContext(IVsHierarchy) |
Gets the active project context. |
GetSharedItemsImportFullPaths(IVsHierarchy) |
Gets the full paths of the shared ".projitems" files imported by the given project. |
IsProjectImportingSharedAssets(IVsHierarchy) |
Is the given project importing shared assets? |
IsSharedAssetsProject(IVsHierarchy) |
Is the given project a Shared Project? |
SetActiveProjectContext(IVsHierarchy, IVsHierarchy) |
Sets the active project context. |