def show_user_manual(): time_now = int(time.time()) for uri in (APPMANUALURL_OFFLINE, APPMANUALURL_ONLINE): try: gtk.show_uri(None, uri, time_now) return except Exception, e: log.debug("utils", "Failed loading URI %s: %s", uri, e) continue
def show_user_manual(page=None): """ Display the user manual with Yelp. Optional: for contextual help, a page ID can be specified. """ time_now = int(time.time()) for uri in (APPMANUALURL_OFFLINE, APPMANUALURL_ONLINE): if page is not None: uri += "#" + page try: Gtk.show_uri(None, uri, time_now) return except Exception, e: log.debug("utils", "Failed loading URI %s: %s", uri, e) continue
def get_controllable_properties(element): """ Returns a list of controllable properties for the given element (and child if it's a container). The list is made of tuples containing: * The GstObject * The GParamspec """ log.debug("utils", "element %r, %d", element, isinstance(element, gst.Bin)) res = [] if isinstance(element, gst.Bin): for child in element.elements(): res.extend(get_controllable_properties(child)) else: for prop in gobject.list_properties(element): if prop.flags & gst.PARAM_CONTROLLABLE: log.debug("utils", "adding property %r", prop) res.append((element, prop)) return res