On Thu, Jan 15, 2009 at 5:40 PM, TK Soh <[email protected]> wrote:

> On Thu, Jan 15, 2009 at 10:42 PM, Steve Borho <[email protected]> wrote:
> > On Thu, Jan 15, 2009 at 1:11 AM, TK Soh <[email protected]> wrote:
> >>
> >> On Thu, Jan 15, 2009 at 6:09 AM, Steve Borho <[email protected]> wrote:
> >> >> This feels potentially confusing. My original thought is we should
> >> >> commit the _selected_ chunks, not the other way round. This is also
> >> >> consistent with the behavior of the Record extension, i.e. pick the
> >> >> diff hunks to be recorded.
> >> >>
> >> >> Instead of trying to 'stack' the record function on top on the shelve
> >> >> function, maybe we should just separate them. That is, the 'Shelve'
> >> >> button shelve the selected hunks, while 'Commit' button commit the
> >> >> selected hunks.
> >> >>
> >> >> I know it will probably need a lot more work, but it's clearer this
> >> >> way.
> >> >
> >> > I think your idea is on the right track.  If all hunks were selected
> by
> >> > default when
> >> > a file was selected, it would work better.  That's an easy change,
> >> > though.
> >>
> >> Great!
> >
> > I've underestimated this a bit :)
> >
> > I thought that the change hunk selections were at least partially sticky,
> > but that's not the case.  So my first task is to make chunk selection
> more
> > explicit,
> > and make the dialog remember the selections in files that are not
> currently
> > being viewed.
>
> If we make them sticky, we will also need a way to clear all the
> selections.


I was intending to use the file treeview to globally toggle all chunks.
When
you first mark the file it selects all chunks.  When you unmark the file it
clears all chunks.  Thus getting all or none chunks selected is at most two
clicks away.


>
> Currently, multiple selections are made via ctrl-clicks ([ctrl-]click
> on the file header to select the whole file), mainly because it was
> easy enough for me to test the shelving mechanism.
>
> Any reason why we need the selection to be sticky?
>

otherwise you lose the selections when you switch to viewing another
file's diffs.  Commit needs the selections from all files at commit time.
Plus, I'm certain people will not want to use ctrl-click for selection.


> > Anyone have any feelings on how that should work?
> > Change background color of selected hunks?
> > Give those hunks a 'sunken' border similar to a pressed button?
> > Change the text in some subtle way?
> > Add check boxes to the left of each hunk?
>
> Actually I've tried the checkbox approach, but I could't get the
> checkboxes to align to the top of the row (vertically), and I don't
> like the look of them sitting in the middle.
>

I've got this sort of working and I agree it doesn't look all that great.

I'm also considering whether to do all the diffs up front and display
them all at once, just like the changeset viewer does.  Clicking on
a file name causes the diff pane to jump to that file's diffs.  This would
fix the problem of losing selections when changing files since the
diff chunk list would not change.

--
Steve
------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
Tortoisehg-develop mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tortoisehg-develop

Reply via email to