]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/type-swallow-translator.cc
Merge branch 'master' of git+ssh://jneem@git.sv.gnu.org/srv/git/lilypond
[lilypond.git] / lily / type-swallow-translator.cc
index 194bd605b3dc36343de2981680fcc72fd9feebc7..87510de0d4ec67788a8218242311a5784692920c 100644 (file)
@@ -3,19 +3,67 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c)  1997--2002 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
 */
 
-#include "type-swallow-translator.hh"
-#include "musical-request.hh"
+#include "translator.hh"
+#include "music.hh"
 
+#include "translator.icc"
 
-bool
-Type_swallow_translator::try_music (Music*r)
+class Skip_event_swallow_translator : public Translator
+{
+protected:
+  virtual bool try_music (Music *) { return true; }
+
+public:
+  TRANSLATOR_DECLARATIONS (Skip_event_swallow_translator);
+};
+
+class Rest_swallow_translator : public Translator
+{
+protected:
+  virtual bool try_music (Music *) { return true; }
+
+public:
+  TRANSLATOR_DECLARATIONS (Rest_swallow_translator);
+};
+
+Skip_event_swallow_translator::Skip_event_swallow_translator ()
 {
-  if (classname (r) == swallow_str_)
-      return true;
-  return false;
 }
 
-DECLARE_REQUEST_SWALLOWER(Skip_req);
+ADD_TRANSLATOR (Skip_event_swallow_translator,
+               "Swallow \\skip.",
+               "",
+               "",
+               "");
+
+Rest_swallow_translator::Rest_swallow_translator (){}
+
+ADD_TRANSLATOR (Rest_swallow_translator,
+               "Swallow rest",
+               "",
+               "",
+               "");
+
+class Note_swallow_translator : public Translator
+{
+protected:
+  virtual bool try_music (Music *) { return true; }
+
+public:
+  TRANSLATOR_DECLARATIONS (Note_swallow_translator);
+};
+
+Note_swallow_translator::Note_swallow_translator ()
+{
+}
+
+ADD_TRANSLATOR (Note_swallow_translator,
+               "Swallow notes",
+               "",
+               "",
+
+               "");
+