
Nc        .   @   s
  d  d k  Z  d  d k l Z d  d k l Z d  d k l Z d  d k l Z d  d k	 l
 Z
 d  d k l Z d  d k l Z d  d	 k l Z d  d
 k l Z l Z l Z l Z l Z l Z l Z l Z d  d k l Z d  d k l Z d  d k l Z d  d k l  Z  d  d k! l" Z" l# Z# d  d k$ l% Z% d  d k& l' Z' d  d k( l) Z) d  d k* l+ Z+ d  d k, l- Z- l. Z. l/ Z/ l0 Z0 l1 Z1 l2 Z2 l3 Z3 l4 Z4 l5 Z5 l6 Z6 l7 Z7 l8 Z8 l9 Z9 l: Z: d  d k; l< Z< d  d k= l> Z> d  d k? l@ Z@ d  d kA lA ZA d  d kB lC ZC d  d kD lD ZD lE ZE d  d kF lG ZG lF ZF lH ZH lI ZI d  d kJ lK ZK lL ZL d  d kM lN ZN eO ZP eO ZQ eO ZR eO ZS g  ZT d ZU d eU d  ZV d d! ZW d" e d"  f d# e d#  f d$ e d$  f d% e d%  f d& e d&  f d' e d'  f d( e d(  f d) e d)  f d* e d*  f d+ e d+  f d, e d,  f d- e d-  f d. e d.  f d/ e d/  f d0 e d0  f g ZX e   e _Y e d1 d" d2 eX  e iY _Z e d1 d# d2 eX  e iY _[ e d1 d( d2 eX  e iY _\ e d1 d* d2 eX  e iY _] e d1 d& d2 eX  e iY _^ e d1 d/ d2 eX  e iY __ e d1 d$ d2 eX  e iY _` e d1 d% d2 eX  e iY _a e d1 d' d2 eX  e iY _b e d1 d0 d2 eX  e iY _c e d2 d3 e d3  f d' e d'  f d4 e d4  f d, e d,  f d0 e d0  f g d1 d,  e iY _d e d2 d3 e d3  f d' e d'  f d4 e d4  f d0 e d0  f g d1 d'  e iY _e e d2 d- e d-  f d. e d.  f d5 e d5  f d6 e d6  f g d1 d-  e iY _f e d2 d- e d-  f d. e d.  f d5 e d5  f d6 e d6  f g d1 d.  e iY _g e d1 d7 d2 d7 e d7  f g  e iY _h e d1 eF    e iY _i e d2 d8 d9 d: d; g d1 d:  e iY _j e d1 d<  e iY _k e d1 el  e iY _m e d1 en  e iY _o e d1 en  e iY _p e d1 el  e iY _q e d1 el  e iY _r e d1 d= d> d= d? f  e iY _s e d1 d= d> d= d? f  e iY _t e d1 d@ d> dA dB f  e iY _u e d1 dC d> d= dD f  e iY _v e d1 dC d> d= dD f  e iY _w e d1 dE d> dF dG f  e iY _x e d1 dH d> dF dG f  e iY _y e d1 dA d> dG dI f  e iY _z e d1 dA d> dG dI f  e iY _{ e d1 dG d> dF dA f  e iY _| e d1 dG d> dF dA f  e iY _} e d1 dJ d> dD dK f  e iY _~ e d1 dL d> dM dK f  e iY _ e d1 el  e iY _ e d1 en  e iY _ e d1 dN dO el  e iY _ e d1 el  e iY _ e d1 el  e iY _ e d1 el  e iY _ e d1 el  e iY _ e d1 el  e iY _ e d1 en  e iY _ e d1 en  e iY _ dP f  dQ     YZ dR e e f dS     YZ dT e e f dU     YZ dV e@ f dW     YZ dX e@ e f dY     YZ dZ e@ f d[     YZ d\ e@ f d]     YZ d^ f  d_     YZ d`   Z da   Z db   Z el dc  Z dd   Z de   Z df   Z dg   Z eO dh  Z eO di  Z dj   Z d S(k   iN(   t   _(   t   PluginDescriptor(   t   CIGmain(   t   CSGmain(   t   CEGmain(   t   CoolPiconPath(   t	   ActionMap(   t   Button(   t   configt   ConfigClockt   ConfigSubsectiont   ConfigYesNot   ConfigIntegert   ConfigSelectiont
   ConfigTextt   getConfigListEntry(   t   ConfigListScreen(   t   GUIComponent(   t   HTMLComponent(   t   Label(   t   MultiContentEntryTextt    MultiContentEntryPixmapAlphaTest(   t   Pixmap(   t   ServiceEventTracker(   t   Event(   t   ServiceEvent(   t	   eEPGCachet   iPlayableServicet   eListboxt   gFontt   eListboxPythonMultiContentt   RT_HALIGN_LEFTt   RT_HALIGN_CENTERt   RT_VALIGN_CENTERt   RT_WRAPt   eRectt
   getDesktopt   eTimert   eServiceCentert   eServiceReference(   t   InfoBar(   t
   MessageBox(   t   Screen(   t   ServiceReference(   t
   parseColor(   t   datetimet	   timedelta(   t	   localtimet   timet   strftimet   mktime(   t   resolveFilenamet
   fileExists(   t
   LoadPixmaps   V5.0.1s      Cool TV Guide s   .
   (c) 2011 by Coolman

   If you like this plugin and you want to support it,
   or if just want to say ''thanks'',
   please donate via PayPal. 

   Thanks a lot ! 

   PayPal account: cooltvguide@gmail.comst   .
   (c) 2012 by Coolman

   New Version Is Now Available ,
   Please upgrade it at: 

   http://www.CoolTVGuide.comt   Zaps
   Zap + Exitt
   CoolSearchs   IMDb Searcht   GuideSwitchs   Cool Info Guidet   Timert   QuickRect	   AutoTimert	   PrimeTimes
   EPG Selects	   Bouquet +s	   Bouquet -t   Bouquetlists   ...t   defaultt   choicess   Cool Single Guides   Cool Easy Guides   Page Ups	   Page Downt    t   Not   Standardt
   SkinDesignt   MyDesigni i   t   limitsi   i   i<   i,  i   i2   i   i
   i   i   iP   in   i   i7   i   s   /usr/share/enigma2/picont
   fixed_sizet   Rectc           B   s5   e  Z d    Z d   Z d   Z d   Z d   Z RS(   c         C   s(   | |  _  | |  _ | |  _ | |  _ d  S(   N(   t   xt   yt   wt   h(   t   selfRH   RI   t   widtht   height(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   __init__w   s    			c         C   s   |  i  S(   N(   RH   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   left|   s    c         C   s   |  i  S(   N(   RI   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   top~   s    c         C   s   |  i  S(   N(   RK   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRN      s    c         C   s   |  i  S(   N(   RJ   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRM      s    (   t   __name__t
   __module__RO   RP   RQ   RN   RM   (    (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRG   v   s
   				t   CoolEPGListc           B   s/  e  Z e i i i d  g Z e i i i d g Z d8 d8 d e	 d  Z
 d   Z d   Z d   Z d   Z d   Z d	   Z d
   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z e Z d   Z d   Z d   Z d   Z d   Z d   Z  d   Z! d   Z" d   Z# d   Z$ d   Z% d8 d8 d  Z& d8 d8 d  Z' e( d  Z) d8 d   Z* d! d"  Z+ d#   Z, d$   Z- d%   Z. d&   Z/ d'   Z0 d(   Z1 d)   Z2 d*   Z3 d+   Z4 d,   Z5 d-   Z6 d.   Z7 d/   Z8 d0   Z9 d1   Z: d2   Z; d3   Z< d4   Z= d5   Z> d6   Z? d7   Z@ RS(9   t   /s
   /coolpico/ix   c         C   s  d  |  _ d  |  _ d |  _ | |  _ g  |  _ | d  j	 o |  i i |  n t i |   t	   |  _
 d  |  _ d |  _ |  i
 i |  i  |  i |  t i   |  _ t i   |  _ d } t d t d | d  |  _ t d t d | d  |  _ t d t d | d  |  _ t d t d | d	  |  _ t d t d | d
  |  _ t d t d | d  |  _ t d t d | d  |  _ t d t d | d  |  _ t d t d | d  |  _ t d t d | d  |  _  t d t d | d  |  _! t d t d | d  |  _" t d t d | d  |  _# t d t d | d  |  _$ t d t d | d  |  _% t d t d | d  |  _& d } t d t d | d  |  _' t d t d | d  |  _( t d t d | d  |  _) t d t d | d	  |  _* t d t d | d
  |  _+ t d t d | d  |  _, t d t d | d  |  _- t d t d | d  |  _. t d t d | d  |  _/ t d t d | d  |  _0 t d t d | d  |  _1 t d t d | d  |  _2 t d t d | d  |  _3 t d t d | d  |  _4 t d t d | d  |  _5 t d t d | d  |  _6 t7 i8 i9 i: } | | i; d   } d | d } t d t d | d  |  _< t d t d | d  |  _= t d t d | d  |  _> t d t d | d	  |  _? t d t d | d
  |  _@ t d t d | d  |  _A t d t d | d  |  _B t d t d | d  |  _C t d t d | d  |  _D t d t d | d  |  _E t d t d | d  |  _F t d t d | d  |  _G t d t d | d  |  _H t d t d | d  |  _I t d t d | d  |  _J t d t d | d  |  _K d  |  _L d  |  _M d  |  _N d |  _O d |  _P d |  _Q d |  _R d |  _S d |  _T d |  _U d |  _V d |  _W d |  _X d  |  _Y d |  _Z d |  _[ d |  _\ d |  _] d |  _^ d  |  __ d |  _` d  |  _a d |  _b d  S(!   Ni    i(   sG   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/Cool3D/Standard/t   cachedt   paths   CoolNow.pngs   CoolBack.pngs   CoolFreeTuner.pngs   CoolSelect.pngs   CoolRec.pngs   CoolPreRec.pngs   CoolNowS.pngs   CoolBackS.pngs   CoolFreeTunerS.pngs   CoolSelectS.pngs   CoolRecS.pngs   CoolPreRecS.pngs   CoolPicon.pngs   CoolPiconSelect.pngs   CoolPiconS.pngs   CoolPiconSelectS.pngsG   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/Cool3D/MyDesign/RU   s   /usr/share/enigma2/s   /SkinDesign/i i^E- iSS i  i   i_  ikQ (c   t   Nonet	   cur_eventt   cur_servicet   offst   timert   onSelChangedt   appendR   RO   R   t   lt   curr_refcoolt
   coolheightt   setBuildFunct
   buildEntryt   setOverjump_EmptyR&   t   getInstancet   serviceHandlerR   t   epgcacheR5   t   Truet   CoolNowt   CoolBackt   CoolFreeTunert
   CoolSelectt   CoolRect
   CoolPreRect   CoolNowSt	   CoolBackSt   CoolFreeTunerSt   CoolSelectSt   CoolRecSt   CoolPreRecSt
   CoolPiconst   CoolPiconsSelectt   CoolPiconsSt   CoolPiconsSelectSt	   MDCoolNowt
   MDCoolBackt   MDCoolFreeTunert   MDCoolSelectt	   MDCoolRect   MDCoolPreRect
   MDCoolNowSt   MDCoolBackSt   MDCoolFreeTunerSt   MDCoolSelectSt
   MDCoolRecSt   MDCoolPreRecSt   MDCoolPiconst   MDCoolPiconsSelectt   MDCoolPiconsSt   MDCoolPiconsSelectSR   t   skint   primary_skint   valuet   rfindt	   SDCoolNowt
   SDCoolBackt   SDCoolFreeTunert   SDCoolSelectt	   SDCoolRect   SDCoolPreRect
   SDCoolNowSt   SDCoolBackSt   SDCoolFreeTunerSt   SDCoolSelectSt
   SDCoolRecSt   SDCoolPreRecSt   SDCoolPiconst   SDCoolPiconsSelectt   SDCoolPiconsSt   SDCoolPiconsSelectSt	   time_baset   listt
   event_rectt   CoolNowFontColt   CoolNowFontColSelt   CoolFontColt   CoolFontColSelt   CoolPiconFontColt   CoolBorderColRt   CoolBorderColLt   CoolBackColt   CoolBackColSelt   CoolTunerColt   CoolTunerBackColt   CoolBackRecColt   CoolBackRecxColt   CoolBackRecColSelt   CoolNowBackColt   CoolNowBackColSelt   CoolTVBackColt   CoolTVBackColSelt   CoolPiconBackColt   CoolNoPiconBackCol(   RL   t   selChangedCBR\   t
   time_epocht   overjump_emptyt   Stt   Myt   skindir(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRO      s    																													c         C   sE  |  i  d  j	 og  } x|  i  D]\ } } | d j o t |  i   |  _ q  | d j o t |  i   |  _ q  | d j o t |  i   |  _ q  | d j o t |  i   |  _ q  | d j o t |  i   |  _ q  | d j o t |  i   |  _	 q  | d j o t |  i   |  _
 q  | d j o t |  i   |  _ q  | d	 j o t |  i   |  _ q  | d
 j o t |  i   |  _ q  | d j o t |  i   |  _ q  | d j o t |  i   |  _ q  | d j o t |  i   |  _ q  | d j o t |  i   |  _ q  | d j o t |  i   |  _ q  | d j o t |  i   |  _ q  | d j o t |  i   |  _ q  | d j o t |  i   |  _ q  | d j o t |  i   |  _ q  | i | | f  q  W| |  _  n t i |  | |  } |  i   | S(   NR   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   (   t   skinAttributesRX   R,   t   argbR   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R^   R   t	   applySkint   setItemsPerPage(   RL   t   desktopt   screent   attribst   attribR   t   rc(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR      s^    
 
c         C   s   | o t  |  o t p t S(   N(   t   lenRh   t   False(   RL   t   servicet   snamet
   event_list(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   isSelectable  s    c         C   s"   | o |  i  i |  i  n d  S(   N(   R_   t   setSelectableFuncR   (   RL   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRd   "  s    c         C   sC   d  } |  i d  j	 o) | d  j	 o |  i i | i |  } n | S(   N(   RX   Rg   t   lookupEventIdt   ref(   RL   R   t   eventidt   event(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   getEventFromId&  s    c         C   sh   | d  j	 oW xT t t |  i   D]9 } |  i | d | i   j o |  i i |  Pq# q# Wn d  S(   Ni    (   RX   t   rangeR   R   t   toStringt   instancet   moveSelectionTo(   RL   t
   servicerefRH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   moveToService,  s     c         C   sX   | d  j	 oG xD t t |  i   D]) } |  i | d | i   j o | Sq# Wn d  S(   Ni    (   RX   R   R   R   R   (   RL   R   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   getIndexFromService3  s
     c         C   s(   |  i  d  j	 o |  i  i |  n d  S(   N(   R   RX   R   (   RL   t   index(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   setCurrentIndex9  s    c         C   s   |  i  d  j o d S|  i  } |  i  d } |  i  d } |  i d  j p | p t |  o d  t |  f S| |  i } | d } t |  } |  i | |  } | | f S(   Ni   i    (   NN(   RZ   RX   RY   R   R+   R   (   RL   t   old_servicet   eventst   refstrR   R   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt
   getCurrent=  s    	&
c         C   s,   |  i  i   d  j	 o |  i  i   d Sd S(   Ni    (   R_   t   getCurrentSelectionRX   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   getCurrentChangeCountK  s    c         C   s+   t  i i |   p t  i i |   n d  S(   N(   RL   R]   t   countR^   (   t   func(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   connectSelectionChangedP  s    c         C   s   t  i i |   d  S(   N(   RL   R]   t   remove(   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   disconnectSelectionChangedT  s    c         C   s(   |  i  i   } | o |  i   n d  S(   N(   R_   R   t   findBestEvent(   RL   t   cur_sel(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   serviceChangedW  s    c         C   s  |  i  } |  i i   } |  _  d } |  i   } | oL |  i d  j	 o< | d } | |  i } | d } | | j  o
 | } q n | o d |  _ | d } | o t |  o | o d } t |  } d }	 xy | D]q }
 |
 d } | | j  o
 | } n t | |  } | t |  j p | | j  o |	 } | } n |	 d 7}	 q W| t |  j o | |  _ qqq~qd  |  _ n |  i d  d  S(   Ni    i   i   (	   RZ   R_   R   t   getTimeBaseRY   RX   R   t   abst   selEntry(   RL   R   RZ   t	   last_timeR   R   RY   t	   best_difft   bestt   idxR   t   ev_timet   diff(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR   \  s@    	

	
 

 
c         C   s0   x) |  i  D] } | d  j	 o |   q
 q
 Wd  S(   N(   R]   RX   (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   selectionChanged~  s    
 c         C   s   d  } t i i i a t i i i d j p t i i i d j o/ |  i i t i i	 i  t i i	 i |  _
 n t |  _
 |  i i t  d  S(   Ni   i   (   RX   R   t   CTVGt   CoolPicoItemHeightR   t   Cool16t   guideswitchR_   t   setItemHeightt   PiconItemHeightRa   (   RL   t
   ItemHeight(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR     s    ,	c         C   s)   |  i  i d t d t i i i   d  S(   Ni    t   Regular(   R_   t   setFontR   R   R   t   Cool_Left_FontsizeR   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   setServiceFontsize  s    c         C   s)   |  i  i d t d t i i i   d  S(   Ni   R   (   R_   R   R   R   R   t   Cool_60FontsizeR   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   setEventFontsize  s    c         C   s)   |  i  i d t d t i i i   d  S(   Ni   R   (   R_   R   R   R   R   t   Cool_30FontsizeR   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   setEventFontsize2  s    c         C   sz   | i  t  | i i   i |  i  | i |  i  |  i i t	 d d d d  t
  |  i   |  i   |  i   d  S(   Ni    (   t   setWrapAroundRh   R   t   getR^   R   t
   setContentR_   t   setSelectionClipR#   R   R   R   R   (   RL   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   postWidgetCreate  s    "

c         C   s*   | i  i   i |  i  | i d   d  S(   N(   R   R   R   R   R  RX   (   RL   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   preWidgetRemove  s    c         C   s   |  i  i   } | i   } | i   } d } |  i d j o t i i i } | a	 n$ |  i d j  o t i i
 i } n t | d | |  |  _ | | 7} | | } t | d | |  |  _ d  S(   Ni    i(   (   R_   t   getItemSizeRM   RN   Ra   R   R   t
   cool_left8R   R   t   cool_left16RG   t   service_rectR   (   RL   t   esizeRM   RN   t   xposRJ   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   recalcEntrySize  s    


c         C   s   | | | | | } | | | | | | d } | | 8} | d j  o | | 7} d } n | | | j o | | } n | | f S(   Ni   i    (    (   RL   t   stimet   durationt   startt   endRM   R
  t   ewidth(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   calcEntryPosAndWidthHelper  s    


c         C   sC   |  i  | | | | | d | i    \ } } | | i   | f S(   Ni<   (   R  RM   RP   (   RL   R   R   R   t   ev_startt   ev_durationR
  RM   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   calcEntryPosAndWidth  s    /c         C   s0   |  i  i |  } | o | i | |  p t S(   N(   Rf   t   infot
   isPlayableR   (   RL   t	   refToPlayt
   refPlayingR  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   isServiceAvailable  s    c          C   sd  t  i i   i   } |  i t |  t |   } |  i } |  i } |  i } |  i	 }	 |  i
 }
 |  i } |  i | |  } |  i | |  } t i i i t i i i d } t i i i t i i i d } d  g } t i i i d j o| d  j o@|  i d j  o0|  i i   | j oT | i t d | i d | i d f d | i d | i d f d |  i     nQ | i t d | i d | i d f d | i d | i d f d |  i      | i t! d | i d | i d f d | i d | i d f d d	 d
 t" t# Bd | d |  i$ d d d |  i%   q|  i d j  oc | i t d | i d | i | f d | i d | i d f d t& |  d |  i' d d	   q| d  j o@|  i d j o0|  i i   | j oT | i t d | i d | i d f d | i d | i d f d |  i(     nQ | i t d | i d | i d f d | i d | i d f d |  i)     | i t! d | i d | i d f d | i d | i d f d d	 d
 t" t# Bd | d |  i$ d d d |  i%   q|  i d j oc | i t d | i d | i | f d | i d | i d f d t& |  d |  i' d d	   qn+| d  j o |  i d j  o | i t! d | i d | i d f d | i d | i d f d d	 d
 t" t# Bd | d |  i$ d d d d d |  i* d |  i+  
 n|  i d j  oc | i t d | i d | i | f d | i d | i d f d t& |  d |  i' d d	   n| d  j o |  i d j o | i t! d | i d | i d f d | i d | i d f d d	 d
 t" t# Bd | d |  i$ d d d d d |  i* d |  i+  
 nt |  i d j oc | i t d | i d | i | f d | i d | i d f d t& |  d |  i' d d	   n | o?|  i, |  i- t i i. i d } | t i i. i d } | i } | i } | i } | i } t/ t# B} d } |  i d j o@ t i i0 i o t" t# Bt1 B} d } q]t/ t# Bt1 B} d } n x | D]t} |  i2 | d | d | | |  \ } } t3 t4    } |  i5 | | d | d | d	  } |  i d j  oWd } | d j o |  i6 }
 |  i7 } |  i8 } q
| d j o |  i9 }
 |  i9 } |  i: } q
| p1 |  i; }
 |  i< } |  i= } |  i> }	 |  i? } q
|  i i   | j o |  i+ }
 |  i< } |  i@ } q
| d | j oJ | d | d | j o1 |  iA } |  i> }	 |  iB }
 |  iC } |  iD } q
|  i
 }
 |  i } |  i } |  i	 }	 |  iE } nh|  i d j oWd } | d j o |  i6 }
 |  i7 } |  iF } q
| d j o |  i9 }
 |  i9 } |  iG } q
| p1 |  i; }
 |  i< } |  i= } |  i> }	 |  iH } q
|  i i   | j o |  i+ }
 |  i< } |  iI } q
| d | j oJ | d | d | j o1 |  iA } |  i> }	 |  iB }
 |  iC } |  iJ } q
|  i
 }
 |  i } |  i } |  i	 }	 |  iK } n t i i i d j o | i t d | | | f d | | f d | | | d | d | d	  d |
 d |   | i t! d | | | f d | | f d | d
 | d | | d d | d |	 d | d d d |  iL  
 qd| i t! d | | | f d | | f d | d
 | d | | d d | d |	 d |
 d | d d d d   qdWn | i } | i } | i } | i } | i t! d | | f d | | f d d d
 t/ t# Bd d d | d |	 d d d | d d  
 | S(   Ni   RA   i(   t   posi   t   sizet   pngt   fonti    t   flagst   textt   colort   border_widtht   border_colort	   backcolort   backcolor_seli i<   s      i'   t    i   t   recordt   recordxt	   color_selR@   (M   t   NavigationInstanceR   t#   getCurrentlyPlayingServiceReferenceR   R  R'   R  R   R   R   R   R   t   findCoolPicont   findCoolPicoR   R   R   R   t   PiconHeightR   t   CoolPicoHeightRX   t   Cool3DRa   R`   R^   R   RH   RI   RJ   RK   t   CoolPiconsSelectSdeft   CoolPiconsSdefR   R    R!   R   R   R5   R   t   CoolPiconsSelectdeft   CoolPiconsdefR   R   R   R[   t   prev_time_periodR   t
   FontCenterR"   R  t   intR0   t
   CoolRecRedR   R   t   CoolRecSdefR   t   CoolPreRecSdefR   R   R   R   t   CoolFreeTunerSdeft   CoolSelectSdefR   R   R   t   CoolNowSdeft   CoolBackSdeft
   CoolRecdeft   CoolPreRecdeft   CoolFreeTunerdeft   CoolSelectdeft
   CoolNowdeft   CoolBackdefR   (    RL   R   t   service_nameR   t   curservicerefstrt	   FreeTunert   r1t   r2t	   foreColort   foreColorSelectedt	   backColort   backColorSelectedt	   coolpicont   coolpicot   CoolCenter1t   CoolCenter2t   resR  R  RP   RQ   RM   RN   t	   coolflagst
   thepraefixt   evR
  R  t   nowt   cooltypt   Font3Dt   PNG3D(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRc     s   						  	44		44						!				


 )$										*																		*								!
$				c         C   sC  t  i i i o/| d  j	 oc | i d  } | d j o# | |  i d  i d d  } n d | d } t |  o | Sn | d  j	 o$ d | d } t |  o | Sn | d  j	 o8 x5 |  i	 D]& } | | d } t |  o | Sq Wn | d  j	 o8 x5 |  i	 D]& } | | d } t |  o | SqWq?n d  S(   Nt   :iR    s   /tmp/cool3dpicon/s   .png(
   R   R   t   CoolPiconONR   RX   R   t   rstript   replaceR4   t   searchCoolPiconPaths(   RL   R   t   serviceNameR  t   pngnameRW   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR+    s0    #		
 
 c         C   sC  t  i i i o/| d  j	 oc | i d  } | d j o# | |  i d  i d d  } n d | d } t |  o | Sn | d  j	 o$ d | d } t |  o | Sn | d  j	 o8 x5 |  i	 D]& } | | d } t |  o | Sq Wn | d  j	 o8 x5 |  i	 D]& } | | d } t |  o | SqWq?n d  S(   NRY  iR    s   /tmp/cool3dpico/s   .png(
   R   R   t
   CoolPicoONR   RX   R   R[  R\  R4   t   searchCoolPicoPaths(   RL   R   R^  R  R_  RW   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR,    s0    #		
 
 c      	   C   s|  |  i  } |  i   |  i d  j	 } |  i } |  i } t i i i	 d } | oBt
 } | d }	 | d j o
 t } n9| d 
j oE | o- |  i d t |	  j  o |  i d 7_ q|  i d } n| d j o? | o' |  i d d j o |  i d 8_ q|  i d } n| d 
j o |  i d } n{| d j o |  i d } n]| d 
j o |  i |  i | }
 t i |
  }
 |
 } | t d d  7} t t |
 i     }
 t t | i     } |  i t | |
 |  } | | | } n| d	 j o |  i |  i | }
 t i |
  }
 |
 } | t d d  8} t t |
 i     }
 t t | i     } |  i t | |
 |  } | | | } n| d
 
j o |  i |  i | }
 t i |
  }
 |
 i d t i i i	 d d t i i i	 d d d d d  } t | i    t |
 i    j o | t d d  7} n t t |
 i     }
 t t | i     } |  i t | |
 |  } | | | } n| d j o |  i |  i | }
 t i |
  }
 |
 i d t i i i	 d d t i i i	 d d d d d  } t | i    t |
 i    j o | t d d  8} n t t |
 i     }
 t t | i     } |  i t | |
 |  } | | | } n t   } t | | d  } | | j  o | d 7} | | } n | d j  p. |  i | j o | d j p | | | j  o d } | } | | d } n |  i | j p | |  i j o$ | |  _ | |  _ |  i d   t
 Sn | o | o |	 |  i } |  i |  i t i i i	 d } |  i |  i | t i i i	 | d | d  \ } } |  i i t | d | |  i i  | o |  n; |  i i t |  i i |  i i |  i i |  i i  t  |  i    t S(   Ni<   i   i    i   iii   t   daysii   t   hourt   minutet   secondt   microsecondii  (!   RZ   R  RY   RX   R[   R   R   R   R4  R   Rh   R   R   R-   t   fromtimestampR.   R6  R2   t	   timetupleR\  t   CoolPrimeTimeR0   t   fillCoolTVGuideR  R   R_   R  R#   RK   RH   RI   RJ   R   (   RL   t   dirt   visibleRZ   t   valid_eventR[   R   t   time_periodt   updatet   entriest   offstimet   ctimet   tempbaset   entryR
  RM   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR     s    	
		

!>%>%	
 			!53:
c         C   sI   |  i  d  j	 o5 | d  j	 o |  i  i | |  S|  i  i |  Sn g  S(   N(   Rg   RX   t   lookupEvent(   RL   R   t	   buildFunc(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   queryEPGj  s
    ic      	   C   s  t  i i i d j o# |  i d  j o d t  i i _ ns t  i i i d j o# |  i d  j o d t  i i _ n: t  i i i d j o# |  i d  j o d t  i i _ n | d  j ob |  i |  i	 t  i i
 i d } g  } |  i D]& } | | d d | t  i i
 i f q ~ } nd d  |  _ d  |  _ t |  |  _ g  } | D]. } | | i i   d |  i t  i i
 i f qF~ } | i d d  |  i |  } g  |  _ d  }	 d } d }
 x | D] } | | d j od |	 d  j	 o9 |  i i | |
 |	 d d d  j	 o |	 p d  f  n | d } | d	 }
 g  }	 n |	 i | d
 | d | d | d f  qW|	 oF t |	  o9 |  i i | |
 |	 d d d  j	 o |	 p d  f  n |  i i |  i  |  i   d  S(   NRC   RB   RD   RA   i<   i    t   XRnITBDR%  i   i   i   i   i   (   R   R   R/  R   R   RX   R{   Rk   R   R[   R4  R   RY   RZ   R6  R   R   t   insertRw  R^   R   R_   t   setListR   (   RL   t   servicesR  R   t   _[1]R   t   testt   _[2]t   epg_datat   tmp_listR   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRj  r  s@    &&&!A		B	 9


-9c         C   sX   |  i  } t | i   |  i o |  i i   i   p d | i   | i   | i    S(   Ni    (	   R   RG   RP   R   t   positionRH   RQ   RM   RN   (   RL   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   getEventRect  s    	c         C   s   t  i i i S(   N(   R   R   R4  R   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   getTimeEpoch  s    c         C   s   |  i  |  i t i i i d S(   Ni<   (   R   R[   R   R   R4  R   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR     s    c         C   s   d |  _  d  S(   Ni    (   R[   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   resetOffset  s    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Ru   R   R   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR3    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rv   R   R   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR2    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rw   R   R   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR1    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rx   R   R   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR0    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Ri   R   Ry   (   RL   R   t	   beginTimeR  t   eventId(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRB    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rj   R   Rz   (   RL   R   R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRC    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rk   R   R{   (   RL   R   R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR@    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rl   R   R|   (   RL   R   R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRA    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rm   R   R}   (   RL   R   R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR>    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rn   R   R~   (   RL   R   R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR?    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Ro   R   R   (   RL   R   R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR<    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rp   R   R   (   RL   R   R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR=    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rq   R   R   (   RL   R   R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR:    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rr   R   R   (   RL   R   R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR;  
  s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rs   R   R   (   RL   R   R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR8    s
    c         C   sG   t  i i i d j o |  i St  i i i d j o |  i S|  i Sd  S(   NRB   RC   (   R   R   R/  R   Rt   R   R   (   RL   R   R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR9    s
    c   
      C   s+  x |  i  i D] } | i i i   | j o | | } | i } | i } | | | d }	 | i | j o' | | j  p | | j o d Sd Sq | |	 j o
 | j n o' | | j  p | | j o d Sd Sq q q WxF |  i  i D]8 } | i i i   | j o | i | j o d Sq q Wd  S(   Ni   R'  R&  (	   R\   t
   timer_listt   service_refR   R   t   beginR  t   eitt   processed_timers(
   RL   R   R  R  R  RH   t   endTimet   begR  t   mitte(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR7  "  s(     
		 N(A   RR   RS   R   R   t   CoolPiconHomePathR   R]  Ra  RX   R   RO   R   R   Rd   R   R   R   R   R   R   R   R   R   R   R   R   t
   GUI_WIDGETR   R   R   R   R  R  R  R  R  R  Rc   R+  R,  Rh   R   Rw  Rj  R  R  R   R  R3  R2  R1  R0  RB  RC  R@  RA  R>  R?  R<  R=  R:  R;  R8  R9  R7  (    (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRT      sn   e	1												"													#																				t   TimelineTextc           B   s)   e  Z d    Z e Z d   Z d   Z RS(   c         C   sq   t  i |   t   |  _ |  i i t d d d d   |  i i d  |  i i d t d t	 i
 i i   d  S(   Ni    i   R   (   R   RO   R   R_   R  R#   R   R   R   R   R   t   Cool_TimelineR   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRO   ;  s
    c         C   s   | i  |  i  d  S(   N(   R  R_   (   RL   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  D  s    c      
   C   s   d  g } xg | D]_ } | d } | d } t d t |   } | i t i | d d d d d t t B| f  q W|  i i	 | g  d  S(   Ni    i   s   %H:%Mi   i<   i   (
   RX   R1   R/   R^   R   t	   TYPE_TEXTR    R!   R_   Rz  (   RL   Rp  RQ  RH   t   tmR
  t   str(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt
   setEntriesG  s    	 

4(   RR   RS   RO   R   R  R  R  (    (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  :  s   		t   CoolTVGuidec           B   s  e  Z d  Z d Z d Z d Z dM dM d d  Z d   Z d   Z	 d   Z
 d   Z d	   Z d
   Z d   Z e d  Z d   Z e d  Z d   Z e d  Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z e d  Z d   Z d   Z  d   Z! d   Z" d   Z# d   Z$ d    Z% d!   Z& d"   Z' d#   Z( d$   Z) d%   Z* d&   Z+ d'   Z, d(   Z- d)   Z. d*   Z/ d+   Z0 d,   Z1 d-   Z2 d.   Z3 d/   Z4 d0   Z5 d1   Z6 d2   Z7 d3   Z8 d4   Z9 d5   Z: d6   Z; d7   Z< d8   Z= d9   Z> d:   Z? d;   Z@ d<   ZA d=   ZB d>   ZC d?   ZD d@   ZE dA   ZF dB   ZG dC   ZH dD   ZI dE   ZJ dF   ZK dG   ZL dH   ZM dI   ZN dJ   ZO dK   ZP e dL  ZQ RS(N   i    i   i   R%  c         C   s  t  i |  |  t d  i   i   } t t  } t i i	 i
 d j oA d |  _ | d j o
 d } qv| d j o
 d } qvd } n t i i	 i
 d	 j oA d
 |  _ | d j o
 d } qv| d j o
 d } qvd } n t i i	 i
 d j oA d |  _ | d j o
 d } qv| d j o
 d } qvd } n> d |  _ | d j o
 d } n | d j o
 d } n d } t |  }	 |	 i   |  _ |	 i   | |  _ t d  t d  t d  t d  t d  t d  t d  f |  _ t   }
 |
 d } |
 | |  _ t |  _ t d  |  d  <t d  |  d! <t d  |  d" <t d  |  d# <|  i |  _ |  i |  _ |  i |  _ |  i |  _ t   |  d$ <t   |  d% <t   |  d& <g  |  _  x5 df D]- } t!   } |  i  i" |  | |  d) | <qWt!   |  d* <| |  _# | |  _$ | d j o t  i% |  |  n t& d+ |  i' d, |  i( i) i* d- t i i+ i
 d. t i i, i
  |  d/ <t- d0 g h |  i. d1 6|  i/ d2 6|  i0 d3 6|  i1 d4 6|  i2 d5 6|  i3 d6 6|  i4 d7 6|  i5 d8 6|  i6 d9 6|  i7 d: 6|  i8 d; 6|  i9 d< 6|  i: d= 6|  i; d> 6|  i< d? 6|  i= d@ 6|  i> dA 6|  i? dB 6|  i@ dC 6|  iA dD 6|  iB dE 6 |  dF <t- dG dH dI dJ g h |  iC dK 6|  iD dL 6|  iE dM 6|  iF dN 6|  iG dO 6|  iH dP 6|  iI dQ 6dR  |  dS <|  |  dS _J t- dT g h |  iK dU 6|  iL dV 6|  iM dW 6|  iN dX 6|  iO dY 6|  iP dZ 6|  iQ d[ 6|  iR d\ 6|  iS d] 6|  iT d^ 6|  iU d_ 6|  iV d` 6dR  |  da <|  d  iW t t i iX i
   |  d! iW t t i iY i
   |  d" iW t t i iZ i
   |  d# iW t t i i[ i
   t\   |  _] |  i] i^ i" |  i_  |  i] i` db  |  ia i" |  ib  d  |  _d te   |  dc <|  if   |  ig i" |  ih  t\   |  _i |  ii i^ i" |  ij  |  i( i) i* ik i" |  il  |  i( i) im i" |  in  to dd |  de h |  ip tq ir 6|  ip tq is 6 |  _t d  S(g   Ni    i   R  i  sS   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolTVGuide_720.xmli   sT   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolTVGuide_1024.xmlsT   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolTVGuide_1280.xmli   t   CoolTinyGuidesU   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolTinyGuide_720.xmlsV   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolTinyGuide_1024.xmlsV   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolTinyGuide_1280.xmli   t   CoolMultiGuidesV   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolMultiGuide_720.xmlsW   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolMultiGuide_1024.xmlsW   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolMultiGuide_1280.xmlt   CoolNiceGuidesU   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolNiceGuide_720.xmlsV   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolNiceGuide_1024.xmlsV   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolNiceGuide_1280.xmlt   Mont   Tuet   Wedt   Thut   Frit   Satt   Suni  R%  t   key_redt	   key_greent
   key_yellowt   key_bluet   timeline_textt   ServiceR   i   i   s
   timeline%dt   timeline_nowR   R\   R   R   R   t   CoolTVGuideActionst   CoolMenut   CoolTimet   CoolRedt   CoolRedLongt	   CoolGreent   CoolGreenLongt
   CoolYellowt   CoolYellowLongt   CoolBluet   CoolBlueLongt   CoolOKt
   CoolOKLongt   CoolInfot   CoolInfoLongt
   CoolRecordt	   CoolVIDEOt	   CoolAUDIOt   CoolPlayt   CoolFastForwardt
   CoolRewindt	   CoolKeyTVt   Coolmant   EPGSelectActionst   OkCancelActionst   HelpActionst   PowerKeyActionst	   powerdownt   cancelt   displayHelpt   nextBouquett   prevBouquett   prevServicet   nextServiceit   actionst   InputActionsRP   t   rightt   1t   2t   3t   4t   5t   6t   7t   8t   9t   0t   input_actionsi`  t   dateR   t   eventmap(   i    i   i   i   i   i   (u   R*   RO   R$   R  RM   R  R3   R   R   R   R   t   skinNamet   opent   readR   t   closet   bouquetChangeCBR    Rb  R0   t   ask_timeR   t   closeRecursiveR   t   EMPTYt   key_red_choicet   key_green_choicet   key_yellow_choicet   key_blue_choiceR  R   R   t
   time_linesR   R^   R{  t   zapFunct   setTitleRT   t   onSelectionChangedt   sessiont   navt   RecordTimerR4  t   overjumpR   t	   showSetupt   enterDateTimeR  R  R  R  R  R  R  R  R  R  R  R  R  t   OpenCoolEasyGuidet   OpenCoolSingleGuidet   CoolBouquetlistR  R  t   openTimerEditListt	   CoolPowert   TimerAlarmExitt   myhelpt   CoolChannelPlust   CoolChannelMinust   prevPressedt   nextPressedt   cselt   leftPressedt   rightPressedt   key1t   key2t   key3t   key4t   key5t   key6t   key7t   key8t   key9t   key0t   setTextt   Cool_Redt
   Cool_Greent   Cool_Yellowt	   Cool_BlueR%   t   updateTimelineTimert   callbackt   moveTimeLinesR  t   onLayoutFinisht   onCreateRX   t   easyR   t
   checkImaget   onShowt   _CoolTVGuide__onShowt
   availTimert   checkTunerAvailabilityt   on_state_changet   _CoolTVGuide__onStateChanget   record_eventt   _CoolTVGuide__gotRecordEventR   t   _CoolTVGuide__evServiceTriggerR   t   evStartt	   evStoppedt   _CoolTVGuide__event_tracker(   RL   R  R{  R  R  t   bouquetnamet   CoolWidet   skinpathR   t   CoolRU  t   tmpRH   t   pm(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRO   W  s
   	


	


	


	


	H	
		 				


























	











    	
c         C   sb   |  i  i i   |  d _ |  i o* d  |  _ |  d i |  i  i i    n |  d i i   d  S(   NR   (	   R  R  R*  R`   R  RX   R   R_   t
   invalidate(   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   __onShow  s
    
	!c         C   s   |  i    d  S(   N(   R  (   RL   R   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   __gotRecordEvent  s    c         C   s   |  i    d  S(   N(   R  (   RL   Rt  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   __onStateChange  s    c         C   sZ   t  |  d  oF |  i o8 |  i i   o |  i i   n |  i i d t  qV n d  S(   Nt   showni  (   t   hasattrR+  R  t   isActivet   stopR  Rh   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   __evServiceTrigger  s
    
c         C   s.   |  i  i i   |  d _ |  d i i   d  S(   NR   (   R  R  R*  R`   R_   R'  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    c         C   s4   t    } | i | i f d j o |  i   n d  S(   Ni  i	   (   i  i	   (   R/   t   tm_yeart   tm_mont   closeScreen(   RL   RU  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    	c         C   s   d d k  l  } d d k l } t t i i _ |  d i   } | d } | d } | p d  St	 t
 |   } | oa | |  i  |  _ |  i i |  o8 |  i i |  i | | | d  | t |  i d |  i q n d  S(   Ni(   t   CoolInfoGuide(   t   SimpleServicelistR   i   i    t   serviceChangeCB(   R3  t   Screens.InfoBarGenericsR4  R   R   R   t   SinfoR   R   R'   R  R{  t
   serviceSelt   selectServiceR  t   openWithCallbackt
   InfoClosedRX   t   Servicelistt   eventViewCallbackt   changeServiceCB(   RL   R3  R4  t   curR   R   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   infoKeyPressed  s    

 c         C   s|   d  |  _ t i i i o_ |  d i |  i i i	    t
 |  _ |  d i   d } | i |  d _ |  d i d   n d  S(   NR   i   (   RX   R8  R   R   R7  R   R   R  R  R*  Rh   R  R   R   R`   Rj  (   RL   t   retR   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR;    s    		c      
   C   s   d d k  l  } d d k l } t t i i _ t t i i _ t	 i
   } |  d i   } | d } | i } | oU | |  i  |  _ |  i i |  o, |  i i |  i | | d |  i d t	 q n d  S(   Ni(   t   CoolSingleGuide(   R4  R   i   R5  R<  (   RB  R6  R4  R   R   R   t   BouquetSwitchR   R7  R<  R   R   R   R{  R8  R9  R  R:  t	   EPGClosedR>  (   RL   RB  R4  R   R?  R   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  '  s    
	c         C   s   t  i i i o t i   } t |  n t  i i i oh d  |  _	 |  d i
 |  i i i    t |  _ |  d i   d } | i |  d _ |  d i d   n d  S(   NR   i   (   R   R   RC  R   R<  t   getRoott   openBouquetEPGR7  RX   R8  R   R  R  R*  Rh   R  R   R   R`   Rj  (   RL   RA  t   rootR   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRD  5  s    		c      
   C   s   d d k  l  } d d k l } t t i i _ t t i i _ t	 t i i
 _ t i   } |  d i   } | d } | i } | oU | |  i  |  _ |  i i |  o, |  i i |  i | | d |  i d t q n d  S(   Ni(   RB  (   R4  R   i   R5  R<  (   RB  R6  R4  R   R   R   RC  R   R7  Rh   t	   ScreenZapR<  R   R   R   R{  R8  R9  R  R:  t   EPGSelectClosedR>  (   RL   RB  R4  R   R?  R   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   OpenEPGSelectA  s    
	c         C   s   d  |  _ t i i i o |  i   n t i i i o t i	   } t
 |  n t i i i oh d  |  _ |  d i |  i i i    t |  _ |  d i   d } | i |  d _ |  d i d   n d  S(   NR   i   (   RX   R8  R   R   RH  R   R  RC  R<  RE  RF  R7  R   R  R  R*  Rh   R  R   R   R`   Rj  (   RL   RA  RG  R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRI  P  s    			c         C   sS   |  i  oE | d j o |  i  i   n |  i  i   | i |  i  i    n d  S(   Ni    (   R8  R  R  t
   setServicet   currentService(   RL   t	   directiont   epg(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR>  `  s
    
c         C   s9   t  t i i _ t |  _ d d k l } | |  i	  d  S(   Ni(   t   CEGMan(
   R   R   R   RC  R   Rh   R  t   CoolEasyGuideRO  R  (   RL   RO  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  h  s    	c         C   sw   d d k  l  } y= |  d i   } | d } | p d  S| i   p d } Wn d } n X|  i i | | t  d  S(   Ni(   R7   R   i    R%  (   R7   R   t   getEventNameR  R  R   (   RL   R7   R?  R   t   name(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   CSn  s    
 
c         C   s   y d d k  l } l } Wn t j
 o d  } n Xy6 |  d i   } | d } | p d  S| i   } Wn d } n X| d  j	 o |  i i | | t	  n d  S(   Ni(   t   IMDBt   IMDBEPGSelectionR   i    R%  (
   t   Plugins.Extensions.IMDb.pluginRT  RU  t   ImportErrorRX   R   RQ  R  R  R   (   RL   RT  RU  R?  R   RR  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt
   IMDbSearchy  s    
 
c         C   s   |  i  d 
 d  S(   Ni   (   t   updEvent(   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    c         C   s   |  i  d  d  S(   Ni(   RY  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    c         C   s   |  i  d 
 d  S(   Ni   (   RY  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    c         C   s   |  i  d  d  S(   Ni(   RY  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    c         C   s2   |  d i  | |  } | o |  i t  n d  S(   NR   (   R   R  Rh   (   RL   Rk  Rl  RA  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRY    s    c         C   s   |  i  i t d  d  S(   NsF   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/Cool3D/help.jpg(   R  R  t   CoolTVGuideHelp(   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    c         C   sX   t  i i i } | d j o8 | d } | t  i i _ |  i   |  d i d   n d  S(   Ni<   R   (   R   R   R4  R   R  Rj  RX   (   RL   t   hilf(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    

c         C   s"   |  d i  i |  d i  i  d  S(   NR   (   R   t   moveSelectiont   pageUp(   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR     s    c         C   sX   t  i i i } | d j  o8 | d } | t  i i _ |  i   |  d i d   n d  S(   Ni,  i<   R   (   R   R   R4  R   R  Rj  RX   (   RL   R[  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    

c         C   s   |  i  d  d  S(   Ni(   RY  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    c         C   sp   |  d i  |  i i i    t   } | d } | | } |  d i   |  d i |  i |  |  i t	  d  S(   NR   i  (
   R   R  R  R*  R0   R  Rj  R{  R  Rh   (   RL   RU  R%  t   cooltime(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    	

c         C   s   |  i  d 
 d  S(   Ni   (   RY  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    c         C   s   t  i i i d j o d t  i i _ nb t  i i i d j o d t  i i _ n9 t  i i i d j o d t  i i _ n d t  i i _ t  i i   |  i   t i   } t |  |  i	   d  S(   Ni   i   i   i   (
   R   R   R   R   t   savet   hideR<  RE  RF  t	   CoolClose(   RL   RG  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    

c         C   s"   |  d i  i |  d i  i  d  S(   NR   (   R   R\  t   pageDown(   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    c         C   s   |  i  d 
 d  S(   Ni   (   RY  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    c         C   sg   |  d i  i d  t   } | d } | | } |  d i   |  d i |  i |  |  i t  d  S(   NR   i    i  (   R   R   R0   R  Rj  R{  R  Rh   (   RL   RU  R%  R^  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    	

c         C   s  t  i i i } | d j o |  i   nj| d j o |  i   nO| d j o |  i   n4| d j o |  i   n| d j o |  i   n | d j o |  i	   n | d j o |  i
   n | d j o |  i   n | d	 j o |  i   n | d
 j o |  i   nw | d j o |  i   n\ | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i   d  S(   NR6   s
   Zap + ExitR7   s   IMDb SearchR8   s   Cool Info GuideR9   R:   R;   R<   s
   EPG Selects	   Bouquet +s	   Bouquet -R=   (   R   R   R
  R   t   zapTot   zapRS  RX  R  R@  t   timerAddR  t   CoolAutoTimerR  RJ  R  R  R  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s<    c         C   s  t  i i i } | d j o |  i   nj| d j o |  i   nO| d j o |  i   n4| d j o |  i   n| d j o |  i   n | d j o |  i	   n | d j o |  i
   n | d j o |  i   n | d	 j o |  i   n | d
 j o |  i   nw | d j o |  i   n\ | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i   d  S(   NR6   s
   Zap + ExitR7   s   IMDb SearchR8   s   Cool Info GuideR9   R:   R;   R<   s
   EPG Selects	   Bouquet +s	   Bouquet -R=   (   R   R   t   Cool_RedLongR   Rc  Rd  RS  RX  R  R@  Re  R  Rf  R  RJ  R  R  R  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s<    c         C   s  t  i i i } | d j o |  i   nj| d j o |  i   nO| d j o |  i   n4| d j o |  i   n| d j o |  i   n | d j o |  i	   n | d j o |  i
   n | d j o |  i   n | d	 j o |  i   n | d
 j o |  i   nw | d j o |  i   n\ | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i
   d  S(   NR6   s
   Zap + ExitR7   s   IMDb SearchR8   s   Cool Info GuideR9   R:   R;   R<   s
   EPG Selects	   Bouquet +s	   Bouquet -R=   (   R   R   R  R   Rc  Rd  RS  RX  R  R@  Re  R  Rf  R  RJ  R  R  R  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s<    c         C   s  t  i i i } | d j o |  i   nj| d j o |  i   nO| d j o |  i   n4| d j o |  i   n| d j o |  i   n | d j o |  i	   n | d j o |  i
   n | d j o |  i   n | d	 j o |  i   n | d
 j o |  i   nw | d j o |  i   n\ | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i   d  S(   NR6   s
   Zap + ExitR7   s   IMDb SearchR8   s   Cool Info GuideR9   R:   R;   R<   s
   EPG Selects	   Bouquet +s	   Bouquet -R=   (   R   R   t   Cool_GreenLongR   Rc  Rd  RS  RX  R  R@  Re  R  Rf  R  RJ  R  R  R  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  ?  s<    c         C   s  t  i i i } | d j o |  i   nj| d j o |  i   nO| d j o |  i   n4| d j o |  i   n| d j o |  i   n | d j o |  i	   n | d j o |  i
   n | d j o |  i   n | d	 j o |  i   n | d
 j o |  i   nw | d j o |  i   n\ | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i   d  S(   NR6   s
   Zap + ExitR7   s   IMDb SearchR8   s   Cool Info GuideR9   R:   R;   R<   s
   EPG Selects	   Bouquet +s	   Bouquet -R=   (   R   R   R  R   Rc  Rd  RS  RX  R  R@  Re  R  Rf  R  RJ  R  R  R  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  `  s<    c         C   s  t  i i i } | d j o |  i   nj| d j o |  i   nO| d j o |  i   n4| d j o |  i   n| d j o |  i   n | d j o |  i	   n | d j o |  i
   n | d j o |  i   n | d	 j o |  i   n | d
 j o |  i   nw | d j o |  i   n\ | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i   d  S(   NR6   s
   Zap + ExitR7   s   IMDb SearchR8   s   Cool Info GuideR9   R:   R;   R<   s
   EPG Selects	   Bouquet +s	   Bouquet -R=   (   R   R   t   Cool_YellowLongR   Rc  Rd  RS  RX  R  R@  Re  R  Rf  R  RJ  R  R  R  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s<    c         C   s  t  i i i } | d j o |  i   nj| d j o |  i   nO| d j o |  i   n4| d j o |  i   n| d j o |  i   n | d j o |  i	   n | d j o |  i
   n | d j o |  i   n | d	 j o |  i   n | d
 j o |  i   nw | d j o |  i   n\ | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i   d  S(   NR6   s
   Zap + ExitR7   s   IMDb SearchR8   s   Cool Info GuideR9   R:   R;   R<   s
   EPG Selects	   Bouquet +s	   Bouquet -R=   (   R   R   R  R   Rc  Rd  RS  RX  R  R@  Re  R  Rf  R  RJ  R  R  R  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s<    c         C   s  t  i i i } | d j o |  i   nj| d j o |  i   nO| d j o |  i   n4| d j o |  i   n| d j o |  i   n | d j o |  i	   n | d j o |  i
   n | d j o |  i   n | d	 j o |  i   n | d
 j o |  i   nw | d j o |  i   n\ | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i   d  S(   NR6   s
   Zap + ExitR7   s   IMDb SearchR8   s   Cool Info GuideR9   R:   R;   R<   s
   EPG Selects	   Bouquet +s	   Bouquet -R=   (   R   R   t   Cool_BlueLongR   Rc  Rd  RS  RX  R  R@  Re  R  Rf  R  RJ  R  R  R  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s<    c         C   s|  t  i i i } | d j o |  i   nO| d j o |  i   n4| d j o |  i   n| d j o |  i   n | d j o |  i   n | d j o |  i	   n | d j o |  i
   n | d j o |  i   n | d	 j o |  i   nw | d
 j o |  i   n\ | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i	   d  S(   NR6   s
   Zap + ExitR7   s   IMDb SearchR8   s   Cool Info GuideR9   R:   R;   R<   s	   Bouquet +s	   Bouquet -R=   (   R   R   t   Cool_OKR   Rc  Rd  RS  RX  R  R@  Re  R  Rf  R  R  R  R  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s8    c         C   sv  t  i i i } | d j o |  i   nI| d j o |  i   n.| d j o |  i   n| d j o |  i   n | d j o |  i   n | d j o |  i	   n | d j o |  i
   n | d j o |  i   n | d	 j o |  i   nq | d
 j o |  i   nV | d j o |  i   n; | d j o |  i   n  | d j o |  i   n d  Sd  S(   NR6   s
   Zap + ExitR7   s   IMDb SearchR8   s   Cool Info GuideR9   R:   R;   R<   s	   Bouquet +s	   Bouquet -R=   (   R   R   t   Cool_OKLongR   Rc  Rd  RS  RX  R  R@  Re  R  Rf  R  R  R  R  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s8    c         C   s   t  i i i } | d j o |  i   n\ | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i   d  S(   Ns   Cool Single Guides   Cool Easy Guides
   EPG Selects   Cool Info Guide(   R   R   t	   Cool_InfoR   R  R  RJ  R@  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  "  s    c         C   sn   t  i i i } | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i   d  S(   Ns   Cool Single Guides   Cool Easy Guides   Cool Info Guide(   R   R   t   Cool_InfoLongR   R  R  R@  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  /  s    c         C   s   t  i i i } | d j o |  i   n\ | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i   d  S(   Ns	   Bouquet +s	   Bouquet -s   Page Ups	   Page Down(   R   R   t   Cool_ChannelPlusR   R  R  R   R  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  :  s    c         C   s   t  i i i } | d j o |  i   n\ | d j o |  i   nA | d j o |  i   n& | d j o |  i   n |  i   d  S(   Ns	   Bouquet +s	   Bouquet -s   Page Ups	   Page Down(   R   R   t   Cool_ChannelMinusR   R  R  R   R  (   RL   RH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  G  s    c         C   s   t    } |  d i   } |  i oG |  i d |   t t  i   } | d j o t i |  |  qj n | | j o |  d i d   n d  S(   NR   i   R%  (
   R0   R   R  R+   t   epg_bouquett   getServiceNameR*   R  Rj  RX   (   RL   RU  R   R!  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  T  s    	
c         C   s   t    } |  d i   } |  i oG |  i d |   t t  i   } | d j o t i |  |  qj n | | j o |  d i d   n d  S(   NR   iR%  (
   R0   R   R  R+   Rq  Rr  R*   R  Rj  RX   (   RL   RU  R   R!  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  a  s    	
c         C   sC   t  i   } | d  j o
 d } n t |  } t t | |  d  S(   Ni    (   R<  t   getBouquetListRX   R   t	   openCTVGBt   Session(   RL   t   bouquetst   cnt(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  n  s
    
c         C   s$   d d k  l } |  i i |  d  S(   Ni(   t   SleepTimerEdit(   t   Screens.SleepTimerEditRx  R  R  (   RL   Rx  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  v  s    c         C   s3   d d k  l } |  i i |  i | t i i  d  S(   Ni(   t   TimeDateInput(   t   Screens.TimeDateInputRz  R  R:  t   onDateTimeInputClosedR   R   t	   prev_time(   RL   Rz  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  z  s    c         C   so   t  |  d j oX | d oI | d |  _ |  d } | i   | i |  i | d  |  i t  qk n d  S(   Ni   i    R   (   R   R  R  Rj  R{  R  Rh   (   RL   RA  R_   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR|  ~  s    

c         C   s   |  i  i |  i t  d  S(   N(   R  R:  t   onSetupCloset   CoolTVGuideSetup(   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    c         C   s   |  d } | i    | i   | i   | i t i i i  |  i   |  d i	 t i i
 i  |  d i	 t i i i  |  d i	 t i i i  |  d i	 t i i i  |  d i d   |  i i t t t i  d  S(   NR   R  R  R  R  (   R   R   R   Rd   R   R   R  R   R  R	  R
  R  R  R  Rj  RX   R  R  R)   t   CoolTVGuideAboutt	   TYPE_INFO(   RL   R_   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR~    s    




c      
   C   s  t  i   |  _ |  i   t   } t   } t } t i i	 i
 ox |  i i i i D] } | i } | i } | | | d } y" |  i i | i i | i  } Wn" |  i i | i i |  } n X| oo | i   }	 |	 | i   }
 |	 | j  p |
 | j o5 | i   d j o | | j o | i |  q7q;qT qT Wn t i i i
 oB x? |  i i i i D]' } | | i j  o | i |  qfqfWn t d  } x | D] } t | i  } t t d t | i    } t | i i     } | i! o t d  n
 t d  } | | d | d | d	 | d
 7} qW| t d  7} | o |  i i" t# | t# i$  n |  i%   d  S(   Ni   i,  s$   
          !! Cool Timer Alarm !! 

s   %d.%m.%Y - %H:%Ms   is disableds	   has moveds    - s   
R@   s   

s   -- please check your Timer --(&   R   Re   Rg   R`  t   setR0   R   R   R   t
   TimerAlarmR   R  R  R  R  R  R  R   R  R   R  t   lookupEventTimet   getBeginTimet   getDurationt   addt   TimerAlarmDisableR  R    R  RR  R1   R/   Rr  t   disabledR  R)   t
   TYPE_ERRORRa  (   RL   R  RU  t   tnameRH   R  R  R  R   t   evtbegint   evtendt   msgt   ttimet   tchannelt   ttype(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    sL    
		 		" !  #*c         C   s6   t  |  _ |  d i   d } | o |  i   n d  S(   NR   i   (   Rh   R  R   R2  (   RL   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRa    s    	c         C   s   |  i  |  i  d  S(   N(   R  R  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR2    s    c         C   s   | |  _  |  i   d  S(   N(   R{  R  (   RL   R{  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   setServices  s    	c         C   s   |  i  i i   |  d _ |  d i |  i |  i  |  d i |  i  i i    |  i   t	 i
 i i o |  d i i d  n d  S(   NR   i    (   R  R  R*  R`   Rj  R{  R  R   R  R   R   t   channel1R   R   R   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    
c         C   s   |  d } | i    } |  i | t  | i    } | d d  j o2 | d i | d i j o |  i | | |  n | | d  | | d  d  S(   NR   i    i   (   R   RY  R   RX   R   R=  (   RL   t   setEventRK  t   valR_   t   oldR?  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR=    s    
,c         C   sk   |  i  o] t |  _ |  d i   d } | i |  d _ |  d i d   | o |  i  | i  qg n d  S(   NR   i   (   R  Rh   R  R   R   R`   Rj  RX   (   RL   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRc    s    
	c         C   sT   |  i  oF t |  _ |  d i   d } | o |  i  | i  |  i   qP n d  S(   NR   i   (   R  Rh   R  R   R   R2  (   RL   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRd    s    
	c         C   s   |  d i    } | d } | p d  S| d } y d d k l } d d k l } |  i i |  i | d t d  d t d	  d	 f t d
  d
 f g | |  i d | d | f Wn& |  i i	 t
 t d  t
 i  n Xd  S(   NR   i    i   i(   t	   ChoiceBox(   t   addAutotimerFromEventt   titles      check Autotimer ?t   YesRA   t   evtR   sM   No AutoTimer seems to be installed. Please install it for this functionality.(   R   t   Screens.ChoiceBoxR  t,   Plugins.Extensions.AutoTimer.AutoTimerEditorR  R  R:  t   CoolAutoTimerSafeR    R  R)   R  (   RL   R?  R   R   R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRf    s    
 
F c         C   sp   | o | d } | d j oN y! d d k  l } | |  i  Wql |  i i t t d  t i  ql Xn d  S(   Ni   R  i(   t   mainsM   No AutoTimer seems to be installed. Please install it for this functionality.(   t#   Plugins.Extensions.AutoTimer.pluginR  R  R  R)   R    R  (   RL   t   answert   AutoTimerSafe(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s    c      
   C   s  |  d i    } | d } | d } | p d  S| i   } | i i   } xw|  i i i i D][ } | i | j oE | i	 i i   | j o, |  i i i i
 |  |  d i i   Pq^ q^ Wd d k l } l } d d k l }	 | | d t | |  }
 t i i i |
  } | d  j	 o x8 | D]0 } | i |
  o |  i i i i |  q'q'W|  i i i i |
  } | d  j	 o |  i i |  i |	 |  qn |  i i d t  |  d i i   |  i   d  S(	   NR   i   i    i(   t   RecordTimerEntryt
   parseEvent(   t   TimerSanityConflictt   checkOldTimersi  (   R   t
   getEventIdR   R   R  R  R  R  R  R  t   removeEntryR_   R'  R  R  t   Screens.TimerEditR  Rh   R)  R   R&  RX   t   setAutoincreaseEndt   timeChangedR:  t   finishSanityCorrectionR  R  R  (   RL   R?  R   R   R   R   R\   R  R  R  t   newEntryt	   conflictsRH   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s8    

  )	 !c         C   sX  |  d i    } | d } | d } | p d  S| i   } | i i   } d d k l } x |  i i i i	 D] } | i
 | j or | i i i   | j oY |  i i |  i | d t d d  | i   d t d	  d
 f t d  d f g Pqn qn Wd d k l } d d k l }	 l }
 |	 | d t |
 |  } |  i i |  i | |  d  S(   NR   i    i   i(   R  R  s   Cool Timer Edit :s   

%ss   edit this Timer ?t   edits   delete this Timer ?t   delete(   t
   TimerEntry(   R  R  R  (   R   R  R   R   R  R  R  R  R  R  R  R  R:  t   CoolTimerEditR    RQ  t   Screens.TimerEntryR  R  R  Rh   t   finishedAdd(   RL   R?  R   R   R   R   R  R\   R  R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRe  $  s"    

  )T	c         C   s!   d d k  l } t i |  d  S(   Ni(   t   TimerEditList(   R  R  Ru  R  (   RL   R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  6  s    c   	      C   sE  |  d i    } | d } | d } | p d  S| i   } | i i   } | o | d } d d k l } x |  i i i i	 D] } | d j oY | i
 | j oE | i i i   | j o, |  i i i i |  |  d i d   Pq n | d j oE | i
 | j o1 | i i i   | j o |  i i | |  Pq=q q Wd  S(   NR   i    i   i(   R  R  R  (   R   R  R   R   R  R  R  R  R  R  R  R  R  Rj  RX   R  (	   RL   R  R?  R   R   R   R   R  R\   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  :  s(    

  )	)c         C   s  |  i  i d t  | d o| d } |  i i i i |  } | d  j	 o x8 | D]0 } | i |  o |  i i i i	 |  qT qT W|  i i i i |  } | d  j	 o- d d k
 l } |  i i |  i | |  q n t i i i d j o' |  d i t d   |  i |  _ qt i i i d j o' |  d	 i t d   |  i |  _ qt i i i d j o' |  d
 i t d   |  i |  _ qt i i i d j o' |  d i t d   |  i |  _ qn t i i i d j o' |  d i t d   |  i |  _ n t i i i d j o' |  d	 i t d   |  i |  _ n{ t i i i d j o' |  d
 i t d   |  i |  _ n> t i i i d j o' |  d i t d   |  i |  _ n d  S(   Ni  i    i   i(   R  R9   R  t	   TimerEditR  R  R  (   R  R  Rh   R  R  R  R&  RX   R  R  R  R  R:  R  R   R   R  R   R	  R    t   REMOVE_TIMERR  R
  R  R  R  R  R  t	   ADD_TIMER(   RL   R  Rt  t   simulTimerListRH   R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  N  sJ    
 !c         C   s   |  i  |  d  S(   N(   R  (   RL   R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  u  s    c         C   s  |  d i    } | d } |  d i |  |  d i   } d } t   } |  d i   } t |  } t |  } | d | d j o* d |  i | d | d | d f } n" d t d	  | d | d f } |  d
 i |  | d d  j o |  d i
 d   n |  d i
 | d i  | p t i i i d j o! |  d i d  |  i |  _ n t i i i d j o! |  d i d  |  i |  _ no t i i i d j o! |  d i d  |  i |  _ n8 t i i i d j o! |  d i d  |  i |  _ n d  S| d }	 | i   }
 |	 i i   } t } xN |  i i i i D]: } | i |
 j o$ | i  i i   | j o t! } PqGqGW| o t i i i d j o' |  d i t d   |  i" |  _ qt i i i d j o' |  d i t d   |  i" |  _ qt i i i d j o' |  d i t d   |  i" |  _ qt i i i d j o' |  d i t d   |  i" |  _ qn | p t i i i d j o' |  d i t d   |  i# |  _ qt i i i d j o' |  d i t d   |  i# |  _ qt i i i d j o' |  d i t d   |  i# |  _ qt i i i d j o' |  d i t d   |  i# |  _ qn d  S(   NR   i    R   R%  i   s
   %s  %d.%d.i   i   t   TodayR  R  R9   R  R  R  R  R  ($   R   t   newEventR   R0   R   R/   Rb  R    R	  RX   t
   newServiceR   R   R   R  R   R  R  R
  R  R  R  R  R  R  R   R   R  R  R  R  R  R  Rh   R  R  (   RL   R?  R   R   t   datestrRU  R   t   nowTimet   begTimeR   R   R   t   isRecordEventR\   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  x  s    
	*!
 )	c         C   s  |  i  i i   |  d _ |  i i d t t    d d  |  d } | i   } | i	   } | i
   } | d  j p | d  j p | d  j o d  S| d j o d p d } | | } | i   | } | i   }	 g  }
 d } d } x |  i D] } | i } | | j o | i   | i   p |	 | d f } | p | | j o t | _ n= | | j o& | i | d | d  | d 7} n t | _ | p
 | i o' |
 i | | | d | d f  n | d 7} |	 | 7}	 q W| p | o |  d i |
  n t   } |  d	 } | | j o | | | d j  o t | | | i   | d | i i   i   d
  } | i } | | i   | d f } | | j o | i | d | d  n t | _ n
 t | _ | i i   d  S(   NR   i<   i  i   i   i    i   R  R  i   (   R  R  R*  R`   R  R  R6  R0   R  R  R   RX   RM   RP   R  R  R   Rl  t   setPositionRh   R^   R  R   R  R_   R'  (   RL   t   forceR_   R   R   R   t
   time_stepst	   num_linest   incWidthR  t   timeline_entriesRH   t   changecountt   linet   old_post   new_posRU  R  R
  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    sT    %
'

 	4	'
	
"9		N(R   RR   RS   R  R  R  t   ZAPRX   RO   R  R  R  R  R  R  R@  R   R;  R  RD  RJ  RI  R>  R  RS  RX  R  R  R  R  Rh   RY  R  R  R   R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R|  R  R~  R  Ra  R2  R  R  R=  Rc  Rd  Rf  R  R  Re  R  R  R  R  R  R  (    (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  Q  s   																																!	!	!	!	!	!	!	!																(																'		IR  c           B   sn   e  Z d d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d   Z d	   Z d
   Z RS(   c         C   s  t  i |  |  t d  |  _ t t  } d |  _ d } t |  } | i   |  _	 | i
   t d d d d g h |  i d 6|  i d	 6|  i d
 6|  i d 6|  i d 6|  i d 6|  i d 6|  i d 6d  |  d <t t d   |  d <t t d   |  d <t t d   |  d <t t d   |  d <t t d   |  d <t t d   |  d <g  |  _ | |  _ g  |  _ t i |  |  i d |  i |  i   d  S(   Ns   Cool TV Guide SettingsR  sT   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/CoolSkin/CoolTVGuideSetup.xmlR  R  t   ColorActionst   MenuActionst   okR  t   redt   greent   yellowt   blueR  t   menuiR  t   SaveR  R$  R  t   TVR  t   GuideR  s"   Standard for (HD), (XD), (SD) Skint	   CoolText1s+   Press ( < OK > ) to change your Buttons !!!t	   CoolText2R  (   R*   RO   R    t   setup_titleR  R3   R  R  R  R   R  R   t   showInfot   keysavet	   SetupCoolt   SetupTVt
   SetupGuideR  t   keyOKR   R   t   onChangedEntryR  R   R   (   RL   R  t   argsR#  R   R$  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRO     s<    	








			c         C   s   |  i    d  S(   N(   R  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  	  s    c         C   s   t  i i   |  i   d  S(   N(   R   R   R_  R  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  	  s    c         C   s   |  i  i t d  d  S(   NsF   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/Cool3D/help.jpg(   R  R  RZ  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  	  s    c         C   sF  g  |  _  |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i	   |  i  i t t d  t i i
   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d	  t i i   |  i  i t t d
  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i |  i |  i   |  i  |  d _  |  d i i |  i   d  S(   Ns   Cool 3Ds   Load Picon (Yes) (need restart)s"   Load CoolPico (Yes) (need restart)s   Cool Easy Guide + CoolPicos,   Cool Easy Guide use Yellow/Blue for Time -/+s#   Cool Easy Guide show Channel Numbers   Picon Height (60), (54), (54)s"   Picon Item Height (60), (54), (54)s    CoolPico Height (30), (27), (27)s%   CoolPico Item Height (30), (27), (27)s*   Left Width for 60 Height (110), (75), (75)s,   Left Width for 30 Height (190), (110), (110)s   Channel 1 at Start (No)s   Picon Path (Press Menu)R   (   R   R^   R   R    R   R   R/  RZ  R`  t   CEGCoolPicoONt   EasyTimet
   EasyNumberR-  R   R.  R   R  R  R  R  t   validatePatht   openCoolPiconPathR_   Rz  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR   	  s"    	%%%%%%%%%%%%%1c         C   s:  g  |  _  |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i	   |  i  i t t d  t i i
   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d	  t i i   |  i  i t t d
  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  |  d _ |  d i i |  i   d  S(   Ns   Red Button (Zap)s   LongRed Button (ZAP+Exit)s   Green Button (Timer)s   LongGreen Button (Autotimer)s   Yellow Button (GuideSwitch)s   LongYellow Button (Bouquetlist)s   Blue Button (CoolSearch)s   LongBlue Button (IMDb Search)s   OK Button (Cool Info Guide)s   LongOK Buttons   Info Button (EPG Select)s   LongInfo Buttons   Channel + (Bouquet +)s   Channel - (Bouquet -)R   (   R  R^   R   R    R   R   R
  Rg  R  Rh  R  Ri  R  Rj  Rk  Rl  Rm  Rn  Ro  Rp  R   R_   Rz  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  3	  s"    	%%%%%%%%%%%%%%c         C   s:  g  |  _  |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i	   |  i  i t t d  t i i
   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d	  t i i   |  i  i t t d
  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  i t t d  t i i   |  i  |  d _ |  d i i |  i   d  S(   Ns   Cool PrimeTime (20:15)s
   ----------s"   Event 60 Fontsize (18), (15), (15)s"   Event 30 Fontsize (18), (15), (15)s-   Left Fontsize (22), (18), (16) (need restart)s1   Timeline Fontsize (20), (18), (16) (need restart)s   Right 60 Font Center (Yes)s   Time Scale (180)s   Bouquet at Start (No)s'   Skip Empty Services (No) (need restart)s*   Cool TimerAlarm check if Timer has changeds-   Cool TimerAlarm check if Timer is deaktivatedR   (   R  R^   R   R    R   R   Ri  t   cool_BlankLineR   R   R   R  R5  R4  t   autostart_bouquetR  R  R  R   R_   Rz  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  F	  s"    	%%%%%%%%%%%%%%c         C   sJ   t  i i t |   p- |  i i t t d t |   t i  n d  S(   Ns,   Given path %s does not exist. Please change.(	   t   osRW   t   existsR  R  R  R)   R    R  (   RL   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  Y	  s    c         C   sm   | d  j	 o\ | d d j o | d  } n | d d j o
 d } n | |  i |  d i   d _ n d  S(   NiRU   i    R   i   (   RX   R   t   getCurrentIndexR   (   RL   RQ  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   dirSelected]	  s    
c         C   s}   yo |  i  |  d i   d i d } | d d j o
 d } n |  i i |  i t d t d  d d	 d
 | Wn n Xd  S(   NR   i   RU   i    s"   /usr/share/enigma2/picon/coolpico/R  s   Choose directoryt   filenameR%  t   currDir(   R   R  R   R  R:  R  R   R    (   RL   RW   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  e	  s    "
2c         C   s.   y  |  i  |  d i   d   Wn n Xd  S(   NR   i   (   R   R  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  n	  s     N(   RR   RS   RX   RO   R  R  R  R  R  R  R  R  R  R  (    (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR    s   "										RZ  c           B   s   e  Z e d   i   i   d j o
 d Z n0 e d   i   i   d j o
 d Z n d Z d
 d  Z d   Z d d	  Z	 RS(   i    i  s   
			<screen flags="wfNoBorder" position="0,0" size="720,576" title="..Help.." backgroundColor="#ffffffff">
				<widget name="Picture" position="0,0" size="720,576" zPosition="1"/>
			</screen>i   s   
			<screen flags="wfNoBorder" position="0,0" size="1024,576" title="..Help.." backgroundColor="#ffffffff">
				<widget name="Picture" position="0,0" size="1024,576" zPosition="1"/>
			</screen>s   
			<screen flags="wfNoBorder" position="0,0" size="1280,720" title="..Help.." backgroundColor="#ffffffff">
				<widget name="Picture" position="0,0" size="1280,720" zPosition="1"/>
			</screen>c         C   s  d d k  l } d d k l } t i |  _ t i |  |  | |  _ |   i	   |  _
 |   |  _ t   |  d <t d d g h |  i d 6|  i d 6|  i d	 6|  i d
 6d  |  d <t t d   |  d <t t d   |  d <|  i i i   i |  i  |  i i |  i  d  S(   Ni(   t   AVSwitch(   t   ePicLoadt   Picturet   WizardActionsR  R  t   backR  R  R  t   CancelR  R  R  (   t   Components.AVSwitchR  t   enigmaR  RZ  R   R*   RO   t   whatPict   getFramebufferScalet   EXscalet	   EXpicloadR   R   R  R   R    t   PictureDataR   R^   t   DecodeActionR  t   Help_Picture(   RL   R  R  R  R  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRO   	  s&    	



c         C   s   |  i  d  j	 op |  i i |  d i i   i   |  d i i   i   |  i d |  i d d d d g  |  i i	 |  i   n d  S(   NR  i    i   s   #121214(
   R  RX   R  t   setParaR   R  RM   RN   R  t   startDecode(   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  	  s    YR@   c         C   s;   |  i  d  j	 o' |  i i   } |  d i i |  n d  S(   NR  (   R  RX   R  t   getDataR   t	   setPixmap(   RL   t   pictureInfot   ptr(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  	  s    N(
   RR   RS   R$   R  RM   R   RX   RO   R  R  (    (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRZ  u	  s   

	t   CTVGBc           B   sG   e  Z d  Z e d  Z d   Z d   Z d   Z d   Z d   Z	 RS(   s   <screen name="CTVGB" position="center,center" size="400,400" title="Choose bouquet">
              <widget name="menu" position="25,25" size="350,350" scrollbarMode="showOnDemand" />
          </screen>c   	      C   s   d d k  l } t i |  |  t i |  _ d |  _ | |  _ t d g h |  i	 d 6|  i
 d 6 |  d <g  } | D] } | | d | d	 f qs ~ } | | |  |  d
 <d  S(   Ni(   t   MenuListR  R  R  R  R  i    i   R  (   t   Components.MenuListR  R*   RO   R  R   R  t   selectedFuncR   t   okbuttonClickt   cancelClick(	   RL   R  Rv  R  t   enableWrapAroundR  R|  RH   t   entrys(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRO   	  s    			
/c         C   s   |  d i    } | o | d S(   NR  i   (   R   (   RL   R?  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR   	  s    c         C   s   |  i  |  i    d  S(   N(   R  R   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  	  s    c         C   s   |  d i    d  S(   NR  (   t   up(   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  	  s    c         C   s   |  d i    d  S(   NR  (   t   down(   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  	  s    c         C   s   |  i  t  d  S(   N(   R  R   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR	  	  s    (
   RR   RS   R   R   RO   R   R  R  R  R	  (    (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  	  s   				t   CTVGBSilentc           B   s2   e  Z e d  d  Z d   Z d   Z d   Z RS(   i    c         C   sM   g  } | D] } | | d q ~ |  _  | |  _ t |  |  _ | |  _ d  S(   Ni   (   Rv  R  R   R   R
  (   RL   Rv  R
  t   currentR|  t   b(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRO   	  s    (	c         C   s9   |  i  d j p
 |  i o |  i  d |  i |  _  n d  S(   Ni    i   (   R  R
  R   (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  	  s    c         C   s@   |  i  |  i d j  p
 |  i o |  i  d |  i |  _  n d  S(   Ni   (   R  R   R
  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  	  s    !c         C   s   |  i  |  i S(   N(   Rv  R  (   RL   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR   	  s    (   RR   RS   R   RO   R  R  R   (    (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  	  s   		c         C   s~   |  d  j	 om t i   t j o? t i   t i t j o t i t i  n t i t  n t i |   t i   n d  S(   N(	   RX   R<  RE  Rq  t	   clearPatht   bouquet_roott	   enterPatht   setCurrentSelectionRd  (   R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   zapToService	  s    
c         C   s   g  } t  i   i |   } | d  j	 oc x` t oT | i   } | i   p Pn | i t i	 t i
 B@o q+ n | i t |   q+ Wn | S(   N(   R&   Re   R   RX   Rh   t   getNextt   validR  R'   t   isDirectoryt   isMarkerR^   R+   (   t   bouquetR{  R<  R   (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   getBouquetServices	  s     c           C   s   d  a d  a d  S(   N(   RX   Ru  R<  (    (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   cleanup	  s    c         C   s   t  i   } t o | t j o
 d  a n t t   } |  o, | d j o t  | d i | d j  n | d j o t   n d  S(   Ni    i   (   t	   dlg_stackt   popt
   bouquetSelRX   R   R  R  (   RA  t   closedScreent   dlgs(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   closed	  s    
c      	   C   sY   t  |   } t |  o< |  a t i t i t t | t	 t
 t t  i     t St S(   N(   R  R   Rq  R  R^   Ru  R:  R"  R  R  t   changeBouquetCBR+   Rr  Rh   R   (   R  R{  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRF  
  s    1c         C   s   t  o~ |  d j o t  i   n t  i   t  i   } t |  } t |  o0 | a | i |  | i t	 |  i
    q n d  S(   Ni    (   R  R  R  R   R  R   Rq  R  R  R+   Rr  (   RM  RN  R  R{  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR#  
  s    
c         C   sq   | d j o/ |  i  t t | t d t a t i t  n2 | d j o$ t | d d  p t   qm n d  S(   Ni   R
  i    (	   R:  R"  R  RF  Rh   R  R  R^   R  (   Ru  Rv  Rw  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyRt  
  s    c         C   s   t  i   } | d j ov d } | i   } x4 |  D], } | d i   | j o Pn | d 7} q2 W| | j o
 d } n t |  t |  a n | d j o t |  p t   q n d  S(   Ni   i    (   R<  RE  t   toCompareStringR  Rh   R  RF  R  (   Rv  Rw  RG  R  t   rootstrR  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   openCTVGBSilent%
  s     
c         C   s   | d  j oU d d k l } | o | i o | i i } qb |  i t t d  t i  d  Sn |  a	 | a
 t
 i   a t d  j o
 d } n t t  } t t |  d  S(   Ni(   R(   s    No function with your Imagei    (   RX   t   Screens.InfoBarR(   R   t   servicelistR  R)   R    R  Ru  R<  Rs  Rv  R   R&  (   R  R(  R(   Rw  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   Man6
  s    
c         K   s  t    i t    i f d j o |  i t t t i  n | d  j oU d d k l	 } | o | i
 o | i
 i } q |  i t t d  t i  d  Sn |  a | a t i   a t d  j o
 d } n t t  } t i i i o t |  t |  n t t |  d  S(   Ni  i   i(   R(   s    No function with your Imagei    (   i  i   (   R/   R0  R1  R  R)   t   CoolTVGuideProR  RX   R'  R(   R   R(  R    R  Ru  R<  Rs  Rv  R   R   R   R  R   Rt  R&  (   R  R(  t   kwargsR(   Rw  (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyR  J
  s"    
c          K   sH  t  d  } t d d d | d t i d t d t  t d d d | d t i d t d t  t d d	 d | d t i d t d t  t d d
 d | d t i d t d t  t d d d | d t i d t d t  t d d d | d t i d t d t  t d d	 d | d t i d t d t  t d d
 d | d t i d t d t  g S(   NsT   Cool TV Guide 3D EPG with switchable 5-24 TV-Lines and changeable Buttons with SetupRR  s   Cool TV Guidet   descriptiont   wheret   needsRestartt   fncs   Cool Easy Guides   Cool Single Guides   Cool Info Guide(	   R    R   t   WHERE_EVENTINFOR   R  R   R   R   t   WHERE_EXTENSIONSMENU(   R+  t   descr(    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   Pluginsc
  s    '''''''(   R)  RO   R    t   Plugins.PluginR   R3  R   RB  R   RP  R   R   t   Components.ActionMapR   t   Components.ButtonR   t   Components.configR   R	   R
   R   R   R   R   R   t   Components.ConfigListR   t   Components.GUIComponentR   t   Components.HTMLComponentR   t   Components.LabelR   t   Components.MultiContentR   R   t   Components.PixmapR   t   Components.ServiceEventTrackerR   t   Components.Sources.EventR   t   Components.Sources.ServiceEventR   R  R   R   R   R   R   R   R    R!   R"   R#   R$   R%   R&   R'   R'  R(   t   Screens.MessageBoxR)   t   Screens.ScreenR*   R+   R   R,   R-   R.   R0   R/   R1   R2   t   Tools.DirectoriesR3   R4   t   Tools.LoadPixmapR5   RX   Ru  R<  R  Rq  R  t   CoolTVGuideVersionR  R*  t   CHOICER   R
  Rg  R  Rh  R  Ri  R  Rj  Rk  Rl  Rm  Rn  Ro  Rp  R  R}  R/  Ri  R   R  Rh   RZ  R`  R  R  R   t   uniR4  R   R   R   R  R-  R   R.  R   R  R  R  R5  R  R  R  RH  RC  R7  R  R  RG   RT   R  R  R  RZ  R  R  R  R  R  R"  RF  R#  Rt  R&  R)  R  R3  (    (    (    s@   /usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide/plugin.pyt   <module>   s   :^"
fWWW*'!!!!!!!!!!!!!       3#	
								