|
Packit |
1c1d7e |
/******************************************************************************
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
* Copyright (C) 1997-2015 by Dimitri van Heesch.
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
* Permission to use, copy, modify, and distribute this software and its
|
|
Packit |
1c1d7e |
* documentation under the terms of the GNU General Public License is hereby
|
|
Packit |
1c1d7e |
* granted. No representations are made about the suitability of this software
|
|
Packit |
1c1d7e |
* for any purpose. It is provided "as is" without express or implied warranty.
|
|
Packit |
1c1d7e |
* See the GNU General Public License for more details.
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
* Documents produced by Doxygen are derivative works derived from the
|
|
Packit |
1c1d7e |
* input used in their production; they are not affected by this license.
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
* The code is this file is largely based on a contribution from
|
|
Packit |
1c1d7e |
* Harm van der Heijden <H.v.d.Heijden@phys.tue.nl>
|
|
Packit |
1c1d7e |
* Please send thanks to him and bug reports to me :-)
|
|
Packit |
1c1d7e |
*/
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#ifndef HTMLHELP_H
|
|
Packit |
1c1d7e |
#define HTMLHELP_H
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#include <qstrlist.h>
|
|
Packit |
1c1d7e |
#include <qdict.h>
|
|
Packit |
1c1d7e |
#include "index.h"
|
|
Packit |
1c1d7e |
#include "ftextstream.h"
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
class QFile;
|
|
Packit |
1c1d7e |
class Definition;
|
|
Packit |
1c1d7e |
class HtmlHelpIndex;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
/** A class that generated the HTML Help specific files.
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
* These files can be used with the Microsoft HTML Help workshop
|
|
Packit |
1c1d7e |
* to generate compressed HTML files (.chm).
|
|
Packit |
1c1d7e |
*/
|
|
Packit |
1c1d7e |
class HtmlHelp : public IndexIntf
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
/*! used in imageNumber param of HTMLHelp::addContentsItem() function
|
|
Packit |
1c1d7e |
to specify document icon in tree view.
|
|
Packit |
1c1d7e |
Writes \<param name="ImageNumber" value="xx"\> in .HHC file. */
|
|
Packit |
1c1d7e |
enum ImageNumber {
|
|
Packit |
1c1d7e |
BOOK_CLOSED=1, BOOK_OPEN,
|
|
Packit |
1c1d7e |
BOOK_CLOSED_NEW, BOOK_OPEN_NEW,
|
|
Packit |
1c1d7e |
FOLDER_CLOSED, FOLDER_OPEN,
|
|
Packit |
1c1d7e |
FOLDER_CLOSED_NEW,FOLDER_OPEN_NEW,
|
|
Packit |
1c1d7e |
QUERY, QUERY_NEW,
|
|
Packit |
1c1d7e |
TEXT, TEXT_NEW,
|
|
Packit |
1c1d7e |
WEB_DOC, WEB_DOC_NEW,
|
|
Packit |
1c1d7e |
WEB_LINK, WEB_LINK_NEW,
|
|
Packit |
1c1d7e |
INFO, INFO_NEW,
|
|
Packit |
1c1d7e |
LINK, LINK_NEW,
|
|
Packit |
1c1d7e |
BOOKLET, BOOKLET_NEW,
|
|
Packit |
1c1d7e |
EMAIL, EMAIL_NEW,
|
|
Packit |
1c1d7e |
EMAIL2, EMAIL2_NEW,
|
|
Packit |
1c1d7e |
IMAGE, IMAGE_NEW,
|
|
Packit |
1c1d7e |
AUDIO, AUDIO_NEW,
|
|
Packit |
1c1d7e |
MUSIC, MUSIC_NEW,
|
|
Packit |
1c1d7e |
VIDEO, VIDEO_NEW,
|
|
Packit |
1c1d7e |
INDEX, INDEX_NEW,
|
|
Packit |
1c1d7e |
IDEA, IDEA_NEW,
|
|
Packit |
1c1d7e |
NOTE, NOTE_NEW,
|
|
Packit |
1c1d7e |
TOOL, TOOL_NEW
|
|
Packit |
1c1d7e |
};
|
|
Packit |
1c1d7e |
public:
|
|
Packit |
1c1d7e |
//static HtmlHelp *getInstance();
|
|
Packit |
1c1d7e |
HtmlHelp();
|
|
Packit |
1c1d7e |
~HtmlHelp();
|
|
Packit |
1c1d7e |
void initialize();
|
|
Packit |
1c1d7e |
void finalize();
|
|
Packit |
1c1d7e |
void incContentsDepth();
|
|
Packit |
1c1d7e |
void decContentsDepth();
|
|
Packit |
1c1d7e |
void addContentsItem(bool isDir,
|
|
Packit |
1c1d7e |
const char *name,
|
|
Packit |
1c1d7e |
const char *ref,
|
|
Packit |
1c1d7e |
const char *file,
|
|
Packit |
1c1d7e |
const char *anchor,
|
|
Packit |
1c1d7e |
bool separateIndex,
|
|
Packit |
1c1d7e |
bool addToNavIndex,
|
|
Packit |
1c1d7e |
Definition *def);
|
|
Packit |
1c1d7e |
void addIndexItem(Definition *context,MemberDef *md,
|
|
Packit |
1c1d7e |
const char *sectionAnchor, const char *title);
|
|
Packit |
1c1d7e |
void addIndexFile(const char *name);
|
|
Packit |
1c1d7e |
void addImageFile(const char *);
|
|
Packit |
1c1d7e |
void addStyleSheetFile(const char *) {}
|
|
Packit |
1c1d7e |
static QCString getLanguageString();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
private:
|
|
Packit |
1c1d7e |
friend class HtmlHelpIndex;
|
|
Packit |
1c1d7e |
void createProjectFile();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
QFile *cf,*kf;
|
|
Packit |
1c1d7e |
FTextStream cts,kts;
|
|
Packit |
1c1d7e |
HtmlHelpIndex *index;
|
|
Packit |
1c1d7e |
int dc;
|
|
Packit |
1c1d7e |
QStrList indexFiles;
|
|
Packit |
1c1d7e |
QStrList imageFiles;
|
|
Packit |
1c1d7e |
QDict<void> indexFileDict;
|
|
Packit |
1c1d7e |
static HtmlHelp *theInstance;
|
|
Packit |
1c1d7e |
QCString recode(const QCString &s);
|
|
Packit |
1c1d7e |
void *m_fromUtf8;
|
|
Packit |
1c1d7e |
};
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#endif /* HTMLHELP_H */
|
|
Packit |
1c1d7e |
|