|
|
#otime = '%Y-%m-%d %H:%M:%S' | #otime = '%Y-%m-%d %H:%M:%S' |
# see modules time and locale | # see modules time and locale |
otime = '%x %X' | otime = '%x %X' |
|
vtime = '%Y-%m-%d %H:%M:%S' |
| |
(c, p, t) = filename.split(':') | (c, p, t) = filename.split(':') |
t = time.strptime(t, itime) | t = time.strptime(t, itime) |
|
st = time.strftime(vtime, t) |
t = time.strftime(otime, t) | t = time.strftime(otime, t) |
| |
self.category = c | self.category = c |
self.package = p | self.package = p |
self.timestamp = t |
self.timestamp = st |
|
self.timesort = t |
self.filename = filename | self.filename = filename |
| |
| |
from glob import glob | from glob import glob |
from gobject import TYPE_STRING | from gobject import TYPE_STRING |
( CATEGORY, PACKAGE, TIMESTAMP, FILENAME ) = range(4) |
( CATEGORY, PACKAGE, TIMESTAMP, TIMESORT, FILENAME ) = range(5) |
class TreeStore(gtk.TreeStore): | class TreeStore(gtk.TreeStore): |
| |
def __init__(self): | def __init__(self): |
| |
gtk.TreeStore.__init__( self, | gtk.TreeStore.__init__( self, |
TYPE_STRING, TYPE_STRING, TYPE_STRING, TYPE_STRING ) |
TYPE_STRING, TYPE_STRING, TYPE_STRING, TYPE_STRING, TYPE_STRING ) |
| |
def get_filename(self, iter): | def get_filename(self, iter): |
if not iter: | if not iter: |
|
|
iter = self.insert_before(None, None) | iter = self.insert_before(None, None) |
self.set_value(iter, 0, e.category) | self.set_value(iter, 0, e.category) |
self.append(iter, (None, | self.append(iter, (None, |
e.package, e.timestamp, e.filename)) |
e.package, e.timestamp, e.timesort, e.filename)) |
| |
def populate_flat(self): | def populate_flat(self): |
self.clear() | self.clear() |
iter = self.get_iter_first() | iter = self.get_iter_first() |
for e in [Elog(filename) for filename in glob('*:*:*.log')]: | for e in [Elog(filename) for filename in glob('*:*:*.log')]: |
self.append(iter, | self.append(iter, |
(e.category, e.package, e.timestamp, e.filename)) |
(e.category, e.package, e.timestamp, e.timesort, e.filename)) |
| |
| |
class TreeViewColumn(gtk.TreeViewColumn): | class TreeViewColumn(gtk.TreeViewColumn): |
|
|
def __init__(self, title=None, *args, **kargs): | def __init__(self, title=None, *args, **kargs): |
gtk.TreeViewColumn.__init__(self, title, *args, **kargs) | gtk.TreeViewColumn.__init__(self, title, *args, **kargs) |
| |
self.set_sort_column_id(TIMESTAMP) |
self.set_sort_column_id(TIMESORT) |
| |
| |
class TreeView(gtk.TreeView): | class TreeView(gtk.TreeView): |
|
|
self.append_column(TreeViewColumn( | self.append_column(TreeViewColumn( |
'Package', gtk.CellRendererText(), text=PACKAGE)) | 'Package', gtk.CellRendererText(), text=PACKAGE)) |
self.append_column(TreeViewColumn( | self.append_column(TreeViewColumn( |
'Time', gtk.CellRendererText(), text=TIMESTAMP)) |
'Time', gtk.CellRendererText(), text=TIMESORT)) |
| |
self.set_enable_search(True) | self.set_enable_search(True) |
self.set_search_column(PACKAGE) | self.set_search_column(PACKAGE) |