Merging r11186:11273 from grc branch.
[debian/gnuradio] / grc / blocks / options.xml
diff --git a/grc/blocks/options.xml b/grc/blocks/options.xml
new file mode 100644 (file)
index 0000000..06ede76
--- /dev/null
@@ -0,0 +1,147 @@
+<?xml version="1.0"?>
+<!--
+###################################################
+##Options Block:
+## options for window size,
+## and flow graph building.
+###################################################
+ -->
+<block>
+       <name>Options</name>
+       <key>options</key>
+       <import>from gnuradio import gr
+#if $generate_options() == 'wx_gui'
+from grc_gnuradio import wxgui as grc_wxgui
+import wx
+#end if
+#if $generate_options() != 'hb'
+from optparse import OptionParser
+from gnuradio.eng_option import eng_option
+#end if
+</import>
+       <make></make>
+       <callback>self.start($autostart)</callback>
+       <param>
+               <name>Title</name>
+               <key>title</key>
+               <value></value>
+               <type>string</type>
+               <hide>#if $title() then 'none' else 'part'#</hide>
+       </param>
+       <param>
+               <name>Author</name>
+               <key>author</key>
+               <value></value>
+               <type>string</type>
+               <hide>#if $author() then 'none' else 'part'#</hide>
+       </param>
+       <param>
+               <name>Description</name>
+               <key>description</key>
+               <value></value>
+               <type>string</type>
+               <hide>#if $description() then 'none' else 'part'#</hide>
+       </param>
+       <param>
+               <name>Window Size</name>
+               <key>window_size</key>
+               <value>1280, 1024</value>
+               <type>int_vector</type>
+               <hide>part</hide>
+       </param>
+       <param>
+               <name>Generate Options</name>
+               <key>generate_options</key>
+               <value>wx_gui</value>
+               <type>enum</type>
+               <hide>#if $generate_options() == 'wx_gui' then 'part' else 'none'#</hide>
+               <option>
+                       <name>WX GUI</name>
+                       <key>wx_gui</key>
+               </option>
+               <option>
+                       <name>No GUI</name>
+                       <key>no_gui</key>
+               </option>
+               <option>
+                       <name>Hier Block</name>
+                       <key>hb</key>
+               </option>
+       </param>
+       <param>
+               <name>Category</name>
+               <key>category</key>
+               <value>Custom</value>
+               <type>string</type>
+               <hide>#if $generate_options() == 'hb' then 'none' else 'all'#</hide>
+       </param>
+       <param>
+               <name>Autostart</name>
+               <key>autostart</key>
+               <value>True</value>
+               <type>bool</type>
+               <hide>#if $generate_options() == 'wx_gui'
+       #if str($autostart) == 'True'
+part#slurp
+       #else
+none#slurp
+       #end if
+#else
+all#slurp
+#end if</hide>
+               <option>
+                       <name>Yes</name>
+                       <key>True</key>
+               </option>
+               <option>
+                       <name>No</name>
+                       <key>False</key>
+               </option>
+       </param>
+       <param>
+               <name>Realtime Scheduling</name>
+               <key>realtime_scheduling</key>
+               <value></value>
+               <type>enum</type>
+               <hide>#if $generate_options() == 'hb'
+all#slurp
+#elif $realtime_scheduling()
+none#slurp
+#else
+part#slurp
+#end if</hide>
+               <option>
+                       <name>Off</name>
+                       <key></key>
+               </option>
+               <option>
+                       <name>On</name>
+                       <key>1</key>
+               </option>
+       </param>
+       <check>len($window_size) == 2</check>
+       <check>300 &lt;= $(window_size)[0] &lt;= 4096</check>
+       <check>300 &lt;= $(window_size)[1] &lt;= 4096</check>
+       <doc>
+The options block sets special parameters for the flow graph. \
+Only one option block is allowed per flow graph.
+
+Title, author, and description parameters are for identification purposes.
+
+The window size controls the dimensions of the flow graph editor. \
+The window size (width, height) must be between (300, 300) and (4096, 4096).
+
+The generate options controls the type of code generated. \
+Non-graphical flow graphs should avoid using graphical sinks or graphical variable controls.
+
+In a graphical application, \
+autostart can be controlled by a variable to start and stop the flowgraph at runtime.
+
+The id of this block determines the name of the generated file and the name of the class. \
+For example, an id of my_block will generate the file my_block.py and class my_block(gr....
+
+The category parameter determines the placement of the block in the block selection window. \
+The category only applies when creating hier blocks. \
+To put hier blocks into the root category, enter / for the category.
+       </doc>
+</block>