[Bug 51331] Project Options -> Doxygen: many settings are not written to Doxyfile

Amilcar do Carmo Lucas a.lucas at tu-bs.de
Mon Feb 24 19:39:02 UTC 2003


------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
     
http://bugs.kde.org/show_bug.cgi?id=51331     




------- Additional Comments From a.lucas at tu-bs.de  2003-02-24 19:38 -------
I've looked around and could not find it.
There are to comments in the doxygenconfigwidget.cpp file that go like this:
// UGLY HACK: assumes each item depends on a boolean without checking!

But I don't know enough QT to fix it.
anyway I updated the config.h file to the latest doxygen version.
Here is the diff:
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      24 Feb 2003 18:34:52 -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;




More information about the KDevelop-devel mailing list