@@ -565,13 +565,26 @@ def setMainParamWithFullUpdate(self, blockIdx, category, name, field, value):
565
565
# but it's easier to just update the existing dict
566
566
if field == 'value' :
567
567
self ._dataBlocks [blockIdx ]['params' ][category ][name ]['value' ] = value
568
+ # check dependencies for the given parameter
569
+ self .setParamDependencies (blockIdx , category , name , value )
568
570
elif field == 'error' :
569
571
self ._dataBlocks [blockIdx ]['params' ][category ][name ]['error' ] = value
570
572
elif field == 'fit' :
571
573
self ._dataBlocks [blockIdx ]['params' ][category ][name ]['fit' ] = value
574
+
572
575
self .setDataBlocksCif ()
576
+ # self.replaceModel(self._dataBlocksCif[0][0])
573
577
self .replaceModel ()
574
578
579
+ def setParamDependencies (self , blockIdx , category , name , value ):
580
+ # changes to certain parameters trigger changes in other parameters
581
+ # 1. space group code change -> change space group name
582
+ if name == 'IT_coordinate_system_code' :
583
+ spaceGroup = self ._dataBlocks [blockIdx ]['params' ]['_space_group' ]
584
+ group = self .job .phases [blockIdx ].space_group
585
+ spaceGroup ['name_H-M_alt' ]['value' ] = group .hermann_mauguin
586
+ pass
587
+
575
588
@Slot (int , str , str , str , 'QVariant' )
576
589
def setMainParam (self , blockIdx , category , name , field , value ):
577
590
changedIntern = self .editDataBlockMainParam (blockIdx , category , name , field , value )
@@ -621,7 +634,8 @@ def createSpaceGroupNames(self):
621
634
names = []
622
635
for system in all_system_names :
623
636
numbers = SpacegroupInfo .get_ints_from_system (system )
624
- names .extend ([SpacegroupInfo .get_symbol_from_int_number (n ) for n in numbers ])
637
+ for n in numbers :
638
+ names .extend (SpacegroupInfo .get_compatible_HM_from_int (n ))
625
639
return names
626
640
627
641
def createIsotopesNames (self ):
0 commit comments