#include <SUIT_ViewManager.h>
#include <SUIT_ViewWindow.h>
-#include <QApplication.h>
+#include <QApplication>
HYDROGUI_VisualStateOp::HYDROGUI_VisualStateOp( HYDROGUI_Module* theModule,
const bool theIsLoad )
{
HYDROGUI_Operation::startOperation();
+ if( !myIsLoad )
+ startDocOperation();
+
bool aResult = false;
if( myIsLoad )
aResult = loadVisualState();
aResult = saveVisualState();
if( aResult )
+ {
+ if( !myIsLoad )
+ commitDocOperation();
commit();
+ }
else
- abort(); // do not commit the document command
+ {
+ if( !myIsLoad )
+ abortDocOperation();
+ abort();
+ }
}
bool HYDROGUI_VisualStateOp::saveVisualState()
if( aVisualState.IsNull() )
return false;
- QString aName = HYDROGUI_Tool::GenerateObjectName( module(), "VisualState" );
+ QString aName = HYDROGUI_Tool::GenerateObjectName( module(), tr( "DEFAULT_VISUAL_STATE_NAME" ) );
aVisualState->SetName( aName );
}
{
if( SUIT_ViewManager* aViewManager = anIter.next() )
{
- int aViewId = (int)aViewManager->getViewModel();
+ size_t aViewId = (size_t)aViewManager->getViewModel();
if( SUIT_ViewWindow* aViewWindow = aViewManager->getActiveView() )
{
QString aType = aViewManager->getType();
for( int anObjIndex = 1, aLength = aSeq.Length(); anObjIndex <= aLength; anObjIndex++ )
{
- Handle(HYDROData_Object) anObject = aSeq.Value( anObjIndex );
+ Handle(HYDROData_Entity) anObject = aSeq.Value( anObjIndex );
if( !anObject.IsNull() )
{
// Format: "Name|Visibility[|CoordX|CoordY]"
QString aParameters = anObject->GetName();
- int aVisibility = (int)anObject->IsVisible( aViewId );
+ int aVisibility = (int)( module()->isObjectVisible( aViewId, anObject ) );
aParameters.append( QString( "|%1" ).arg( aVisibility ) );
setVisualProperty( aPropertyMap, aViewerEntry, aParameters, true );
QString aViewerId = aViewerEntry.section( '_', -1 ); // unused
if( SUIT_ViewManager* aViewManager = anApp->createViewManager( aType ) )
{
- int aViewId = (int)aViewManager->getViewModel();
+ size_t aViewId = (size_t)aViewManager->getViewModel();
if( SUIT_ViewWindow* aViewWindow = aViewManager->getActiveView() )
{
// Wait until the window is really shown. This step fixes MANY bugs.
for( int anObjIndex = 1, aLength = aSeq.Length(); anObjIndex <= aLength; anObjIndex++ )
{
- Handle(HYDROData_Object) anObject = aSeq.Value( anObjIndex );
+ Handle(HYDROData_Entity) anObject = aSeq.Value( anObjIndex );
if( !anObject.IsNull() )
{
QString aName = anObject->GetName();
{
bool anIsVisible = aParameters[ aParamIndex ].toInt( &anIsOk[ ++aParamIndex ] );
if( anIsOk[ 0 ] )
- anObject->SetVisible( aViewId, anIsVisible );
+ module()->setObjectVisible( aViewId, anObject, anIsVisible );
}
}
}