Hello, I would like to create a minimalist file browser using pyGTK.
Having read lot of tutorials, it seems to me that that in my case, the best solution is to have a gtk.TreeStore containing all the files and folders so that it would map the file system hierarchy. I wrote a recursive function that would go through the file system tree. My problem is that a sub-node of a gtk.TreeStore is not a gtk.TreeStore, but a gtk.TreeIter. And gtk.treeter has almost no functions I would be able to use (like "append") Therefore I can not explore the whole file system. Do you have another way so that I would be able to put all the file system hierarchy into a gtk.TreeStore? I was quite happy with my recursive solution ... =================================== code : #!/usr/bin/env python import pygtk pygtk.require('2.0') import gtk, gobject, os prefdir="/tmp/a" class InfoModele: def matchPathTreetoModelTree(self, path, treeStoreNode): files = [f for f in os.listdir(path) if f[0] <> '.'] for i in range(len(files)): if os.path.isfile(path+'/'+files[i]): print path+'/'+files[i]+" is a file" treeStoreNode.append( None, (path+'/'+files[i], None) ) if os.path.isdir(path+'/'+files[i]): #is a directory, go recursively print path+'/'+files[i]+" is a directory" mother = self.tree_store.append( None, (path+'/'+files[i], None) ) self.matchPathTreetoModelTree(path+'/'+files[i], mother) def __init__(self): self.tree_store = gtk.TreeStore( gobject.TYPE_STRING, gobject.TYPE_STRING) path=prefdir self.matchPathTreetoModelTree(prefdir, self.tree_store) if __name__ == "__main__": i=InfoModele() ================================= file system : a |-ab/ |-abc/ |-abcd ================================ Program output : /tmp/a/ab is a directory /tmp/a/ab/abc is a file Traceback (most recent call last): File "question.py", line 28, in <module> i=InfoModele() File "question.py", line 25, in __init__ self.matchPathTreetoModelTree(prefdir, self.tree_store) File "question.py", line 20, in matchPathTreetoModelTree self.matchPathTreetoModelTree(path+'/'+files[i], mother) File "question.py", line 16, in matchPathTreetoModelTree treeStoreNode.append( None, (path+'/'+files[i], None) ) AttributeError: 'gtk.TreeIter' object has no attribute 'append' -- http://mail.python.org/mailman/listinfo/python-list