#if !defined(AFX_IMGLISTVIEW_H__C0DD00C1_EEA9_4E84_BB03_8DE83B2DEDEA__INCLUDED_)
|
#define AFX_IMGLISTVIEW_H__C0DD00C1_EEA9_4E84_BB03_8DE83B2DEDEA__INCLUDED_
|
|
#if _MSC_VER > 1000
|
#pragma once
|
#endif // _MSC_VER > 1000
|
// ImgListView.h : header file
|
//
|
|
/////////////////////////////////////////////////////////////////////////////
|
// CImgListView view
|
#include <map>
|
using std::map;
|
|
|
#define LEFT_MARJIN 15
|
#define TOP_MARJIN 15
|
#define ITEM_WIDTH 190 // 380 // °ªÀÌ ¹Ù²î¾î¾ß ÇϹǷΠdefineÀ̳ª const´Â ¾î¿ï¸®Áö ¾Ê´Â´Ù.
|
#define ITEM_HEIGHT 160 // 320 //
|
#define ITEM_TEXT 22 // ¾ÆÀÌÅÛ¿¡ ´ëÇÑ ±ÛÀÚ ³ôÀÌ
|
#define ITEM_ROW_MARJIN 15 // ¾ÆÀÌÅÛ°ú ¾ÆÀÌÅÛÀÇ °¡·Î»çÀÌ
|
#define ITEM_COL_MARJIN 20 // ¾ÆÀÌÅÛ°ú ¾ÆÀÌÅÛÀÇ ¼¼·Î»çÀÌ
|
|
class CPotoItem
|
{
|
public:
|
CPotoItem();
|
CPotoItem(CString strFilePath);
|
CPotoItem(CString strFilePath,CString strFileName,CString strImgInfo =_T(""));
|
virtual ~CPotoItem();
|
public:
|
void GetItemRect(int nItem);
|
void DrawRect(CDC *pDC, COLORREF color,CRect rc);
|
void DrawText(CDC* pDC, COLORREF color );
|
void Draw(CDC* pDC, CRect rcClient, CRect rcChange );
|
|
CImage m_Img;
|
CRect m_rcImg;
|
BOOL m_bSelect; // ¼±Åà µÇ¾ú´Â°¡
|
BOOL m_bValid; // °´Ã¼ÀÇ Á¸À缺
|
BOOL m_bProcesing; // ó¸®ÁßÀΰ¡
|
TCHAR m_Path[MAX_PATH];
|
|
CRect GetRect() { return m_rcImg; }
|
void SetSelect( bool bState ) { m_bSelect = bState; }
|
void ToggleSelected() { m_bSelect = !m_bSelect;}
|
};
|
|
|
typedef map<CString,CPotoItem*> IMG_MAP;
|
|
#define KEY_DOWN(VK_CODE) ((GetAsyncKeyState(VK_CODE) & 0x8000) ? 1 : 0)
|
|
#define UM_CLK_ITEM_UPDATE WM_USER + 102
|
class CImgListView : public CScrollView
|
{
|
protected:
|
CImgListView(); // protected constructor used by dynamic creation
|
DECLARE_DYNCREATE(CImgListView)
|
|
// Attributes
|
public:
|
|
// Operations
|
public:
|
|
// Overrides
|
// ClassWizard generated virtual function overrides
|
//{{AFX_VIRTUAL(CImgListView)
|
protected:
|
virtual void OnDraw(CDC* pDC); // overridden to draw this view
|
virtual void OnInitialUpdate(); // first time after construct
|
//}}AFX_VIRTUAL
|
|
// Implementation
|
protected:
|
virtual ~CImgListView();
|
#ifdef _DEBUG
|
virtual void AssertValid() const;
|
virtual void Dump(CDumpContext& dc) const;
|
#endif
|
|
// Generated message map functions
|
//{{AFX_MSG(CImgListView)
|
afx_msg void OnSize(UINT nType, int cx, int cy);
|
afx_msg void OnPaint();
|
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
|
afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
|
//}}AFX_MSG
|
DECLARE_MESSAGE_MAP()
|
|
public:
|
IMG_MAP m_ImgMap;
|
int m_nHItem; // ¼¼·Î·Î ¸î°³°¡ Ãâ·ÂÀÌ µÉ°ÍÀΰ¡?
|
int m_nHItemOld;
|
int m_nAddItem; // ÀоîµéÀÎ ¾ÆÀÌÅÛÀÇ ÃѰ¹¼ö
|
CBrush m_BgBrush; // ¹è°æBrush
|
CImage* m_pSelImg;
|
CPotoItem *m_pSelectItem;
|
public:
|
CImage* GetSelImg() const {return m_pSelImg;};
|
void DeleteItemAll();
|
BYTE* GetImagePoint();
|
TCHAR* GetSelectImgPath();
|
|
BOOL SelectItemChk(CPoint point);
|
BOOL LoadImageFolder(CString strPath, CString strGlassID, CString strOp = _T(""));
|
BOOL LoadImage(CString strFilePath);
|
|
void SetPageSize();
|
void UpdateItem();
|
CRect GetItemRect(int nItem);
|
|
void UpdateView();
|
public:
|
afx_msg BOOL OnEraseBkgnd(CDC* pDC);
|
afx_msg void OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
|
afx_msg void OnDestroy();
|
};
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
//{{AFX_INSERT_LOCATION}}
|
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
|
#endif // !defined(AFX_IMGLISTVIEW_H__C0DD00C1_EEA9_4E84_BB03_8DE83B2DEDEA__INCLUDED_)
|