/// <summary> /// /// </summary> /// <param name="sourceLineNumbers"></param> /// <param name="attrib"></param> /// <param name="publishInfo"></param> /// <param name="visioVersion"></param> private void ParseVisioVersionAttribute(SourceLineNumberCollection sourceLineNumbers, XmlAttribute attrib, VisioPublishInfo publishInfo, VisioVersion visioVersion) { if (YesNoType.Yes == Core.GetAttributeYesNoValue(sourceLineNumbers, attrib)) { publishInfo.VisioVersion |= visioVersion; } else { publishInfo.VisioVersion &= ~visioVersion; } }
/// <summary> /// Returns base Visio component id based on Visio version /// These values were taken from MSDN documentation on PublishComponent table. /// </summary> /// <param name="visioVersion"></param> /// <returns></returns> private static string GetVisioBaseComponentId(VisioVersion visioVersion) { switch (visioVersion) { case VisioVersion.Visio2003: return("{CF1F488D-8D6F-499C-A78D-026E1DF3810X}"); case VisioVersion.Visio2007: return("{6D9D8B6F-D0EF-4BC0-8DD4-09DD6CE2B00X}"); case VisioVersion.Visio2010: return("{6D9D8B6F-D0EF-4BC0-8DD4-09DD6CE2B10X}"); case VisioVersion.Visio2013: return("{6D9D8B6F-D0EF-4BC0-8DD4-09DD6CE2B20X}"); case VisioVersion.Visio2016: return("{6D9D8B6F-D0EF-4BC0-8DD4-09DD6CE2B30X}"); default: throw new ArgumentOutOfRangeException("visioVersion"); } }
/// <summary> /// Returns the ComponentID for PublishComponent table for given combination of version/content type. /// Visio Component ids are built using the following rule: /// {XXXXXX-XXXX-XXX-XXXXXY} - here X are fixed "base" digits, /// whereas the last one (Y) is determined by content type. /// </summary> /// <param name="contentType"></param> /// <param name="visioVersion"></param> /// <returns></returns> private static string GetVisioComponentId(VisioContentType contentType, VisioVersion visioVersion) { var pattern = GetVisioBaseComponentId(visioVersion); return(pattern.Replace("X", Convert.ToInt32(contentType).ToString(CultureInfo.InvariantCulture))); }
/// <summary> /// /// </summary> /// <param name="sourceLineNumbers"></param> /// <param name="attrib"></param> /// <param name="publishInfo"></param> /// <param name="visioVersion"></param> private void ParseVisioVersionAttribute(SourceLineNumberCollection sourceLineNumbers, XmlAttribute attrib, VisioPublishInfo publishInfo, VisioVersion visioVersion) { if (YesNoType.Yes == Core.GetAttributeYesNoValue(sourceLineNumbers, attrib)) publishInfo.VisioVersion |= visioVersion; else publishInfo.VisioVersion &= ~visioVersion; }
/// <summary> /// Returns the ComponentID for PublishComponent table for given combination of version/content type. /// Visio Component ids are built using the following rule: /// {XXXXXX-XXXX-XXX-XXXXXY} - here X are fixed "base" digits, /// whereas the last one (Y) is determined by content type. /// </summary> /// <param name="contentType"></param> /// <param name="visioVersion"></param> /// <returns></returns> private static string GetVisioComponentId(VisioContentType contentType, VisioVersion visioVersion) { var pattern = GetVisioBaseComponentId(visioVersion); return pattern.Replace("X", Convert.ToInt32(contentType).ToString(CultureInfo.InvariantCulture)); }
/// <summary> /// Returns base Visio component id based on Visio version /// These values were taken from MSDN documentation on PublishComponent table. /// </summary> /// <param name="visioVersion"></param> /// <returns></returns> private static string GetVisioBaseComponentId(VisioVersion visioVersion) { switch (visioVersion) { case VisioVersion.Visio2003: return "{CF1F488D-8D6F-499C-A78D-026E1DF3810X}"; case VisioVersion.Visio2007: return "{6D9D8B6F-D0EF-4BC0-8DD4-09DD6CE2B00X}"; case VisioVersion.Visio2010: return "{6D9D8B6F-D0EF-4BC0-8DD4-09DD6CE2B10X}"; case VisioVersion.Visio2013: return "{6D9D8B6F-D0EF-4BC0-8DD4-09DD6CE2B20X}"; default: throw new ArgumentOutOfRangeException("visioVersion"); } }
public VisioPublishInfo(string fileName) { VisioVersion = VisioVersion.Default; VisioEdition = VisioEdition.Default; AddonAttrs = AddonAttrs.PerformsActions; MenuPath = Path.GetFileName(fileName); AltNames = ""; VisioLanguage = 1; QuickShapesCount = 0; FeaturedTemplate = true; LocalizedName = Path.GetFileName(fileName); UniversalName = Path.GetFileName(fileName); EnablingPolicy = EnablingPolicy.AlwaysEnabled; StaticEnableConditions = StaticEnableConditions.Document; Ordinal = 1; }