Made drag and drop work on windows.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@19554 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Fred Kiefer 2004-06-19 15:36:58 +00:00
parent 694a198b83
commit 6eb283e349
2 changed files with 22 additions and 8 deletions

View file

@ -1,3 +1,8 @@
2004-06-19 Fred Kiefer <FredKiefer@gmx.de>
* Source/win32/WIN32Server.m (-findWindowAt:windowRef:excluding:)
New method for D&D. (-dragInfo), (-slideImage:from:to:) Removed.
2004-06-11 Adam Fedor <fedor@gnu.org>
* Version 0.9.3

View file

@ -143,18 +143,27 @@ LRESULT CALLBACK MainWndProc(HWND hwnd, UINT uMsg,
[super dealloc];
}
/** Returns an instance of a class which implements the NSDraggingInfo
protocol. */
- (id <NSDraggingInfo>) dragInfo
- (void) restrictWindow: (int)win toImage: (NSImage*)image
{
[self subclassResponsibility: _cmd];
return nil;
//[self subclassResponsibility: _cmd];
}
- (BOOL) slideImage: (NSImage*)image from: (NSPoint)from to: (NSPoint)to
- (int) findWindowAt: (NSPoint)screenLocation
windowRef: (int*)windowRef
excluding: (int)win
{
[self subclassResponsibility: _cmd];
return NO;
HWND hwnd;
POINT p;
p = GSScreenPointToMS(screenLocation);
hwnd = WindowFromPoint(p);
if ((int)hwnd == win)
{
hwnd = GetWindow(hwnd, GW_HWNDNEXT);
}
*windowRef = (int)hwnd;
return (int)hwnd;
}
// FIXME: The following methods wont work for multiple screens