mirror of
https://github.com/gryf/pygtktalog.git
synced 2025-12-17 19:40:21 +01:00
* Resolved issues with array members[].
* Added __str__, which produce nice print out of current catalog structure.
This commit is contained in:
24
files.py
24
files.py
@@ -5,21 +5,22 @@ import datetime
|
||||
|
||||
class fileObj:
|
||||
"""Main file object class"""
|
||||
def __init__(self, name=None, size=0, filetype="r", mtime=0, members=[], tmproot=''):
|
||||
def __init__(self, name=None, size=0, filetype="r", mtime=0):
|
||||
date = datetime.datetime(datetime.MINYEAR,1,1)
|
||||
self.name = name
|
||||
self.size = size
|
||||
self.filetype = filetype
|
||||
self.members = members
|
||||
self.members = []
|
||||
self.date = date.fromtimestamp(mtime)
|
||||
self.t = tmproot
|
||||
|
||||
def add_member(self,member):
|
||||
"""add another fileObj to array"""
|
||||
self.members.append(member)
|
||||
if self.filetype == 'd':
|
||||
self.size = calculate_my_size(self)
|
||||
pass
|
||||
self.size = self.calculate_my_size()
|
||||
|
||||
def calculate_my_size(self):
|
||||
"""TODO: fixme!"""
|
||||
size = 0
|
||||
for member in self.members:
|
||||
size += member.get_size()
|
||||
@@ -29,4 +30,15 @@ class fileObj:
|
||||
return self.size
|
||||
|
||||
def __str__(self):
|
||||
return self.name + ' ['+self.t+']'
|
||||
"""show name of main object and his members """
|
||||
print "<%s>" % self.name
|
||||
def showtree(obj,spc):
|
||||
"""how about members?"""
|
||||
for i in obj.members:
|
||||
if i.filetype == "d":
|
||||
print "%s[%s]" % (spc, i.name)
|
||||
else:
|
||||
print "%s%s" % (spc, i.name)
|
||||
showtree(i,spc+".")
|
||||
showtree(self,".")
|
||||
return ""
|
||||
|
||||
Reference in New Issue
Block a user