[Kde-cygwin-cvs] CVS: qt-3/src/kernel qdnd_win.cpp,1.1.2.5.2.22,1.1.2.5.2.23
Status: Inactive
Brought to you by:
habacker
From: Christian E. <che...@us...> - 2005-07-31 17:43:34
|
Update of /cvsroot/kde-cygwin/qt-3/src/kernel In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21059/src/kernel Modified Files: Tag: QT_WIN32_3_3_BRANCH qdnd_win.cpp Log Message: splitted qIDropWidget into QOleDropTarget and QOleDropSource a lot of code from qt4, not much tested now! Index: qdnd_win.cpp =================================================================== RCS file: /cvsroot/kde-cygwin/qt-3/src/kernel/Attic/qdnd_win.cpp,v retrieving revision 1.1.2.5.2.22 retrieving revision 1.1.2.5.2.23 diff -u -r1.1.2.5.2.22 -r1.1.2.5.2.23 --- qdnd_win.cpp 18 Jun 2005 18:43:48 -0000 1.1.2.5.2.22 +++ qdnd_win.cpp 31 Jul 2005 17:43:25 -0000 1.1.2.5.2.23 @@ -45,6 +45,7 @@ //#define DEBUG_QDND_TGT #include <shlobj.h> +#include "qapplication_p.h" #include "qbitmap.h" #include "qbuffer.h" #include "qcursor.h" @@ -54,14 +55,19 @@ #include "qwidget.h" #include "qt_windows.h" #include "qwindowdefs.h" // qAddPostRoutine() [...1049 lines suppressed...] @@ -1239,11 +1289,15 @@ void qt_cleanup_dnd() { - for ( qIDropWidget * tgt = dnd_widgets.first(); tgt; tgt = dnd_widgets.next() ) { - RevokeDragDrop( tgt->getWidget() ->winId() ); - dnd_widgets.remove( tgt ); - tgt->Release(); + for ( QOleDropTarget * dst = dnd_widgets.last(); dst; dst = dnd_widgets.prev() ) { +#ifndef Q_OS_TEMP + CoLockObjectExternal( dst, false, true ); + RevokeDragDrop( dst->getWidget() ->winId() ); +#endif + + dst->Release(); } + dnd_widgets.clear(); delete noDropCursor; delete copyCursor; delete moveCursor; |