I wish standard icons

English support forum

Moderators: Hacker, petermad, Stefan2, white

cppguy16
Junior Member
Junior Member
Posts: 8
Joined: 2003-05-21, 22:53 UTC
Location: San Jose, California, USA
Contact:

I wish standard icons

Post by *cppguy16 »

Total Commander is a wonderful piece of software, almost a perfect application. There is only one feature I'm missing -- icons that look like in Windows Explorer. I'm using the TortoiseSVN Subversion client, which uses icon overlays (little green arrow or red exclamation mark to indicate special version control attributes). I would be extremely happy if Total Commander supported icon overlays in the future. For those who wonder what I'm talking about: http://tortoisesvn.tigris.org/docs/TortoiseSVN_en/ch04s05.html. Thanks for considering!
User avatar
Clo
Moderator
Moderator
Posts: 5731
Joined: 2003-12-02, 19:01 UTC
Location: Bordeaux, France
Contact:

Search please...

Post by *Clo »

2cppguy16
:)  Hi !
• This subject has been discussed several times already.
¤ Please, type simply Tortoise in the search field, you'll get the topics; i.e. :
http://www.ghisler.ch/board/viewtopic.php?t=67&highlight=tortoise (German...)

• Else, you can display all icons in the file lists for files associated with programs and *.LNK : Configuration >> Options >> Display >> Show symbols ...
:mrgreen:  Kind regards,
Claude
Clo
#31505 Traducteur Français de TC French translator Aide en Français Tutoriels Français English Tutorials
cppguy16
Junior Member
Junior Member
Posts: 8
Joined: 2003-05-21, 22:53 UTC
Location: San Jose, California, USA
Contact:

Post by *cppguy16 »

I did some research, and it seems that TortoiseCVS and TortoiseSVN only implemented the icon overlay feature for Windows Explorer, due to some stability problems. I've tried a few file managers, just to check this out, and also tried some Delphi (VCL) shell components, and they don't work either.

However, AB Commander does! It displays the Tortoise icon overlays perfectly. I also took a quick look at Directory Opus, and noticed that their Folder Tree view shows the Tortoise icon overlays, but their file lister does not.

Unfortunately I don't know how they did it either... :-( But I can live without it.
cppguy16
Junior Member
Junior Member
Posts: 8
Joined: 2003-05-21, 22:53 UTC
Location: San Jose, California, USA
Contact:

Post by *cppguy16 »

Forget it. AB Commander is just embedding Explorer inside their own window. It's just a tight COM integration. It means every hot key and display behavior is coming from Explorer. Total Commander would lose all of its unique features that make it such a power fool if it was directly embedding Explorer to show the file listing.

The bottom line is that the authors of Tortoise couldn't get this feature to work in a stable way with anything else but Explorer, and it is not a reasonable expectation that Tortoise (in its current form) should work with Total Commander. We are talking about two independent applications that were not designed to work together (for which TC can not be blamed at all). The only way this could be implemented in TC is by analyzing the CVS/SVN files and parsing the necessary information out, the way Tortoise itself does it.

I'm going to drop my wish, because it's very clear that TC physically can not display the Tortoise overlays. Sorry for not researching this before sending my initial post.
User avatar
Lefteous
Power Member
Power Member
Posts: 9537
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

2cppguy16

There is a thread in the german forum where Sven, the author of another quite popular file manager called Speed Commander explained how to display tortoise overlays in a not explorer based application. Icon overlays are supported by Speed Commander.
cppguy16
Junior Member
Junior Member
Posts: 8
Joined: 2003-05-21, 22:53 UTC
Location: San Jose, California, USA
Contact:

Post by *cppguy16 »

With TortoiseCVS you can tweak the registry (OverlayIconStatus = 2), but that doesn't work with TortoiseSVN. Speed Commander shows icon overlays correctly, that's right.

There's a line in TortoiseSVN that prevents everything else but Explorer-based components from showing icon overlays, where it compares the module file name to "explorer.exe". I'm not in the mood of trying to recompile TortoiseSVN and see if I can fix it. I'm pretty sure by removing this comparison you could enable icon overlays -- and make the system instable.

This is not going to stop me from loving Total Commander, though. :-)
Sven
Member
Member
Posts: 111
Joined: 2003-02-10, 21:32 UTC
Location: Varel, Germany
Contact:

Post by *Sven »

You don't have to tweak the registry, overlay icons are enabled by default. There is indeed a line, where the module name is compared with "explorer.exe" but you have to read the whole "DetectOverlayIconStatus()" carefully.

Code: Select all

   // Check registry for override settings
   int i = TortoiseRegistry::ReadInteger("OverlayIconStatus", -1);
   if (i == 0)
   {
      TDEBUG_TRACE("Registry: Disable overlay icons");
      overlayIconStatus = TORTOISE_OVERLAY_ICON_DISABLE;
   }
   else if (i == 1)
   {
      TDEBUG_TRACE("Registry: Use overlay icons in first explorer");
      overlayIconStatus = TORTOISE_OVERLAY_ICON_FIRST_EXPLORER;
   }
   else if (i == 2)
   {
      TDEBUG_TRACE("Registry: Enable overlay icons");
      overlayIconStatus = TORTOISE_OVERLAY_ICON_ENABLE;
   }
   // Check operating system
   else
   {
      // NT 4
      if (WindowsVersionIsNT4())
      {
         TDEBUG_TRACE("Win NT 4: Use overlay icons in first explorer");
         overlayIconStatus = TORTOISE_OVERLAY_ICON_FIRST_EXPLORER;
      }
      // Win 95
      else if (WindowsVersionIs95())
      {
         TDEBUG_TRACE("Win 95: Use overlay icons in first explorer");
         overlayIconStatus = TORTOISE_OVERLAY_ICON_FIRST_EXPLORER;
      }
      else
      {
         TDEBUG_TRACE("Registry: Enable overlay icons");
         overlayIconStatus = TORTOISE_OVERLAY_ICON_ENABLE;
      }
   }
If "OverlayIconStatus" is not set (default without tweaking), TortoiseCVS checks the windows version. Only on Windows NT4/Windows 95 the option is set to "first_explorer", on all other systems overlay icons are enabled. The shell extension works fine and does not make the system instable.

Every application can get the overlay icons via COM, all information you need you will find in MSDN.
ono
Junior Member
Junior Member
Posts: 52
Joined: 2003-12-22, 11:37 UTC
Location: Zurich Area, Switzerland

Post by *ono »

Hello,

For me it is almost "must be" feature. Please Mr Ghisler display TortoiseCVS overlays. Now I must switch to explorer everytime I do sthing on CVS. If there's no problem in other file managers.. why don't we have it in out favourite TC.

BTW. (Offtopic) What about TC window title customisation ?? Can we have any reply on that ever ?

Regards,
TC Personal license #99581
User avatar
Hacker
Moderator
Moderator
Posts: 13142
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

What about TC window title customisation ?? Can we have any reply on that ever ?
Like? The name must be there (it's the only sort of pseudo copy protection).

HTH
Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
cppguy16
Junior Member
Junior Member
Posts: 8
Joined: 2003-05-21, 22:53 UTC
Location: San Jose, California, USA
Contact:

Post by *cppguy16 »

Thanks, Sven. But TortoiseSVN is different than TortoiseCVS. I know the latter is more popular. Currently I'm using TSVN, which is for Subversion. There's no "overlayIconStatus" variable in TSVN, no and "OverlayIconStatus" registry entry either. Really, this is probably impossible to be solved without modifying TSVN's source code, or waiting for the developers to enable overlays for all applications. But you are right, it would be a piece of cake for TCVS.

Speed Commander handles both TSVN and TCVS overlays, though...
User avatar
Lefteous
Power Member
Power Member
Posts: 9537
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

2cppguy16
Really, this is probably impossible to be solved without modifying TSVN's source code
well ok.
Speed Commander handles both TSVN and TCVS overlays, though...
and even without modifying the source code I guess :mrgreen: Your argumentation is a little bit contradictory.
ono
Junior Member
Junior Member
Posts: 52
Joined: 2003-12-22, 11:37 UTC
Location: Zurich Area, Switzerland

Post by *ono »

Hacker wrote:
What about TC window title customisation ?? Can we have any reply on that ever ?
Like? The name must be there (it's the only sort of pseudo copy protection).
Yea... sure... so it is now the feature for only illegal users, as with cracked version I can put any name I want there.. Duh :evil:
Lefteous wrote:2cppguy16
Really, this is probably impossible to be solved without modifying TSVN's source code
well ok.
Speed Commander handles both TSVN and TCVS overlays, though...
and even without modifying the source code I guess :mrgreen: Your argumentation is a little bit contradictory.
I think with that way of thinking TC gonna be left far behind by other competitive file managers soon. :(
If others can why TC cannot ?? I don't see the point.

Regards,
TC Personal license #99581
ono
Junior Member
Junior Member
Posts: 52
Joined: 2003-12-22, 11:37 UTC
Location: Zurich Area, Switzerland

Post by *ono »

2MrGhisler: Please can we count on that nice feature... to have overlays inside TC from Tortoise or mp3Ext. I hate opening explorer just for CVS management.

Please give some reply on this ask,

Thanks.
TC Personal license #99581
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50532
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

mp3ext doesn't use overlay icons - its icons work fine in TC if you set the icon to %1 in files - associate - edit type - change icon.

About CVS icon overlays: Icon overlays aren't currently a priority for me. Showing icon overlays in a program other than explorer involves calling of these OLE2 objects manually, which is a nightmare because many of these OLE2 objects are very badly written. It would be another source of crashes, like the crashes caused by some context menu extensions...
Author of Total Commander
https://www.ghisler.com
ono
Junior Member
Junior Member
Posts: 52
Joined: 2003-12-22, 11:37 UTC
Location: Zurich Area, Switzerland

Post by *ono »

I'm raising again this topic, because lack of compatibility between TC and Tortois CVS is for me pain in $. I'm very boring, right ?
ghisler(Author) wrote:About CVS icon overlays: Icon overlays aren't currently a priority for me. Showing icon overlays in a program other than explorer involves calling of these OLE2 objects manually, which is a nightmare because many of these OLE2 objects are very badly written. It would be another source of crashes, like the crashes caused by some context menu extensions...
I think you're wrong.. because of course you have to use some IShellView IShellIcon, but those are M$ system interfaces. You don't have to use some other developer written OLE. moreover I think you can fit into 10-20 lines of extra code for that.

I've did some homework for you and prepared sample app (redone some app from some chineese MFC tutorial web page) showing filelist with nice Windows (hi-colour) icons etc and of course OVERLAYS.

I think it's not a problem at all to implement it.. and it has nothing to do with stability. This fix could improve functionality of TC as it will work now with Tortoise.. and of course improve appearance because of using nice Windows XP icons when available.

Here's the program with sources:
http://pingu.ii.uj.edu.pl/~ono/PicView_IconOverlays.zip

And here's a screenshot:
Image: http://pingu.ii.uj.edu.pl/~ono/PicView_IconOverlays.png

Sorry pgm is not Delphi however I think it's not a big problem to understand this C++ code. Look at PicViewView.cpp function
void CPicViewView::GetItemInfo(LPCITEMIDLIST pidl,CFolderItemInfo* pItemInfo)


Please make up your mind and put it into your TODO list... it's really just a couple of minutes work.

Thank you.
TC Personal license #99581
Post Reply