Qt (B3) Qt と doxygen
doxygenでHELPプロジェクトファイル(.qhp) -> .qch を作成してみましょう
doxygenで、QtAssistantで使うHELPファイルを作成するには、先のconfigファイルに以下のような情報を追加すると通常のドキュメントを作成する手順で自動的に作成できます。
パラメータ名 |
解説 |
GENERATE_QHP |
HELPプロジェクトファイルを作成するかを指定します。 例) YES |
QHP_NAMESPACE |
HELPプロジェクトのネームスペースを指定します。 例) qthelpName |
QHP_VIRTUAL_FOLDER |
HELPプロジェクト内で用いる仮想ディレクトリ名指定します。 例) qthelpFolder |
QHP_CUST_FILTER_NAME |
HELPプロジェクトのカスタムフィルター名を指定します。 例)sample |
QHP_CUST_FILTER_ATTRS |
HELPプロジェクトのカスタムフィルターの属性値をリストで指定します。 参照:関連記事: Qt(8)-2 QtAssistantで使うHELPファイルを作成する
|
QHP_SECT_FILTER_ATTRS |
HELPプロジェクトのセクションフィルター(フィルター定義)の属性値をリストで指定します。 参照:関連記事: Qt(8)-2 QtAssistantで使うHELPファイルを作成する
|
QCH_FILE |
HELPプロジェクトファイル名を指定します。 何も指定しない場合は、index.qhpとなります。 |
QHG_LOCATION |
Qt Help Generatorのコマンドイメージを指定します。 例) "qhelpgenerator" |
上記のパラメータを意識しておけば、QtHELPファイルが作成できます。
これを、diagramsQt.cfg のファイル名で保存します。以下は、その中身です。単純なテキストファイルです。
[diagrams.cfg]
PROJECT_NAME = "Diagrams"
OUTPUT_DIRECTORY = diagramsQt
HAVE_DOT = YES
EXTRACT_ALL = YES
GENERATE_LATEX = NO
GENERATE_MAN = NO
GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
ENABLE_PREPROCESSING = YES
INPUT = .
FILE_PATTERNS = diagrams_*.h
QUIET = YES
#JAVADOC_AUTOBRIEF = YES
QT_AUTOBRIEF = YES
EXTRACT_PRIVATE = YES
# GENERATE_QHP=YES --> QHP_VIRTUAL_FOLDER=xxx,QHP_NAMESPACE=yyy
GENERATE_QHP = YES
QHP_NAMESPACE = qthelpName
QHP_VIRTUAL_FOLDER = qthelpFolder
QHP_CUST_FILTER_NAME = sample
QHP_CUST_FILTER_ATTRS =
QHP_SECT_FILTER_ATTRS =
# need set of QHG_LOCATION
QCH_FILE =
QHG_LOCATION = "qhelpgenerator"
|
doxygenでドキュメントを作成しましょう
先に記述したのを同じように、コマンドから以下のように入力することでドキュメントを作成できます。
%diagramsQt.cfgのあるディレクトリ%> doxygen diagramsQt.cfg
%diagramsQt.cfgのあるディレクトリ%>
|
同じですね。ファイル名を指定するだけです。
完了すると、先のconfigファイルに指定したように論理パスのdiagramsへhtmlというディレクトリが作成されていると思います。
また、今回は、html以外に、qchというディレクトリが作成されていると思います。
これが、QtHELPファイルが作成されているディレクトリです。
ここには、
プロジェクト名.qch (Diagrams.qch)という名前でファイルが作成されているはずです。
もし、作成されていないようであれば、上記のパラメータに誤りがないか、また、qhelpgeneratorのパスが設定されているか確認してみましょう。
では、このDiagrams.qchの中身を確認してみましょう。
通常のQtAssistantを起動します。
%Qtインストール先ディレクトリ%\bin\assistant.exe
をダブルクリックで起動します。
QtAssistantへ、先のDiagrams.qchを追加します。
カスタムフィルターで、configファイルに
"QHP_CUST_FILTER_NAME = sample"と指定しましたので、"Sample"があるはずです。切り替えてみましょう。
画面左のコンテンツツリーに
"Diagrams"が表示されたと思います。クリックしてみましょう。
画面右へ、doxygenで作成された画面が表示されたと思います。
このようにdoxygenを使って、自分で作成したライブラリなどのQtヘルプをQtAssistantへ追加できるようになります。
このあたりは、VisualStudioのHTMLヘルプに追加できるのと同じ感覚ですね。
Qt Creatorでどこまで、連携するのかは、わかりませんが、ここで、追加しておけば、検索できるはずですので、判らなくなったときには、
QtAssistantで簡単に表示してくれるのでしょう。
ここでは、Qtに関連するところのみを紹介しましたが、
doxygenには、今回紹介した機能以外に、たくさんの機能があります。色々と試されるのも良いと思います。
サンプルの中には、UML(クラス)図を出力するパラメータの例(diagramsU.cfg)を同梱していますので、ご参考ください。

もっと、Qt関連について詳しく知りたい方は、以下の本なども良いと思います。
Qtに関する日本語の本が少ないですね。「入門書」は、さすがに、このページを読まれるくらいの方は不要だと思います。
やっぱり、本+ネット+試してみる!!の3本柱でやっていく以外にないように思います。
コメントをどうぞ