Definitelly! :-)
> What's somewhat sad is how
> little code was actually required in partialcommit.py. If I had realized it
> would be that easy we could have done this ages ago.
As is often the case, thinks usually seem simpler in hindsight. Don't
kick yourself too much about this!
>> I think the way you describe this working is great if slightly
>> undiscoverable. Maybe we could show a tooltip or status message
>> whenever the user selects some text that meets the "partial chunk"
>> requirements, saying "right click to exclude lines from commit" or
>> something similar?
>
>
> Yeah, perhaps.
>
>> Another option would be to add a toggle button, which toggles the
>> "exclude mode", which would let you add margin markers (such as those
>> that you can add in Notepad++) to select the lines that should be
>> excluded...
>
>
> How about this: when a Qsci selection is active and the user clicks on the
> change selection / folding margin on a line within the selection, we toggle
> the striked state for the selected lines.
>
> I also think we'll be able to capture the selection changed signal and move
> the selection start point to ensure the selection always starts in col 0 of
> the start line. This will be a visual clue that you are selecting lines of
> the diff, and not just arbitrary text.
I think the trick will be in making sure that the user can tell at a
glance when he can toggle individual lines and when he wont.
For example we could stop the selection from going beyond the line at
which point it is no longer possible to do a partial chunk selection.
That is, the user starts selecting on a line (I assume full lines will
be always selected). The user drags the mouse down a few lines which
could be partially selected, and the selection follows his mouse. The
user keeps going down until it reaches a line that could not be
partially selected with the rest, at which point the selection gets
"stuck" at the last valid line, even if the mouse is still clicked and
keeps going down. If the user moves the mouse back up (without
releasing the button) and reaches the bottom of the "splittable area"
the selection starts to follow the mouse again.
I don't know if this is feasible with QT, but I think it could work.
What I don't know is if my explanation can be understood by anybody
other than myself :-P
Cheers,
Angel