mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2024-12-26 17:30:35 +05:00
Fix problems with displaying Dependency tree on Windows platform.
This commit is contained in:
parent
b5261a9818
commit
80531775fd
@ -63,7 +63,8 @@ myIsMainObject( false )
|
|||||||
SalomeApp_Application* app = dynamic_cast< SalomeApp_Application* >( SUIT_Session::session()->activeApplication() );
|
SalomeApp_Application* app = dynamic_cast< SalomeApp_Application* >( SUIT_Session::session()->activeApplication() );
|
||||||
if ( !app ) return;
|
if ( !app ) return;
|
||||||
SalomeApp_Study* study = dynamic_cast<SalomeApp_Study*>(app->activeStudy());
|
SalomeApp_Study* study = dynamic_cast<SalomeApp_Study*>(app->activeStudy());
|
||||||
int studyId = GeometryGUI::ClientStudyToStudy( study->studyDS())->StudyId();
|
SALOMEDS::Study_var aStudyDS = GeometryGUI::ClientStudyToStudy( study->studyDS() );
|
||||||
|
int studyId = aStudyDS->StudyId();
|
||||||
myGeomObject = GeometryGUI::GetGeomGen()->GetObject( studyId, myEntry.c_str() );
|
myGeomObject = GeometryGUI::GetGeomGen()->GetObject( studyId, myEntry.c_str() );
|
||||||
|
|
||||||
updateName();
|
updateName();
|
||||||
@ -167,9 +168,9 @@ void DependencyTree_Object::updateName()
|
|||||||
{
|
{
|
||||||
|
|
||||||
QString name = myGeomObject->GetName();
|
QString name = myGeomObject->GetName();
|
||||||
QString studyEntry = myGeomObject->GetStudyEntry();
|
CORBA::String_var studyEntryVar = myGeomObject->GetStudyEntry();
|
||||||
|
|
||||||
if( studyEntry.isEmpty() ) {
|
if( QString( studyEntryVar.in() ).isEmpty() ) {
|
||||||
if( name.isEmpty() )
|
if( name.isEmpty() )
|
||||||
name = "unpublished";
|
name = "unpublished";
|
||||||
myColor = myUnpublishObjectColor;
|
myColor = myUnpublishObjectColor;
|
||||||
@ -203,8 +204,8 @@ void DependencyTree_Object::updateName()
|
|||||||
//=================================================================================
|
//=================================================================================
|
||||||
void DependencyTree_Object::setColor( const QColor& theColor )
|
void DependencyTree_Object::setColor( const QColor& theColor )
|
||||||
{
|
{
|
||||||
QString studyEntry = myGeomObject->GetStudyEntry();
|
CORBA::String_var studyEntryVar = myGeomObject->GetStudyEntry();
|
||||||
if( studyEntry.isEmpty() )
|
if( QString( studyEntryVar.in() ).isEmpty() )
|
||||||
myColor = myUnpublishObjectColor;
|
myColor = myUnpublishObjectColor;
|
||||||
else
|
else
|
||||||
myColor = theColor;
|
myColor = theColor;
|
||||||
@ -236,8 +237,8 @@ void DependencyTree_Object::setMainObjectColor( const QColor& theColor )
|
|||||||
void DependencyTree_Object::setUnpublishObjectColor( const QColor& theColor )
|
void DependencyTree_Object::setUnpublishObjectColor( const QColor& theColor )
|
||||||
{
|
{
|
||||||
myUnpublishObjectColor = theColor;
|
myUnpublishObjectColor = theColor;
|
||||||
QString studyEntry = myGeomObject->GetStudyEntry();
|
CORBA::String_var studyEntryVar = myGeomObject->GetStudyEntry();
|
||||||
if( studyEntry.isEmpty() )
|
if( QString( studyEntryVar.in() ).isEmpty() )
|
||||||
myColor = myUnpublishObjectColor;
|
myColor = myUnpublishObjectColor;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,23 +48,25 @@ void DependencyTree_Selector::getSelection( SUIT_DataOwnerPtrList& theList ) con
|
|||||||
{
|
{
|
||||||
for( myView->initSelected(); myView->moreSelected(); myView->nextSelected() )
|
for( myView->initSelected(); myView->moreSelected(); myView->nextSelected() )
|
||||||
if( DependencyTree_Object* treeObject = dynamic_cast<DependencyTree_Object*>( myView->selectedObject() ) ) {
|
if( DependencyTree_Object* treeObject = dynamic_cast<DependencyTree_Object*>( myView->selectedObject() ) ) {
|
||||||
const char* entry;
|
QString studyEntry;
|
||||||
const char* name;
|
QString name;
|
||||||
GEOM::GEOM_BaseObject_var anObj = GeometryGUI::GetGeomGen()->GetObject( myView->getStudyId(),
|
GEOM::GEOM_BaseObject_var anObj = GeometryGUI::GetGeomGen()->GetObject( myView->getStudyId(),
|
||||||
treeObject->getEntry().c_str() );
|
treeObject->getEntry().c_str() );
|
||||||
if( anObj->_is_nil() )
|
if( anObj->_is_nil() )
|
||||||
continue;
|
continue;
|
||||||
QString studyEntry = anObj->GetStudyEntry();
|
CORBA::String_var studyEntryVar = anObj->GetStudyEntry();
|
||||||
|
studyEntry = studyEntryVar.in();
|
||||||
if( studyEntry.isEmpty() ) {
|
if( studyEntry.isEmpty() ) {
|
||||||
entry = treeObject->getEntry().c_str();
|
studyEntry = treeObject->getEntry().c_str();
|
||||||
name = "TEMP_IO_UNPUBLISHED";
|
name = "TEMP_IO_UNPUBLISHED";
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
entry = studyEntry.toStdString().c_str();
|
|
||||||
name = "TEMP_IO";
|
name = "TEMP_IO";
|
||||||
}
|
}
|
||||||
Handle(SALOME_InteractiveObject) tmpIO =
|
Handle(SALOME_InteractiveObject) tmpIO =
|
||||||
new SALOME_InteractiveObject( entry, "GEOM", name);
|
new SALOME_InteractiveObject( studyEntry.toStdString().c_str(),
|
||||||
|
"GEOM",
|
||||||
|
name.toStdString().c_str());
|
||||||
|
|
||||||
theList.append( new LightApp_DataOwner( tmpIO ) );
|
theList.append( new LightApp_DataOwner( tmpIO ) );
|
||||||
}
|
}
|
||||||
|
@ -594,7 +594,7 @@ void DependencyTree_View::drawTree()
|
|||||||
|
|
||||||
std::map< int, std::vector< std::string > >::const_iterator level;
|
std::map< int, std::vector< std::string > >::const_iterator level;
|
||||||
for( level = levelObjects.begin(); level != levelObjects.end(); level++ ) {
|
for( level = levelObjects.begin(); level != levelObjects.end(); level++ ) {
|
||||||
int step = -horDistance * ( level->second.size() - 1 ) / 2;
|
int step = -horDistance * ( int(level->second.size()) - 1 ) / 2;
|
||||||
for( int objIter = 0; objIter < level->second.size(); objIter++ ) {
|
for( int objIter = 0; objIter < level->second.size(); objIter++ ) {
|
||||||
DependencyTree_Object* anObject = myTreeMap[ level->second.at( objIter ) ];
|
DependencyTree_Object* anObject = myTreeMap[ level->second.at( objIter ) ];
|
||||||
anObject->setPos( step, verDistance * level->first );
|
anObject->setPos( step, verDistance * level->first );
|
||||||
|
Loading…
Reference in New Issue
Block a user