public
Description: Repository for a PyObjC project built in one of my tutorial series.
Homepage: http://lethain.com/
Clone URL: git://github.com/lethain/metawindow.git
metawindow / MWDragWindow.py
100644 35 lines (29 sloc) 0.945 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#
# MWDragWindow.py
# MetaWindow
#
# Created by Will Larson on 8/26/08.
# Copyright (c) 2008 Will Larson. All rights reserved.
#
 
import objc
from Foundation import *
from AppKit import *
 
 
class MWDragWindow(NSWindow):
    controller = objc.IBOutlet()
    
    def awakeFromNib(self):
        self.registerForDraggedTypes_([NSStringPboardType])
        
    def draggingEntered_(self,sender):
        pboard = sender.draggingPasteboard()
        types = pboard.types()
        opType = NSDragOperationNone
        if NSStringPboardType in types:
            return NSDragOperationCopy
        return opType
        
    def performDragOperation_(self,sender):
        pboard = sender.draggingPasteboard()
        successful = False
        if NSStringPboardType in pboard.types():
            txt = pboard.stringForType_(NSStringPboardType)
            self.controller.dragSearch(txt)
            successful = True
        return successful