[ヘルプTop] [戻る]

プレビュープラグイン インターフェイス仕様書

 動的にDLLを絶対パス指定で読み込んでおります。
 次のAPIインターフェイスが実装されていれば、プレビュープラグインとして動作させる事ができます。

  • extern "C" CWnd* PASCAL EXPORT CreateCtrl(CWnd* pParentWnd)
     CWnd* pParentWnd:プレビューで使用するコントロールの生成、コンストラクタと思っていただいてかまいません。
     引数はプレビューバーのポインタが渡されます。

  • extern "C" void PASCAL EXPORT DestroyCtrl(CWnd* pWnd)
     CWnd* pWnd:引数はCreateCtrl()で返したものが渡されます。
     コントロールの生成などを行った場合は、ここで破棄してください。

  • extern "C" BOOL PASCAL EXPORT LoadFile(CWnd* pWnd, LPCTSTR szFullPathFileName)
     CWnd* pWnd:引数はCreateCtrl()で返したものが渡されます。
     LPCTSTR szFullPathFileName:本体側からファイルを選択するたびに呼ばれ、選択ファイル名がフルパスで渡されます。

  • extern "C" void PASCAL EXPORT SendCommand(CWnd* pWnd, UINT nID)
     CWnd* pWnd:引数はCreateCtrl()で返したものが渡されます。
     UINT nID:本体から指定されたコマンドが渡されます。(ID_PREVIEW_FULLSCREEN~ID_PREVIEW_CMD50までの50種類のコマンドがプレビューに割り当てられています)

  • extern "C" void PASCAL EXPORT ShowCtrl(CWnd* pWnd, BOOL bVisible)
     CWnd* pWnd:引数はCreateCtrl()で返したものが渡されます。
     BOOL bVisible:コントロールの表示・非表示を切り替える指示が渡されます。

  • extern "C" void PASCAL EXPORT ResizeWindow(CWnd* pWnd, int x, int y, int cx, int cy)
     CWnd* pWnd:引数はCreateCtrl()で返したものが渡されます。
     int x, int y, int cx, int cy:ウィンドウサイズが変更され、リサイズするための新しいサイズが渡されます。

  • extern "C" BOOL PASCAL EXPORT GetDefaultFilter(LPTSTR szRetString)
     LPTSTR szRetString:このプラグインが対応している拡張子文字列を返します。
     文字列長は、MAX_PATH * 2までとしてください。

 作者が作成したプラグインを、いくつか別途公開しておきますので参考にしてください。
 たとえば、以下のようなアイデアが出てくるかもしれません。
 Editボックスを配置し、ファイルの選択と連動した、連続編集用の簡易エディタ。
 (LoadFile()で読み込んで、編集フラグが立っていればDestroyCtrl()で保存するとか)
 リストボックスを配置してLZHファイルの中身の一覧の表示とか。