Index: parts/doxygen/config.h
===================================================================
RCS file: /home/kde/kdevelop/parts/doxygen/config.h,v
retrieving revision 1.2
diff -u -r1.2 config.h
--- parts/doxygen/config.h	23 Jun 2002 13:48:33 -0000	1.2
+++ parts/doxygen/config.h	12 Mar 2003 15:33:39 -0000
@@ -292,7 +292,7 @@
         t << endl;
       }
       t << m_name << m_spaces.left(MAX_OPTION_LENGTH-m_name.length()) << "= ";
-      if (upd)
+      if (upd && !m_valueString.isEmpty())
       {
         writeStringValue(t,m_valueString);
       }
@@ -309,6 +309,7 @@
     QCString m_valueString;
 };
 
+// some convenience macros
 #define Config_getString(val)  Config::instance()->getString(__FILE__,__LINE__,val)
 #define Config_getInt(val)     Config::instance()->getInt(__FILE__,__LINE__,val)
 #define Config_getList(val)    Config::instance()->getList(__FILE__,__LINE__,val)
@@ -321,6 +322,10 @@
  *  read from a user-supplied configuration file.
  *  The static member instance() can be used to get
  *  a pointer to the one and only instance.
+ *  
+ *  Set all variables to their default values by
+ *  calling Config::instance()->init()
+ *
  */
 class Config
 {
@@ -335,6 +340,11 @@
       if (m_instance==0) m_instance = new Config;
       return m_instance;
     }
+    /*! Delete the instance */
+    static void deleteInstance()
+    {
+      delete m_instance;
+    }
     
     /*! Returns an iterator that can by used to iterate over the 
      *  configuration options.
@@ -481,11 +491,34 @@
     // internal API
     /////////////////////////////
 
+    /*! Converts the string values read from the configuration file
+     *  to real values for non-string type options (like int, and bools)
+     */
     void convertStrToVal();
+
+    /*! Replaces references to environment variable by the actual value
+     *  of the environment variable.
+     */
     void substituteEnvironmentVars();
+
+    /*! Checks if the values of the variable are correct, adjusts them
+     *  if needed, and report any errors.
+     */
     void check();
+
+    /*! Initialize config variables to their default value */
     void init();
-    void parse(const QCString &config,const char *fn);
+
+    /*! Parse a configuration file with name \a fn.
+     *  \returns TRUE if successful, FALSE if the file could not be 
+     *  opened or read.
+     */ 
+    void parse(const QCString &config, const char *fn);
+
+    /*! Called from the constructor, will add doxygen's default options
+     *  to the configuration object 
+     */
+    void create();
   protected:
     Config()
     { 
@@ -500,7 +533,6 @@
       delete m_options;
       delete m_dict;
     }
-    void create();
 
   private:
     QList<ConfigOption> *m_options;
