Index: tol/btol/text_type/txtgra.cpp
===================================================================
--- tol/btol/text_type/txtgra.cpp	(revision 47bb2daded219922c02309acd39f5b4d43837055)
+++ tol/btol/text_type/txtgra.cpp	(revision 176c3d90f3ee0b91a3a14e32ae95bf4c417ee12d)
@@ -33,4 +33,5 @@
 #include <tol/tol_btxtgra.h>
 #include <tol/tol_bout.h>
+#include <tol/tol_bnameblock.h>
 #include <tol/tol_bsys.h>
 #include <tol/tol_bdir.h>
@@ -2246,5 +2247,23 @@
 }
 
-
+//--------------------------------------------------------------------
+DeclareContensClass(BText, BTxtTemporary, BTxtClassOf);
+DefExtOpr(1, BTxtClassOf, "ClassOf", 1, 1,
+	  "NameBlock",
+	  "(NameBlock instance )",
+	  I2("Returns the class name for a give NameBlock. If the nameBlock does not have Class associated returns empty \"\"",
+	     "Retorna el nombre de la clase asociada con un NameBlock. Si el NameBlock no tiene clase asociada retorna cadena vacia \"\""),
+	  BOperClassify::General_);
+
+//--------------------------------------------------------------------
+void BTxtClassOf::CalcContens()
+//--------------------------------------------------------------------
+{
+  const BNameBlock& nb = ((BUserNameBlock*)(Arg(1)))->Contens();
+  const BClass* cls = nb.Class( );
+  if ( cls ) {
+    contens_ = cls->getName( );
+  }
+}
 
 //--------------------------------------------------------------------
@@ -2382,4 +2401,3 @@
     contens_ = BText(base.c_str());
 }
-
 #endif /* __USE_TC__ */
