Use the Carbon scrap manager interface if the old interface isn't available.

This commit is contained in:
Jack Jansen 2001-12-31 14:53:05 +00:00
parent 420ed40344
commit ad8381a8f0
3 changed files with 22 additions and 6 deletions

View File

@ -176,8 +176,13 @@ class List(Wbase.SelectableWidget):
selitems.append(str(self.items[i]))
text = string.join(selitems, '\r')
if text:
Scrap.ZeroScrap()
Scrap.PutScrap('TEXT', text)
if hasattr(Scrap, 'PutScrap'):
Scrap.ZeroScrap()
Scrap.PutScrap('TEXT', text)
else:
Scrap.ClearCurrentScrap()
sc = Scrap.GetCurrentScrap()
sc.PutScrapFlavor('TEXT', 0, text)
def can_copy(self, *args):
return len(self.getselection()) <> 0

View File

@ -430,7 +430,10 @@ class EditText(Wbase.SelectableWidget, _ScrollWidget):
selbegin, selend = self.ted.WEGetSelection()
if selbegin == selend:
return
Scrap.ZeroScrap()
if hasattr(Scrap, 'ZeroScrap'):
Scrap.ZeroScrap()
else:
Scrap.ClearCurrentScrap()
self.ted.WECopy()
self.updatescrollbars()
@ -438,7 +441,10 @@ class EditText(Wbase.SelectableWidget, _ScrollWidget):
selbegin, selend = self.ted.WEGetSelection()
if selbegin == selend:
return
Scrap.ZeroScrap()
if hasattr(Scrap, 'ZeroScrap'):
Scrap.ZeroScrap()
else:
Scrap.ClearCurrentScrap()
self.ted.WECut()
self.updatescrollbars()
self.selview()

View File

@ -564,8 +564,13 @@ def FrontWindowInsert(stuff):
"Can't find window or widget to insert text into; copy to clipboard instead?",
1) == 1:
from Carbon import Scrap
Scrap.ZeroScrap()
Scrap.PutScrap('TEXT', stuff)
if hasattr(Scrap, 'PutScrap'):
Scrap.ZeroScrap()
Scrap.PutScrap('TEXT', stuff)
else:
Scrap.ClearCurrentScrap()
sc = Scrap.GetCurrentScrap()
sc.PutScrapFlavor('TEXT', 0, stuff)
# not quite based on the same function in FrameWork