ourdata_DATA = \
block.dtd \
block_tree.xml \
- default_flow_graph.grc.xml \
+ default_flow_graph.grc \
flow_graph.tmpl
EXTRA_DIST = $(ourdata_DATA)
--- /dev/null
+<?xml version="1.0"?>
+<!--
+###################################################
+##Default Flow Graph:
+## include an options block and a variable for sample rate
+###################################################
+ -->
+<flow_graph>
+ <block>
+ <key>options</key>
+ <param>
+ <key>id</key>
+ <value>top_block</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(10, 10)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>samp_rate</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>32000</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(10, 170)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+</flow_graph>
+++ /dev/null
-<?xml version="1.0"?>
-<!--
-###################################################
-##Default Flow Graph:
-## include an options block and a variable for sample rate
-###################################################
- -->
-<flow_graph>
- <block>
- <key>options</key>
- <param>
- <key>id</key>
- <value>top_block</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(10, 10)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>value</key>
- <value>32000</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(10, 170)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
-</flow_graph>
"""
if self.block.is_valid(): self._error_messages_box.hide()
else: self._error_messages_box.show()
- messages = '\n'.join(self.block.get_error_messages())
+ messages = '\n\n'.join(self.block.get_error_messages())
self._error_messages_text_display.set_text(messages)
def _handle_key_press(self, widget, event):
All checks must evaluate to true.
"""
if not self.get_enabled(): return
- for c in self.get_params() + self.get_sinks() + self.get_sources():
+ for c in self.get_params() + self.get_sinks() + self.get_sources() + self.get_connections():
try: assert(c.is_valid())
except AssertionError:
for msg in c.get_error_messages():
- self._add_error_message('%s: %s'%(c, msg))
+ self._add_error_message('>>> %s:\n\t%s'%(c, msg))
def __str__(self): return 'Block - %s - %s(%s)'%(self.get_id(), self.get_name(), self.get_key())
self._source = source
self._sink = sink
- def __str__(self): return 'Connection (%s -> %s)'%(self.get_source(), self.get_sink())
+ def __str__(self):
+ return 'Connection (\n\t%s\n\t\t%s\n\t%s\n\t\t%s\n)'%(
+ self.get_source().get_parent(),
+ self.get_source(),
+ self.get_sink().get_parent(),
+ self.get_sink(),
+ )
def is_connection(self): return True
The port must be non-empty and type must a possible type.
"""
try: assert(not self.is_empty())
- except AssertionError: self._add_error_message('is empty.')
+ except AssertionError: self._add_error_message('Port is not connected.')
try: assert(self.get_type() in self.TYPES)
except AssertionError: self._add_error_message('Type "%s" is not a possible type.'%self.get_type())
FLOW_GRAPH_TEMPLATE = os.path.join(DATA_DIR, 'flow_graph.tmpl')
BLOCK_DTD = os.path.join(DATA_DIR, 'block.dtd')
BLOCK_TREE = os.path.join(DATA_DIR, 'block_tree.xml')
-DEFAULT_FLOW_GRAPH = os.path.join(DATA_DIR, 'default_flow_graph.grc.xml')
+DEFAULT_FLOW_GRAPH = os.path.join(DATA_DIR, 'default_flow_graph.grc')
#coloring
COMPLEX_COLOR_SPEC = '#3399FF'