Hello Paul, > I essay a patch for the following bug: > > Paul
welcome Paul and thanks a lot for your patches. I have attached some comments about your patch at the end of the mail. For the future please use http://git.reviewboard.kde.org/ for posting your patches which makes to review them. In case you want to work also on some other bugs/features I have created the following two bug reports which should be very easy to work on https://bugs.kde.org/show_bug.cgi?id=266051 https://bugs.kde.org/show_bug.cgi?id=266052 Thorsten Here my comments to your patch +void KPrViewModeSlidesSorter::setNormalMode(KoPAViewMode *normalViewMode) +{ + m_normalViewMode = normalViewMode; +} + +void KPrViewModeSlidesSorter::activateSavedViewMode() +{ + m_view->setViewMode(m_normalViewMode ); +} There is no need for the function setNormalMode. It would be better to resue KPrView::showNormal. You need to change the visibility for that. @@ -286,13 +300,17 @@ void KPrViewModeSlidesSorter::populate() QListWidgetItem * item = 0; + KoPAView *view = dynamic_cast<KoPAView *>(m_view); + //Load the available slides foreach( KoPAPageBase* page, m_view->kopaDocument()->pages() ) - { + { currentPage++; QString slideName = page->name().isEmpty() ? i18n("Slide %1", currentPage) : page->name(); item = new QListWidgetItem( QIcon( page->thumbnail( m_iconSize ) ), slideName, m_slidesSorter ); item->setFlags((item->flags() | Qt::ItemIsDragEnabled ) & ~Qt::ItemIsDropEnabled); + if (page == view->activePage()) + m_slidesSorter->setCurrentItem(item); } no need to cast m_view into view you can just use m_view directly +void KPrView::showEvent(QShowEvent *e) +{ + KoView::showEvent(e); + QTimer::singleShot(0, this, SLOT(updateStatusBarAction())); + QTimer::singleShot(0, this, SLOT(updateViewModeAction())); +} + +void KPrView::updateStatusBarAction() +{ + KToggleAction *action = (KToggleAction*) actionCollection()- >action("showStatusBar"); > + if (action && statusBar()) + action->setChecked(! statusBar()->isHidden()); +} + +void KPrView::updateViewModeAction() +{ + KAction *action = (KAction*) actionCollection()->action("view_normal"); + if (action) + action-> setChecked(viewMode() == m_normalMode); +} This code is always execuded when a showEvent happens whereas the stuff needed is needed only once at startup. Maybe it can be done in KPrView::initActions() + if (page == view->activePage()) + m_slidesSorter->setCurrentItem(item); please use brackets also for one line if statements as described here http://techbase.kde.org/Policies/Kdelibs_Coding_Style#Braces _______________________________________________ calligra-devel mailing list [email protected] https://mail.kde.org/mailman/listinfo/calligra-devel
