source file of the GNU LilyPond music typesetter
- (c) 1999--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1999--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
#include "group-interface.hh"
-#include "score-element.hh"
-
-Group_interface::Group_interface (Score_element const* e)
-{
- elt_l_ = (Score_element*)e;
- name_ = "elements";
-}
-
-
-Group_interface::Group_interface (Score_element const *e, String s)
-{
- elt_l_ =(Score_element*)e;
- name_ = s;
-}
-bool
-Group_interface::has_interface ()
-{
- SCM el = elt_l_->get_elt_property (name_.ch_C());
-
- return el == SCM_EOL || gh_pair_p (el);
-}
-
+#include "grob.hh"
void
-Group_interface::add_thing (SCM s)
+Group_interface::add_thing (Grob*me, String name, SCM s)
{
- elt_l_->set_elt_property (name_.ch_C (),
- gh_cons (s, elt_l_->get_elt_property (name_.ch_C())));
+ me->set_grob_property (name.ch_C (),
+ gh_cons (s, me->get_grob_property (name.ch_C ())));
}
int
-Group_interface::count ()
+Group_interface::count (Grob *me, String name)
{
- return scm_ilength (elt_l_->get_elt_property (name_.ch_C()));
+ return scm_ilength (me->get_grob_property (name.ch_C ()));
}
+
void
-Group_interface::set_interface ()
+Pointer_group_interface::add_element (Grob*me, String name, Grob*p)
{
- if (!has_interface ())
- {
- elt_l_->set_elt_property (name_.ch_C (), SCM_EOL);
- }
+ Group_interface::add_thing (me, name, p->self_scm ());
}
-