#! /usr/bin/env python #-*- coding: utf-8 -*- from cl_taskbaricon import Tray import os,sys import wx PATH=os.path.abspath(os.path.dirname(sys.argv[0])) + '/' TEMPERATURE_FILE = '/sys/class/thermal/thermal_zone0/temp' TEMPERATURE_DIVISOR = 1000 class Tray_action(Tray): """ Classe dérivée de la gestion de l'icone et du menu qui gère les actions en plus """ def __init__(self, app): Tray.__init__(self, app) self.mode = 1 self.timer = wx.Timer(self) self.timer.Start(3000) self.Bind(wx.EVT_TIMER, self.EachSecond) self.CheckTemp() self.DisplayTemp() def OnTaskBarActivate(self, evt): self.CreatePopupMenu() def DisplayTemp(self): unites=self.temp%10 dizaines=(self.temp - unites)/10 #print "Temp: %d * 10 + %d" % (dizaines, unites) self.IconMonitor(dizaines - 2, unites/2) def OnTaskBarClose(self, evt): print "Au revoir !" self.Destroy() def OnTaskBarSetPowersave(self, evt): print "appel de OnTaskBarSetPowersave" os.system("sudo cpufreq-set -g powersave") self.ChangeIcon(PATH + "cpu_powersave.png") def OnTaskBarSetOndemand(self, evt): print "appel de OnTaskBarSetOndemand" os.system("sudo cpufreq-set -g ondemand") self.ChangeIcon(PATH + "cpu_ondemand.png") def OnTaskBarParam(self, evt): if self.mode: self.IconMonitor(1,4) else: self.ChangeIcon(PATH + "cpu.png") self.mode=not(self.mode) def OnTaskBarLock(self, evt): os.system('xlock') def OnTaskBarSleep(self, evt): os.system('sudo pm-suspend') #os.system('sudo s2ram -f') def CheckTemp(self): """ Recuppère la température actuelle à partir de /sys/class/ """ #ofi=open('/proc/acpi/thermal_zone/THRM/temperature') #f=ofi.read() #self.temp=int(f.split(':')[1].strip().replace(" C", "")) ofi = open(TEMPERATURE_FILE) f=ofi.read() self.temp = int(f)/TEMPERATURE_DIVISOR def EachSecond(self, evt): self.CheckTemp() self.DisplayTemp()