]> Creatis software - bbtk.git/blobdiff - kernel/src/bbtkFactory.cxx
*** empty log message ***
[bbtk.git] / kernel / src / bbtkFactory.cxx
index 3652d95a8f364681ee8fdf2f2cffa2a653b8813a..ab82b885600f5583cb2f412fb7c77492f2785bb1 100644 (file)
@@ -4,8 +4,8 @@ Program:   bbtk
 Module:    $RCSfile: bbtkFactory.cxx,v $
 Language:  C++
 
-Date:      $Date: 2008/02/06 10:51:28 $
-Version:   $Revision: 1.16 $
+Date:      $Date: 2008/02/12 12:55:16 $
+Version:   $Revision: 1.18 $
                                                                                 
 
 Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
@@ -582,8 +582,11 @@ namespace bbtk
   //===================================================================
 
   //===================================================================
-  /// Prints help on the black box of type <name>
-  void Factory::HelpBlackBox(const std::string& name, bool full) const
+  /// Prints help on the black box of type <name> 
+  /// Returns the package to which it belongs
+  void Factory::HelpBlackBox(const std::string& name, 
+                            std::string& package,
+                            bool full) const
   {
     bbtkDebugMessageInc("Kernel",9,"Factory::HelpBlackBox(\""<<name<<"\")"
                         <<std::endl);
@@ -595,6 +598,7 @@ namespace bbtk
       if (i->second.mPackage->ContainsBlackBox(name)) 
         {
           i->second.mPackage->HelpBlackBox(name,full);
+         package = i->second.mPackage->GetName();
           found = true;
         }
       }
@@ -920,7 +924,7 @@ namespace bbtk
                std::string k("");
                k += pack->GetName();
                keys.push_back(k);
-               title = "List by package";
+               title = "Boxes by package";
              }
            else if (type==Initials)
              {
@@ -931,24 +935,13 @@ namespace bbtk
              }
            else if (type==Categories)
              {
-
                // Split the category string 
-               //std::vector<std::string> categories;
-
                std::string delimiters = ";,";
                Utilities::SplitString(j->second->GetCategory(),
                                       delimiters,keys);
-
-               //std::vector<std::string>::iterator si;
-               //for (si=categories.begin();si!=categories.end;++si)
-               //  {
-               //    keys.push_back(*si);
-               //  }
-               title = "Index by category";
-
                if (keys.size()==0) 
                  keys.push_back(" NONE");
-               title = "List by category";
+               title = "Boxes by category";
              }
            
            std::vector<std::string>::const_iterator k;
@@ -1021,8 +1014,17 @@ namespace bbtk
       {
        s << "<p><hr>\n";
        s << "<p><a href=\"#Top\">Top</a>";
-       s << "<a name=\""<<ii->first<<"\"></a>\n"; 
-       s << "<p><b>"<<ii->first<<"</b>\n";
+       if (type==Packages)
+         {
+           s << "<a name=\""<<ii->first<<"\"></a>\n"; 
+           s << "<p><a href=\""<<ii->first<<"/index.html\">"
+             << ii->first<<"</a>\n"; 
+         }
+       else 
+         {
+           s << "<a name=\""<<ii->first<<"\"></a>\n"; 
+           s << "<p><b>"<<ii->first<<"</b>\n";
+         }
        s << "<ul>\n";
 
        s << "<p><TABLE cellspacing=0  cellpadding=3>\n";
@@ -1032,7 +1034,9 @@ namespace bbtk
          {
            std::string pack = (*di)->GetPackage()->GetName();
            std::string name = (*di)->GetTypeName();
+           Utilities::html_format(name);
            std::string descr = (*di)->GetDescription();
+           Utilities::html_format(descr);
            s << "<TR>";
            s << "<TD style='vertical-align: top;'>";
            s << "&nbsp;&nbsp;&nbsp;<a href=\""<<pack