Index: gui/audace/plugin/chart/carteducielv3/carteducielv3.tcl
===================================================================
--- gui/audace/plugin/chart/carteducielv3/carteducielv3.tcl	(revision 9288)
+++ gui/audace/plugin/chart/carteducielv3/carteducielv3.tcl	(working copy)
@@ -400,9 +400,9 @@
    #  Description de l'interface Audela / CarteDuCiel
    #  -------------------------------------
    #  Requete TCP envoyee a CarteDuCiel :
-   #     puts socket "GETMSGBOX"
-   #  Reponse DDE retournee par CarteDuCiel :
-   #     ligne : position du centre et champ de vision de la carte
+   #     puts socket "GETSELECTEDOBJECT"
+   #  Reponse retournee par CarteDuCiel :
+   #     ligne : dernier objet selectione sur la carte
    #
    #  exemple de reponse :
    #     ligne : OK!\n14h15m39.70s +19°10'57.0"   * HR 5340 HD124897 Fl: 16 Ba:Alp  const:Boo mV:-0.04 b-v: 1.23 sp:  K1.5IIIFe-0.5      pm:-1.093 -1.998 ;ARCTURUS; Haris-el-sema
@@ -514,7 +514,12 @@
       variable private
       global caption
 
-      set result [ sendRequest "GETMSGBOX" ]
+      #--- nouvelle commande depuis la version 3.9, retourne la meme chaine qu'avant 3.6
+      set result [ sendRequest "GETSELECTEDOBJECT" ]
+      if { $result == "Failed! Bad command name" } {
+         #--- ancienne commande jusqu'a 3.8. ne marche que si CarteDuCiel est en français  
+         set result [ sendRequest "GETMSGBOX" ]
+      }
       if { $result == "" } {
          return ""
       }
@@ -529,7 +534,7 @@
       set magnitude ""
       scan $ligne "%s %s %s %s %\[^\r\] " cr ra dec objType detail
       if { $ra == "AR:" } {
-        # ::console::disp "CdC V3.6 et +. \n"
+        # ::console::disp "CdC V3.6 et V3.8 \n"
          scan $ligne "%s %s %s %s %s %\[^\r\] " cr AR ra dec objType detail
          set dec [ string range $dec 3 end ]
       }
@@ -597,6 +602,7 @@
          return ""
       } else {
          #--- j'extrais les coordonnees du detail de la ligne2
+         set objName ""
          set usualName ""
          set bsc       ""
          set ba        ""
@@ -691,11 +697,18 @@
             set tyc [string trim [lindex [split [string range $detail $index end ]] 1]]
             set tyc "TYC$tyc"
          }
-         set index [string first "HIP" $detail]
+         set index [string first "HIP:" $detail]
          if { $index >= 0 } {
-            #--- j'extrais la chaine apres HIP
-            set hip [string trim [lindex [split [string range $detail $index end ]] 1]]
-            set hip "HIP$hip"
+            #--- j'extrais la chaine HIP:xxxx
+            set hip [lindex [split [string range $detail $index end ]] 0]
+            set hip [string map {":" ""} $hip ]
+         } else {
+           set index [string first "HIP" $detail]
+           if { $index >= 0 } {
+              #--- j'extrais la chaine apres HIP
+              set hip [string trim [lindex [split [string range $detail $index end ]] 1]]
+              set hip "HIP$hip"
+           }
          }
          set index [string first "3UC" $detail]
          if { $index >= 0 } {
@@ -863,6 +876,12 @@
          }
       }
 
+      #-- Si on n'a pas trouvé un catalogue connu on prend le premier mot de $detail qui est le nom par défaut
+      if { $objName == "" } {
+         ::console::disp "objName par defaut\n"
+         scan $detail "%s\ \[^\r\] " objName
+      }
+ 
       ::console::disp "CDC result objName=$objName\n"
       ::console::disp "CDC result ra=$ra\n"
       ::console::disp "CDC result dec=$dec\n"
