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

Re: proposal: diff preview for gui client

From: steveking <steveking_at_gmx.ch>
Date: 2005-06-08 23:06:19 CEST

Martin Hauner wrote:

> This is about getting a usable gui interface for diffs between urls
> like tags or branches.
>
> A usable interface for a gui client is to present a list of modified
> items between the diff targets as a diff preview. The user can then
> decide on which item she likes to see a detailed diff in a visual diff
> tool by running a normal diff on the items of the list.

And, it has to be much faster than doing the normal diff. It's not
necessary to actually diff the files - the server would simply need to
provide the requested information, *not* do the diff and extract the
information from that (I can do that myself in a GUI client, what's
important here is speed!).

[snip]
> Implementation for gui:
>
> To get the information for the gui use case i would like to see two
> new api calls svn_client_diff_preview/svn_client_diff_preview_peg or
> new parameters to svn_client_diff2/svn_client_diff_peg2 to return the
> preview info. I think it would be nice to provide this info through
> an svn_client_status like callback and structure.
>
> typedef void (*svn_diff_preview_func_t) (void *preview_baton,
> svn_diff_preview_t *diff);
>
>
> typedef struct svn_diff_preview_t
> {
> /** file or dir */
> svn_node_kind_t node_kind;
>
> /** item paths, relative to the old diff target and new diff target */
> const char* path_old;
> const char* path_new;
>
> /** the mime types of old and new */
> const char *mimetype_old,
> const char *mimetype_new,
>
> /** change kind: unchanged, added, modified or deleted */
> svn_preview_kind_t preview_kind;
>
> /** properties changed? */
> svn_boolean_t props_changed;

     /** text changed? /*
     svn_boolean_t text_changed;

This is needed, since there could be changes to the properties *and* the
text in one revision.

>
> } svn_diff_preview_t;
>
[snip]

Stefan

-- 
        ___
   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.tigris.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Jun 8 23:13:22 2005

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