1. Show the current seek state next next to the service time.
It is very convenient to see how fast one is winding, when scanning
through a movie.
2. Don't jump away from the current position whenever a cut or mark is
added or removed.
2a. The variable self.last_cuts was not initialized, causing a jump
to the first mark position when the first cut is made.
2b. Search backwards for the first difference between old and new
cut lists: After having produced a cut pair (out - in) you
would like to end up at the end (in) rather than beginning
(out). (This also gives more intuitive selected positions in
the general case.)
2c. Inhibit jumping whenever a cut or mark is removed: You don't
want to leave that position now when it has no mark to easily
jump back to.
3. Standing at either border of a cut, at IN or OUT, should always count
as inside the cut, so that removing it is enabled from there.
3a. Count standing exactly at the end of a cut as also standing
in an "OUT" area.
3b. It was not possible to remove a "cut from the beginning" at
all if there was any mark before the "IN" point - it was not
correctly recognized as an "OUT" area.
Also note that nowadays, with the more exact seeking code of Enigma2
(on both platforms, DM7025 and DM800/8000), the CutListEditor can't be
accused of being imprecise any more: As long as you put your cuts at
GOP boundaries (which you are most likely to do if you fine tune your
position with GOP single-stepping), the CutListEditor now has perfect
precision! :-)
patch for #246