denemo-devel
[Top][All Lists]
Advanced

[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
> > > 
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]