[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Denemo-devel] new paste
From: |
Nils Gey |
Subject: |
Re: [Denemo-devel] new paste |
Date: |
Thu, 3 Mar 2011 01:35:02 +0100 |
The new paste is in git.
Differences between the old version (except fewer bugs and higher speed)
* Multistaff pasting now fills up empty measures (if there is an empty measure
in all participating staffs)
* Singlestaff pastes now exactly what you copied. No by-guess adding of
barlines anymore.
* noticable bugfix: Paste handles uneven stafflengths correctly now and fills
in empty measures if needed.
ToDo:
* for a C programmer: d-PutClipObj still plays back the note as well as the
note one octave higher. Please deactivate this.
* non-critical bug if you paste n+1 staffs where is only room for n staffs. too
many empty measures are added.
Please test!
Nils
On Wed, 02 Mar 2011 16:54:07 +0000
Richard Shann <address@hidden> wrote:
> On Wed, 2011-03-02 at 16:30 +0100, Nils Gey wrote:
> > Hello Richard,
> >
> > I know the clipboard internals since I already wrote a working paste.
> > Please leave the measurebreaks and staffbreaks as they are for now, we need
> > both.
> I certainly wasn't offering to change anything there without a very good
> reason :)
> > It is possible to live without the staffbreak objects but it will make
> > things more complicated.
> >
> > I had written a long story for this mail but I just deleted it. I came up
> > with another idea to handle copy and paste in Scheme without changing the
> > internals.
> >
> > With a bit of "luck" the only thing that will need changing is the
> > selection-display for barlines.
> Given a selection (as described in the previous email, ie 6 numbers)
> what is the rule for deciding where to mark in blue?
> Richard
>
>
> > I can already say: Barlines need to be marked as selected properly as if
> > there were real objects, because to the clipboard, and therefore to the
> > user, they are real.
> >
> > Nils
> >
> >
> >
> > On Wed, 02 Mar 2011 10:31:24 +0000
> > Richard Shann <address@hidden> wrote:
> >
> > >
> > > There is more:
> > > Inside Denemo a clipboard (aka clip buffer, cut buffer...) *does*
> > > contain objects called MeasureBreaks, which are put there by the d-Copy
> > > call (and d-Cut which calls it). Where it places these objects it not
> > > known to me, especially what it does when copying measures with no
> > > objects.
> > > The code is very flaky here - there are also objects called StaffBreaks
> > > inserted but whoever did this code also had the idea of putting the
> > > staffs in separate lists, so I think the StaffBreak objects are
> > > redundant.
> > >
> > > We never display clipboards of course; important not to confuse
> > > clipboard with selection.
> > >
> > > Richard
> > >
> > >
> > >
> > > On Wed, 2011-03-02 at 09:45 +0000, Richard Shann wrote:
> > > > Inside Denemo a selection is represented by six numbers:
> > > >
> > > > first staff marked
> > > > last staff marked
> > > > first measure marked
> > > > last measure marked
> > > > first object marked
> > > > last object marked
> > > >
> > > > the barlines you refer to are not denemo objects, they are display
> > > > artifacts created by the display routines at the end of measures.
> > > >
> > > > These numbers start at 1, except if there is no object in a measure when
> > > > the object is numbered as 0, otherwise the object numbers are the number
> > > > of the object counting from the start of the measure.
> > > >
> > > > If you can adopt this model of the representation of selection then we
> > > > might be able to make progress on these issues.
> > > >
> > > > Given any collection of these numbers, what would you wish the display
> > > > to look like?
> > > >
> > > > Richard
> > > >
> > > >
> > > >
> > > > On Wed, 2011-03-02 at 01:26 +0100, Nils Gey wrote:
> > > > > Still more thoughts:
> > > > > a) In Singlestaff selection it should be optional if the user selects
> > > > > a barline or not. So the user has the choice to select the first
> > > > > and/or the last barline in a selection. This can be exactly pasted as
> > > > > selected.
> > > > > b) In Multistaff selection the first and last barline should be
> > > > > always selected since multistaff always selects whole measures.
> > > > >
> > > > > If this is not possible since barlines in Denemo are something
> > > > > special please say directly and in that case forbid a barline as
> > > > > first copied object as well. (Reminder: This is possible if you
> > > > > select from right to left).
> > > > >
> > > > > I expect some confusion about this topic, maybe its better to speak
> > > > > about this in IRC. But un-eqaul behaviours are the problems that make
> > > > > paste hard to do.
> > > > >
> > > > > Nils
> > > > >
> > > > >
> > > > > On Wed, 2 Mar 2011 01:18:00 +0100
> > > > > Nils Gey <address@hidden> wrote:
> > > > >
> > > > > > I'm sorry to revert that again. Forwardselection of barlines is
> > > > > > only possible if followed by an empty measure.
> > > > > > I request that selecting barlines is possible all the time.
> > > > > > Otherwise paste has try to guess if the user wants a tailing
> > > > > > measure break if he selects a complete measure. This will go wrong
> > > > > > in 50% of the cases, which is not acceptable.
> > > > > > So please make it possible that a selection from left to right can
> > > > > > end in a barline.
> > > > > >
> > > > > > I hope this is my last change of observation and opinion :)
> > > > > >
> > > > > > Nils
> > > > > >
> > > > > > On Tue, 1 Mar 2011 19:38:47 +0100
> > > > > > Nils Gey <address@hidden> wrote:
> > > > > >
> > > > > > > I was wrong about not beeing able to select barlines when
> > > > > > > selecting from left to right. It is possible, just not visible.
> > > > > > > So my updated suggestion is to make selected barline and empty
> > > > > > > measures better visible.
> > > > > > >
> > > > > > > Nils
> > > > > > >
> > > > > > > On Mon, 28 Feb 2011 20:42:35 +0100
> > > > > > > Nils Gey <address@hidden> wrote:
> > > > > > >
> > > > > > > > hello list,
> > > > > > > >
> > > > > > > > I'm currently rewriting paste to be better, faster and easier
> > > > > > > > to maintain.
> > > > > > > >
> > > > > > > > 1) I need a function to get the number of staffs in the
> > > > > > > > clipboard. We already have (d-ClipObjects staffnum) but
> > > > > > > > staffcount is unknown to Scheme.
> > > > > > > >
> > > > > > > > 2) The drawing of an empty, selected measure is suboptimal. It
> > > > > > > > looks like the beginning of the next right measure is selected.
> > > > > > > >
> > > > > > > > 3) If you select backwards it is possible to select a leading
> > > > > > > > barline which is a) not possible if you select forward b) not
> > > > > > > > shown in the selection-drawing. This is confusing but not
> > > > > > > > directly related to paste. The old, current, paste has some
> > > > > > > > tests to ignore those leading barlines but this is not
> > > > > > > > necessary at all. If the user copies a barlines it gets pasted,
> > > > > > > > simple as that. But at least the selection must be shown. I
> > > > > > > > have no opinion about removing the possibility to select
> > > > > > > > leading barlines, or allowing it for a forward selection or
> > > > > > > > leaving it as is, I leave that to someone other to decide. It
> > > > > > > > makes no difference to the user and to paste.
> > > > > > > >
> > > > > > > > Nils
> > > > > > > >
> > > > > > > > PS. to Richard:
> > > > > > > > You said "I notice d-StaffUp extends selection...". This is
> > > > > > > > just correct. If you don't want a selection use d-MoveToStaffUp.
> > > > > > > >
> > > > > > > > _______________________________________________
> > > > > > > > Denemo-devel mailing list
> > > > > > > > address@hidden
> > > > > > > > http://lists.gnu.org/mailman/listinfo/denemo-devel
> > > > > > > >
> > > > > > >
> > > > > > > _______________________________________________
> > > > > > > Denemo-devel mailing list
> > > > > > > address@hidden
> > > > > > > http://lists.gnu.org/mailman/listinfo/denemo-devel
> > > > > > >
> > > > > >
> > > > >
> > > > > _______________________________________________
> > > > > Denemo-devel mailing list
> > > > > address@hidden
> > > > > http://lists.gnu.org/mailman/listinfo/denemo-devel
> > > >
> > > >
> > > > _______________________________________________
> > > > Denemo-devel mailing list
> > > > address@hidden
> > > > http://lists.gnu.org/mailman/listinfo/denemo-devel
> > >
>