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 <[email protected]> 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 <[email protected]> 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 <[email protected]> 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 <[email protected]> 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 <[email protected]> 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 > > > > > > > > [email protected] > > > > > > > > http://lists.gnu.org/mailman/listinfo/denemo-devel > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > > > > > > Denemo-devel mailing list > > > > > > > [email protected] > > > > > > > http://lists.gnu.org/mailman/listinfo/denemo-devel > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > > > > Denemo-devel mailing list > > > > > [email protected] > > > > > http://lists.gnu.org/mailman/listinfo/denemo-devel > > > > > > > > > > > > _______________________________________________ > > > > Denemo-devel mailing list > > > > [email protected] > > > > http://lists.gnu.org/mailman/listinfo/denemo-devel > > > > _______________________________________________ Denemo-devel mailing list [email protected] http://lists.gnu.org/mailman/listinfo/denemo-devel
