home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1997 March / VPR9703A.ISO / VPR_DATA / DOGA / SOURCES / TCH2AVI.LZH / TCH2VAPP.H < prev    next >
C/C++ Source or Header  |  1996-07-05  |  3KB  |  114 lines

  1. #if !defined(__tch2vapp_h)              // 番兵。まだインクルードされていない場合にのみ,このファイルを使用
  2. #define __tch2vapp_h
  3.  
  4. /*  Project tch2avi
  5.     Project Team DoGA
  6.     Copyright (c) 1996. All Rights Reserved.
  7.  
  8.     サブシステム:    tch2avi.exe Application
  9.     ファイル:        tch2vapp.h
  10.     作成者:          Masamichi Takatsu
  11.  
  12.  
  13.     概要
  14.     ====
  15.     tch2aviApp (TApplication) 用のクラス定義
  16. */
  17.  
  18.  
  19. #include <owl\owlpch.h>
  20. #pragma hdrstop
  21.  
  22.  
  23. #include <classlib\bags.h>
  24.  
  25. #include <owl\opensave.h>
  26.  
  27. #include "tch2vapp.rh"            // すべてのリソースの定義
  28. #include "tshwwndw.h"
  29. #include "vfw.h"
  30.  
  31.  
  32. // TFileDrop クラスは,ドロップされたファイル,その名前,ドロップされた位置,そして
  33. // それがクライアント領域中かどうかを管理する
  34. class TFileDrop {
  35. public:
  36.     operator == (const TFileDrop& other) const {return this == &other;}
  37.  
  38.     char*   FileName;
  39.     TPoint  Point;
  40.     BOOL    InClientArea;
  41.  
  42.     TFileDrop (char*, TPoint&, BOOL, TModule*);
  43.     ~TFileDrop ();
  44.  
  45.     const char* WhoAmI ();
  46. private:
  47.     //
  48.     // アクシデントによって,コピーや代入が起こらないように,隠蔽する
  49.     //
  50.     TFileDrop (const TFileDrop&);
  51.     TFileDrop & operator = (const TFileDrop&);
  52. };
  53.  
  54. typedef TIBagAsVector<TFileDrop> TFileList;
  55. typedef TIBagAsVectorIterator<TFileDrop> TFileListIter;
  56.  
  57.  
  58. //{{TApplication = tch2aviApp}}
  59. class tch2aviApp : public TApplication {
  60. public:
  61.     TOpenSaveDialog::TData FileData;                    // 「開く」「名前を付けて保存」標準ダイアログ用の制御データ
  62.     AVICOMPRESSOPTIONS    AviCompOpts;
  63.     int    idle;
  64.  
  65. private:
  66.     void AddFile (const char *fileName);
  67.  
  68. public:
  69.     tch2aviApp ();
  70.     virtual ~tch2aviApp ();
  71.  
  72.     void OpenFile (const char *fileName = 0);
  73. //{{tch2aviAppVIRTUAL_BEGIN}}
  74. public:
  75.     virtual void InitMainWindow();
  76.     virtual void InitInstance();
  77.     virtual BOOL IdleAction (long idleCount);
  78.     virtual BOOL CanClose ();
  79. //{{tch2aviAppVIRTUAL_END}}
  80.  
  81. //{{tch2aviAppRSP_TBL_BEGIN}}
  82. protected:
  83.     void CmFileOpen ();
  84.     void CmHelpAbout ();
  85.     void EvDropFiles (TDropInfo drop);
  86.     void CmFileSaveAs ();
  87. public:
  88.     void CmFileOption ();
  89. protected:
  90.     void CmFIleSaveEnable (TCommandEnabler &tce);
  91.     void CmFileOpenEnable (TCommandEnabler &tce);
  92.     void CmFileOptionEnable (TCommandEnabler &tce);
  93.     void CmPicExt ();
  94.     void CmPicExtEnable (TCommandEnabler &tce);
  95.     void CmPicExtBmp ();
  96.     void CmPicExtBmpEnable (TCommandEnabler &tce);
  97.     void CmPicExtPic ();
  98.     void CmPicExtPicEnable (TCommandEnabler &tce);
  99.     void CmPicExtPpm ();
  100.     void CmPicExtPpmEnable (TCommandEnabler &tce);
  101. //{{tch2aviAppRSP_TBL_END}}
  102.   DECLARE_RESPONSE_TABLE(tch2aviApp);
  103. };    //{{tch2aviApp}}
  104.  
  105.  
  106. int tch2avi(TShowWindow *client, char *tchfile, char *avifile,
  107.              AVICOMPRESSOPTIONS *opts, int waitflag, int removeflag);
  108. int tchcheck(TShowWindow *client);
  109.  
  110. class TDib;
  111. TDib *LoadDib(char *filename);
  112.  
  113. #endif                                      // __tch2vapp_h の番兵
  114.