protected object CreateExtender(string ExtenderCATID, string ExtenderName, object ExtendeeObject, IExtenderSite ExtenderSite, int Cookie) { object extender = null; ExtendVersion extendVersion = GetExtendVersion(ExtenderCATID, ExtenderName, ExtendeeObject); if (extendVersion != ExtendVersion.None) { IVsBrowseObject browseObject = ExtendeeObject as IVsBrowseObject; if (browseObject == null) return null; IVsHierarchy hierarchy; uint itemId; if (ErrorHandler.Failed(browseObject.GetProjectItem(out hierarchy, out itemId))) return null; IVsBuildPropertyStorage buildPropertyStorage = hierarchy as IVsBuildPropertyStorage; if (buildPropertyStorage == null) return null; if (extendVersion == ExtendVersion.Antlr3) extender = new GrammarFileObjectExtenderProperties(buildPropertyStorage, itemId); else extender = new GrammarFileObjectExtenderPropertiesV4(buildPropertyStorage, itemId); } return extender; }
protected object CreateExtender(string ExtenderCATID, string ExtenderName, object ExtendeeObject, IExtenderSite ExtenderSite, int Cookie) { object extender = null; ExtendVersion extendVersion = GetExtendVersion(ExtenderCATID, ExtenderName, ExtendeeObject); if (extendVersion != ExtendVersion.None) { IVsBrowseObject browseObject = ExtendeeObject as IVsBrowseObject; if (browseObject == null) { return(null); } IVsHierarchy hierarchy; uint itemId; if (ErrorHandler.Failed(browseObject.GetProjectItem(out hierarchy, out itemId))) { return(null); } IVsBuildPropertyStorage buildPropertyStorage = hierarchy as IVsBuildPropertyStorage; if (buildPropertyStorage == null) { return(null); } if (extendVersion == ExtendVersion.Antlr3) { extender = new GrammarFileObjectExtenderProperties(buildPropertyStorage, itemId); } else { extender = new GrammarFileObjectExtenderPropertiesV4(buildPropertyStorage, itemId); } } return(extender); }