<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="heading">
<tr bgcolor="#7799ee">
<td valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica,
><td align=right valign=bottom
><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="streamtuner2/st2.py">
    <p><tt>#&nbsp;encoding:&nbsp;UTF-8<br>
#&nbsp;api:&nbsp;python<br>
#&nbsp;type:&nbsp;application<br>
#&nbsp;title:&nbsp;streamtuner2<br>
#&nbsp;description:&nbsp;Directory&nbsp;browser&nbsp;for&nbsp;internet&nbsp;radio,&nbsp;audio&nbsp;and&nbsp;video&nbsp;streams<br>
#&nbsp;version:&nbsp;2.2.0<br>
#&nbsp;state:&nbsp;stable<br>

#&nbsp;license:&nbsp;Public&nbsp;Domain<br>
#&nbsp;url:&nbsp;<a
#&nbsp;config:&nbsp;&nbsp;<br>
#&nbsp;&nbsp;&nbsp;{&nbsp;type:&nbsp;env,&nbsp;name:&nbsp;HTTP_PROXY,&nbsp;description:&nbsp;proxy&nbsp;for&nbsp;HTTP&nbsp;access&nbsp;}<br>
#&nbsp;&nbsp;&nbsp;{&nbsp;type:&nbsp;env,&nbsp;name:&nbsp;XDG_CONFIG_HOME,&nbsp;description:&nbsp;relocates&nbsp;user&nbsp;.config&nbsp;subdirectory&nbsp;}<br>
#&nbsp;category:&nbsp;sound<br>
#&nbsp;depends:&nbsp;pygtk&nbsp;|&nbsp;gi,&nbsp;threading,&nbsp;requests,&nbsp;pyquery,&nbsp;lxml<br>
#&nbsp;alias:&nbsp;streamtuner2,&nbsp;main<br>
#&nbsp;id:&nbsp;st2<br>


#&nbsp;architecture:&nbsp;all<br>
#<br>
#&nbsp;Streamtuner2&nbsp;is&nbsp;a&nbsp;GUI&nbsp;for&nbsp;browsing&nbsp;internet&nbsp;radio&nbsp;directories,<br>
#&nbsp;music&nbsp;collections,&nbsp;and&nbsp;video&nbsp;services&nbsp;-&nbsp;grouped&nbsp;by&nbsp;genres&nbsp;or<br>
#&nbsp;categories.&nbsp;It&nbsp;runs&nbsp;your&nbsp;preferred&nbsp;audio&nbsp;player&nbsp;or&nbsp;streamripper<br>
#&nbsp;for&nbsp;recording.<br>
#<br>
#&nbsp;It's&nbsp;an&nbsp;independent&nbsp;rewrite&nbsp;of&nbsp;streamtuner1.&nbsp;Being&nbsp;written&nbsp;in<br>
#&nbsp;Python,&nbsp;can&nbsp;be&nbsp;more&nbsp;easily&nbsp;extended&nbsp;and&nbsp;fixed.&nbsp;The&nbsp;mix&nbsp;of<br>
#&nbsp;JSON&nbsp;APIs,&nbsp;regex&nbsp;or&nbsp;PyQuery&nbsp;extraction&nbsp;simplifies&nbsp;collecting<br>
#&nbsp;station&nbsp;lists.<br>
#<br>
#&nbsp;Primarily&nbsp;radio&nbsp;stations&nbsp;are&nbsp;displayed,&nbsp;some&nbsp;channels&nbsp;however<br>
#&nbsp;are&nbsp;music&nbsp;collections.&nbsp;Commercial&nbsp;and&nbsp;sign-up&nbsp;services&nbsp;are&nbsp;not<br>

<p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#aa55cc">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica,

<tr><td
<td width="100%"><table width="100%" summary="list"><tr><td width="25%" valign=top><a
href="api-action">action</a><br>
<a href="api-ahttp">ahttp</a><br>
<a href="api-channels">channels</a><br>
<a
<a
</td><td width="25%" valign=top><a
<a
<a href="api-logo">logo</a><br>
<a
<a
</td><td width="25%" valign=top><a href="re.html">re</a><br>
<a
<a
<a
<a
</td><td width="25%" valign=top><a
<a

<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ee77aa">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica,

<tr><td
<td width="100%"><dl>
<dt><font face="helvetica, arial"><a href="gtk.html#Builder">gtk.Builder</a>(<a href="gobject._gobject.html#GObject">gobject._gobject.GObject</a>)

<dl>
<dt><font face="helvetica, arial"><a href="#StreamTunerTwo">StreamTunerTwo</a>

</dd>
</dl>
 <p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ffc8d8">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#000000" face="helvetica, arial"><a name="StreamTunerTwo">class

<tr bgcolor="#ffc8d8"><td
<td colspan=2><tt>#&nbsp;This&nbsp;represents&nbsp;the&nbsp;main&nbsp;window,&nbsp;dispatches&nbsp;Gtk&nbsp;events,<br>

<tr><td>&nbsp;</td>
<td width="100%"><dl><dt>Method resolution order:</dt>
<dd><a
<dd><a
<dd><a
<dd><a
</dl>
<hr>
Methods defined here:<br>
<dl><dt><a name)</dt><dd><tt>#--&nbsp;Shortcut&nbsp;for&nbsp;glade.<a href="#StreamTunerTwo-get_widget">get_widget</a>()<br>
#&nbsp;Allows&nbsp;access&nbsp;to&nbsp;widgets&nbsp;as&nbsp;direct&nbsp;attributes&nbsp;instead&nbsp;of&nbsp;using&nbsp;.<a href="#StreamTunerTwo-get_widget">get_widget</a>()<br>


<dl><dt><a

<dl><dt><a

<dl><dt><a

<dl><dt><a notebook, page, page_num<font color="#909090">=0</font>,

<dl><dt><a

<dl><dt><a

<dl><dt><a

<dl><dt><a name)</dt><dd><tt>#&nbsp;Custom-named&nbsp;widgets&nbsp;are&nbsp;available&nbsp;from&nbsp;.widgets{}&nbsp;not&nbsp;via&nbsp;.<a

<dl><dt><a widget,

<dl><dt><a

<dl><dt><a

<dl><dt><a r<font color="#909090">=1.0</font>, map<font

<dl><dt><a

<dl><dt><a widget, event,

<dl><dt><a widget, event<font

<dl><dt><a

<dl><dt><a widget, event<font color="#909090">=None</font>,

<dl><dt><a

<dl><dt><a widget<font color="#909090">=None</font>, reload<font

<dl><dt><a

<dl><dt><a

<dl><dt><a

<dl><dt><a name<font

<dl><dt><a treeview,

<dl><dt><a text<font color="#909090">=None</font>, timeout<font color="#909090">=3</font>, markup<font color="#909090">=False</font>, icon<font color="#909090">=None</font>, *k,

<dl><dt><a anyway<font

<dl><dt><a w,

<dl><dt><a target, *args, **kwargs)</dt><dd><tt>#&nbsp;Run&nbsp;function&nbsp;in&nbsp;separate&nbsp;thread.<br>


<dl><dt><a

<dl><dt><a

<dl><dt><a *x,

<hr>
Data descriptors defined here:<br>

</dl>
<hr>
Data and other attributes defined here:<br>
<dl><dt><strong>channels</strong> = {}</dl>

<dl><dt><strong>current_channel</strong> = 'bookmarks'</dl>

<dl><dt><strong>features</strong> = {}</dl>

<dl><dt><strong>hooks</strong> = {'config_load': [], 'config_save': [], 'init': [], 'play': [], 'quit': [&lt;function cleanup_tmp_files&gt;], 'record': [], 'switch': []}</dl>

<dl><dt><strong>meta</strong> = {'alias': 'streamtuner2, main', 'api': 'python', 'architecture': 'all', 'author': Salzer 'category': 'sound', 'config': [{'description': 'proxy for HTTP access', 'name': 'HTTP_PROXY', 'type': 'env', 'value': None}, {'description': 'relocates user .config subdirectory', 'name': 'XDG_CONFIG_HOME', 'type': 'env', 'value': None}], 'depends': 'pygtk | gi, threading, requests, pyquery, lxml', 'description': 'Directory browser for internet radio, audio and video streams', 'doc': 'Streamtuner2 is a GUI for browsing internet radi...ercial and sign-up services are not<font color="#c040c0">\n</font>an objective.', 'encoding': 'UTF-8', ...}</dl>

<dl><dt><strong>widgets</strong> = {}</dl>


<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#eeaa77">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica,

<tr><td
<td width="100%"><dl><dt><a

<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#55aa55">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica,

<tr><td
<td width="100%"><strong>PY2</strong> = 1<br>
<strong>PY3</strong> = 0<br>
<strong>conf</strong> = {u'filter_walledgardens': True, u'history': u'20'}<br>
<strong>log</strong> = &lt;config.log_printer object&gt;<br>
<strong>ui_xml</strong> = u'&lt;?xml version="1.0" encoding="UTF-8"?&gt;<font color="#c040c0">\n</font>&lt;!-- Gene... &lt;/object&gt;<font color="#c040c0">\n</font>    &lt;/child&gt;<font color="#c040c0">\n</font>  &lt;/object&gt;<font