Use the Carbon scrap manager interface if the old interface isn't available.
diff --git a/Mac/Tools/IDE/Wlists.py b/Mac/Tools/IDE/Wlists.py
index 14edeb8..57e8924 100644
--- a/Mac/Tools/IDE/Wlists.py
+++ b/Mac/Tools/IDE/Wlists.py
@@ -176,8 +176,13 @@
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
diff --git a/Mac/Tools/IDE/Wtext.py b/Mac/Tools/IDE/Wtext.py
index e21926d..86c79c3 100644
--- a/Mac/Tools/IDE/Wtext.py
+++ b/Mac/Tools/IDE/Wtext.py
@@ -430,7 +430,10 @@
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 @@
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()
diff --git a/Mac/Tools/IDE/Wwindows.py b/Mac/Tools/IDE/Wwindows.py
index 1494187..20ed312 100644
--- a/Mac/Tools/IDE/Wwindows.py
+++ b/Mac/Tools/IDE/Wwindows.py
@@ -564,8 +564,13 @@
"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