Only in .: nice_menus_active_trail_1.patch
diff -u /temp/2008-10/sadkomed.ru/nice_menus_work/nice_menus/nice_menus.module ./nice_menus.module
--- /temp/2008-10/sadkomed.ru/nice_menus_work/nice_menus/nice_menus.module	2008-09-17 22:17:28.000000000 +0400
+++ ./nice_menus.module	2008-10-13 16:33:02.000000000 +0400
@@ -248,6 +248,20 @@
 }
 
 /**
+ * Builds the active trail from the page menu.
+*/
+
+function build_page_trail($menu) {
+  $trail=array();
+  foreach($menu as $item) {
+    if($item['link']['in_active_trail']) $trail[]=$item['link']['mlid'];
+    if($item['below']) $trail=array_merge($trail,build_page_trail($item['below']));
+  }
+  return $trail;
+}
+
+
+/**
  * Builds the final nice menu.
  *
  * @param $menu_name
@@ -265,8 +279,15 @@
  */
 function theme_nice_menu_tree($menu_name, $mlid = NULL, $depth = -1, $menu = NULL) {
   // Load the full menu array.
+  
   $menu = isset($menu) ? $menu : menu_tree_all_data($menu_name);
 
+  if(isset($menu)) {
+    $menu_page=menu_tree_page_data($menu_name);
+    $trail=build_page_trail($menu_page);
+    unset($menu_page);
+  }
+
   // For custom $menus and menus built all the way from the top-level we
   // don't need to "create" the specific sub-menu and we need to get the title
   // from the $menu_name since there is no "parent item" array.
@@ -301,7 +322,7 @@
   if ($menu) {
     // Set the total menu depth counting from this parent if we need it.
     $depth =  ($depth > 0) ? ($parent_depth + $depth) : $depth;
-    $output['content'] .= theme('nice_menu_build', $menu, $depth);
+    $output['content'] .= theme('nice_menu_build', $menu, $depth, $trail);
   }
 
   return $output;
@@ -313,7 +334,7 @@
  * @param $menu
  *   Menu array from which to build the nested lists.
  */
-function theme_nice_menu_build($menu, $depth = -1) {
+function theme_nice_menu_build($menu, $depth = -1, $trail=NULL) {
   $output = '';
   //$output .= dpm($menu);
   foreach ($menu as $menu_item) {  
@@ -327,6 +348,7 @@
       // Convert slashes to dashes.
       $clean_path = str_replace('/', '-', $clean_path);
       $path_class = 'menu-path-'. $clean_path;
+      if($trail && in_array($mlid,$trail)) $path_class .=' in-active-trail';
       // If it has children build a nice little tree under it.
       if ((!empty($menu_item['link']['has_children'])) && (!empty($menu_item['below'])) && $depth != 0) {
         // Keep passing children into the function 'til we get them all.
Common subdirectories: /temp/2008-10/sadkomed.ru/nice_menus_work/nice_menus/translations and ./translations
