• Main Page
  • Related Pages
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

xap_Win32DragAndDrop.h

Go to the documentation of this file.
00001 /* AbiSource Application Framework
00002  * Copyright (C) 1998 AbiSource, Inc.
00003  *
00004  * This program is free software; you can redistribute it and/or
00005  * modify it under the terms of the GNU General Public License
00006  * as published by the Free Software Foundation; either version 2
00007  * of the License, or (at your option) any later version.
00008  *
00009  * This program is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012  * GNU General Public License for more details.
00013  *
00014  * You should have received a copy of the GNU General Public License
00015  * along with this program; if not, write to the Free Software
00016  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
00017  * 02110-1301 USA.
00018  */
00019 
00020 
00021 #ifndef XAP_WIN32DROPTARGET_H
00022 #define XAP_WIN32DROPTARGET_H
00023 
00024 #include <stdlib.h>
00025 #include <windows.h>
00026 #include <commctrl.h>   // includes the common control header
00027 #ifndef __MINGW32__
00028 #include <crtdbg.h>
00029 #endif
00030 #include <sys/types.h>
00031 #include <sys/stat.h>
00032 #include <stdio.h>
00033 #include <string.h>
00034 #include <io.h>
00035 #include <fcntl.h>
00036 #include <ole2.h>
00037 
00038 #include "xap_Frame.h"
00039 
00040 
00041 /*****************************************************************
00042 ******************************************************************
00043 ** XAP_Win32DropTarget implements the OLE 2 Drop functionality in
00044 ** AbiWord
00045 ******************************************************************
00046 *****************************************************************/
00047 
00048 interface ABI_EXPORT XAP_Win32DropTarget : public IDropTarget
00049 {
00050 
00051 public:
00052 
00053     XAP_Win32DropTarget();
00054     virtual ~XAP_Win32DropTarget() {}
00055 
00056     // Ole Methods
00057     STDMETHODIMP QueryInterface (REFIID riid, LPVOID FAR* ppv);
00058     STDMETHODIMP_(ULONG) AddRef ();
00059     STDMETHODIMP_(ULONG) Release ();
00060 
00061 
00062     STDMETHODIMP DragEnter (LPDATAOBJECT pDataObj, DWORD grfKeyState,
00063             POINTL pt, LPDWORD pdwEffect);
00064     STDMETHODIMP DragOver  (DWORD grfKeyState, POINTL pt, LPDWORD pdwEffect);
00065     STDMETHODIMP DragLeave ();
00066     STDMETHODIMP Drop (LPDATAOBJECT pDataObj, DWORD grfKeyState, POINTL pt,
00067             LPDWORD pdwEffect);
00068 
00069     // Helper
00070     void setFrame(XAP_Frame* pFrame) {m_pFrame = pFrame;};
00071 private:
00072 
00073     int             m_nCount;                 // reference count
00074     UINT            m_uCF_RTF;
00075     bool            m_bSupportedFormat;
00076     XAP_Frame*      m_pFrame;
00077 
00078 
00079 };
00080 
00081 
00082 #endif

Generated on Sun Feb 14 2021 for AbiWord by  doxygen 1.7.1