Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Lex Nastin 744f0b4006
Update README.md
4 years ago
..
chicago Add source files 4 years ago
daytona Add source files 4 years ago
app.cpp Add source files 4 years ago
app.h Add source files 4 years ago
bang.ico Add source files 4 years ago
default.ico Add source files 4 years ago
depend.mk Add source files 4 years ago
dirs Add source files 4 years ago
doc.cpp Add source files 4 years ago
doc.h Add source files 4 years ago
dxferobj.cpp Add source files 4 years ago
dxferobj.h Add source files 4 years ago
enumfetc.h Add source files 4 years ago
filelist.mk Add source files 4 years ago
ias.cpp Add source files 4 years ago
ias.h Add source files 4 years ago
ids.cpp Add source files 4 years ago
ids.h Add source files 4 years ago
idt.cpp Add source files 4 years ago
idt.h Add source files 4 years ago
iocs.cpp Add source files 4 years ago
iocs.h Add source files 4 years ago
pre.cpp Add source files 4 years ago
pre.h Add source files 4 years ago
readme.txt Add source files 4 years ago
resource.h Add source files 4 years ago
simpdnd.cpp Add source files 4 years ago
simpdnd.h Add source files 4 years ago
simpdnd.ico Add source files 4 years ago
simpdnd.rc Add source files 4 years ago
site.cpp Add source files 4 years ago
site.h Add source files 4 years ago
strings.rc Add source files 4 years ago
tests.cpp Add source files 4 years ago
tests.h Add source files 4 years ago

readme.txt

Simple Drag and Drop Sample
---------------------------

This sample demonstrates an implementation of OLE 2 drag and drop. It allows
drag and drop operations between two instances of the sample application.
For information on compiling and building the sample, see the makefile in
this directory.


Simple Drag and Drop Objects Overview :
---------------------------------------
Simple Drag and Drop consists of three main objects. The top level is
CSimpleApp, under which is CSimpleDoc, and the innermost level is CSimpleSite.
CSimpleApp is used to hold all the main window information. (eg. handle to
the main window, handles to the main, edit, and help menus and the application
instance) CSimpleApp always exists as long as the simple drag and drop
application is alive.

The next level object is CSimpleDoc object. It is instantiated when a new
document is created. It enables and disables the menu items in the main menu.
Since simple drag and drop is a single document interface application, the
user is only allowed to insert one object into the document. It is
necessary to disable certain items from the main menu to avoid incorrect
selection. It also registers the window for drag and drop and manipulates
the clipboard operations, such as copy to the clipboard, flush the clipboard.
It demonstrates the implementates of two OLE interfaces in its nested classes,
IDropSource and IDropTarget. These two interfaces are implemented as
CDropSource and CDropTarget respectively.

The CSimpleDoc object instantiates two different objects based on the user
selection from the main menu. The CSimpleSite object is instantiated if the
user chooses to insert a new object into the document. CSimpleSite
demonstrates the implementation of IAdviseSink and IOleClientSite through its
nested classes. These two interfaces are implemented as CAdviseSink and
COleClientSite accordingly. CSimpleSite manipulates the storage handling and
acts as a client site to communicate to a remote server. Such server can be
an executable server or a dll server. The CDataXferObj object is instantiated
when the user chooses to copy the existing object from the current document.
it is required to copy an object to the clipboard. CDataXferObj demonstrates
the IDataObject interface implementation and performs data transfer
operations.