Example #1
0
        string ReadThumbnail(HotLexer lexer)
        {
            var l = lexer.ReadLine();

            if (l != ThumbnailMarker)
            {
                return(null);
            }
            var sb        = new System.Text.StringBuilder();
            var firstLine = true;

            while ((l = lexer.ReadLine()) != null)
            {
                if (!firstLine)
                {
                    sb.Append('\r');
                    sb.Append('\n');
                }
                firstLine = false;
                sb.Append(l);
            }
            return(sb.ToString());
        }
Example #2
0
 public Node Import(Stream stream, Node node, INodeThumbnailProvider thumbnailProvider)
 {
     using (TextReader reader = new StreamReader(stream)) {
         string text = reader.ReadToEnd();
         lexer = new HotLexer(sourcePath, text, isTangerine);
         var savedDefaultWidgetSize = Widget.DefaultWidgetSize;
         try {
             Widget.DefaultWidgetSize = new Vector2(100, 100);
             node = ParseNode(node);
         } finally {
             Widget.DefaultWidgetSize = savedDefaultWidgetSize;
         }
         lexer.ReadLine();
         thumbnailProvider?.SetThumbnail(node, ReadThumbnail(lexer));
         if (isTangerine)
         {
             ConvertFolderBeginEndToDescriptors(node);
             ReplaceAnimationEngine(node);
         }
         return(node);
     }
 }