C:\home\SVGCats_src\src\InputML.h
1|//{{AFX_INCLUDES() 2|#include "inkedit.h" 3|//}}AFX_INCLUDES 4|#if !defined(AFX_INPUTML_H__90F8DB7F_334E_4CBA_864B_33FBAAC729F0__INCLUDED_) 5|#define AFX_INPUTML_H__90F8DB7F_334E_4CBA_864B_33FBAAC729F0__INCLUDED_ 6| 7|#if _MSC_VER > 1000 8|#pragma once 9|#endif // _MSC_VER > 1000 10|// InputML.h : ヘッダー ファイル 11|// 12| 13|///////////////////////////////////////////////////////////////////////////// 14|// CInputML ダイアログ 15|class CInputML; 16|typedef void (*CInputML_SaveF)( void* saveObj, CInputML* ); 17|typedef void (*CInputML_ShowWindowF)( void* obj, bool bShow ); 18| 19|class CInputML : public CDialog 20|{ 21|// コンストラクション 22|public: 23| CInputML(CWnd* pParent = NULL); // 標準のコンストラクタ 24| CString m_Text; 25| CString m_OldText; 26| void* m_ID; /* 図形のアドレス(編集中の状態を回復するかどうかに使用する) */ 27| CPoint m_CursorPos; /* 設定するとマウスの位置からウィンドウ位置を決定しない */ 28| RECT m_Rect; 29| int m_mByteInLine; 30| bool m_Creating; 31| bool m_bJapanese; 32| bool m_bNoSelect; 33| bool m_bHideMain; 34| void* m_HideTarget; 35| CInputML_ShowWindowF m_ShowWindowFunc; 36| void* m_SaveObj; 37| CInputML_SaveF m_SaveFunc; 38| static void* m_ID_prev; 39| static bool m_bImeOn; 40| CToolTipCtrl m_ToolTip; /* ボタンに対するヒント表示 */ 41| bool m_TextCtrl2_bModify; 42| bool m_bCtrlRet; 43| bool m_bCtrl; 44| bool m_bShift; 45| BYTE m_Keys[256]; 46| CString m_kword; 47| 48| IPenInputPanel* m_PenInputPanel; /* NULL=キーボード用 */ 49| bool m_bDispPenPanel; 50| void save(); 51| void saveAlways(); 52| void SetFocusToEdit(); 53| void AdjustUI(); 54| void SetCtrlRet( bool bCtrlRet ); 55| void OnSearch_imp( const char* kword, bool bRev ); 56| 57|// 編集中の状態 58| static int m_iStart, m_iEnd, m_iLine; 59| static RECT m_WinRect; 60| static bool m_bMax; 61| 62| 63|// ダイアログ データ 64| //{{AFX_DATA(CInputML) 65| enum { IDD = IDD_InputML }; 66| CButton m_SearchPrevBtn; 67| CButton m_SearchNextBtn; 68| CButton m_SearchBtn; 69| CButton m_HideMainBtn; 70| CStatic m_Guide; 71| CButton m_ToggleCtrlEnter; 72| CButton m_PenBtn; 73| CButton m_KeyboardBtn; 74| CButton m_SaveBtn; 75| CButton m_RedoBtn; 76| CButton m_UndoBtn; 77| CButton m_DelBtn; 78| CButton m_PasteBtn; 79| CButton m_CutBtn; 80| CButton m_CopyBtn; 81| CButton m_RetCtrl; 82| CButton m_OKCtrl; 83| CButton m_CancelCtrl; 84| CEdit m_TextCtrl; 85| CInkEdit m_Text2Ctrl; 86| //}}AFX_DATA 87| 88| 89|// オーバーライド 90| // ClassWizard は仮想関数のオーバーライドを生成します。 91| //{{AFX_VIRTUAL(CInputML) 92| public: 93| virtual BOOL Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext = NULL); 94| virtual BOOL PreTranslateMessage(MSG* pMsg); 95| protected: 96| virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV サポート 97| virtual BOOL OnCommand(WPARAM wParam, LPARAM lParam); 98| //}}AFX_VIRTUAL 99| 100|// インプリメンテーション 101|protected: 102| 103| // 生成されたメッセージ マップ関数 104| //{{AFX_MSG(CInputML) 105| virtual BOOL OnInitDialog(); 106| virtual void OnOK(); 107| virtual void OnCancel(); 108| afx_msg void OnSize(UINT nType, int cx, int cy); 109| afx_msg void OnRet(); 110| afx_msg void OnGetMinMaxInfo(MINMAXINFO FAR* lpMMI); 111| afx_msg void OnChangeText(); 112| afx_msg void OnChangeText2(); 113| afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); 114| afx_msg void OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized); 115| afx_msg void OnCut(); 116| afx_msg void OnCopy(); 117| afx_msg void OnPaste(); 118| afx_msg void OnDel(); 119| afx_msg void OnUndo(); 120| afx_msg void OnRedo(); 121| afx_msg void OnSaveBtn(); 122| afx_msg void OnKeyboard(); 123| afx_msg void OnPen(); 124| afx_msg void OnEditSave(); 125| afx_msg void OnToggleCtrlEnter(); 126| afx_msg void OnHideMain(); 127| afx_msg void OnSelectAll(); 128| afx_msg void OnSearch(); 129| afx_msg void OnSearchNext(); 130| afx_msg void OnSearchPrev(); 131| DECLARE_EVENTSINK_MAP() 132| //}}AFX_MSG 133| DECLARE_MESSAGE_MAP() 134|}; 135| 136|//{{AFX_INSERT_LOCATION}} 137|// Microsoft Visual C++ は前行の直前に追加の宣言を挿入します。 138| 139|#define CInputML_KeyPosted 1901 /* WM_COMMAND ID */ 140|#define CInputML_MTextByte 32768 141| 142| 143|#endif // !defined(AFX_INPUTML_H__90F8DB7F_334E_4CBA_864B_33FBAAC729F0__INCLUDED_) 144| 145|