Salome HOME
Updated copyright comment
[modules/homard.git] / src / HOMARDGUI / MonEditCase.cxx
index 7fcc792f345cc8afc18b6c04ed3ead4818d97fa3..199ff27da6fefb89703779e4a8c5e4df049c32d0 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2011-2015  CEA/DEN, EDF R&D
+// Copyright (C) 2011-2024  CEA, EDF
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -72,32 +72,45 @@ void MonEditCase::InitValEdit()
   else                                           { RBNonConforme->setChecked(true); };
   RBConforme->setEnabled(false);
   RBNonConforme->setEnabled(false);
+  int ExtType=aCase->GetExtType();
 
-//    Non affichage du mode de suivi de frontiere
-  CBBoundaryA->setVisible(0);
-  GBBoundaryA->setVisible(0);
+
+// Suivi de frontiere
+// A priori, aucun affichage
+  GBTypeBoun->setVisible(0);
   CBBoundaryD->setVisible(0);
+  CBBoundaryA->setVisible(0);
+  GBBoundaryC->setVisible(0);
   GBBoundaryD->setVisible(0);
-
+  GBBoundaryA->setVisible(0);
 //    On passe en revue tous les couples (frontiere,groupe) du cas
   HOMARD::ListBoundaryGroupType_var mesBoundarys = aCase->GetBoundaryGroup();
   if (mesBoundarys->length()>0)
   {
     QStringList ListeFron ;
     QString NomFron ;
+    bool BounCAO = false ;
     bool BounDi = false ;
     bool BounAn = false ;
     for (int i=0; i<mesBoundarys->length(); i++)
     {
-//        Nom de la frontiere
+//    Nom de la frontiere
       NomFron = mesBoundarys[i++];
       MESSAGE("NomFron "<<NomFron.toStdString().c_str());
-//        L'objet associe pour en deduire le type
+//    L'objet associe pour en deduire le type
       HOMARD::HOMARD_Boundary_var myBoundary = myHomardGen->GetBoundary(NomFron.toStdString().c_str());
       int type_obj = myBoundary->GetType() ;
+      MESSAGE("type_obj "<<type_obj);
+//        C'est une frontiere CAO
+//        Remarque : on ne gere pas les groupes
+      if ( type_obj==-1 )
+      {
+        BounCAO = true ;
+        CBBoundaryCAO->addItem(NomFron);
+      }
 //        C'est une frontiere discrete
 //        Rermarque : on ne gere pas les groupes
-      if ( type_obj==0 )
+      else if ( type_obj==0 )
       {
         BounDi = true ;
         CBBoundaryDi->addItem(NomFron);
@@ -137,9 +150,23 @@ void MonEditCase::InitValEdit()
         TWBoundary->item( 0, ok )->setCheckState( Qt::Checked );
       }
     }
-    MESSAGE("BounDi "<<BounDi<<", BounAn "<<BounAn);
+    MESSAGE("BounCAO "<<BounCAO<<",BounDi "<<BounDi<<", BounAn "<<BounAn);
+    GBTypeBoun->setVisible(1);
+    if ( BounCAO )
+    { RBBoundaryCAO->setChecked(true);
+      GBBoundaryC->setVisible(1);
+      CBBoundaryCAO->setDisabled(true);
+      PBBoundaryCAONew->setVisible(0);
+      PBBoundaryCAOHelp->setVisible(0); }
+    if ( BounDi )
+    { RBBoundaryNonCAO->setChecked(true);
+      GBBoundaryD->setVisible(1);
+      CBBoundaryDi->setDisabled(true);
+      PBBoundaryDiNew->setVisible(0);
+      PBBoundaryDiHelp->setVisible(0); }
     if ( BounAn )
-    { GBBoundaryA->setVisible(1);
+    { RBBoundaryNonCAO->setChecked(true);
+      GBBoundaryA->setVisible(1);
 //    On rend les cases non modifiables.
 //    On ne peut pas le faire pour tout le tableau sinon on perd l'ascenseur !
       int nbcol = TWBoundary->columnCount();
@@ -148,17 +175,15 @@ void MonEditCase::InitValEdit()
       { for ( int j = 0; j < nbcol; j++ ) TWBoundary->item( i, j )->setFlags( Qt::ItemIsSelectable ); }
 //    on met un nom blanc au coin
       QTableWidgetItem *__colItem = new QTableWidgetItem();
-      __colItem->setText(QApplication::translate("CreateCase", "", 0, QApplication::UnicodeUTF8));
+      __colItem->setText(QApplication::translate("CreateCase", "", 0));
       TWBoundary->setHorizontalHeaderItem(0, __colItem);
 //    on cache les boutons inutiles
       PBBoundaryAnNew->setVisible(0);
       PBBoundaryAnHelp->setVisible(0);
     }
-    if ( BounDi )
-    { GBBoundaryD->setVisible(1);
-      CBBoundaryDi->setDisabled(true);
-      PBBoundaryDiNew->setVisible(0);
-      PBBoundaryDiHelp->setVisible(0); }
+    RBBoundaryNo->setEnabled(false);
+    RBBoundaryCAO->setEnabled(false);
+    RBBoundaryNonCAO->setEnabled(false);
   }
 //
 // Les options avancees (non modifiables)
@@ -166,16 +191,19 @@ void MonEditCase::InitValEdit()
   CBAdvanced->setEnabled(false) ;
   int Pyram = aCase->GetPyram();
   MESSAGE("Pyram "<<Pyram);
-  if ( ( Pyram > 0 ) || ( ConfType < 0 ) || ( ConfType > 1 ) )
+  if ( ( Pyram > 0 ) || ( ConfType < 0 ) || ( ConfType > 1 ) || ( ExtType > 0 ) )
   { GBAdvancedOptions->setVisible(1);
+//
     if ( Pyram > 0 )
     { CBPyramid->setChecked(true);
-      CBPyramid->setEnabled(false);
+      CBPyramid->setVisible(1);
     }
     else
     { CBPyramid->setChecked(false);
       CBPyramid->setVisible(0);
     }
+    CBPyramid->setEnabled(false);
+//
     if ( ( ConfType == 0 ) || ( ConfType == -1 ) )
     { if ( ConfType == 0 ) { RBStandard->setChecked(true); }
       else                 { RBBox->setChecked(true); }
@@ -183,8 +211,6 @@ void MonEditCase::InitValEdit()
       RBBox->setVisible(1);
       RBNC1NpA->setVisible(0);
       RBNCQuelconque->setVisible(0);
-      RBStandard->setEnabled(false);
-      RBBox->setEnabled(false);
     }
     else
     { if (ConfType==-2) { RBBox->setChecked(true);};
@@ -195,22 +221,40 @@ void MonEditCase::InitValEdit()
       RBBox->setVisible(1);
       RBNC1NpA->setVisible(1);
       RBNCQuelconque->setVisible(1);
-      RBStandard->setEnabled(false);
-      RBBox->setEnabled(false);
-      RBNC1NpA->setEnabled(false);
-      RBNCQuelconque->setEnabled(false);
     }
+    RBStandard->setEnabled(false);
+    RBBox->setEnabled(false);
+    RBNC1NpA->setEnabled(false);
+    RBNCQuelconque->setEnabled(false);
+//
+    if ( ExtType == 0 )
+    { GBFormat->setVisible(0);
+      RBMED->setChecked(true);
+    }
+    else
+    { GBFormat->setVisible(1);
+      RBMED->setVisible(1);
+      RBSaturne->setVisible(1);
+      RBSaturne2D->setVisible(1);
+      if ( ExtType == 1 ) { RBSaturne->setChecked(true); }
+      else                { RBSaturne2D->setChecked(true); }
+    }
+    RBMED->setEnabled(false);
+    RBSaturne->setEnabled(false);
+    RBSaturne2D->setEnabled(false);
   }
   else
   { GBAdvancedOptions->setVisible(0);
     CBPyramid->setChecked(false);
+    RBStandard->setChecked(true);
+    RBMED->setChecked(true);
   }
 //
 // L'etat
   int etat = aCase->GetState();
   MESSAGE("etat "<<etat);
-  if ( etat == 0 ) { Comment->setText(QApplication::translate("CreateCase", "HOM_CASE_EDIT_STATE_0", 0, QApplication::UnicodeUTF8)); }
-  else             { Comment->setText(QApplication::translate("CreateCase", "HOM_CASE_EDIT_STATE", 0, QApplication::UnicodeUTF8)); }
+  if ( etat == 0 ) { Comment->setText(QApplication::translate("CreateCase", "HOM_CASE_EDIT_STATE_0", 0)); }
+  else             { Comment->setText(QApplication::translate("CreateCase", "HOM_CASE_EDIT_STATE", 0)); }
 
   Comment->setVisible(1);
 //