Esempio n. 1
0
        /// <summary>
        /// 告知控制器在编辑器有修改的行
        /// </summary>
        /// <param name="lineIndex"></param>
        /// <param name="content"></param>
        /// <returns></returns>
        public bool AskModifyNewLine(int lineIndex, String content)
        {
            ModifyLineEventArgs args = new ModifyLineEventArgs()
            {
                TargetLineIndex = lineIndex,
                NewContent      = content
            };

            return(ModifyLineEvent(this, args));
        }
Esempio n. 2
0
 /// <summary>
 /// 编辑行事件处理
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 /// <returns></returns>
 bool ModifyLineEvent(object sender, ModifyLineEventArgs e)
 {
     if (TextDoc.GetLineCounts() > e.TargetLineIndex || e.TargetLineIndex <= 0)
     {
         return(false);
     }
     else
     {
         TextLine targetLine = this.TextDoc.GetTextLineByIndex(e.TargetLineIndex);
         if (targetLine == null)
         {
             return(false);
         }
         targetLine.EditContent(e.NewContent);
         targetLine.Mark = LineMarkType.Changed;
         MessageQueues.MessagesToSend.Enqueue(MessageWrapper.WriteMsg(this.CallerID, this.Identity, MessageType.UPD, targetLine.ID, e.NewContent));
         return(true);
     }
 }