00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #include "plwinbmp.h"
00012 #include "mtdibwnd.h"
00013 #include "plpicdec.h"
00014 #include "grarray.h"
00015
00016 class CDibtestDlg : public CDialog
00017 {
00018
00019 public:
00020 CDibtestDlg
00021 ( char * pszDirName
00022 );
00023
00024 ~CDibtestDlg
00025 ();
00026
00027 void DoWork
00028 ();
00029
00030
00031
00032 enum { IDD = IDD_DIBTEST_DIALOG };
00033
00034
00035
00036
00037
00038 protected:
00039 virtual void DoDataExchange(CDataExchange* pDX);
00040
00041
00042
00043 protected:
00044 HICON m_hIcon;
00045
00046
00047
00048 virtual BOOL OnInitDialog();
00049 afx_msg void OnPaint();
00050 afx_msg HCURSOR OnQueryDragIcon();
00051 afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
00052
00053 DECLARE_MESSAGE_MAP()
00054
00055 private:
00056 void loadDir
00057 ( PLPicDecoder * pDecoder,
00058 CGrItemArray * pDIBArray,
00059 const char * pszDirName
00060 );
00061
00062
00063
00064 void loadFile
00065 ( PLPicDecoder * pDecoder,
00066 CGrItemArray * pDIBArray,
00067 const char * pszFName
00068 );
00069
00070
00071 void loadRes
00072 ( PLPicDecoder * pDecoder,
00073 CGrItemArray * pDIBArray,
00074 int ResourceID
00075 );
00076
00077
00078 void createBkGrnd
00079 ( PLPicDecoder * pDecoder
00080 );
00081
00082 void setAlphaChannel
00083 ( CGrItemArray * pDIBArray
00084 );
00085
00086 void update
00087 ( CGrItemArray * pDIBArray,
00088 CRect * pOldRect,
00089 CRect * pNewRect
00090 );
00091
00092 void testResource
00093 ();
00094
00095 PLWinBmp * m_pBmp;
00096 PLWinBmp * m_pBigBmp;
00097
00098 CMTDIBWnd * m_pDIBWnd;
00099
00100 CString m_sDirName;
00101
00102 int m_x;
00103 int m_y;
00104
00105 CRITICAL_SECTION m_Critical;
00106 };
00107
00108
00109
00110