\image html vtk_view_highlight.png
-<b>Dynamic pre-selection switch</b> - allows to switch on/off dynamic
-pre-selection of objects. When the dynamic pre-selection is switched
-on, an objects can be selected by clicking the point/cell belonging to
+These buttons allow to switch between three pre-selection modes.
+Possible choices:
+- <b>Standard preselection mode</b> - pre-selection is enabled in a standard mode;
+- <b>Dynamic preselection mode</b> - when the dynamic pre-selection is chosen,
+an objects can be selected by clicking the point/cell belonging to
this object, with some performance loss. Switch dynamic pre-selection
-off to have a good performance on big objects (for example, huge
-meshes).
+off to have a good performance on big objects (for example, huge meshes);
+- <b>Disable preselection</b> - pre-selection is disabled.
+
+<hr>
+
+\image html vtk_view_selection.png
+
+<b>Enable/Disable selection</b> - enables or disables selection in the view.
<hr>
\image html vtk_view_triedre.png
vm->setStaticTrihedronVisible( resMgr->booleanValue( "3DViewer", "show_static_trihedron", vm->isStaticTrihedronVisible() ) );
vm->setInteractionStyle( resMgr->integerValue( "3DViewer", "navigation_mode", vm->interactionStyle() ) );
vm->setZoomingStyle( resMgr->integerValue( "3DViewer", "zooming_mode", vm->zoomingStyle() ) );
- vm->setDynamicPreSelection( resMgr->booleanValue( "VTKViewer", "dynamic_preselection", vm->dynamicPreSelection() ) );
+ vm->setPreSelectionMode(resMgr->integerValue( "VTKViewer", "preselection", vm->preSelectionMode() ) );
+ vm->enableSelection( resMgr->booleanValue( "VTKViewer", "enable_selection", vm->isSelectionEnabled() ) );
vm->setIncrementalSpeed( resMgr->integerValue( "VTKViewer", "speed_value", vm->incrementalSpeed() ),
resMgr->integerValue( "VTKViewer", "speed_mode", vm->incrementalSpeedMode() ) );
vm->setSpacemouseButtons( resMgr->integerValue( "VTKViewer", "spacemouse_func1_btn", vm->spacemouseBtn(1) ),
anIndicesList << 0 << 1;
pref->setItemProperty( "strings", aValuesList, vtkSpeedMode );
pref->setItemProperty( "indexes", anIndicesList, vtkSpeedMode );
- // .... -> dynamic pre-selection
- pref->addPreference( tr( "PREF_DYNAMIC_PRESELECTION" ), vtkGen, LightApp_Preferences::Bool, "VTKViewer", "dynamic_preselection" );
+
+ // ... "Selection" group <<start>>
+ int vtkSelectionGroup = pref->addPreference( tr( "PREF_GROUP_SELECTION" ), vtkGroup );
+ pref->setItemProperty( "columns", 2, vtkSelectionGroup );
+ // .... -> preselection
+ int vtkPreselection = pref->addPreference( tr( "PREF_PRESELECTION" ), vtkSelectionGroup,
+ LightApp_Preferences::Selector, "VTKViewer", "preselection" );
+ aValuesList.clear();
+ anIndicesList.clear();
+ aValuesList << tr("PREF_PRESELECTION_STANDARD") << tr("PREF_PRESELECTION_DYNAMIC") << tr("PREF_PRESELECTION_DISABLED");
+ anIndicesList << 0 << 1 << 2;
+ pref->setItemProperty( "strings", aValuesList, vtkPreselection );
+ pref->setItemProperty( "indexes", anIndicesList, vtkPreselection );
+ // .... -> enable selection
+ pref->addPreference( tr( "PREF_ENABLE_SELECTION" ), vtkSelectionGroup, LightApp_Preferences::Bool, "VTKViewer", "enable_selection" );
+ // ... "Selection" group <<end>>
+
// ... -> empty frame (for layout) <<end>>
// ... space mouse sub-group <<start>>
#endif
#ifndef DISABLE_VTKVIEWER
- if ( sec == QString( "VTKViewer" ) && param == QString( "dynamic_preselection" ) )
+ if ( sec == QString( "VTKViewer" ) && param == QString( "preselection" ) )
+ {
+ int mode = resMgr->integerValue( "VTKViewer", "preselection", 0 );
+ QList<SUIT_ViewManager*> lst;
+#ifndef DISABLE_SALOMEOBJECT
+ viewManagers( SVTK_Viewer::Type(), lst );
+ QListIterator<SUIT_ViewManager*> it( lst );
+ while ( it.hasNext() )
+ {
+ SUIT_ViewModel* vm = it.next()->getViewModel();
+ if ( !vm || !vm->inherits( "SVTK_Viewer" ) )
+ continue;
+
+ SVTK_Viewer* vtkVM = dynamic_cast<SVTK_Viewer*>( vm );
+ if( vtkVM ) vtkVM->setPreSelectionMode( mode );
+ }
+#endif
+ }
+#endif
+
+#ifndef DISABLE_VTKVIEWER
+ if ( sec == QString( "VTKViewer" ) && param == QString( "enable_selection" ) )
{
- bool mode = resMgr->booleanValue( "VTKViewer", "dynamic_preselection", true );
+ bool isToEnableSelection = resMgr->booleanValue( "VTKViewer", "enable_selection", true );
QList<SUIT_ViewManager*> lst;
#ifndef DISABLE_SALOMEOBJECT
viewManagers( SVTK_Viewer::Type(), lst );
continue;
SVTK_Viewer* vtkVM = dynamic_cast<SVTK_Viewer*>( vm );
- if( vtkVM ) vtkVM->setDynamicPreSelection( mode );
+ if( vtkVM ) vtkVM->enableSelection( isToEnableSelection );
}
#endif
}
<!-- VTK viewer preferences -->
<parameter name="background" value="0, 0, 0"/>
<parameter name="projection_mode" value="0"/>
- <parameter name="dynamic_preselection" value="false"/>
+ <parameter name="preselection" value="0"/>
+ <parameter name="enable_selection" value="true"/>
<parameter name="speed_value" value="10"/>
<parameter name="speed_mode" value="0"/>
<parameter name="spacemouse_func1_btn" value="1"/>
emit selected( a );
}
+/*!
+ \brief Enable/disable action group
+*/
+void QtxActionGroup::setEnabled( bool on )
+{
+ QtxActionSet::setEnabled( on );
+ myActionGroup->setEnabled( on );
+}
+
/*!
\brief Update action group for the specified widget.
\param w a widget this action group is added to
void add( QAction* );
+ void setEnabled( bool );
+
public slots:
void setExclusive( const bool );
void setUsesDropDown( const bool );
{
mySelector = theSelector;
}
-
+
/*!
To map current selection to VTK representation
*/
SVTK_SelectionEvent* theSelectionEvent,
bool theIsHighlight)
{
- if ( !GetPickable() )
+ if ( !GetPickable() || !mySelector->IsPreSelectionEnabled() )
return false;
vtkRenderer *aRenderer = theInteractorStyle->GetCurrentRenderer();
SVTK_SelectionEvent* theSelectionEvent,
bool theIsHighlight)
{
- if ( !GetPickable() || !mySelector )
+ if ( !GetPickable() || !mySelector || !mySelector->IsSelectionEnabled() )
return false;
myOutlineActor->SetVisibility( false );
*/
void SVTK_InteractorStyle::onCursorMove(QPoint mousePos)
{
+ if ( !GetSelector()->IsPreSelectionEnabled() )
+ return;
+
// processing highlighting
SVTK_SelectionEvent* aSelectionEvent = GetSelectionEventFlipY();
this->FindPokedRenderer(aSelectionEvent->myX,aSelectionEvent->myY);
const Selection_Mode Elem0DSelection = 7;
const Selection_Mode BallSelection = 8;
+//! Preselection modes
+typedef int Preselection_Mode;
+
+const Preselection_Mode Standard_Preselection = 0;
+const Preselection_Mode Dynamic_Preselection = 1;
+const Preselection_Mode Preselection_Disabled = 2;
#endif
{
mySelectionMode = ActorSelection;
myDynamicPreselection = true;
+ myPreselectionEnabled = true;
+ mySelectionEnabled = true;
myPicker->Delete();
myCellPicker->Delete();
{
return myDynamicPreselection;
}
+
+void
+SVTK_SelectorDef
+::SetPreSelectionEnabled( bool theEnabled )
+{
+ myPreselectionEnabled = theEnabled;
+}
+
+bool
+SVTK_SelectorDef
+::IsPreSelectionEnabled() const
+{
+ return mySelectionEnabled && myPreselectionEnabled;
+}
+
+void
+SVTK_SelectorDef
+::SetSelectionEnabled( bool theEnabled )
+{
+ mySelectionEnabled = theEnabled;
+}
+
+bool
+SVTK_SelectorDef
+::IsSelectionEnabled() const
+{
+ return mySelectionEnabled;
+}
virtual
bool
GetDynamicPreSelection() const = 0;
+
+ virtual
+ void
+ SetPreSelectionEnabled( bool theEnabled ) = 0;
+
+ virtual
+ bool
+ IsPreSelectionEnabled() const = 0;
+
+ virtual
+ void
+ SetSelectionEnabled( bool theEnabled ) = 0;
+
+ virtual
+ bool
+ IsSelectionEnabled() const = 0;
};
bool
GetDynamicPreSelection() const;
+ virtual
+ void
+ SetPreSelectionEnabled( bool theEnabled );
+
+ virtual
+ bool
+ IsPreSelectionEnabled() const;
+
+ virtual
+ void
+ SetSelectionEnabled( bool theEnabled );
+
+ virtual
+ bool
+ IsSelectionEnabled() const;
+
private:
int mySelectionMode;
bool myDynamicPreselection;
+ bool myPreselectionEnabled;
+ bool mySelectionEnabled;
struct TIOLessThan
{
#include <vtkActorCollection.h>
//#include "SUIT_Session.h"
-#include "SVTK_Selection.h"
#include "SVTK_ViewModel.h"
#include "SVTK_ViewWindow.h"
#include "SVTK_View.h"
myProjMode = 0;
myStyle = 0;
myZoomingStyle = 0;
- myDynamicPreSelection = false;
+ mySelectionEnabled = true;
+ myPreSelectionMode = Standard_Preselection;
mySpaceBtn[0] = 1;
mySpaceBtn[1] = 2;
mySpaceBtn[2] = 9;
aViewWindow->SetProjectionMode( projectionMode() );
aViewWindow->SetInteractionStyle( interactionStyle() );
aViewWindow->SetZoomingStyle( zoomingStyle() );
- aViewWindow->SetDynamicPreSelection( dynamicPreSelection() );
+ aViewWindow->SetPreSelectionMode( preSelectionMode() );
+ aViewWindow->SetSelectionEnabled( isSelectionEnabled() );
aViewWindow->SetIncrementalSpeed( incrementalSpeed(), incrementalSpeedMode() );
aViewWindow->SetSpacemouseButtons( spacemouseBtn(1), spacemouseBtn(2), spacemouseBtn(3) );
}
/*!
- \return dynamic preselection
+ \return current preselection mode
*/
-bool SVTK_Viewer::dynamicPreSelection() const
+Preselection_Mode SVTK_Viewer::preSelectionMode() const
{
- return myDynamicPreSelection;
+ return myPreSelectionMode;
}
/*!
- Sets dynamic preselection
- \param theMode - new dynamic preselection mode
+ Sets preselection mode
+ \param theMode - new preselection mode
*/
-void SVTK_Viewer::setDynamicPreSelection( const bool theMode )
+void SVTK_Viewer::setPreSelectionMode( Preselection_Mode theMode )
{
- myDynamicPreSelection = theMode;
+ myPreSelectionMode = theMode;
if (SUIT_ViewManager* aViewManager = getViewManager()) {
QVector<SUIT_ViewWindow*> aViews = aViewManager->getViews();
for ( uint i = 0; i < aViews.count(); i++ )
{
if ( TViewWindow* aView = dynamic_cast<TViewWindow*>(aViews.at( i )) )
- aView->SetDynamicPreSelection( theMode );
+ aView->SetPreSelectionMode( theMode );
}
}
}
{
mySelectionEnabled = isEnabled;
//!! To be done for view windows
+
+ if (SUIT_ViewManager* aViewManager = getViewManager()) {
+ QVector<SUIT_ViewWindow*> aViews = aViewManager->getViews();
+ for ( uint i = 0; i < aViews.count(); i++ )
+ {
+ if ( TViewWindow* aView = dynamic_cast<TViewWindow*>(aViews.at( i )) )
+ aView->SetSelectionEnabled( isEnabled );
+ }
+ }
}
/*!
#include "SVTK.h"
#include "SVTK_ViewModelBase.h"
+#include "SVTK_Selection.h"
#include "Qtx.h"
//! Sets zooming style
void setZoomingStyle( const int );
- //! Gets dynamic preselection
- bool dynamicPreSelection() const;
-
- //! Sets dynamic preselection
- void setDynamicPreSelection( const bool );
+ //! Gets current preselection mode (standard, dynamic or disabled)
+ Preselection_Mode preSelectionMode() const;
+ //! Sets new preselection mode
+ void setPreSelectionMode( Preselection_Mode );
+
//! Get incremental speed (see #SVTK_InteractorStyle::ControllerIncrement)
int incrementalSpeed() const;
int myProjMode;
int myStyle;
int myZoomingStyle;
- bool myDynamicPreSelection;
+ Preselection_Mode myPreSelectionMode;
int mySpaceBtn[3];
};
#include <QToolBar>
#include <QEvent>
#include <QFileInfo>
+#include <QSignalMapper>
#include <QXmlStreamWriter>
#include <QXmlStreamReader>
#include <QXmlStreamAttributes>
#include "SUIT_ViewManager.h"
#include "QtxActionToolMgr.h"
#include "QtxMultiAction.h"
+#include "QtxActionGroup.h"
#include "VTKViewer_Utilities.h"
#include "VTKViewer_Trihedron.h"
{
myInteractor = new SVTK_RenderWindowInteractor(this,"SVTK_RenderWindowInteractor");
- SVTK_Selector* aSelector = SVTK_Selector::New();
- aSelector->SetDynamicPreSelection( SUIT_Session::session()->resourceMgr()->
- booleanValue( "VTKViewer", "dynamic_preselection", true ) );
-
+ SVTK_Selector* aSelector = SVTK_Selector::New();
+ int aPreselectionMode = SUIT_Session::session()->resourceMgr()->
+ integerValue( "VTKViewer", "preselection", Standard_Preselection );
+ aSelector->SetDynamicPreSelection( aPreselectionMode == Dynamic_Preselection );
+ aSelector->SetPreSelectionEnabled( aPreselectionMode != Preselection_Disabled );
+ bool isSelectionEnabled = SUIT_Session::session()->resourceMgr()->
+ booleanValue( "VTKViewer", "enable_selection", true );
+ aSelector->SetSelectionEnabled( isSelectionEnabled );
+
SVTK_GenericRenderWindowInteractor* aDevice = SVTK_GenericRenderWindowInteractor::New();
aDevice->SetRenderWidget(myInteractor);
aDevice->SetSelector(aSelector);
}
/*!
- Switch dynamic preselection on / off
- \param theDynPreselection - dynamic pre-selection mode
+ Set preselection mode.
+ \param theMode the mode to set (standard, dynamic or disabled)
+*/
+void SVTK_ViewWindow::SetPreSelectionMode( Preselection_Mode theMode )
+{
+ onSwitchPreSelectionMode( theMode );
+}
+
+/*!
+ Enables/disables selection.
+ \param theEnable if true - selection will be enabled
*/
-void SVTK_ViewWindow::SetDynamicPreSelection( bool theDynPreselection )
+void SVTK_ViewWindow::SetSelectionEnabled( bool theEnable )
{
- onSwitchDynamicPreSelection( theDynPreselection );
+ onEnableSelection( theEnable );
}
/*!
}
/*!
- Toogles dynamic preselection on/off
+ Switch preselection mode.
+ \param theMode the preselection mode
*/
-void SVTK_ViewWindow::onSwitchDynamicPreSelection( bool theOn )
+void SVTK_ViewWindow::onSwitchPreSelectionMode( int theMode )
{
- GetSelector()->SetDynamicPreSelection( theOn );
+ GetSelector()->SetDynamicPreSelection( theMode == Dynamic_Preselection );
+ GetSelector()->SetPreSelectionEnabled( theMode != Preselection_Disabled );
// update action state if method is called outside
- QtxAction* a = getAction( SwitchDynamicPreselectionId );
- if ( a->isChecked() != theOn )
- a->setChecked( theOn );
+ QtxAction* a = getAction( StandardPreselectionId + theMode );
+ if ( a && !a->isChecked() )
+ a->setChecked( true );
+}
+
+/*!
+ Enables/disables selection.
+ \param theOn if true - selection will be enabled
+*/
+void SVTK_ViewWindow::onEnableSelection( bool on )
+{
+ GetSelector()->SetSelectionEnabled( on );
+
+ // update action state if method is called outside
+ QtxAction* a = getAction( EnableSelectionId );
+ if ( a->isChecked() != on )
+ a->setChecked( on );
+ QtxActionGroup* aPreselectionGroup =
+ dynamic_cast<QtxActionGroup*>( getAction( PreselectionId ) );
+ if ( aPreselectionGroup )
+ aPreselectionGroup->setEnabled( on );
}
/*!
connect(anAction, SIGNAL(toggled(bool)), this, SLOT(onSwitchZoomingStyle(bool)));
mgr->registerAction( anAction, SwitchZoomingStyleId );
- // Turn on/off dynamic pre-selection
- anAction = new QtxAction(tr("MNU_SVTK_DYNAMIC_PRESLECTION_SWITCH"),
- theResourceMgr->loadPixmap( "VTKViewer", tr( "ICON_SVTK_DYNAMIC_PRESLECTION_SWITCH" ) ),
- tr( "MNU_SVTK_DYNAMIC_PRESLECTION_SWITCH" ), 0, this);
- anAction->setStatusTip(tr("DSC_SVTK_DYNAMIC_PRESLECTION_SWITCH"));
+ // Pre-selection
+ QSignalMapper* aSignalMapper = new QSignalMapper( this );
+ connect(aSignalMapper, SIGNAL(mapped(int)), this, SLOT(onSwitchPreSelectionMode(int)));
+
+ anAction = new QtxAction(tr("MNU_SVTK_PRESELECTION_STANDARD"),
+ theResourceMgr->loadPixmap( "VTKViewer", tr( "ICON_SVTK_PRESELECTION_STANDARD" ) ),
+ tr( "MNU_SVTK_PRESELECTION_STANDARD" ), 0, this);
+ anAction->setStatusTip(tr("DSC_SVTK_PRESELECTION_STANDARD"));
+ anAction->setCheckable(true);
+ connect(anAction, SIGNAL(activated()), aSignalMapper, SLOT(map()));
+ aSignalMapper->setMapping( anAction, Standard_Preselection );
+ mgr->registerAction( anAction, StandardPreselectionId );
+
+ anAction = new QtxAction(tr("MNU_SVTK_PRESELECTION_DYNAMIC"),
+ theResourceMgr->loadPixmap( "VTKViewer", tr( "ICON_SVTK_PRESELECTION_DYNAMIC" ) ),
+ tr( "MNU_SVTK_PRESELECTION_DYNAMIC" ), 0, this);
+ anAction->setStatusTip(tr("DSC_SVTK_PRESELECTION_DYNAMIC"));
anAction->setCheckable(true);
- connect(anAction, SIGNAL(toggled(bool)), this, SLOT(onSwitchDynamicPreSelection(bool)));
- mgr->registerAction( anAction, SwitchDynamicPreselectionId );
+ connect(anAction, SIGNAL(activated()), aSignalMapper, SLOT(map()));
+ aSignalMapper->setMapping( anAction, Dynamic_Preselection );
+ mgr->registerAction( anAction, DynamicPreselectionId );
+
+ anAction = new QtxAction(tr("MNU_SVTK_PRESELECTION_DISABLED"),
+ theResourceMgr->loadPixmap( "VTKViewer", tr( "ICON_SVTK_PRESELECTION_DISABLED" ) ),
+ tr( "MNU_SVTK_PRESELECTION_DISABLED" ), 0, this);
+ anAction->setStatusTip(tr("DSC_SVTK_PRESELECTION_DISABLED"));
+ anAction->setCheckable(true);
+ connect(anAction, SIGNAL(activated()), aSignalMapper, SLOT(map()));
+ aSignalMapper->setMapping( anAction, Preselection_Disabled );
+ mgr->registerAction( anAction, DisablePreselectionId );
+
+ QtxActionGroup* aPreselectionAction = new QtxActionGroup( this, true );
+ aPreselectionAction->add( getAction( StandardPreselectionId ) );
+ aPreselectionAction->add( getAction( DynamicPreselectionId ) );
+ aPreselectionAction->add( getAction( DisablePreselectionId ) );
+ mgr->registerAction( aPreselectionAction, PreselectionId );
+
+ // Selection
+ anAction = new QtxAction(tr("MNU_SVTK_ENABLE_SELECTION"),
+ theResourceMgr->loadPixmap( "VTKViewer", tr( "ICON_SVTK_SELECTION" ) ),
+ tr( "MNU_SVTK_ENABLE_SELECTION" ), 0, this);
+ anAction->setStatusTip(tr("DSC_SVTK_ENABLE_SELECTION"));
+ anAction->setCheckable(true);
+ connect(anAction, SIGNAL(toggled(bool)), this, SLOT(onEnableSelection(bool)));
+ mgr->registerAction( anAction, EnableSelectionId );
// Start recording
myStartAction = new QtxAction(tr("MNU_SVTK_RECORDING_START"),
mgr->append( DumpId, myToolBar );
mgr->append( SwitchInteractionStyleId, myToolBar );
mgr->append( SwitchZoomingStyleId, myToolBar );
- mgr->append( SwitchDynamicPreselectionId, myToolBar );
+
+ mgr->append( mgr->separator(), myToolBar );
+
+ mgr->append( PreselectionId, myToolBar );
+ mgr->append( EnableSelectionId, myToolBar );
+
+ mgr->append( mgr->separator(), myToolBar );
+
mgr->append( ViewTrihedronId, myToolBar );
QtxMultiAction* aScaleAction = new QtxMultiAction( this );
//! Set zooming style
virtual void SetZoomingStyle( const int );
- //! Set dynamic preselection on/off
- virtual void SetDynamicPreSelection( bool );
+ //! Set preselection mode
+ virtual void SetPreSelectionMode( Preselection_Mode );
+
+ //! Enable/disable selection
+ virtual void SetSelectionEnabled( bool );
//! Customize space mouse buttons
virtual void SetSpacemouseButtons( const int, const int, const int );
void onSwitchInteractionStyle(bool theOn);
void onSwitchZoomingStyle(bool theOn);
- void onSwitchDynamicPreSelection(bool theOn);
+
+ void onSwitchPreSelectionMode(int theMode);
+ void onEnableSelection(bool theOn);
void onStartRecording();
void onPlayRecording();
FrontId, BackId, TopId, BottomId, LeftId, RightId, ClockWiseId, AntiClockWiseId, ResetId,
ViewTrihedronId, NonIsometric, GraduatedAxes, UpdateRate,
ParallelModeId, ProjectionModeId, ViewParametersId, SynchronizeId, SwitchInteractionStyleId,
- SwitchZoomingStyleId,SwitchDynamicPreselectionId,
+ SwitchZoomingStyleId,
+ PreselectionId, StandardPreselectionId, DynamicPreselectionId, DisablePreselectionId,
+ EnableSelectionId,
StartRecordingId, PlayRecordingId, PauseRecordingId, StopRecordingId };
SVTK_View* myView;
<translation>vtk_view_recording_stop.png</translation>
</message>
<message>
- <source>ICON_SVTK_DYNAMIC_PRESLECTION_SWITCH</source>
- <translation>vtk_view_highlight.png</translation>
+ <source>ICON_SVTK_PRESELECTION_STANDARD</source>
+ <translation>vtk_view_highlight_std.png</translation>
+ </message>
+ <message>
+ <source>ICON_SVTK_PRESELECTION_DYNAMIC</source>
+ <translation>vtk_view_highlight_dyn.png</translation>
+ </message>
+ <message>
+ <source>ICON_SVTK_PRESELECTION_DISABLED</source>
+ <translation>vtk_view_highlight_off.png</translation>
+ </message>
+ <message>
+ <source>ICON_SVTK_SELECTION</source>
+ <translation>vtk_view_selection.png</translation>
</message>
</context>
</TS>
</message>
<message>
<source>MNU_SVTK_ZOOMING_STYLE_SWITCH</source>
- <translation>Zomming style switch</translation>
+ <translation>Zooming style switch</translation>
+ </message>
+ <message>
+ <source>DSC_SVTK_PRESELECTION_STANDARD</source>
+ <translation>Standard preselection mode</translation>
+ </message>
+ <message>
+ <source>MNU_SVTK_PRESELECTION_STANDARD</source>
+ <translation>Standard Preselection Mode</translation>
+ </message>
+ <message>
+ <source>DSC_SVTK_PRESELECTION_DYNAMIC</source>
+ <translation>Dynamic preselection mode</translation>
+ </message>
+ <message>
+ <source>MNU_SVTK_PRESELECTION_DYNAMIC</source>
+ <translation>Dynamic Preselection Mode</translation>
</message>
<message>
- <source>DSC_SVTK_DYNAMIC_PRESLECTION_SWITCH</source>
- <translation>Dynamic preselection switch</translation>
+ <source>DSC_SVTK_PRESELECTION_DISABLED</source>
+ <translation>Disable preselection</translation>
</message>
<message>
- <source>MNU_SVTK_DYNAMIC_PRESLECTION_SWITCH</source>
- <translation>Dynamic preselection switch</translation>
+ <source>MNU_SVTK_PRESELECTION_DISABLED</source>
+ <translation>Disable Preselection</translation>
</message>
+ <message>
+ <source>DSC_SVTK_ENABLE_SELECTION</source>
+ <translation>Enable/Disable selection</translation>
+ </message>
+ <message>
+ <source>MNU_SVTK_ENABLE_SELECTION</source>
+ <translation>Enable/Disable selection</translation>
+ </message>
</context>
<context>
<name>SVTK_FontWidget</name>
<translation>Changer le style de zoom</translation>
</message>
<message>
- <source>DSC_SVTK_DYNAMIC_PRESLECTION_SWITCH</source>
- <translation>Pré-sélection dynamique</translation>
+ <source>DSC_SVTK_PRESELECTION_STANDARD</source>
+ <translation>Standard preselection mode</translation>
</message>
<message>
- <source>MNU_SVTK_DYNAMIC_PRESLECTION_SWITCH</source>
- <translation>Pré-sélection dynamique</translation>
+ <source>MNU_SVTK_PRESELECTION_STANDARD</source>
+ <translation>Standard Preselection Mode</translation>
</message>
+ <message>
+ <source>DSC_SVTK_PRESELECTION_DYNAMIC</source>
+ <translation>Dynamic preselection mode</translation>
+ </message>
+ <message>
+ <source>MNU_SVTK_PRESELECTION_DYNAMIC</source>
+ <translation>Dynamic Preselection Mode</translation>
+ </message>
+ <message>
+ <source>DSC_SVTK_PRESELECTION_DISABLED</source>
+ <translation>Disable preselection</translation>
+ </message>
+ <message>
+ <source>MNU_SVTK_PRESELECTION_DISABLED</source>
+ <translation>Disable Preselection</translation>
+ </message>
+ <message>
+ <source>DSC_SVTK_ENABLE_SELECTION</source>
+ <translation>Enable/Disable selection</translation>
+ </message>
+ <message>
+ <source>MNU_SVTK_ENABLE_SELECTION</source>
+ <translation>Enable/Disable selection</translation>
+ </message>
</context>
<context>
<name>SVTK_FontWidget</name>