Changeset 209
- Timestamp:
- 04/28/08 07:15:08 (8 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
packages/defconAppKit/trunk/Lib/defconAppKit/views/glyphCellView.py
r208 r209 12 12 13 13 14 DefconAppKit GlyphPboardType = "DefconAppKitGlyphPboardType"14 DefconAppKitSelectedGlyphIndexesPboardType = "DefconAppKitSelectedGlyphIndexesPboardType" 15 15 16 16 … … 121 121 def setAllowsDrop_(self, value): 122 122 if value: 123 self.registerForDraggedTypes_([DefconAppKit GlyphPboardType])123 self.registerForDraggedTypes_([DefconAppKitSelectedGlyphIndexesPboardType]) 124 124 else: 125 125 self.unregisterDraggedTypes() … … 133 133 self._subscribeToGlyphs() 134 134 self.recalculateFrame() 135 136 def getGlyphsAtIndexes_(self, indexes): 137 return [self._glyphs[i] for i in indexes] 135 138 136 139 def setCellSize_(self, (width, height)): … … 645 648 646 649 pboard = NSPasteboard.pasteboardWithName_(NSDragPboard) 647 pboard.declareTypes_owner_([DefconAppKit GlyphPboardType], self)648 pboard.setPropertyList_forType_(indexes, DefconAppKit GlyphPboardType)650 pboard.declareTypes_owner_([DefconAppKitSelectedGlyphIndexesPboardType], self) 651 pboard.setPropertyList_forType_(indexes, DefconAppKitSelectedGlyphIndexesPboardType) 649 652 650 653 self.dragImage_at_offset_event_pasteboard_source_slideBack_( … … 653 656 ) 654 657 655 def getGlyphsFromDragPasteboard_(self, pboard): 656 indexes = pboard.propertyListForType_(DefconAppKitGlyphPboardType) 657 glyphs = [self._glyphs[i] for i in indexes] 658 def getGlyphsFromDraggingInfo_(self, draggingInfo): 659 source = draggingInfo.draggingSource() 660 if source != self: 661 return None 662 pboard = draggingInfo.draggingPasteboard() 663 indexes = pboard.propertyListForType_("DefconAppKitSelectedGlyphIndexesPboardType") 664 glyphs = self.getGlyphsAtIndexes_(indexes) 658 665 return glyphs 659 666 … … 679 686 if source == self: 680 687 return NSDragOperationNone 681 glyphs = source.getGlyphsFromDrag Pasteboard_(sender.draggingPasteboard())688 glyphs = source.getGlyphsFromDraggingInfo_(sender) 682 689 return self.vanillaWrapper()._proposeDrop(glyphs, testing=True) 683 690 … … 686 693 if source == self: 687 694 return NSDragOperationNone 688 glyphs = source.getGlyphsFromDrag Pasteboard_(sender.draggingPasteboard())695 glyphs = source.getGlyphsFromDraggingInfo_(sender) 689 696 return self.vanillaWrapper()._proposeDrop(glyphs, testing=False) 690 697 packages/defconAppKit/trunk/Lib/defconAppKit/views/glyphLineView.py
r145 r209 251 251 if source == self: 252 252 return NSDragOperationNone 253 glyphs = source.getGlyphsFromDrag Pasteboard_(sender.draggingPasteboard())253 glyphs = source.getGlyphsFromDraggingInfo_(sender) 254 254 return self.vanillaWrapper()._proposeDrop(glyphs, testing=True) 255 255 … … 258 258 if source == self: 259 259 return NSDragOperationNone 260 glyphs = source.getGlyphsFromDrag Pasteboard_(sender.draggingPasteboard())260 glyphs = source.getGlyphsFromDraggingInfo_(sender) 261 261 return self.vanillaWrapper()._proposeDrop(glyphs, testing=False) 262 262
