From d21447d096a320a08b3efb2b8768fad0dcdcfd64 Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Thu, 5 May 2016 22:28:51 +0100 Subject: move frontends into sub directory --- .../cocoa/PSMTabBarControl/PSMTabDragWindow.m | 48 ++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 frontends/cocoa/PSMTabBarControl/PSMTabDragWindow.m (limited to 'frontends/cocoa/PSMTabBarControl/PSMTabDragWindow.m') diff --git a/frontends/cocoa/PSMTabBarControl/PSMTabDragWindow.m b/frontends/cocoa/PSMTabBarControl/PSMTabDragWindow.m new file mode 100644 index 000000000..d6fcc95a3 --- /dev/null +++ b/frontends/cocoa/PSMTabBarControl/PSMTabDragWindow.m @@ -0,0 +1,48 @@ +// +// PSMTabDragWindow.m +// PSMTabBarControl +// +// Created by Kent Sutherland on 6/1/06. +// Copyright 2006 Kent Sutherland. All rights reserved. +// + +#import "PSMTabDragWindow.h" +#import "PSMTabDragView.h" + +@implementation PSMTabDragWindow + ++ (PSMTabDragWindow *)dragWindowWithImage:(NSImage *)image styleMask:(NSUInteger)styleMask { + return [[[PSMTabDragWindow alloc] initWithImage:image styleMask:styleMask] autorelease]; +} + +- (id)initWithImage:(NSImage *)image styleMask:(NSUInteger)styleMask { + NSSize size = [image size]; + + if((self = [super initWithContentRect:NSMakeRect(0, 0, size.width, size.height) styleMask:styleMask backing:NSBackingStoreBuffered defer:NO])) { + _dragView = [[[PSMTabDragView alloc] initWithFrame:NSMakeRect(0, 0, size.width, size.height)] autorelease]; + [self setContentView:_dragView]; + [self setLevel:NSStatusWindowLevel]; + [self setIgnoresMouseEvents:YES]; + [self setOpaque:NO]; + + [_dragView setImage:image]; + + //Set the size of the window to be the exact size of the drag image + NSRect windowFrame = [self frame]; + windowFrame.origin.y += windowFrame.size.height - size.height; + windowFrame.size = size; + + if(styleMask | NSBorderlessWindowMask) { + windowFrame.size.height += 22; + } + + [self setFrame:windowFrame display:YES]; + } + return self; +} + +- (PSMTabDragView *)dragView { + return _dragView; +} + +@end -- cgit v1.2.3