home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1997 March / VPR9703A.ISO / VPR_DATA / DOGA / SOURCES / MEC2SUF.LZH / MC2SFAPP.CPP < prev    next >
C/C++ Source or Header  |  1996-05-30  |  3KB  |  150 lines

  1. /*  Project mec2suf
  2.     Project Team DoGA
  3.     Copyright (c) 1996. All Rights Reserved.
  4.  
  5.     サブシステム:    mec2suf.exe Application
  6.     ファイル:        mc2sfapp.cpp
  7.     作成者:          Masamichi Takatsu
  8.  
  9.  
  10.     概要
  11.     ====
  12.     mec2sufApp (TApplication) のインプリメンテーション用のソースファイル
  13. */
  14.  
  15.  
  16. #include <owl\owlpch.h>
  17. #pragma hdrstop
  18.  
  19.  
  20. #include "mc2sfapp.h"
  21. #include "mc2sfabd.h"                        // 「プログラムについて」ダイアログボックスの定義
  22. #include "files.h"
  23. #include "mec2suf.h"
  24.  
  25. TApplication *app;
  26.  
  27. //{{mec2sufApp Implementation}}
  28.  
  29.  
  30. //
  31. // アプリケーションが処理するすべてのメッセージ/コマンドに対する応答テーブルを作成する
  32. //
  33. DEFINE_RESPONSE_TABLE1(mec2sufApp, TApplication)
  34. //{{mec2sufAppRSP_TBL_BEGIN}}
  35. EV_COMMAND(CM_HELPABOUT, CmHelpAbout),
  36. //{{mec2sufAppRSP_TBL_END}}
  37. END_RESPONSE_TABLE;
  38.  
  39.  
  40.  
  41.  
  42. //////////////////////////////////////////////////////////
  43. // mec2sufApp
  44. // =====
  45. //
  46. mec2sufApp::mec2sufApp () : TApplication("mec2suf")
  47. {
  48.     // INSERT>> コンストラクタ用のコードはここに
  49.     WinStatus = NULL;
  50.     execflag = 0;
  51. }
  52.  
  53.  
  54. mec2sufApp::~mec2sufApp ()
  55. {
  56.     // INSERT>> デストラクタ用のコードはここに
  57.  
  58. }
  59.  
  60.  
  61. //////////////////////////////////////////////////////////
  62. // mec2sufApp
  63. // =====
  64. // アプリケーションの初期化
  65. //
  66. void mec2sufApp::InitMainWindow ()
  67. {
  68.     WinStatus = new TWindow(NULL,0,0);
  69.     WinStatus->Attr.W = 256;
  70.     WinStatus->Attr.H = 32;
  71.  
  72.     TFrameWindow *frame = new TFrameWindow(0, GetName(), WinStatus, TRUE);
  73.  
  74. #ifdef __WIN32__
  75.     STARTUPINFO si;
  76.     ::GetStartupInfo(&si);
  77.     if (si.dwFlags & STARTF_USESHOWWINDOW) {
  78.         nCmdShow = si.wShowWindow;
  79.     }
  80. #else
  81.     nCmdShow = nCmdShow != SW_SHOWMINIMIZED ? SW_SHOWNORMAL : nCmdShow;
  82. #endif
  83.  
  84.     //
  85.     // このアプリケーションに,アイコンを設定する
  86.     //
  87.     frame->SetIcon(this, IDI_SDIAPPLICATION);
  88.  
  89.     //
  90.     // ウィンドウに対応したメニューと,テーブルに対応したアクセラレータのテーブル
  91.     //
  92. //    frame->AssignMenu(SDI_MENU);
  93.  
  94.     //
  95.     // アクセラレータテーブルへの関連付け
  96.     //
  97. //    frame->Attr.AccelTable = SDI_MENU;
  98.  
  99.  
  100.     SetMainWindow(frame);
  101.  
  102. }
  103.  
  104. //////////////////////////////////////////////////////////
  105. // mec2sufApp
  106. // ===========
  107. // 「ヘルプ」メニューの「mec2suf.exe について」コマンド
  108. void mec2sufApp::CmHelpAbout ()
  109. {
  110.     //
  111.     // モーダルダイアログを表示する
  112.     //
  113.     mec2sufAboutDlg(MainWindow).Execute();
  114. }
  115.  
  116.  
  117. BOOL mec2sufApp::IdleAction (long idleCount)
  118. {
  119.     BOOL result;
  120.  
  121.     result = TApplication::IdleAction(idleCount);
  122.  
  123.     // INSERT>> 追加のコードはここに
  124.  
  125.     if (execflag == 0) {
  126.         execflag = 1;
  127.         TClientDC dc(*WinStatus);
  128.         Mec2Suf(dc, _argc, _argv);
  129.  
  130.         PostQuitMessage(0);
  131.     }
  132.     return result;
  133. }
  134.  
  135.  
  136. int OwlMain (int, char* [])
  137. {
  138.     mec2sufApp     App;
  139.     int             result;
  140.  
  141.     FileInit();
  142.  
  143.     app = &App;
  144.  
  145.     result = App.Run();
  146.  
  147.     return result;
  148. }
  149.  
  150.