public void MoveCaret(Guid id, int offset)
        {
            if (!ColoredCursors.ContainsKey(id))
            {
                return;
            }

            Editor.Dispatcher.BeginInvoke(new Action(() =>
            {
                var visualPosition          = GetVisualPosition(offset);
                ColoredCursors[id].Position = visualPosition;
            }));
        }
 public void RegisterClient(Guid id, string name)
 {
     ColoredCursors.Add(id, new ColoredCaret(CursorCanvas, new Point(0, 0), id, name, 16));
     Selections.Add(id, new ColoredSelection(id, CursorCanvas));
 }