/// <summary>
        /// Create a CmPossibility based on an XML specification of a constituent chart template.
        /// See CreateDefaultTemplate for an example.
        /// </summary>
        /// <param name="spec"></param>
        /// <returns></returns>
        public ICmPossibility CreateChartTemplate(XmlNode spec)
        {
            // Make sure we have the containing objects; if not create them.
            var dData = m_cache.LanguageProject.DiscourseDataOA;

            if (dData == null)
            {
                dData = new DsDiscourseData();
                m_cache.LanguageProject.DiscourseDataOA = dData;
            }
            // Also make sure it has a templates list
            var templates = dData.ConstChartTemplOA;

            if (templates == null)
            {
                templates = new CmPossibilityList();
                dData.ConstChartTemplOA = templates;
            }
            var template = new CmPossibility();

            m_cache.LanguageProject.DiscourseDataOA.ConstChartTemplOA.PossibilitiesOS.Add(template);
            SetNameAndChildColumns(template, spec);
            return(template);
        }
예제 #2
0
		/// <summary>
		/// Create a CmPossibility based on an XML specification of a constituent chart template.
		/// See CreateDefaultTemplate for an example.
		/// </summary>
		/// <param name="spec"></param>
		/// <returns></returns>
		public CmPossibility CreateChartTemplate(XmlNode spec)
		{
			// Make sure we have the containing objects; if not create them.
			IDsDiscourseData dData = m_cache.LangProject.DiscourseDataOA;
			if (dData == null)
			{
				dData = new DsDiscourseData();
				m_cache.LangProject.DiscourseDataOA = dData;
			}
			// Also make sure it has a templates list
			ICmPossibilityList templates = dData.ConstChartTemplOA;
			if (templates == null)
			{
				templates = new CmPossibilityList();
				dData.ConstChartTemplOA = templates;
			}
			CmPossibility template = new CmPossibility();
			m_cache.LangProject.DiscourseDataOA.ConstChartTemplOA.PossibilitiesOS.Append(template);
			SetNameAndChildColumns(template, spec);
			return template;
		}