#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( 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();
// 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.
{
bool anIsVisible = aParameters[ aParamIndex ].toInt( &anIsOk[ ++aParamIndex ] );
if( anIsOk[ 0 ] )
- anObject->SetVisible( aViewId, anIsVisible );
+ module()->setObjectVisible( aViewId, anObject, anIsVisible );
}
}
}