- The method should only be called from the macro
- IMPLEMENT_TRANSLATOR_LISTENER.
- */
-void
-Translator::add_translator_listener (translator_listener_record **listener_list,
- translator_listener_record *r,
- Listener (*get_listener) (void *),
- const char *ev_class)
-{
- /* ev_class is the C++ identifier name. Convert to scm symbol */
- string name = string (ev_class);
- name = replace_all (name, '_', '-');
- name += "-event";
-
- /* It's OK to use scm_gc_protect_object for protection, because r is
- statically allocated. */
- // NO it's damn not !!!! --hwn
- SCM class_sym = scm_str2symbol (name.c_str ());
-
- add_listened_event_class (class_sym);
- r->event_class_ = class_sym;
- r->get_listener_ = get_listener;
- r->next_ = *listener_list;
- *listener_list = r;
+ static_properties = scm_acons (ly_symbol2scm ("properties-read"),
+ parse_symbol_list (read), static_properties);
+
+ static_properties = scm_acons (ly_symbol2scm ("properties-written"),
+ parse_symbol_list (write), static_properties);
+
+ return static_properties;