コード例 #1
0
ファイル: HotSceneExporter.cs プロジェクト: aologos/Citrus
 public void Export(Stream stream, Node node, INodeThumbnailProvider thumbnailProvider)
 {
     CreateFolderBeginEndNodes(node);
     try {
         ReorderBonesRecursive(node.AsWidget);
         using (var tw = new StreamWriter(stream)) {
             writer = new Writer(tw);
             Write(node);
             var thumbnail = thumbnailProvider.GetThumbnail(node);
             if (thumbnail != null)
             {
                 tw.NewLine = "\r\n";
                 tw.WriteLine(HotSceneImporter.ThumbnailMarker);
                 tw.Write(thumbnail);
             }
         }
     } finally {
         RemoveFolderBeginEndNodes(node);
     }
 }
コード例 #2
0
ファイル: HotSceneImporter.cs プロジェクト: klenin/Citrus
 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);
     }
 }