9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 | # author: mario
# url: http://fossil.include-once.org/streamtuner2/
# pack:
# bookmarks.py configwin.py streamedit.py history.py search.py links.py
# icast.py internet_radio.py itunes.py jamendo.py live365.py global_key.py
# modarchive.py myoggradio.py punkcast.py radiobrowser.py radiotray.py
# shoutcast.py surfmusik.py timer.py tunein.py xiph.py youtube.py
# exportcat.py useragentswitcher.py somafm.py dnd.py
# config: -
# priority: core
#
# GenericChannel implements the basic GUI functions and defines
# the default channel data structure. It implements fallback logic
# for all other channel implementations. Only `bookmarks` uses it
# directly.
#
# All other plugins don't have a pre-defined Notebook tab in the
# GtkBuilder description. They derive from ChannelPlugins therefore,
# which constructs and registers the required gtk widgets manually.
import gtk
from uikit import uikit
from config import *
import ahttp as http
import action
import favicon
import os.path
import xml.sax.saxutils
import re |
|
|
| 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 | # author: mario
# url: http://fossil.include-once.org/streamtuner2/
# pack:
# bookmarks.py configwin.py streamedit.py history.py search.py links.py
# icast.py internet_radio.py itunes.py jamendo.py live365.py global_key.py
# modarchive.py myoggradio.py punkcast.py radiobrowser.py radiotray.py
# shoutcast.py surfmusik.py timer.py tunein.py xiph.py youtube.py
# exportcat.py useragentswitcher.py somafm.py dnd.py ubuntuusers.py
# config: -
# priority: core
#
# GenericChannel implements the basic GUI functions and defines
# the default channel data structure. It implements fallback logic
# for all other channel implementations. Only `bookmarks` uses it
# directly.
#
# All other plugins don't have a pre-defined Notebook tab in the
# GtkBuilder description. They derive from ChannelPlugins therefore,
# which constructs and registers the required gtk widgets manually.
import gtk
from uikit import uikit, ver as gtk_ver
from config import *
import ahttp as http
import action
import favicon
import os.path
import xml.sax.saxutils
import re |
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312 | # store current streams data
def save(self):
conf.save("cache/" + self.module, self.streams, gz=1)
# called occasionally while retrieving and parsing
def update_streams_partially_done(self, entries):
uikit.do(uikit.columns, self.gtk_list, self.datamap, entries)
# finds differences in new/old streamlist, marks deleted with flag
def deleted_streams(self, new, old):
diff = []
new = [row.get("url","http://example.com/") for row in new]
for row in old: |
>
>
>
|
| 298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315 | # store current streams data
def save(self):
conf.save("cache/" + self.module, self.streams, gz=1)
# called occasionally while retrieving and parsing
def update_streams_partially_done(self, entries):
if gtk_ver == 3 and not conf.nothreads:
pass
else: # kills Gtk3 too easily
uikit.do(uikit.columns, self.gtk_list, self.datamap, entries)
# finds differences in new/old streamlist, marks deleted with flag
def deleted_streams(self, new, old):
diff = []
new = [row.get("url","http://example.com/") for row in new]
for row in old: |