Commit 4c2dd220 authored by Philip Withnall's avatar Philip Withnall

Added framework for iPlayer plugin

Using the iPlayer access library from http://drop.io/xbmcdink, based on
original code from http://code.google.com/p/xbmc-iplayer/.
parent 346eae7a
......@@ -48,7 +48,7 @@ AC_SUBST(TOTEM_VERSION_MINOR)
AC_SUBST(TOTEM_VERSION_MICRO)
# The full list of plugins
allowed_plugins="thumbnail screensaver ontop galago gromit lirc media-player-keys mythtv properties sidebar-test skipto sample-python sample-vala bemused youtube publish tracker pythonconsole jamendo opensubtitles screenshot brasero-disc-recorder coherence_upnp dbus-service"
allowed_plugins="thumbnail screensaver ontop galago gromit lirc media-player-keys mythtv properties sidebar-test skipto sample-python sample-vala bemused youtube publish tracker pythonconsole jamendo opensubtitles screenshot brasero-disc-recorder coherence_upnp dbus-service iplayer"
PLUGINDIR='${libdir}/totem/plugins'
AC_SUBST(PLUGINDIR)
......@@ -881,6 +881,7 @@ src/plugins/screenshot/Makefile
src/plugins/ontop/Makefile
src/plugins/galago/Makefile
src/plugins/gromit/Makefile
src/plugins/iplayer/Makefile
src/plugins/lirc/Makefile
src/plugins/media-player-keys/Makefile
src/plugins/mythtv/Makefile
......
plugindir = $(PLUGINDIR)/iplayer
uidir = $(plugindir)
plugin_PYTHON = iplayer.py
plugin_in_files = iplayer.totem-plugin.in
%.totem-plugin: %.totem-plugin.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
plugin_DATA = $(plugin_in_files:.totem-plugin.in=.totem-plugin)
ui_DATA = iplayer.ui
EXTRA_DIST = $(plugin_in_files) $(ui_DATA) iplayer.py
CLEANFILES = $(plugin_DATA)
DISTCLEANFILES = $(plugin_DATA)
# -*- coding: utf-8 -*-
import totem
import gobject
import gtk
class IplayerPlugin (totem.Plugin):
def __init__(self):
totem.Plugin.__init__ (self)
self.debug = True
self.totem = None
def activate (self, totem_object):
# Build the interface
self.builder = self.load_interface ("iplayer.ui", True, totem_object.get_main_window (), self)
container = self.builder.get_object ('iplayer_vbox')
self.totem = totem_object
container.show_all ()
self.totem.add_sidebar_page("iplayer", _("BBC iPlayer"), container)
def deactivate (self, totem_object):
totem_object.remove_sidebar_page ("iplayer")
[Totem Plugin]
Loader=python
Module=iplayer
IAge=1
_Name=BBC iPlayer
_Description=Stream BBC programs from the last 7 days from the BBC iPlayer service.
Authors=Philip Withnall <philip@tecnocode.co.uk>
Copyright=Copyright © 2009 Philip Withnall
Website=http://projects.gnome.org/totem/
<?xml version="1.0"?>
<!--*- mode: xml -*-->
<interface>
<object class="GtkListStore" id="iplayer_programme_list_store">
<columns>
<column type="GdkPixbuf"/><!--Thumbnail-->
<column type="gchararray"/><!--Title-->
<column type="gchararray"/><!--MRL-->
<column type="GObject"/><!--Video entry; TODO: should be GDataYouTubeVideo, see bug #576285-->
</columns>
</object>
<object class="GtkVBox" id="iplayer_vbox">
<property name="border-width">5</property>
<property name="homogeneous">False</property>
<property name="spacing">6</property>
</object>
</interface>
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment