Click here to Skip to main content
15,885,366 members
Articles / Programming Languages / C++

ClipSpy

Rate me:
Please Sign up or sign in to vote.
4.88/5 (55 votes)
27 Oct 2001 463.3K   7.9K   138  
A tool for viewing clipboard and drag-and-drop data
//////////////////////////////////////////////////////////////////////////
//
// ClipSpy, Copyright 1999-2001  by Michael Dunn <mdunn at inreach dot com>
//
// This is a utility to view the raw contents of the clipboard, or the 
// data in a drag-and-drop operation.  There are still some quirks and
// bugs.  Comments/suggestions are always welcome!
//
// Revision history:
//  Dec 20, 1999: Version 1.0, first release.
//
//  Sep 27, 2001: Version 1.2, added ability to save any block of data;
//      added IDropTargetHelper support to CLeftView.
//
// You can get the latest updates for ClipSpy at:
//  http://www.codeproject.com/clipboard/clipspy.asp
//
//////////////////////////////////////////////////////////////////////////

// CntrItem.h : interface of the CClipSpyCntrItem class
//

#if !defined(AFX_CNTRITEM_H__26B8ACD0_B529_11D3_8D3B_E82FC0F8C918__INCLUDED_)
#define AFX_CNTRITEM_H__26B8ACD0_B529_11D3_8D3B_E82FC0F8C918__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class CClipSpyDoc;
class CClipSpyView;

class CClipSpyCntrItem : public CRichEditCntrItem
{
	DECLARE_SERIAL(CClipSpyCntrItem)

// Constructors
public:
	CClipSpyCntrItem(REOBJECT* preo = NULL, CClipSpyDoc* pContainer = NULL);
		// Note: pContainer is allowed to be NULL to enable IMPLEMENT_SERIALIZE.
		//  IMPLEMENT_SERIALIZE requires the class have a constructor with
		//  zero arguments.  Normally, OLE items are constructed with a
		//  non-NULL document pointer.

// Attributes
public:
	CClipSpyDoc* GetDocument()
		{ return (CClipSpyDoc*)CRichEditCntrItem::GetDocument(); }
	CClipSpyView* GetActiveView()
		{ return (CClipSpyView*)CRichEditCntrItem::GetActiveView(); }

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CClipSpyCntrItem)
	public:
	protected:
	//}}AFX_VIRTUAL

// Implementation
public:
	~CClipSpyCntrItem();
#ifdef _DEBUG
	virtual void AssertValid() const;
	virtual void Dump(CDumpContext& dc) const;
#endif
};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_CNTRITEM_H__26B8ACD0_B529_11D3_8D3B_E82FC0F8C918__INCLUDED_)

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.


Written By
Software Developer (Senior) VMware
United States United States
Michael lives in sunny Mountain View, California. He started programming with an Apple //e in 4th grade, graduated from UCLA with a math degree in 1994, and immediately landed a job as a QA engineer at Symantec, working on the Norton AntiVirus team. He pretty much taught himself Windows and MFC programming, and in 1999 he designed and coded a new interface for Norton AntiVirus 2000.
Mike has been a a developer at Napster and at his own lil' startup, Zabersoft, a development company he co-founded with offices in Los Angeles and Odense, Denmark. Mike is now a senior engineer at VMware.

He also enjoys his hobbies of playing pinball, bike riding, photography, and Domion on Friday nights (current favorite combo: Village + double Pirate Ship). He would get his own snooker table too if they weren't so darn big! He is also sad that he's forgotten the languages he's studied: French, Mandarin Chinese, and Japanese.

Mike was a VC MVP from 2005 to 2009.

Comments and Discussions