From d2b92bb7de0e604d78557c52618d090863d4224c Mon Sep 17 00:00:00 2001 From: Marius Date: Tue, 19 Jul 2011 12:00:13 +0300 Subject: beta 2011.07.19 10:35 --- metapost/context/base/mp-grph.mp | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) (limited to 'metapost/context') diff --git a/metapost/context/base/mp-grph.mp b/metapost/context/base/mp-grph.mp index 3cd9f2cfb..48776a09f 100644 --- a/metapost/context/base/mp-grph.mp +++ b/metapost/context/base/mp-grph.mp @@ -22,13 +22,29 @@ string CRLF ; CRLF := char 10 & char 13 ; picture _currentpicture_ ; +numeric _fig_nesting_ ; _fig_nesting_ := 0 ; + def beginfig (expr c) = - begingroup - charcode := c ; - resetfig ; - scantokens extra_beginfig ; + _fig_nesting_ := _fig_nesting_ + 1 ; + if _fig_nesting_ = 1 : + begingroup + charcode := c ; + resetfig ; + scantokens extra_beginfig ; + fi ; enddef ; +def endfig = + ; % safeguard + if _fig_nesting_ = 1 : + scantokens extra_endfig; + shipit ; + endgroup ; + fi ; + _fig_nesting_ := _fig_nesting_ - 1 ; +enddef; + + def resetfig = clearxy ; clearit ; -- cgit v1.2.3