[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    branches/KDE/4.2/kdeedu/marble/src/lib
From:       Patrick Spendrin <ps_ml () gmx ! de>
Date:       2009-01-09 23:56:48
Message-ID: 1231545408.884648.11070.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 908600 by sengels:

use the render plugin list directly - the local copy will break to soon 
backport of r908599

 M  +9 -9      LayerManager.cpp  


--- branches/KDE/4.2/kdeedu/marble/src/lib/LayerManager.cpp #908599:908600
@@ -42,8 +42,6 @@
     MarbleModel      *m_model;
     MarbleDataFacade *m_dataFacade;
     PluginManager    *m_pluginManager;
-
-    QList<MarbleRenderPlugin *> m_renderPlugins;
 };
 
 
@@ -54,8 +52,7 @@
     d->m_pluginManager = new PluginManager( this );
 
     // Just for initial testing
-    d->m_renderPlugins = d->m_pluginManager->renderPlugins();
-    foreach( MarbleRenderPlugin * renderPlugin,  d->m_renderPlugins ) {
+    foreach( MarbleRenderPlugin * renderPlugin,  d->m_pluginManager->renderPlugins() ) {
         renderPlugin->setDataFacade( d->m_dataFacade );
         renderPlugin->initialize();
     }
@@ -69,7 +66,7 @@
 
 QList<MarbleRenderPlugin *> LayerManager::renderPlugins() const
 {
-    return d->m_renderPlugins;
+    return d->m_pluginManager->renderPlugins();
 }
 
 QList<MarbleAbstractFloatItem *> LayerManager::floatItems() const
@@ -84,9 +81,12 @@
         return;
     }
 
+    if( !d->m_pluginManager )
+        return;
+
     ViewportParams* viewport = viewParams->viewport();
 
-    foreach( MarbleRenderPlugin *renderPlugin,  d->m_renderPlugins ) {
+    foreach( MarbleRenderPlugin *renderPlugin,  d->m_pluginManager->renderPlugins() ) {
         if ( renderPlugin ){
             if ( renderPlugin->enabled() && renderPlugin->visible() ) {
                 renderPlugin->render( painter, viewport, "ALWAYS_ON_TOP" );
@@ -96,7 +96,7 @@
 
     // Looping a second time through is a quick and dirty way to get 
     // the float items displayed on top:
-    foreach( MarbleRenderPlugin * renderPlugin,  d->m_renderPlugins ) {
+    foreach( MarbleRenderPlugin * renderPlugin,  d->m_pluginManager->renderPlugins() ) {
         if ( renderPlugin->renderPosition().contains("FLOAT_ITEM") ) {
             MarbleAbstractFloatItem *floatItem = dynamic_cast<MarbleAbstractFloatItem *>(renderPlugin);
             if ( floatItem
@@ -117,7 +117,7 @@
 {
     d->m_mapTheme = mapTheme;
 
-    foreach( MarbleRenderPlugin * renderPlugin,  d->m_renderPlugins ) {
+    foreach( MarbleRenderPlugin * renderPlugin,  d->m_pluginManager->renderPlugins() ) {
         bool propertyAvailable = false;
         mapTheme->settings()->propertyAvailable( renderPlugin->nameId(), 
 						 propertyAvailable );
@@ -143,7 +143,7 @@
 
 void LayerManager::syncActionWithProperty( QString nameId, bool checked )
 {
-    foreach( MarbleRenderPlugin * renderPlugin,  d->m_renderPlugins ) {
+    foreach( MarbleRenderPlugin * renderPlugin,  d->m_pluginManager->renderPlugins() ) {
         if ( nameId == renderPlugin->nameId() ) {
             if ( renderPlugin->visible() == checked )
                 return;
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic