[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: IBugtraqProvider/2 GetCommitMessage/2 pathList parameter is lacking

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Mon, 03 Aug 2009 20:10:13 +0200

On 03.08.2009 19:14, Tyler Collier wrote:
> Hi there,
> I was surprised that I have not seen anyone else bring up this issue, but I
> did search extensively.
> In the IBugtraqProvider (and IBugtraqProvider2) interface's GetCommitMessage
> (GetCommitMessage2 for IBugtraqProvider2), why does the pathList parameter
> only contain files that are "selected" for the commit? In this case,
> "selected" means selected in Windows Explorer, not selected in the commit
> dialog. This is by design according to the documentation but seems less
> useful than what I was hoping for: the list of files currently CHECKED in
> the commit dialog (regardless of "selected" or not in the commit dialog,
> although even that would be more helpful because then users could highlight
> certain paths before launching my plug-in).
> As far as I understand, in many cases it is not possible to select all
> desired paths in Windows Explorer. For example, say I have a the following
> file structure:
> dir1
> dir1/file1
> dir1/file2
> dir2
> In Windows Explorer, there is no way to select all of these paths at the
> same time. The best I could do is select dir1 and dir2 at the same time, or
> dir1/file1 and dir1/file2 at the same time. Of course, dir1 contains files
> file1 and file2; however the pathList parameter only contains paths that are
> selected explicitly.
> Thus I am confused about the current design and am wondering if I'm just
> missing something. Please let me know if so, and if not, how I should best
> go about submitting this as a bug or enhancement request. Being able to get
> the list of checked paths in the commit dialog is important enough to my
> current requirements that I am using the Windows API's SendMessage
> functionality to read the TSVN commit dialog, which is tricky at best.

The problem with passing the checked items to your bugtraq provider is
that after your provider returns, the user can easily change the checked
items without your provider noticing it.
That's why you only get the checked items in the CheckCommit() method,
which is called when the user clicks the OK button and can't change
those checked items anymore.


   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.net
To unsubscribe from this discussion, e-mail: [dev-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2009-08-03 20:10:30 CEST

This is an archived mail posted to the TortoiseSVN Dev mailing list.