Version: 1.2.92 (using KDE 3.1.93 (CVS >= 20031028), yes) Compiler: gcc version 3.2.2 20030217 (Yellow Dog Linux 3.0 3.2.2-2a) OS: Linux (ppc) release 2.4.20-8d I can only see the first page of a presentation. If i play the presentation the timer refuses to work, and when i manually press the page effect happens but it then locks at the first page.
Created attachment 3068 [details] test presentation that annoys kpresenter
Subject: koffice/kpresenter CVS commit by zachmann: Fix: during a presentation varibales on the sticky page where not updated. CCMAIL: 67515-done@bugs.kde.org M +16 -7 kprcanvas.cc 1.377 M +1 -0 kprcanvas.h 1.143
Here is the rest of the patch to completely fix this bug: Index: kprcanvas.cc =================================================================== RCS file: /home/kde/koffice/kpresenter/kprcanvas.cc,v retrieving revision 1.377 diff -u -u -r1.377 kprcanvas.cc --- kprcanvas.cc 18 Nov 2003 07:02:29 -0000 1.377 +++ kprcanvas.cc 14 Dec 2003 18:27:46 -0000 @@ -3426,7 +3426,10 @@ //draw sticky object //the numbers for the sticky page have to be recalculated KPrPage* saveActivePage = m_activePage; - setActivePage(m_view->kPresenterDoc()->pageList().at(currPresPage-1)); + KPresenterDoc *doc = m_view->kPresenterDoc(); + doc->displayActivePage( doc->pageList().at( currPresPage-1 ) ); + setActivePage(doc->pageList().at( currPresPage - 1 ) ); + //setActivePage(m_view->kPresenterDoc()->pageList().at(currPresPage-1)); drawAllObjectsInPage( &p, stickyPage()->objectList() ); setActivePage( saveActivePage );
This patch fixes printing too: Index: kprcanvas.h =================================================================== RCS file: /home/kde/koffice/kpresenter/kprcanvas.h,v retrieving revision 1.143 diff -u -u -r1.143 kprcanvas.h --- kprcanvas.h 18 Nov 2003 07:02:29 -0000 1.143 +++ kprcanvas.h 14 Dec 2003 18:58:48 -0000 @@ -420,7 +420,7 @@ void _repaint( const QRect &r ); void _repaint( KPObject *o ); - void printPage( QPainter*, int pageNum ) const; + void printPage( QPainter*, int pageNum ); void doObjEffects(); void drawObject( KPObject*, QPixmap*, int, int, int, int, int, int ); Index: kprcanvas.cc =================================================================== RCS file: /home/kde/koffice/kpresenter/kprcanvas.cc,v retrieving revision 1.377 diff -u -u -r1.377 kprcanvas.cc --- kprcanvas.cc 18 Nov 2003 07:02:29 -0000 1.377 +++ kprcanvas.cc 14 Dec 2003 18:58:54 -0000 @@ -3426,7 +3426,10 @@ //draw sticky object //the numbers for the sticky page have to be recalculated KPrPage* saveActivePage = m_activePage; - setActivePage(m_view->kPresenterDoc()->pageList().at(currPresPage-1)); + KPresenterDoc *doc = m_view->kPresenterDoc(); + doc->displayActivePage( doc->pageList().at( currPresPage-1 ) ); + setActivePage(doc->pageList().at( currPresPage - 1 ) ); + //setActivePage(m_view->kPresenterDoc()->pageList().at(currPresPage-1)); drawAllObjectsInPage( &p, stickyPage()->objectList() ); setActivePage( saveActivePage ); @@ -3462,14 +3465,18 @@ p.end(); } -void KPrCanvas::printPage( QPainter* painter, int pageNum ) const +void KPrCanvas::printPage( QPainter* painter, int pageNum ) { //kdDebug(33001) << "KPrCanvas::printPage" << endl; - KPrPage* page = m_view->kPresenterDoc()->pageList().at(pageNum); - QRect rect = page->getZoomPageRect(); -// TODO set current page to "page" ? + KPrPage* saveActivePage = m_activePage; + KPresenterDoc *doc = m_view->kPresenterDoc(); + KPrPage* page = doc->pageList().at( pageNum ); + QRect rect = page->getZoomPageRect(); + doc->displayActivePage( page ); + setActivePage( page ); drawBackground( painter, rect ); drawObjects( painter, rect, false, SM_NONE, false/*no specific effects*/ ); + setActivePage( saveActivePage ); } void KPrCanvas::doObjEffects()
Subject: koffice/kpresenter CVS commit by geiseri: Fix text variables in printings, icon previews, and web export. Blessed by David and Lukas. CCMAIL: koffice-devel@mail.kde.org CCMAIL: 67515-done@bugs.kde.org M +12 -5 kprcanvas.cc 1.378 M +1 -1 kprcanvas.h 1.144 --- koffice/kpresenter/kprcanvas.cc #1.377:1.378 @@ -3427,5 +3427,8 @@ void KPrCanvas::drawPageInPix( QPixmap & //the numbers for the sticky page have to be recalculated KPrPage* saveActivePage = m_activePage; - setActivePage(m_view->kPresenterDoc()->pageList().at(currPresPage-1)); + KPresenterDoc *doc = m_view->kPresenterDoc(); + doc->displayActivePage( doc->pageList().at( currPresPage-1 ) ); + setActivePage(doc->pageList().at( currPresPage - 1 ) ); + //setActivePage(m_view->kPresenterDoc()->pageList().at(currPresPage-1)); drawAllObjectsInPage( &p, stickyPage()->objectList() ); setActivePage( saveActivePage ); @@ -3463,12 +3466,16 @@ void KPrCanvas::drawCurrentPageInPix( QP } -void KPrCanvas::printPage( QPainter* painter, int pageNum ) const +void KPrCanvas::printPage( QPainter* painter, int pageNum ) { //kdDebug(33001) << "KPrCanvas::printPage" << endl; - KPrPage* page = m_view->kPresenterDoc()->pageList().at(pageNum); + KPrPage* saveActivePage = m_activePage; + KPresenterDoc *doc = m_view->kPresenterDoc(); + KPrPage* page = doc->pageList().at( pageNum ); QRect rect = page->getZoomPageRect(); -// TODO set current page to "page" ? + doc->displayActivePage( page ); + setActivePage( page ); drawBackground( painter, rect ); drawObjects( painter, rect, false, SM_NONE, false/*no specific effects*/ ); + setActivePage( saveActivePage ); } --- koffice/kpresenter/kprcanvas.h #1.143:1.144 @@ -421,5 +421,5 @@ protected: void _repaint( KPObject *o ); - void printPage( QPainter*, int pageNum ) const; + void printPage( QPainter*, int pageNum ); void doObjEffects(); void drawObject( KPObject*, QPixmap*, int, int, int, int, int, int );