+#ifndef DISABLE_OCCVIEWER
+ if ( sec == QString( "OCCViewer" ) && param == QString( "clipping_color" ) )
+ {
+ QColor aColor = resMgr->colorValue( "OCCViewer", "clipping_color", QColor( 50, 50, 50 ) );
+ QList<SUIT_ViewManager*> lst;
+ viewManagers( OCCViewer_Viewer::Type(), lst );
+ QListIterator<SUIT_ViewManager*> it( lst );
+ while ( it.hasNext() )
+ {
+ SUIT_ViewModel* vm = it.next()->getViewModel();
+ if ( !vm || !vm->inherits( "OCCViewer_Viewer" ) )
+ continue;
+
+ OCCViewer_Viewer* occVM = (OCCViewer_Viewer*)vm;
+ occVM->setClippingColor( aColor );
+ }
+ }
+#endif
+
+#ifndef DISABLE_OCCVIEWER
+ if ( sec == QString( "OCCViewer" ) && ( param == QString( "clipping_use_default_texture" ) ||
+ param == QString( "clipping_texture" ) ||
+ param == QString( "clipping_modulate" ) ||
+ param == QString( "clipping_scale" ) ) )
+ {
+ bool isDefaultTextureUsed = resMgr->booleanValue( "OCCViewer", "clipping_use_default_texture" );
+ QString aTexture = resMgr->stringValue( "OCCViewer", "clipping_texture" );
+ bool isModulated = resMgr->booleanValue( "OCCViewer", "clipping_modulate" );
+ double aScale = resMgr->doubleValue( "OCCViewer", "clipping_scale" );
+ QList<SUIT_ViewManager*> lst;
+ viewManagers( OCCViewer_Viewer::Type(), lst );
+ QListIterator<SUIT_ViewManager*> it( lst );
+ while ( it.hasNext() )
+ {
+ SUIT_ViewModel* vm = it.next()->getViewModel();
+ if ( !vm || !vm->inherits( "OCCViewer_Viewer" ) )
+ continue;
+
+ OCCViewer_Viewer* occVM = (OCCViewer_Viewer*)vm;
+ occVM->setClippingTextureParams( isDefaultTextureUsed, aTexture, isModulated, aScale );
+ }
+ }
+#endif
+
+#ifndef DISABLE_OCCVIEWER
+ if ( sec == QString( "OCCViewer" ) && param == QString( "projection_mode" ) )
+ {
+ int mode = resMgr->integerValue( "OCCViewer", "projection_mode", 0 );
+ QList<SUIT_ViewManager*> lst;
+ viewManagers( OCCViewer_Viewer::Type(), lst );
+ QListIterator<SUIT_ViewManager*> it( lst );
+ while ( it.hasNext() )
+ {
+ SUIT_ViewModel* vm = it.next()->getViewModel();
+ if ( !vm || !vm->inherits( "OCCViewer_Viewer" ) )
+ continue;
+
+ OCCViewer_Viewer* occVM = (OCCViewer_Viewer*)vm;
+ occVM->setProjectionType( mode );
+ }
+ }
+#endif
+#if OCC_VERSION_LARGE > 0x06090000
+#ifndef DISABLE_OCCVIEWER
+ if ( sec == QString( "OCCViewer" ) && param == QString( "stereo_type" ) )
+ {
+ int mode = resMgr->integerValue( "OCCViewer", "stereo_type", 0 );
+ QList<SUIT_ViewManager*> lst;
+ viewManagers( OCCViewer_Viewer::Type(), lst );
+ QListIterator<SUIT_ViewManager*> it( lst );
+ while ( it.hasNext() )
+ {
+ SUIT_ViewModel* vm = it.next()->getViewModel();
+ if ( !vm || !vm->inherits( "OCCViewer_Viewer" ) )
+ continue;
+
+ OCCViewer_Viewer* occVM = (OCCViewer_Viewer*)vm;
+ occVM->setStereoType( mode );
+ }
+ }
+#endif
+
+#ifndef DISABLE_OCCVIEWER
+ if ( sec == QString( "OCCViewer" ) && param == QString( "anaglyph_filter" ) )
+ {
+ int mode = resMgr->integerValue( "OCCViewer", "anaglyph_filter", 0 );
+ QList<SUIT_ViewManager*> lst;
+ viewManagers( OCCViewer_Viewer::Type(), lst );
+ QListIterator<SUIT_ViewManager*> it( lst );
+ while ( it.hasNext() )
+ {
+ SUIT_ViewModel* vm = it.next()->getViewModel();
+ if ( !vm || !vm->inherits( "OCCViewer_Viewer" ) )
+ continue;
+
+ OCCViewer_Viewer* occVM = (OCCViewer_Viewer*)vm;
+ occVM->setAnaglyphFilter( mode );
+ }
+ }
+#endif
+
+#ifndef DISABLE_OCCVIEWER
+ if ( sec == QString( "OCCViewer" ) && ( param == QString( "focus_type" ) ||
+ param == QString( "focus_value" ) ) )
+ {
+ int aType = resMgr->integerValue( "OCCViewer", "focus_type" );
+ double aValue = resMgr->doubleValue( "OCCViewer", "focus_value" );
+ QList<SUIT_ViewManager*> lst;
+ viewManagers( OCCViewer_Viewer::Type(), lst );
+ QListIterator<SUIT_ViewManager*> it( lst );
+ while ( it.hasNext() )
+ {
+ SUIT_ViewModel* vm = it.next()->getViewModel();
+ if ( !vm || !vm->inherits( "OCCViewer_Viewer" ) )
+ continue;
+
+ OCCViewer_Viewer* occVM = (OCCViewer_Viewer*)vm;
+ occVM->setStereographicFocus( aType, aValue );
+ }
+ }
+#endif
+
+#ifndef DISABLE_OCCVIEWER
+ if ( sec == QString( "OCCViewer" ) && ( param == QString( "iod_type" ) ||
+ param == QString( "iod_value" ) ) )
+ {
+ int aType = resMgr->integerValue( "OCCViewer", "iod_type" );
+ double aValue = resMgr->doubleValue( "OCCViewer", "iod_value" );
+ QList<SUIT_ViewManager*> lst;
+ viewManagers( OCCViewer_Viewer::Type(), lst );
+ QListIterator<SUIT_ViewManager*> it( lst );
+ while ( it.hasNext() )
+ {
+ SUIT_ViewModel* vm = it.next()->getViewModel();
+ if ( !vm || !vm->inherits( "OCCViewer_Viewer" ) )
+ continue;
+
+ OCCViewer_Viewer* occVM = (OCCViewer_Viewer*)vm;
+ occVM->setInterocularDistance( aType, aValue );
+ }
+ }
+#endif
+
+#ifndef DISABLE_OCCVIEWER
+ if ( sec == QString( "OCCViewer" ) && param == QString( "reverse_stereo" ) )
+ {
+ bool reverse = resMgr->booleanValue( "OCCViewer", "reverse_stereo", false );
+ QList<SUIT_ViewManager*> lst;
+ viewManagers( OCCViewer_Viewer::Type(), lst );
+ QListIterator<SUIT_ViewManager*> it( lst );
+ while ( it.hasNext() )
+ {
+ SUIT_ViewModel* vm = it.next()->getViewModel();
+ if ( !vm || !vm->inherits( "OCCViewer_Viewer" ) )
+ continue;
+
+ OCCViewer_Viewer* occVM = (OCCViewer_Viewer*)vm;
+ occVM->setReverseStereo( reverse );
+ }
+ }
+#endif
+
+#ifndef DISABLE_OCCVIEWER
+ if ( sec == QString( "OCCViewer" ) && param == QString( "enable_vsync" ) )
+ {
+ bool enable = resMgr->booleanValue( "OCCViewer", "enable_vsync", true );
+ QList<SUIT_ViewManager*> lst;
+ viewManagers( OCCViewer_Viewer::Type(), lst );
+ QListIterator<SUIT_ViewManager*> it( lst );
+ while ( it.hasNext() )
+ {
+ SUIT_ViewModel* vm = it.next()->getViewModel();
+ if ( !vm || !vm->inherits( "OCCViewer_Viewer" ) )
+ continue;
+
+ OCCViewer_Viewer* occVM = (OCCViewer_Viewer*)vm;
+ occVM->setVSync( enable );
+ }
+ }
+#endif
+
+#ifndef DISABLE_OCCVIEWER
+ if ( sec == QString( "OCCViewer" ) && param == QString( "enable_quad_buffer_support" ) )
+ {
+ bool enable = resMgr->booleanValue( "OCCViewer", "enable_quad_buffer_support", false );
+ QList<SUIT_ViewManager*> lst;
+ viewManagers( OCCViewer_Viewer::Type(), lst );
+ QListIterator<SUIT_ViewManager*> it( lst );
+ while ( it.hasNext() )
+ {
+ SUIT_ViewModel* vm = it.next()->getViewModel();
+ if ( !vm || !vm->inherits( "OCCViewer_Viewer" ) )
+ continue;
+
+ OCCViewer_Viewer* occVM = (OCCViewer_Viewer*)vm;
+ occVM->setQuadBufferSupport( enable );
+ }
+ }
+#endif
+#endif