Beispiel #1
0
        public void CacheRibbonItems(List <AnalysisOccurrence> wordForms)
        {
            var cwords   = wordForms.Count;
            var laoArray = new LocatedAnalysisOccurrence[cwords];

            for (var i = 0; i < cwords; i++)
            {
                var word      = wordForms[i];
                var begOffset = word.GetMyBeginOffsetInPara();
                laoArray[i] = new LocatedAnalysisOccurrence(word.Segment, word.Index, begOffset);
            }
            (m_sda).CacheRibbonItems(laoArray);
        }
Beispiel #2
0
        /// <summary>
        /// Replaces cached ribbon words with input wordforms.
        /// Handles PropChanged, as UOW won't emit PropChanged to private Ribbon Decorator items.
        /// </summary>
        /// <param name="wordForms"></param>
        public void CacheRibbonItems(List <AnalysisOccurrence> wordForms)
        {
            var cwords   = wordForms.Count;
            var fragList = new LocatedAnalysisOccurrence[cwords];

            for (var i = 0; i < cwords; i++)
            {
                var word      = wordForms[i];
                var begOffset = word.GetMyBeginOffsetInPara();
                fragList[i] = new LocatedAnalysisOccurrence(word.Segment, word.Index, begOffset);
            }
            var oldLim = Decorator.get_VecSize(HvoRoot, OccurenceListId);

            Debug.Assert((Decorator as InterlinRibbonDecorator) != null, "No ribbon decorator!");
            ((InterlinRibbonDecorator)Decorator).CacheRibbonItems(fragList);
            if (RootBox != null)
            {
                RootBox.PropChanged(HvoRoot, OccurenceListId, 0, cwords, oldLim);
            }
        }