]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/math_atom.h
fix #1073
[lyx.git] / src / mathed / math_atom.h
index 2c79655c8a40d8f389134193dd702071fcaddb4b..215f102f0f05ec937d817ba71338fe68a3f90c7e 100644 (file)
@@ -3,16 +3,21 @@
 #ifndef MATH_ATOM_H
 #define MATH_ATOM_H
 
-#ifdef __GNUG__
-#pragma interface
-#endif
 
-/** 
+/**
+ * Wrapper for MathInset * with copy-semantics
+ *
+ * \author André Pönitz
+ *
+ * Full author contact details are available in file CREDITS
+ */
+
+/**
 The 'atom' is the major blob in math typesetting.  And 'atom' consists
 of a nucleus, an optional superscript, and an optional subscript.
 
 Exactly where the subscript and superscript are drawn depends on the
-size, and type, of the nucleus they are attached to.  
+size, and type, of the nucleus they are attached to.
 
 Jules
 
@@ -33,7 +38,7 @@ Andre'
 class MathInset;
 
 class MathAtom {
-public: 
+public:
        /// default constructor, object is useless, but we need it to put it into
        // std::containers
        MathAtom();
@@ -42,15 +47,13 @@ public:
        /// copy constructor, invokes nucleus_->clone()
        MathAtom(MathAtom const &);
        /// we really need to clean up
-       ~MathAtom(); 
+       ~MathAtom();
        /// assignment invokes nucleus_->clone()
        void operator=(MathAtom const &);
-       /// change inset under the hood
-       void reset(MathInset * p);
        /// access to the inset (checked with gprof)
-       MathInset * nucleus() const { return nucleus_; }
+       MathInset       * nucleus()       { return nucleus_; }
        /// access to the inset
-       MathInset * operator->() const { return nucleus_; }
+       MathInset const * operator->() const { return nucleus_; }
 
 private:
        ///