Wrong icons left to project items

Issue #14 resolved
Eugene Baranov
created an issue

Project items' icons are quite confusing confusing in my VS2008 (WinXP x64) projects when I use HgSccPackage.

Please see attached images for details.

Comments (6)

  1. Sergey Antonov repo owner

    Well, the padlock icon for checked-in file is a default MSVS icon for checked-in files. It is possible to use a custom glyphs, but I have no skill to paint those myself.

    I'm open for contribution, if someone can draw the nice looking glyphs :)

    And yes, there is no indication for controlled files that are changed in memory and not yet saved. I have fixed this and will include the fix in v1.1.0.

    I've attached a screenshot of how they look in v1.1.0 development version. (file_icons.png)

  2. Eugene Baranov reporter

    I'm quite new to Mercurial but I think that there is no such notions as "checked-in" or "checked-out". Could it be just without icon (or with the blank one) please? It adds more confusion otherwise... On the other hand it will be quite difficult to determine whether the item is under VC or not.

    AnkhSVN have some useful STATEICON glyphs mappings described in: http://ankhsvn.open.collab.net/source/browse/ankhsvn/trunk/src/Ankh.Services/Scc/AnkhGlyph.cs?revision=7184&view=markup (also see file attached) Particularly useful displayed states:

    • When the item was removed from VC but not committed yet;
    • The item was just added to VC but not committed yet;
    • Ignored files -- for this one VS have a standard icon. (STATEICON_EXCLUDEDFROMSCC)
  3. Sergey Antonov repo owner

    The file controlled by version control system (mercurial) must have an icon. So, it can't be blank or without any icon.

    The file that is controlled and have a 'clean' status have the padlock icon. It is the same status as checked-in in central vcs.

    The file that is controlled and modified have a checked-out icon. I think, that these two states are the most common states when working with version control system. I'm using a standard MSVS icons for these states, so it should be not that confusing for MSVS users.

    Also, the 'locked' states are meaningfull in distributed vcs, because you have your own copy of repository.

    I will think about adding other states: deleted, ignored, copied, conflict.

  4. Sergey Antonov repo owner

    I've added indication for few additional states: added, copied from other file, deleted. See the attached image: file_icons2.png

    As for 'ignored' status, I checking state only for controlled files. If files are ignored by user, then there is no reason to query their status.

  5. Eugene Baranov reporter


    As for ignored files I think sometimes it is convenient to know whether the file matched hgrc ignore rules (in contract with simply files not under control) -- in this case it is obvious whether the file intentionally forgotten or not.

  6. Log in to comment