]> git.saurik.com Git - wxWidgets.git/commitdiff
wxHtmlCell::AdjustPagebreak now works correctly
authorVáclav Slavík <vslavik@fastmail.fm>
Sat, 16 Oct 1999 15:37:13 +0000 (15:37 +0000)
committerVáclav Slavík <vslavik@fastmail.fm>
Sat, 16 Oct 1999 15:37:13 +0000 (15:37 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4023 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/html/htmlcell.cpp

index ac40ae3c7f4389f0eb401ed8b9d0cce5e96aea76..6ed7c1fa809ef66aa0d5d6e4138c181c76b236f3 100644 (file)
@@ -50,7 +50,7 @@ bool wxHtmlCell::AdjustPagebreak(int *pagebreak)
 {
 
     if ((!m_CanLiveOnPagebreak) && 
-                m_PosY < *pagebreak && m_PosY + m_Height >= *pagebreak) {
+                m_PosY < *pagebreak && m_PosY + m_Height > *pagebreak) {
         *pagebreak = m_PosY;
         if (m_Next != NULL) m_Next -> AdjustPagebreak(pagebreak);
         return TRUE;
@@ -153,14 +153,17 @@ bool wxHtmlContainerCell::AdjustPagebreak(int *pagebreak)
 {
     if (!m_CanLiveOnPagebreak) 
         return wxHtmlCell::AdjustPagebreak(pagebreak);
+
     else {
         wxHtmlCell *c = GetFirstCell();
         bool rt = FALSE;
+        int pbrk = *pagebreak - m_PosY;
 
         while (c) {
-            if (c -> AdjustPagebreak(pagebreak)) rt = TRUE;
+            if (c -> AdjustPagebreak(&pbrk)) rt = TRUE;
             c = c -> GetNext();
         }
+        if (rt) *pagebreak = pbrk + m_PosY;
         return rt;
     }
 }