]> git.donarmstrong.com Git - lilypond.git/blob - lily/item-scheme.cc
2d561fbc060a3d9b0f69fd5faa684d5ebf5ffc2b
[lilypond.git] / lily / item-scheme.cc
1 /*
2   item-scheme.cc -- implement Item bindings.
3
4   source file of the GNU LilyPond music typesetter
5
6   (c) 2005--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
7
8 */
9
10 #include "item.hh"
11
12
13 LY_DEFINE (ly_item_p, "ly:item?",
14            1, 0, 0, (SCM g),
15            "Is @var{g} an @code{Item} object?")
16 {
17   Grob *me = unsmob_grob (g);
18   bool b = dynamic_cast<Item *> (me);
19   return ly_bool2scm (b);
20 }
21
22 LY_DEFINE (ly_item_break_dir, "ly:item-break-dir",
23            1, 0, 0, (SCM it),
24            "The break status direction of item @var{it}.  @code{-1} means"
25            " end of line, @code{0}@tie{}unbroken, and"
26            " @code{1}@tie{}beginning of line.")
27 {
28   LY_ASSERT_TYPE (unsmob_item, it, 1);
29   Item *me = unsmob_item (it);
30   return scm_from_int (me->break_status_dir ());
31 }