Adrian, I'll create icon set for this.

On Sun, Nov 29, 2009 at 11:07, Yuki KODAMA <endflow....@gmail.com> wrote:
> Very nice!!
>
> On Sun, Nov 29, 2009 at 08:08, Adrian Buehlmann <adr...@cadifra.com> wrote:
>> I've started experimenting a bit on using icons for the file status in the 
>> log
>> viewer.
>>
>> Screenshot of my hackery:
>>
>> http://cdn.bitbucket.org/abuehl/thg-abuehl/downloads/thg-log-status-with-icons.png
>>
>>
>> This was done using the following (far from finished) patch:
>>
>>
>> diff --git a/tortoisehg/hgtk/changeset.py b/tortoisehg/hgtk/changeset.py
>> --- a/tortoisehg/hgtk/changeset.py
>> +++ b/tortoisehg/hgtk/changeset.py
>> @@ -15,7 +15,7 @@ import Queue
>>  from mercurial import cmdutil, util, patch, mdiff
>>
>>  from tortoisehg.util.i18n import _
>> -from tortoisehg.util import shlib, hglib
>> +from tortoisehg.util import shlib, hglib, paths
>>
>>  from tortoisehg.hgtk import csinfo, gdialog, gtklib, hgcmd, statusbar
>>
>> @@ -147,22 +147,29 @@ class ChangeSet(gdialog.GDialog):
>>                 if wfile:
>>                     pats.append(wfile)
>>
>> +        width, height = gtk.icon_size_lookup(gtk.ICON_SIZE_SMALL_TOOLBAR)
>> +        def get_pixbuf(iconfilename):
>> +            iconpath = paths.get_tortoise_icon(iconfilename)
>> +            # print iconpath
>> +            return gtk.gdk.pixbuf_new_from_file_at_size(
>> +                iconpath, width, height)
>> +
>>         self._filelist.clear()
>> -        self._filelist.append(('*', _('[All Files]'), ''))
>> +        self._filelist.append((None, _('[All Files]'), ''))
>>         modified, added, removed = self.repo.status(parent, ctx.node())[:3]
>>         selrow = None
>>         for f in modified:
>>             if f in pats:
>>                 selrow = len(self._filelist)
>> -            self._filelist.append(('M', hglib.toutf(f), f))
>> +            self._filelist.append((None, hglib.toutf(f), f))
>>         for f in added:
>>             if f in pats:
>>                 selrow = len(self._filelist)
>> -            self._filelist.append(('A', hglib.toutf(f), f))
>> +            self._filelist.append((get_pixbuf('menuadd.ico'), 
>> hglib.toutf(f), f))
>>         for f in removed:
>>             if f in pats:
>>                 selrow = len(self._filelist)
>> -            self._filelist.append(('R', hglib.toutf(f), f))
>> +            self._filelist.append((get_pixbuf('menudelete.ico'), 
>> hglib.toutf(f), f))
>>         self.curnodes = (parent, ctx.node())
>>         if selrow is not None:
>>             self._filesel.select_path((selrow,))
>> @@ -659,12 +666,12 @@ class ChangeSet(gdialog.GDialog):
>>         filelist_tree.connect('thg-diff', self.thgdiff)
>>
>>         self._filelist = gtk.ListStore(
>> -                gobject.TYPE_STRING,   # MAR status
>> +                gtk.gdk.Pixbuf,        # MAR status
>>                 gobject.TYPE_STRING,   # filename (utf-8 encoded)
>>                 gobject.TYPE_STRING,   # filename
>>                 )
>>         filelist_tree.set_model(self._filelist)
>> -        column = gtk.TreeViewColumn(_('Stat'), gtk.CellRendererText(), 
>> text=0)
>> +        column = gtk.TreeViewColumn(_('Stat'), gtk.CellRendererPixbuf(), 
>> pixbuf=0)
>>         filelist_tree.append_column(column)
>>         column = gtk.TreeViewColumn(_('Files'), gtk.CellRendererText(), 
>> text=1)
>>         filelist_tree.append_column(column)
>>
>>
>> I ran this on Windows XP.
>>
>> If course the icons are probably not yet ideal (I just used what is already 
>> there).
>>
>> I currently think "modified" wouldn't need an icon at all (only deleted and 
>> added).
>>
>> Early feedback / suggestions / opinions (rotten tomatoes :) welcome.
>>
>> ------------------------------------------------------------------------------
>> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
>> trial. Simplify your report design, integration and deployment - and focus on
>> what you do best, core application coding. Discover what's new with
>> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
>> _______________________________________________
>> Tortoisehg-develop mailing list
>> Tortoisehg-develop@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/tortoisehg-develop
>>
>
>
>
> --
> Yuki KODAMA
>



-- 
Yuki KODAMA

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Tortoisehg-develop mailing list
Tortoisehg-develop@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tortoisehg-develop

Reply via email to