+
+class FunctionWrapperEvent (Event):
+ def __init__ (self, function_name = None):
+ Event.__init__ (self)
+ self.function_name = function_name
+ def pre_note_ly (self, is_chord_element):
+ if self.function_name:
+ return "\\%s" % self.function_name
+ else:
+ return ''
+ def pre_chord_ly (self):
+ return ''
+ def ly_expression (self):
+ if self.function_name:
+ return "\\%s" % self.function_name
+ else:
+ return ''
+
+class ParenthesizeEvent (FunctionWrapperEvent):
+ def __init__ (self):
+ FunctionWrapperEvent.__init__ (self, "parenthesize")
+
+class NotestyleEvent (Event):
+ def __init__ (self):
+ Event.__init__ (self)
+ self.style = None
+ self.filled = None
+ def pre_chord_ly (self):
+ if self.style:
+ return "\\once \\override NoteHead #'style = #%s" % self.style
+ else:
+ return ''
+ def pre_note_ly (self, is_chord_element):
+ if self.style and is_chord_element:
+ return "\\tweak #'style #%s" % self.style
+ else:
+ return ''
+ def ly_expression (self):
+ return self.pre_chord_ly ()
+
+