// // Copyright (c) 1997-1999 Microsoft Corporation. // #include class CEditWnd : public CMDIChildWnd { DECLARE_DYNCREATE(CEditWnd) public: CEditWnd(); int SaveEUDCCode(UINT msgBoxType); void CallCharTextOut(); void SetDuplicateRect( RECT *rect, POINT *point); void FlipRotate( int RadioItem); void WriteSelRectBitmap(); BOOL SelectCodes(); BOOL UpdateBitmap(); BOOL GetBitmapDirty(); BOOL SetBitmapDirty( BOOL Flg); BOOL Create( LPCTSTR szTitle, LONG Style, RECT EudcWndRect, CMDIFrameWnd* Parent); virtual ~CEditWnd(); void CaptionDraw(); private: BOOL MoveClipRect(); void RotateFigure90( LPBYTE pBuf1, LPBYTE pBuf2, int bWid, int bHgt); void RotateFigure270( LPBYTE pBuf1, LPBYTE pBuf2,int bWid, int bHgt); void DrawGridLine( CDC *dc); void DrawMoveRect( CDC *dc); void DrawStretchRect( CDC *dc); BOOL CurveFittingDraw( CDC *dc); void CorrectMouseDownPoint( CPoint point); void CorrectMouseUpPoint( CPoint point); void DrawClipBmp(); void UndoImageDraw(); void EraseRectangle(); void EraseFreeForm(); BOOL SetFreeForm(); void ZoomPoint( CPoint *DrawPt, int x, int y); void IllegalRect( PPOINT ptTL, PPOINT ptBR); void DrawFreeForm( BOOL MouseSts); void SelectFreeForm( BOOL MouseSts); void ToolInit( int LRButton); void ToolTerm(); void DrawRubberBand( BOOL StretchFlag); void SetMoveRect(); void SetValidRect(); void SetPickRect(); void SetClickRect(); void StretchMoveRect(); void DrawRectBmp(); void DrawPoint( CPoint Pt, BOOL bErase); void DrawToPoint(BOOL bErase); void InitFlipRotate( CDC *RotateDC, CBitmap *RotateBMP); BOOL DrawStretchClipToDisp(); BOOL CreateNewBitmap(); BOOL CreateUndoBitmap(); BOOL ClipPickValueInit(); BOOL InitEditLogfont(); BOOL ClipImageCopy(); BOOL ClipImageCut(); int CheckClipRect( POINT ClickPoint); private: CBitmap UndoImage; CBitmap CRTDrawBmp; CBitmap ImageBmp; CDC CRTDrawDC; CDC ImageDC; BOOL BitmapDirty; BOOL RectClipFlag; BOOL UndoBitmapFlag; BOOL IsCapture; BOOL ButtonFlag; UINT ClipboardFormat; int Ratio; int CheckNum; int BrushWidth; CArray m_pointArray; CArray m_SelectArray; CRgn FreeRgn; CRgn PickRgn; CPoint ptStart; CPoint ptPrev; CPoint ptEnd; CRect PickRect[8]; CRect ClipRect[5]; CRect EudcWndRect; public: TCHAR SelectFont[40]; int SelectItem; int ZoomRate; WORD UpdateCode; BOOL GridShow; WORD CallCode; BOOL FlagTmp; BOOL bFocus; protected: static CMenu NEAR menu; //{{AFX_MSG(CEditWnd) afx_msg void OnLButtonDown(UINT nFlags, CPoint point); afx_msg void OnLButtonUp(UINT nFlags, CPoint point); afx_msg void OnMouseMove(UINT nFlags, CPoint point); afx_msg void OnPaint(); afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); afx_msg void OnGaijiCopy(); afx_msg void OnGaijiCut(); afx_msg void OnGaijiPaste(); afx_msg void OnGaijiUndo(); afx_msg void OnRButtonDown(UINT nFlags, CPoint point); afx_msg void OnRButtonUp(UINT nFlags, CPoint point); afx_msg void OnSize(UINT nType, int cx, int cy); afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message); afx_msg void OnUpdateGaijiPaste(CCmdUI* pCmdUI); afx_msg void OnMDIActivate(BOOL bActivate, CWnd* pActivateWnd, CWnd* pDeactivateWnd); afx_msg void OnUpdateGaijiCopy(CCmdUI* pCmdUI); afx_msg void OnUpdateGaijiCut(CCmdUI* pCmdUI); afx_msg void OnDeleteEdit(); afx_msg void OnUpdateDeleteEdit(CCmdUI* pCmdUI); afx_msg void OnUpdateGaijiUndo(CCmdUI* pCmdUI); afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags); afx_msg void OnClose(); //}}AFX_MSG DECLARE_MESSAGE_MAP() }; /////////////////////////////////////////////////////////////////////////////