public override void Visit(IFrameBegin msg) { base.Visit(msg); DrawTime(msg); Rectangle r = m.OffsetTextRect; bool collapsed = msg.Collapsed; Brush txtBrush = ctx.InfoMessagesBrush; Brush commentsBrush = ctx.CommentsBrush; string mark = FrameBegin.GetCollapseMark(collapsed); if (TextLineIdx == 0) { ctx.Canvas.DrawString( mark, ctx.Font, txtBrush, r.X, r.Y); } r.X += (int)(ctx.CharSize.Width * (mark.Length + 1)); DrawStringWithInplaceHightlight(msg, commentsBrush, r.Location); DrawCursorIfNeeded(msg); FillOutlineBackground(); DrawFrameBeginOutline(msg); }
void DrawFrameBeginOutline(IFrameBegin msg) { if (TextLineIdx == 0) { Pen murkupPen = ctx.OutlineMarkupPen; ctx.Canvas.DrawRectangle(murkupPen, m.OulineBox); Point p = m.OulineBoxCenter; ctx.Canvas.DrawLine(murkupPen, p.X - ctx.OutlineCrossSize / 2, p.Y, p.X + ctx.OutlineCrossSize / 2, p.Y); bool collapsed = msg.Collapsed; if (collapsed) { ctx.Canvas.DrawLine(murkupPen, p.X, p.Y - ctx.OutlineCrossSize / 2, p.X, p.Y + ctx.OutlineCrossSize / 2); } } if (IsBookmarked) { Image icon = ctx.BookmarkIcon; var iconSz = icon.GetSize(width: 9).Scale(ctx.DpiScale); ctx.Canvas.DrawImage(icon, ctx.CollapseBoxesAreaSize - iconSz.Width - 1, m.MessageRect.Y + (ctx.LineHeight - iconSz.Height) / 2, iconSz.Width, iconSz.Height ); } }
void IFrameEnd.SetStart(IFrameBegin start) { this.start = start; }
public virtual void Visit(IFrameBegin msg) { HandleMessageText(msg, ctx.CharSize.Width * (FrameBegin.GetCollapseMark(msg.Collapsed).Length + 1)); }