From 7f7fa2f91467fdb2b11312be8562e7b51fdeb199 Mon Sep 17 00:00:00 2001
From: Sebastian Koslowski <sebastian.koslowski@gmail.com>
Date: Tue, 3 May 2016 17:13:08 +0200
Subject: grc: added yaml/mako support

Includes basic converter from XML/Cheetah to YAML/Mako based block format.
---
 grc/gui/Platform.py | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

(limited to 'grc/gui/Platform.py')

diff --git a/grc/gui/Platform.py b/grc/gui/Platform.py
index aeade75d78..2a38bc619e 100644
--- a/grc/gui/Platform.py
+++ b/grc/gui/Platform.py
@@ -24,7 +24,8 @@ import os
 
 from .Config import Config
 from . import canvas
-from ..core.Platform import Platform as CorePlatform
+from ..core.platform import Platform as CorePlatform
+from ..core.utils.backports import ChainMap
 
 
 class Platform(CorePlatform):
@@ -61,8 +62,15 @@ class Platform(CorePlatform):
     Config = Config
     FlowGraph = canvas.FlowGraph
     Connection = canvas.Connection
-    block_classes = {key: canvas.Block.make_cls_with_base(cls)
-                     for key, cls in CorePlatform.block_classes.items()}
+
+    def new_block_class(self, block_id, **data):
+        cls = CorePlatform.new_block_class(self, block_id, **data)
+        return canvas.Block.make_cls_with_base(cls)
+
+    block_classes_build_in = {key: canvas.Block.make_cls_with_base(cls)
+                              for key, cls in CorePlatform.block_classes_build_in.items()}
+    block_classes = ChainMap({}, block_classes_build_in)
+
     port_classes = {key: canvas.Port.make_cls_with_base(cls)
                     for key, cls in CorePlatform.port_classes.items()}
     param_classes = {key: canvas.Param.make_cls_with_base(cls)
-- 
cgit v1.2.3