if( aDocument.IsNull() )
return;
- LightApp_DataObject* anImageRootObj = createObject( aRootObj, partitionName( KIND_IMAGE ) );
+ LightApp_DataObject* anImageRootObj = createObject( aRootObj, tr( partitionName( KIND_IMAGE ).toAscii() ) );
HYDROData_Iterator anIterator( aDocument, KIND_IMAGE );
for( ; anIterator.More(); anIterator.Next() )
createObject( anImageRootObj, anImageObj );
}
- LightApp_DataObject* aBathymetryRootObj = createObject( aRootObj, partitionName( KIND_BATHYMETRY ) );
+ LightApp_DataObject* aBathymetryRootObj = createObject( aRootObj, tr( partitionName( KIND_BATHYMETRY ).toAscii() ) );
anIterator = HYDROData_Iterator( aDocument, KIND_BATHYMETRY );
for( ; anIterator.More(); anIterator.Next() )
createObject( aBathymetryRootObj, aBathymetryObj );
}
- LightApp_DataObject* aPolylineRootObj = createObject( aRootObj, partitionName( KIND_POLYLINE ) );
+ LightApp_DataObject* aPolylineRootObj = createObject( aRootObj, tr( partitionName( KIND_POLYLINE ).toAscii() ) );
anIterator = HYDROData_Iterator( aDocument, KIND_POLYLINE );
for( ; anIterator.More(); anIterator.Next() )
createObject( aPolylineRootObj, aPolylineObj );
}
- LightApp_DataObject* aZonesRootObj = createObject( aRootObj, partitionName( KIND_IMMERSIBLE_ZONE ) );
+ LightApp_DataObject* aZonesRootObj = createObject( aRootObj, tr( partitionName( KIND_IMMERSIBLE_ZONE ).toAscii() ) );
anIterator = HYDROData_Iterator( aDocument, KIND_IMMERSIBLE_ZONE );
for( ; anIterator.More(); anIterator.Next() )
createObject( aZonesRootObj, aZoneObj );
}
- LightApp_DataObject* aCalculRootObj = createObject( aRootObj, partitionName( KIND_CALCULATION ) );
+ LightApp_DataObject* aCalculRootObj = createObject( aRootObj, tr( partitionName( KIND_CALCULATION ).toAscii() ) );
anIterator = HYDROData_Iterator( aDocument, KIND_CALCULATION );
for( ; anIterator.More(); anIterator.Next() )
createObject( aCalculRootObj, aCalculObj );
}
- LightApp_DataObject* aVisualStateRootObj = createObject( aRootObj, partitionName( KIND_VISUAL_STATE ) );
+ LightApp_DataObject* aVisualStateRootObj = createObject( aRootObj, tr( partitionName( KIND_VISUAL_STATE ).toAscii() ) );
anIterator = HYDROData_Iterator( aDocument, KIND_VISUAL_STATE );
for( ; anIterator.More(); anIterator.Next() )
}
}
+void HYDROGUI_DataModel::buildCaseTree( SUIT_DataObject* theParent, Handle(HYDROData_CalculationCase) theCase )
+{
+ if ( !theCase.IsNull() )
+ {
+ new HYDROGUI_DropTargetObject( theParent, tr( "NEW_REGION" ), "" );
+
+ HYDROData_SequenceOfObjects aCaseRegions = theCase->GetRegions();
+ HYDROData_SequenceOfObjects::Iterator anIter( aCaseRegions );
+ for ( ; anIter.More(); anIter.Next() )
+ {
+ Handle(HYDROData_Region) aCaseRegion =
+ Handle(HYDROData_Region)::DownCast( anIter.Value() );
+ if( !aCaseRegion.IsNull() && !aCaseRegion->IsRemoved() )
+ createRegion( theParent, aCaseRegion, "", true );
+ }
+ }
+}
+
void HYDROGUI_DataModel::removeChild( SUIT_DataObject* theParent,
SUIT_DataObject* theChild )
{
}
return NULL; // not found
}
+
+bool HYDROGUI_DataModel::createNewRegion( Handle(HYDROData_CalculationCase) theCase,
+ const QList<HYDROGUI_Zone*>& theZonesList )
+{
+ bool isOk = !theCase.IsNull();
+ if ( isOk )
+ {
+ Handle(HYDROData_Region) aRegion;
+ Handle(HYDROData_Zone) aZone;
+ for (int i = 0; i < theZonesList.length(); i++ )
+ {
+ aZone = Handle(HYDROData_Zone)::DownCast( theZonesList.at(i)->modelObject() );
+ if ( !aZone.IsNull() )
+ {
+ if ( aRegion.IsNull() )
+ {
+ aRegion = theCase->AddNewRegion( aZone );
+ isOk = !aRegion.IsNull();
+ }
+ else
+ {
+ if ( !( aRegion->AddZone( aZone ) ) )
+ {
+ isOk = false;
+ }
+ }
+ }
+ }
+ }
+ return isOk;
+}