X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fpage-marker.hh;h=cb823d0f0d18cf496825b6284f21d0e6ab0ba25d;hb=47db9a3883d726ca53e2133a3b2298f78dd6a32e;hp=a925a6c9ce87c6d8da562f04c1104195d9a652ad;hpb=5bb1618e65e0b8031b9aed8d5f218986e3d3c5a0;p=lilypond.git diff --git a/lily/include/page-marker.hh b/lily/include/page-marker.hh index a925a6c9ce..cb823d0f0d 100644 --- a/lily/include/page-marker.hh +++ b/lily/include/page-marker.hh @@ -1,30 +1,51 @@ /* - page-marker.hh -- declare Page_marker + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 2007--2015 Nicolas Sceaux - (c) 2007 Nicolas Sceaux + LilyPond is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + LilyPond is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with LilyPond. If not, see . */ #ifndef PAGE_MARKER_HH #define PAGE_MARKER_HH #include "smobs.hh" +#include "virtual-methods.hh" -class Page_marker +class Page_marker : public Smob { - DECLARE_SMOBS (Page_marker); - +public: + SCM mark_smob (); + static const char type_p_name_[]; + virtual ~Page_marker (); +private: SCM symbol_; /* either 'page-turn-permission or 'page-break-permission */ SCM permission_; /* 'force, 'allow, or '() */ + SCM label_; /* bookmarking label (a symbol) */ public: - Page_marker (SCM symbol, SCM permission); - + Page_marker (); + Page_marker (Page_marker const &); + VIRTUAL_COPY_CONSTRUCTOR (Page_marker, Page_marker); + + void set_permission (SCM symbol, SCM permission); + void set_label (SCM label); + SCM permission_symbol (); SCM permission_value (); + SCM label (); }; -DECLARE_UNSMOB (Page_marker, page_marker) #endif /* PAGE_MARKER_HH */