From: srn Date: Thu, 8 Sep 2005 06:05:43 +0000 (+0000) Subject: Modified a method createAndDisplayGO X-Git-Tag: TG-Start-D5-38-2003~1 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=ac5e2558d9110757d28c137a2f77ff56bcf1082c;p=modules%2Fgeom.git Modified a method createAndDisplayGO --- diff --git a/src/GEOMGUI/GeometryGUI_Swig.cxx b/src/GEOMGUI/GeometryGUI_Swig.cxx index 1dc5ac24e..fe9ff55a4 100644 --- a/src/GEOMGUI/GeometryGUI_Swig.cxx +++ b/src/GEOMGUI/GeometryGUI_Swig.cxx @@ -155,7 +155,6 @@ void GEOM_Swig::createAndDisplayGO (const char* Entry) GEOM::GEOM_Object_var aShape = Geom->GetIORFromString(anIORValue.c_str()); TopoDS_Shape Shape = ShapeReader.GetShape(Geom,aShape); - if (obj) { if (obj->FindAttribute(anAttr, "AttributeName")) { _PTR(AttributeName) aName (anAttr); @@ -168,7 +167,6 @@ void GEOM_Swig::createAndDisplayGO (const char* Entry) aStudyBuilder->Addreference(newObj1, obj); // commit transaction op->commit();*/ - Handle(GEOM_InteractiveObject) anIO = new GEOM_InteractiveObject (const_cast(anIORValue.c_str()), const_cast(aFatherIOR.c_str()), @@ -176,6 +174,7 @@ void GEOM_Swig::createAndDisplayGO (const char* Entry) const_cast( obj->GetID().c_str())); if (SVTK_ViewWindow* svtkViewWindow = GetSVTKViewWindow(app)) { + SVTK_RenderWindowInteractor* aRenderInter= svtkViewWindow->getRWInteractor(); int aMode = aRenderInter->GetDisplayMode(); @@ -189,6 +188,7 @@ void GEOM_Swig::createAndDisplayGO (const char* Entry) aRenderInter->Display(GActor); } aRenderInter->Update(); + cout << 8.2 << endl; } else if (OCCViewer_Viewer* occViewer = GetOCCViewer(app)) { Handle(AIS_InteractiveContext) ic = occViewer->getAISContext(); Handle(GEOM_AISShape) aSh = @@ -199,7 +199,7 @@ void GEOM_Swig::createAndDisplayGO (const char* Entry) ic->AddOrRemoveCurrentObject(aSh,true); } // update object browser - SalomeApp_Application* app = dynamic_cast(app); + SalomeApp_Application* app = NULL; //dynamic_cast(app); if (app) { CAM_Module* module = app->module("Geometry"); SalomeApp_Module* appMod = dynamic_cast(module); @@ -213,6 +213,22 @@ void GEOM_Swig::createAndDisplayGO (const char* Entry) // MESSAGE("createAndDisplayGO"); ProcessVoidEvent(new TEvent (Entry)); + + class TEventUpdateBrowser: public SALOME_Event + { + public: + TEventUpdateBrowser() {} + virtual void Execute() { + SalomeApp_Application* app = dynamic_cast(SUIT_Session::session()->activeApplication()); + if (app) { + CAM_Module* module = app->module("Geometry"); + SalomeApp_Module* appMod = dynamic_cast(module); + if (appMod) appMod->updateObjBrowser(true); + } + } + }; + + ProcessVoidEvent(new TEventUpdateBrowser ()); }