#!/usr/bin/env python 
import screenlets 
import cairo 
import os 
import commands 
import gtk 

class garfieldScreenlet (screenlets.Screenlet): 
	__name__    = 'Affiche Garfield' 
	__version__    = '0.0' 
	__author__    = 'Stephane de la linuxerie' 
	__desc__    = 'Exemple pour afficher Garfield sur le bureau' 
	def __init__ (self, **keyword_args): 
		screenlets.Screenlet.__init__(self, width=600, height=175, drag_drop=True, **keyword_args) 

	def on_init (self): 
		self.add_default_menuitems() 
		URL = commands.getoutput("curl -s http://www.gocomics.com/garfield/ | grep -o --regexp='http://picayune.uclick.com/comics/ga/2008/.*.gif' | head -n 1") 
		os.system("wget "+ URL +" -O "+ self.get_screenlet_dir() +"/tmp.gif")            
		os.system("convert "+ self.get_screenlet_dir() +"/tmp.gif "+  self.get_screenlet_dir() +"/current.png")
 		self.redraw_canvas() 

	def on_draw (self, ctx):
		img = cairo.ImageSurface.create_from_png(self.get_screenlet_dir() +"/current.png") 
		ctx.set_source_surface(img, 0, 0) 
		ctx.paint() 

if __name__ == "__main__": 
	import screenlets.session 
	screenlets.session.create_session(garfieldScreenlet)

