diff options
author | Marius <mariausol@gmail.com> | 2012-07-04 12:00:14 +0300 |
---|---|---|
committer | Marius <mariausol@gmail.com> | 2012-07-04 12:00:14 +0300 |
commit | 895f68ef1727ec31a51ef8799e2bf576ea7642d0 (patch) | |
tree | baec5079e7fd9febeee6c1cb257b064a46fe665b /tex/context/base/page-mul.mkiv | |
parent | bb0eac07417aec9a0da32a54fbdad4553cebcce7 (diff) | |
download | context-895f68ef1727ec31a51ef8799e2bf576ea7642d0.tar.gz |
beta 2012.07.04 10:42
Diffstat (limited to 'tex/context/base/page-mul.mkiv')
-rw-r--r-- | tex/context/base/page-mul.mkiv | 76 |
1 files changed, 39 insertions, 37 deletions
diff --git a/tex/context/base/page-mul.mkiv b/tex/context/base/page-mul.mkiv index 3792f06ee..e22ecd0a3 100644 --- a/tex/context/base/page-mul.mkiv +++ b/tex/context/base/page-mul.mkiv @@ -11,9 +11,8 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -% SEE PAGE-MUL-NEW.MKIV - -% BEWARE: TEMPORARY ISSUES WITH VSIZE AND HSIZE BUT WILL BE REDONE +% !!! there are some issues with hsize an vsize as well as flushing +% !!! floats but this module will be redone anyway \writestatus{loading}{ConTeXt Page Macros / Simple Multi Column} @@ -304,7 +303,7 @@ %\setcolumntextheight\relax \widowpenalty\zerocount % is gewoon beter \clubpenalty \zerocount % zeker bij grids - \dopushcolumnfloats + \page_floats_column_push_saved \dimen0\dimexpr\pagetotal+\parskip+\openlineheight\relax \ifdim\dimen0<\pagegoal \allowbreak @@ -389,7 +388,7 @@ \synchronizeoutput % new may 2004 / we need to: \pagegoal\vsize \checkendcolumnfootnotes \dosomebreak\allowbreak - \dopopcolumnfloats} + \page_floats_column_pop_saved} %D Because some initializations happen three times, we defined a macro for %D them. Erasing \type{\everypar} is needed because we don't want anything @@ -1084,21 +1083,24 @@ %D %D When all those floats are flushed, we switch to the local flushing routine. -\def\dopushcolumnfloats - {\ifsomefloatwaiting - \showmessage\m!columns6{\the\savednoffloats}% - \global\setbox\savedfloatlist\box\floatlist - \xdef\dopopcolumnfloats - {\global\savednoffloats\the\savednoffloats - \global\setbox\floatlist\box\savedfloatlist - \global\noexpand\somefloatwaitingtrue}% - \global\savednoffloats\zerocount - \global\somefloatwaitingfalse - \else - \global\let\dopopcolumnfloats\relax - \fi} - -\let\dopopcolumnfloats\relax +% \newbox \floatlist +% \newbox \savedfloatlist +% +% \def\page_floats_column_push_saved +% {\ifconditional\c_page_floats_some_waiting +% \showmessage\m!columns6{\the\savednoffloats}% +% \global\setbox\savedfloatlist\box\floatlist +% \xdef\page_floats_column_pop_saved +% {\global\savednoffloats\the\savednoffloats +% \global\setbox\floatlist\box\savedfloatlist +% \global\noexpand\settrue\c_page_floats_some_waiting}% +% \global\savednoffloats\zerocount +% \global\setfalse\c_page_floats_some_waiting +% \else +% \global\let\page_floats_column_pop_saved\relax +% \fi} +% +% \let\page_floats_column_pop_saved\relax % \def\setcolumnfloats % messy as it adapts everypar % {\xdef\globalsavednoffloats{\the\savednoffloats}% @@ -1212,25 +1214,25 @@ \def\docolumnroomfloat {\ifpostponecolumnfloats - \global\roomforfloatfalse - \else\ifnofloatpermitted - \global\roomforfloatfalse + \global\setfalse\c_page_floats_room + \else\ifconditional\c_page_floats_not_permitted + \global\setfalse\c_page_floats_room \else \bgroup \getcolumnstatus\column\count255\total\dimen0\goal\dimen2\\% - \dofloatsgetinfo\s!text + \page_floats_get_info\s!text \setbox\scratchbox\vbox % tricky met objecten ? {\blank[\rootfloatparameter\c!spacebefore] \snaptogrid\vbox{\vskip\floatheight}}% copy? \advance\dimen0\dimexpr\ht\scratchbox+2\openlineheight+.5\lineheight\relax\relax % needed because goal a bit higher \ifdim\dimen0>\dimen2 - \global\roomforfloatfalse + \global\setfalse\c_page_floats_room \else - \global\roomforfloattrue + \global\settrue\c_page_floats_room \fi \ifdim\floatwidth>\hsize \showmessage\m!columns{11}\empty - \global\roomforfloatfalse + \global\setfalse\c_page_floats_room \fi \egroup \fi\fi} @@ -1241,7 +1243,7 @@ \newif\ifflushingcolumnfloats \flushingcolumnfloatstrue \def\doflushcolumnfloat - {\ifpostponecolumnfloats\else\ifflushingcolumnfloats\ifsomefloatwaiting + {\ifpostponecolumnfloats\else\ifflushingcolumnfloats\ifconditional\c_page_floats_some_waiting \doflushcolumnfloatindeed \fi\fi\fi} @@ -1251,7 +1253,7 @@ \let\doflushcolumnfloat\relax \getcolumnstatus\column\mofcolumns\total\dimen0\goal\dimen2\\% \ifdim\dimen0>\zeropoint - \dofloatsgetinfo\s!text + \page_floats_get_info\s!text \ifdim\floatwidth>\hsize % dropped ? \else @@ -1263,7 +1265,7 @@ \ifnum\mofcolumns<\nofcolumns \advance\mofcolumns \plusone \ifdim\ht\currenttopcolumnbox=\zeropoint - \dofloatsflush\s!text{1}% + \page_floats_flush\s!text\plusone \global\setbox\currenttopcolumnbox\vbox {\snaptogrid\vbox{\box\floatbox} \whitespace % nodig ? @@ -1287,7 +1289,7 @@ \blank[\rootfloatparameter\c!spacebefore] \nobreak \fi - \dofloatsflush\s!text{1}% + \page_floats_flush\s!text\plusone \page_otr_command_flush_float_box \blank[\rootfloatparameter\c!spaceafter] \fi @@ -1312,7 +1314,7 @@ {\ifpostponecolumnfloats\else \bgroup \forgetall - \ifsomefloatwaiting + \ifconditional\c_page_floats_some_waiting \dimen8\zeropoint \dimen4\zeropoint \count0\zerocount % count0 can be used local @@ -1326,7 +1328,7 @@ \whitespace % nodig ? \blank[\rootfloatparameter\c!spaceafter]}% \else - \dofloatsgetinfo\s!text + \page_floats_get_info\s!text \ifdim\floatwidth>\hsize \dimen0\dimexpr\floatwidth+\intercolumnwidth+.5pt\relax \dimen2\dimexpr\hsize +\intercolumnwidth+.5pt\relax @@ -1337,7 +1339,7 @@ \count0\zerocount \else \dimen0\dimexpr\count0\hsize+\count0\intercolumnwidth-\intercolumnwidth\relax - \dofloatsflush\s!text{1}% + \page_floats_flush\s!text\plusone \ifdim\floatwidth>\finalcolumntextwidth % better somewhere else too \global\setbox\floatbox\hbox to \finalcolumntextwidth{\hss\box\floatbox\hss}% \fi % otherwise the graphic may disappear @@ -1350,7 +1352,7 @@ \fi \showmessage\m!columns{13}\empty \else - \dofloatsflush\s!text{1}% + \page_floats_flush\s!text\plusone \ifdim\floatwidth>\finalcolumntextwidth % better somewhere else too \global\setbox\floatbox\hbox to \finalcolumntextwidth{\hss\box\floatbox\hss}% \fi % otherwise the graphic may disappear @@ -1386,11 +1388,11 @@ \def\insertcolumnfloats {\doloop - {\ifsomefloatwaiting + {\ifconditional\c_page_floats_some_waiting \bgroup \forgetall % no check for width - \dogetfloat + \page_floats_get \blank[\rootfloatparameter\c!spacebefore] \snaptogrid\vbox{\copy\floatbox} \blank[\rootfloatparameter\c!spaceafter] |