aboutsummaryrefslogtreecommitdiff
path: root/lib/python/Components/DiskInfo.py
blob: 9bd774b16f18b679976874073f37bc8faf98333a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
from GUIComponent import *
from VariableText import *
import os

from enigma import eLabel

# TODO: Harddisk.py has similiar functions, but only similiar.
# fix this to use same code
class DiskInfo(GUIComponent, VariableText):
	FREE = 0
	USED = 1
	SIZE = 2
	
	def __init__(self, path, type):
		GUIComponent.__init__(self)
		VariableText.__init__(self)
		self.type = type
		self.path = path
		self.update()
	
	def update(self):
		try:
			stat = os.statvfs(self.path)
		except OSError:
			return -1
		
		if self.type == self.FREE:
			free = stat.f_bfree / 1000 * stat.f_bsize / 1000
			self.setText("%dMB free diskspace" % (free))

	def createWidget(self, parent):
		return eLabel(parent)