| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 | 
							- // AddType.cpp : implementation file
 
- //
 
- #include "stdafx.h"
 
- #include "cp_main.h"
 
- #include "AddType.h"
 
- #ifdef _DEBUG
 
- #define new DEBUG_NEW
 
- #undef THIS_FILE
 
- static char THIS_FILE[] = __FILE__;
 
- #endif
 
- /////////////////////////////////////////////////////////////////////////////
 
- // CAddType dialog
 
- CAddType::CAddType(CWnd* pParent /*=NULL*/)
 
- 	: CDialog(CAddType::IDD, pParent)
 
- {
 
- 	//{{AFX_DATA_INIT(CAddType)
 
- 	m_eCustomType = _T("");
 
- 	//}}AFX_DATA_INIT
 
- }
 
- void CAddType::DoDataExchange(CDataExchange* pDX)
 
- {
 
- 	CDialog::DoDataExchange(pDX);
 
- 	//{{AFX_DATA_MAP(CAddType)
 
- 	DDX_Control(pDX, IDC_LIST2, m_lbOnClipboard);
 
- 	DDX_Control(pDX, IDC_LIST1, m_lbDefaultTypes);
 
- 	DDX_Text(pDX, IDC_EDIT1, m_eCustomType);
 
- 	DDV_MaxChars(pDX, m_eCustomType, 50);
 
- 	//}}AFX_DATA_MAP
 
- }
 
- BEGIN_MESSAGE_MAP(CAddType, CDialog)
 
- 	//{{AFX_MSG_MAP(CAddType)
 
- 	ON_BN_CLICKED(IDC_ADD_1, OnAdd1)
 
- 	ON_BN_CLICKED(IDC_ADD_2, OnAdd2)
 
- 	ON_BN_CLICKED(IDC_ADD_3, OnAdd3)
 
- 	ON_LBN_DBLCLK(IDC_LIST1, OnDblclkList1)
 
- 	ON_LBN_DBLCLK(IDC_LIST2, OnDblclkList2)
 
- 	//}}AFX_MSG_MAP
 
- END_MESSAGE_MAP()
 
- /////////////////////////////////////////////////////////////////////////////
 
- // CAddType message handlers
 
- BOOL CAddType::OnInitDialog() 
 
- {
 
- 	CDialog::OnInitDialog();
 
- 	
 
- 	m_lbDefaultTypes.AddString(_T("CF_TEXT"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_BITMAP"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_METAFILEPICT"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_SYLK"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_DIF"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_TIFF"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_OEMTEXT"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_DIB"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_PALETTE"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_PENDATA"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_RIFF"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_WAVE"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_UNICODETEXT"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_ENHMETAFILE"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_HDROP"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_LOCALE"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_OWNERDISPLAY"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_DSPTEXT"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_DSPBITMAP"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_DSPMETAFILEPICT"));
 
- 	m_lbDefaultTypes.AddString(_T("CF_DSPENHMETAFILE"));
 
- 	m_lbDefaultTypes.AddString(GetFormatName(RegisterClipboardFormat(CF_RTF)));
 
- 	m_lbDefaultTypes.AddString(GetFormatName(RegisterClipboardFormat(CF_RTFNOOBJS)));
 
- 	m_lbDefaultTypes.AddString(GetFormatName(RegisterClipboardFormat(CF_RETEXTOBJ)));
 
- 	m_lbDefaultTypes.AddString(GetFormatName(RegisterClipboardFormat(_T("HTML Format"))));
 
- 		
 
- 	COleDataObject oleData;
 
- 	if(!oleData.AttachClipboard())
 
- 		return FALSE;
 
- 	
 
- 	oleData.BeginEnumFormats();
 
- 	FORMATETC test;
 
- 	
 
- 	while(oleData.GetNextFormat(&test))
 
- 	{
 
- 		BOOL b = oleData.IsDataAvailable(test.cfFormat);
 
- 		m_lbOnClipboard.AddString(GetFormatName(test.cfFormat));
 
- 	}
 
- 	
 
- 	oleData.Release();
 
- 	m_lbDefaultTypes.SetFocus();
 
- 	theApp.m_Language.UpdateOptionSupportedTypesAdd(this);
 
- 	return FALSE;
 
- }
 
- void CAddType::OnAdd1() 
 
- {
 
- 	m_csSelectedTypes.RemoveAll();
 
- 	int nCount = m_lbDefaultTypes.GetSelCount();
 
- 	if(nCount)
 
- 	{
 
- 		CString cs;
 
- 		CArray<int,int> items;
 
- 		items.SetSize(nCount);
 
- 		m_lbDefaultTypes.GetSelItems(nCount, items.GetData()); 
 
- 		for(int i = 0; i < nCount; i++)
 
- 		{
 
- 			m_lbDefaultTypes.GetText(items[i], cs);
 
- 			m_csSelectedTypes.Add(cs);
 
- 		}
 
- 	}
 
- 	
 
- 	EndDialog(IDOK);
 
- }
 
- void CAddType::OnAdd2() 
 
- {
 
- 	UpdateData();
 
- 	m_csSelectedTypes.RemoveAll();
 
- 	m_csSelectedTypes.Add(m_eCustomType);
 
- 		
 
- 	EndDialog(IDOK);
 
- }
 
- void CAddType::OnAdd3() 
 
- {
 
- 	m_csSelectedTypes.RemoveAll();
 
- 	int nCount = m_lbOnClipboard.GetSelCount();
 
- 	if(nCount)
 
- 	{
 
- 		CString cs;
 
- 		CArray<int,int> items;
 
- 		items.SetSize(nCount);
 
- 		m_lbOnClipboard.GetSelItems(nCount, items.GetData()); 
 
- 		for(int i = 0; i < nCount; i++)
 
- 		{
 
- 			m_lbOnClipboard.GetText(items[i], cs);
 
- 			m_csSelectedTypes.Add(cs);
 
- 		}
 
- 	}
 
- 	EndDialog(IDOK);
 
- }
 
- void CAddType::OnDblclkList1() 
 
- {
 
- 	OnAdd1();
 
- }
 
- void CAddType::OnDblclkList2() 
 
- {
 
- 	OnAdd3();
 
- }
 
 
  |