Orb/Doxygen/src/eclipsehelp.h
changeset 0 42188c7ea2d9
child 4 468f4c8d3d5b
equal deleted inserted replaced
-1:000000000000 0:42188c7ea2d9
       
     1 /******************************************************************************
       
     2  *
       
     3  * 
       
     4  *
       
     5  * Copyright (C) 1997-2008 by Dimitri van Heesch.
       
     6  *
       
     7  * Permission to use, copy, modify, and distribute this software and its
       
     8  * documentation under the terms of the GNU General Public License is hereby 
       
     9  * granted. No representations are made about the suitability of this software 
       
    10  * for any purpose. It is provided "as is" without express or implied warranty.
       
    11  * See the GNU General Public License for more details.
       
    12  *
       
    13  * Documents produced by Doxygen are derivative works derived from the
       
    14  * input used in their production; they are not affected by this license.
       
    15  *
       
    16  */
       
    17 /*
       
    18  * eclipsehelp.h
       
    19  *
       
    20  *  Created on: 7.11.2009
       
    21  *      Author: ondrej
       
    22  */
       
    23 
       
    24 #ifndef ECLIPSEHELP_H
       
    25 #define ECLIPSEHELP_H
       
    26 
       
    27 #include "qtbc.h"
       
    28 #include "index.h"
       
    29 #include <qtextstream.h>
       
    30 
       
    31 /* -- forward declarations */
       
    32 class QFile;
       
    33 
       
    34 /*!
       
    35  * \brief Generator of Eclipse help files
       
    36  *
       
    37  * This class generates the Eclipse specific help files.
       
    38  * These files can be used to generate a help plugin readable
       
    39  * by the Eclipse IDE.
       
    40  */
       
    41 class EclipseHelp : public IndexIntf 
       
    42 {
       
    43   public:
       
    44     EclipseHelp();
       
    45     virtual ~EclipseHelp();
       
    46 
       
    47     /* -- index interface */
       
    48     virtual void initialize();
       
    49     virtual void finalize();
       
    50     virtual void incContentsDepth();
       
    51     virtual void decContentsDepth();
       
    52     virtual void addContentsItem(bool isDir, const char *name, const char *ref = 0,
       
    53                                  const char *file = 0, const char *anchor = 0);
       
    54     virtual void addIndexItem(Definition *context,MemberDef *md,
       
    55                               const char *anchor,const char *word);
       
    56     virtual void addIndexFile(const char *name);
       
    57     virtual void addImageFile(const char *name);
       
    58     virtual void addStyleSheetFile(const char *name);
       
    59 
       
    60   private:
       
    61     int m_depth;
       
    62     bool m_endtag;
       
    63 
       
    64     QFile * m_tocfile;
       
    65     QTextStream m_tocstream;
       
    66     QCString m_pathprefix;
       
    67 
       
    68     /* -- avoid copying */
       
    69     EclipseHelp(const EclipseHelp &);
       
    70     EclipseHelp & operator = (const EclipseHelp &);
       
    71 
       
    72     /* -- formatting helpers */
       
    73     void indent();
       
    74     void closedTag();
       
    75     void openedTag();
       
    76 };
       
    77 
       
    78 #endif /* ECLIPSEHELP_H */