[bos #38044][EDF] (2023-T3) Support for automatic reparation. Fixed selection level for objects selected in browser.

This commit is contained in:
Konstantin Leontev 2024-03-25 12:09:19 +00:00
parent 370d86bda3
commit f83ebc817a

View File

@ -26,7 +26,7 @@ from qtsalome import Qt, QWidget, QMessageBox, QApplication, QGridLayout
from salome.gui import helper
from salome.kernel.studyedit import EDITOR
from salome.kernel.services import IDToObject
from salome.kernel.services import IDToObject, ObjectToID
from salome.geom import geomBuilder
from libGEOM_Swig import GEOM_Swig
import SalomePyQt
@ -326,7 +326,15 @@ class BaseDlg(Ui_BaseDlg, QWidget):
source_name = EDITOR.getName(sobject)
self.set_result_name(self._result_name + source_name)
self._selected_widget.LineEdit1.setText(source_name)
# Check if we selected other object in a browser -
# we need to set a level flag to init a local selection again
prev_entry = ObjectToID(self._selected_object, EDITOR.study)
if prev_entry != entry:
self._is_level_changed = True
self._selected_object = IDToObject(entry, EDITOR.study)
else:
self.set_result_name(self._result_name)
self._selected_widget.LineEdit1.clear()