Beispiel #1
0
 public bool TryHandleMouseEvent(IRtEmbeddingSpan embedding, IMouseEvent args)
 {
     if (!args.IsLeftDoubleClickEvent() || args.KeyModifiers != KeyModifiers.None)
     {
         return(false);
     }
     windowQueryService.QueryTextMutable("Formula Editor", embedding.SourceCode, x => embedding.SourceCode = x);
     return(true);
 }
Beispiel #2
0
        public IImage BuildImage(IRtEmbeddingSpan embedding)
        {
            if (!TryParseAndRender(embedding.SourceCode, embedding.Style, out var pngBytes, out var error) &&
                !TryParseAndRender("???", embedding.Style, out pngBytes, out var error2))
            {
                throw new Exception(error2);
            }
            Bitmap bitmap;

            using (var stream = new MemoryStream(pngBytes, false))
                bitmap = new Bitmap(stream);
            return(new SysDrawImage(bitmap));
        }
 public IRtEmbeddingHandler GetHandler(IRtEmbeddingSpan embedding)
 {
     // todo: handle the case when no handler found
     return(handlersByType.GetOrAdd(embedding.EmbeddingType, x => handlers.Last(h => h.HandledTypes.Contains(x))));
 }