[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Denemo-devel] [bug #38822] Consistent behaviour and user interface acro

From: Richard Shann
Subject: [Denemo-devel] [bug #38822] Consistent behaviour and user interface across staff and clef directives/properties
Date: Mon, 29 Apr 2013 16:28:36 +0000
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; c) AppleWebKit/531.2+ (KHTML, like Gecko) Version/5.0 Safari/531.2+ Debian/squeeze (2.30.6-1) Epiphany/2.30.6

Follow-up Comment #6, bug #38822 (project denemo):

>Good point. If possible the menu entry should be changed to "No Clef
Directives..." when there are no clef directives, and diplayed as unselectable
(greyed-out), similar to [9] below. 

Unfortunately this menu is one created by the file denemoui.xml, that is, it
is loaded up on program startup. So I am not sure what would be involved in
getting hold of the menu item and interacting with it as directives are
created/deleted. So that looks like a non-trivial tidying job.

10] Tablature is added as a clef directive, a staff directive, and a voice
directive (in the later case the voice directives icon is added without any
menu entries, so the menu is displayed as a thin white horizontal sliver).
Rather, tablature should be consolidated under a single directive; I suggest
the clef directive only. 

The directives affect the thing they are attached to (in this case, modifying
the LilyPond text generated), that set is what the author of the script found
they needed to create a tab staff. There may be neater LilyPond syntax which
could leave some of those elements unchanged, but generally it is not possible
to change the LilyPond output at various points in the output text via a
single directive.

Changing the name of the command to ToggleTabStaff would be good given its
present behavior, but better still would be to upgrade the script to examine
if the staff is currently a tab staff and offer a range of features (such as
changing the tuning it is for - it defaults to guitar).

12] ... the escape key is bound to "OK" rather than "Cancel" 
src/lilydirectives.c:  GtkWidget *dialog = gtk_dialog_new_with_buttons
(_("Select Directive")

is where the widget is created - it will need some code to respond to Esc

13] The Undo behavior can also be fixed in the script, basically taking a
snapshot before the script runs and turning off the storage of history until
the script finished. The command then undoes in one step.

14] Yes, actually nothing is "present" the mousing.c code would need to know
not to respond if the staff is a voice. (There are no widgets in the drawing
area, it is all hand coded. I looked at using a gtk widget for the drawing
area that allows buttons to be placed in it, but could not get it working).

15] Clipping the top staff line. Well, there are a lot of collisions in the
display to be tackled - some, I suspect are completely un-wonted. I didn't get
round to that yet
 I think that one is just down to the tab staff script again, there is a value
to set the y position of text in the display.

Thank you for the detailed work - are you able to tinker with scripts
yourself? They are written in Scheme and the facilities for modifying testing
and saving scripted commands are all built in to Denemo.


Reply to this item at:


  Message sent via/by Savannah

reply via email to

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