mirror of
https://github.com/gnustep/apps-gorm.git
synced 2025-02-24 03:51:22 +00:00
Some dnd fixes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/gorm/trunk@8830 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
21f4065d20
commit
b5da9fa44b
2 changed files with 27 additions and 4 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2001-01-27 Richard Frith-Macdonald <rfm@gnu.org>
|
||||||
|
|
||||||
|
* GormPalettesManager.m: Ensure that palette manager window can never
|
||||||
|
become key or main. Accept first mouse events so drag start works.
|
||||||
|
|
||||||
2000-11-06 Adam Fedor <fedor@gnu.org>
|
2000-11-06 Adam Fedor <fedor@gnu.org>
|
||||||
|
|
||||||
* Documenation: Remove use of tmpl texi files
|
* Documenation: Remove use of tmpl texi files
|
||||||
|
|
|
@ -28,7 +28,11 @@
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation GormPalettePanel
|
@implementation GormPalettePanel
|
||||||
- (BOOL) canBecomeKey
|
- (BOOL) canBecomeKeyWindow
|
||||||
|
{
|
||||||
|
return NO;
|
||||||
|
}
|
||||||
|
- (BOOL) canBecomeMainWindow
|
||||||
{
|
{
|
||||||
return NO;
|
return NO;
|
||||||
}
|
}
|
||||||
|
@ -55,6 +59,11 @@ static NSImage *dragImage = nil;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (BOOL) acceptsFirstMouse: (NSEvent*)theEvent
|
||||||
|
{
|
||||||
|
return YES; /* Ensure we get initial mouse down event. */
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Initialisation - register to receive DnD with our own types.
|
* Initialisation - register to receive DnD with our own types.
|
||||||
*/
|
*/
|
||||||
|
@ -173,15 +182,24 @@ static NSImage *dragImage = nil;
|
||||||
NSImageRep *rep;
|
NSImageRep *rep;
|
||||||
NSSize offset;
|
NSSize offset;
|
||||||
|
|
||||||
offset.width = rect.origin.x - dragPoint.x;
|
if (active == nil)
|
||||||
offset.height = rect.origin.y - dragPoint.y;
|
{
|
||||||
|
NSRunAlertPanel (NULL, @"No document is currently active",
|
||||||
|
@"OK", NULL, NULL);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
offset.width = dragPoint.x - mouseDownPoint.x;
|
||||||
|
offset.height = dragPoint.x - mouseDownPoint.y;
|
||||||
|
|
||||||
|
NSLog(@"Drag start with offset %@", NSStringFromSize(offset));
|
||||||
RELEASE(dragImage);
|
RELEASE(dragImage);
|
||||||
dragImage = [NSImage new];
|
dragImage = [NSImage new];
|
||||||
rep = [[NSCachedImageRep alloc] initWithWindow: [self window]
|
rep = [[NSCachedImageRep alloc] initWithWindow: [self window]
|
||||||
rect: rect];
|
rect: rect];
|
||||||
[dragImage setSize: rect.size];
|
[dragImage setSize: rect.size];
|
||||||
[dragImage addRepresentation: rep];
|
[dragImage addRepresentation: rep];
|
||||||
|
RELEASE(rep);
|
||||||
|
|
||||||
type = [IBPalette typeForView: view];
|
type = [IBPalette typeForView: view];
|
||||||
obj = [IBPalette objectForView: view];
|
obj = [IBPalette objectForView: view];
|
||||||
|
@ -245,7 +263,7 @@ static NSImage *dragImage = nil;
|
||||||
NSRect dragRect = {{0, 0}, {272, 192}};
|
NSRect dragRect = {{0, 0}, {272, 192}};
|
||||||
unsigned int style = NSTitledWindowMask | NSClosableWindowMask | NSResizableWindowMask;
|
unsigned int style = NSTitledWindowMask | NSClosableWindowMask | NSResizableWindowMask;
|
||||||
|
|
||||||
panel = [[NSPanel alloc] initWithContentRect: contentRect
|
panel = [[GormPalettePanel alloc] initWithContentRect: contentRect
|
||||||
styleMask: style
|
styleMask: style
|
||||||
backing: NSBackingStoreRetained
|
backing: NSBackingStoreRetained
|
||||||
defer: NO];
|
defer: NO];
|
||||||
|
|
Loading…
Reference in a new issue