Internet radio browser GUI for music/video streams from various directory services.

⌈⌋ ⎇ branch:  streamtuner2


Check-in [a678391248]

Overview
Comment:Load main module meta data.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: a67839124894251e21f7b629cd530ba79e323cec
User & Date: mario on 2015-03-30 17:40:58
Other Links: manifest | tags
Context
2015-03-30
17:41
Support netrc account lookup (for MyOggRadio). check-in: 95f6f0f64f user: mario tags: trunk
17:40
Load main module meta data. check-in: a678391248 user: mario tags: trunk
17:40
Use plugin meta data for about dialog. check-in: 2040a91410 user: mario tags: trunk
Changes

Modified st2.py from [02a852d95e] to [a25ff9d0d3].

34
35
36
37
38
39
40
41

42
43
44

45
46
47
48
49
50
51
34
35
36
37
38
39
40

41
42

43
44
45
46
47
48
49
50
51







-
+

-

+







# collections. Commercial and sign-up services are not an objective.
#



# standard modules
import sys
import os, os.path
import os
import re
from collections import namedtuple
from copy import copy
import inspect
import traceback
from threading import Thread

# add library path
sys.path.insert(0, "/usr/share/streamtuner2")   # pre-defined directory for modules
sys.path.insert(0, ".")   # development module path

78
79
80
81
82
83
84
85

86
87
88
89
90
91
92
93
94

95
96
97
98
99
100
101
78
79
80
81
82
83
84

85
86
87
88
89
90
91
92
93

94
95
96
97
98
99
100
101







-
+








-
+







    add_signals = {} # channel gtk-handler signals
    hooks = {
        "play": [favicon.download_playing],  # observers queue here
        "init": [],
        "config_load": [],
        "config_save": [],
    }
    __version__ = "2.1.5"
    meta = plugin_meta()

    # status variables
    channel_names = ["bookmarks"]    # order of channel notebook tabs
    current_channel = "bookmarks"    # currently selected channel name (as index in self.channels{})


    # constructor
    def __init__(self):

        
        # gtkrc stylesheet
        self.load_theme(), gui_startup(1/20.0)

        # instantiate gtk/glade widgets in current object
        gtk.Builder.__init__(self)
        gtk.Builder.add_from_file(self, conf.find_in_dirs([".", conf.share], ui_file)), gui_startup(2/20.0)
        # manual gtk operations
414
415
416
417
418
419
420
421


422
423
424
425
426
427
428
414
415
416
417
418
419
420

421
422
423
424
425
426
427
428
429







-
+
+







                continue
            # or if it's a built-in (already imported)
            elif module in self.features or module in self.channels:
                continue
            
            # load plugin
            try:
                plugin = __import__("channels."+module, None, None, [""])
                plugin = __import__("channels."+module, globals(), None, [""])
                #print [name for name,c in inspect.getmembers(plugin) if inspect.isclass(c)]
                plugin_class = plugin.__dict__[module]
                plugin_obj = plugin_class(parent=self)
                
                # load .config settings from plugin
                conf.add_plugin_defaults(plugin_obj.meta["config"], module)

                # add and initialize channel