#pragma once /** 拡張 ビュー,フレーム,ドキュメント管理ライブラリ */ #include "..\stdafx.h" #include "common++.h" #include "ExView.h" #include "ExDocument.h" #include "ExFrame.h" #include "ExTextView.h" #include "ExTextFrame.h" #include "ExToolBar.h" #define MSG_DEFAULT_WINDOW_SIZE 512 #define MSG_DFV_NOT_DISP -1 #define MSG_DFV_FR_NULL 1 #define MSG_DFV_CANCEL 2 #define MSG_DFV_ERR_READ 10 #define MSG_DFV_UNVISIBLE 11 #define MSG_DFV_FAIL_VIEW 12 // namespace jbxwl { using namespace jbxl; class CExDocument; class CExView; class CExScrollTextView; class CExFrame; class CExToolBar; ////////////////////////////////////////////////////////////////////////////////////////////////////////////// // 上位アプリケーションへのコールバック用 // class CAppCallBack { protected: CAppCallBack() { callMSGraph.init();} ~CAppCallBack() {} public: // 作業用 MSGraph callMSGraph; // メモリ管理無し public: virtual CExFrame* TemplateCallBack(CExFrame* pfrm, int mode, CString title=(CString)"") { return NULL;} virtual CMultiDocTemplate* GetMultiDocTemplate(int mode) { return NULL;} virtual void DocumentDistructor(CExDocument* doc) {return;} virtual void FrameDistructor(CExFrame* frm) {return;} virtual void ViewDistructor (CExView* vw) {return;} virtual void FrameDistructor(CExTextFrame* fm) {return;} virtual void ViewDistructor (CExTextView* vw) {return;} }; ////////////////////////////////////////////////////////////////////////////////////////////////////////////// // // // int ExecTemplate(CMultiDocTemplate* ptemp, ExMSGraph* pmsGraph=NULL, ExCmnHead* pcmnHead=NULL, CExFrame* prntFrm=NULL, int vPoint=0); CExFrame* CreateDocFrmView(CMultiDocTemplate* pDocTemp, CAppCallBack* papp=NULL); int ExecDocFrmView(CExFrame* pfrm, CString fname=_T("")); void ExecDocFrmViewError(HWND hwnd, int ret); // Document, View クラスの前処理 (ファイルをオープンし,表示の準備をする) BOOL InitialDocView(CExFrame* pfrm, CString fname); // 各オブジェクト間の関連付け bool SetExLink(CExDocument* pdoc, CExFrame* pfrm, CExView* pview, CAppCallBack* papp); CString EasyGetOpenFileName(CString title=_T(""), HWND hWnd=NULL); CString EasyGetSaveFileName(CString title=_T(""), CString extnt=_T(""), HWND hWnd=NULL); } // namespace