diff options
author | Just van Rossum <just@lettererror.com> | 1999-02-01 01:38:20 (GMT) |
---|---|---|
committer | Just van Rossum <just@lettererror.com> | 1999-02-01 01:38:20 (GMT) |
commit | 79e02231ca663c2dd73b67011ac434f90a5f0561 (patch) | |
tree | 908d8331294d61941eaa583374e3d1aa3e5b5197 /Mac/Contrib/PyIDE-src/IDELib/PythonIDEMain.py | |
parent | e1fb04f694dbd19c3c5d587f734bc6e7337e602e (diff) | |
download | cpython-79e02231ca663c2dd73b67011ac434f90a5f0561.zip cpython-79e02231ca663c2dd73b67011ac434f90a5f0561.tar.gz cpython-79e02231ca663c2dd73b67011ac434f90a5f0561.tar.bz2 |
removed old IDE stuff -- jvr
Diffstat (limited to 'Mac/Contrib/PyIDE-src/IDELib/PythonIDEMain.py')
-rw-r--r-- | Mac/Contrib/PyIDE-src/IDELib/PythonIDEMain.py | 224 |
1 files changed, 0 insertions, 224 deletions
diff --git a/Mac/Contrib/PyIDE-src/IDELib/PythonIDEMain.py b/Mac/Contrib/PyIDE-src/IDELib/PythonIDEMain.py deleted file mode 100644 index 4b14bcd..0000000 --- a/Mac/Contrib/PyIDE-src/IDELib/PythonIDEMain.py +++ /dev/null @@ -1,224 +0,0 @@ -# copyright 1997 Just van Rossum, Letterror. just@knoware.nl - -import Splash - -import FrameWork -import WFrameWorkPatch -import Win -import W -import os -import macfs - -class PythonIDE(WFrameWorkPatch.Application): - - def __init__(self): - self.preffilepath = ":Python:PythonIDE preferences" - WFrameWorkPatch.Application.__init__(self, 'Pyth') - import AE, AppleEvents - - AE.AEInstallEventHandler(AppleEvents.kCoreEventClass, AppleEvents.kAEOpenApplication, - self.ignoreevent) - AE.AEInstallEventHandler(AppleEvents.kCoreEventClass, AppleEvents.kAEPrintDocuments, - self.ignoreevent) - AE.AEInstallEventHandler(AppleEvents.kCoreEventClass, AppleEvents.kAEOpenDocuments, - self.opendocsevent) - AE.AEInstallEventHandler(AppleEvents.kCoreEventClass, AppleEvents.kAEQuitApplication, - self.quitevent) - import PyConsole, PyEdit - Splash.wait() - PyConsole.installconsole() - PyConsole.installoutput() - import sys - for path in sys.argv[1:]: - self.opendoc(path) - self.mainloop() - - def makeusermenus(self): - m = WFrameWorkPatch.Menu(self.menubar, "File") - newitem = FrameWork.MenuItem(m, "New", "N", 'new') - openitem = FrameWork.MenuItem(m, "OpenŠ", "O", 'open') - FrameWork.Separator(m) - closeitem = FrameWork.MenuItem(m, "Close", "W", 'close') - saveitem = FrameWork.MenuItem(m, "Save", "S", 'save') - saveasitem = FrameWork.MenuItem(m, "Save asŠ", None, 'save_as') - FrameWork.Separator(m) - quititem = FrameWork.MenuItem(m, "Quit", "Q", 'quit') - - m = WFrameWorkPatch.Menu(self.menubar, "Edit") - undoitem = FrameWork.MenuItem(m, "Undo", 'Z', "undo") - FrameWork.Separator(m) - cutitem = FrameWork.MenuItem(m, "Cut", 'X', "cut") - copyitem = FrameWork.MenuItem(m, "Copy", "C", "copy") - pasteitem = FrameWork.MenuItem(m, "Paste", "V", "paste") - FrameWork.MenuItem(m, "Clear", None, "clear") - FrameWork.Separator(m) - selallitem = FrameWork.MenuItem(m, "Select all", "A", "selectall") - sellineitem = FrameWork.MenuItem(m, "Select line", "L", "selectline") - FrameWork.Separator(m) - finditem = FrameWork.MenuItem(m, "FindŠ", "F", "find") - findagainitem = FrameWork.MenuItem(m, "Find again", 'G', "findnext") - enterselitem = FrameWork.MenuItem(m, "Enter search string", "E", "entersearchstring") - replaceitem = FrameWork.MenuItem(m, "Replace", None, "replace") - replacefinditem = FrameWork.MenuItem(m, "Replace & find again", 'T', "replacefind") - FrameWork.Separator(m) - shiftleftitem = FrameWork.MenuItem(m, "Shift left", "[", "shiftleft") - shiftrightitem = FrameWork.MenuItem(m, "Shift right", "]", "shiftright") - - m = WFrameWorkPatch.Menu(self.menubar, "Python") - runitem = FrameWork.MenuItem(m, "Run window", "R", 'run') - runselitem = FrameWork.MenuItem(m, "Run selection", None, 'runselection') - FrameWork.Separator(m) - moditem = FrameWork.MenuItem(m, "Module browserŠ", "M", self.domenu_modulebrowser) - FrameWork.Separator(m) - mm = FrameWork.SubMenu(m, "Preferences") - FrameWork.MenuItem(mm, "Set Scripts folderŠ", None, self.do_setscriptsfolder) - - self.openwindowsmenu = WFrameWorkPatch.Menu(self.menubar, 'Windows') - self.makeopenwindowsmenu() - self._menustocheck = [closeitem, saveitem, saveasitem, - undoitem, cutitem, copyitem, pasteitem, - selallitem, sellineitem, - finditem, findagainitem, enterselitem, replaceitem, replacefinditem, - shiftleftitem, shiftrightitem, - runitem, runselitem] - - prefs = self.getprefs() - if prefs.scriptsfolder: - fss, fss_changed = macfs.RawAlias(prefs.scriptsfolder).Resolve() - self.scriptsfolder = fss.NewAlias() - prefs.scriptsfolder = self.scriptsfolder.data - self.scriptsfoldermodtime = fss.GetDates()[1] - else: - path = os.path.join(os.getcwd(), 'Scripts') - if not os.path.exists(path): - os.mkdir(path) - fss = macfs.FSSpec(path) - self.scriptsfolder = fss.NewAlias() - self.scriptsfoldermodtime = fss.GetDates()[1] - self._scripts = {} - self.scriptsmenu = None - self.makescriptsmenu() - - def quitevent(self, theAppleEvent, theReply): - import AE - AE.AEInteractWithUser(50000000) - self._quit() - - def suspendresume(self, onoff): - if onoff: - fss, fss_changed = self.scriptsfolder.Resolve() - modtime = fss.GetDates()[1] - if self.scriptsfoldermodtime <> modtime or fss_changed: - self.scriptsfoldermodtime = modtime - W.SetCursor('watch') - self.makescriptsmenu() - - def ignoreevent(self, theAppleEvent, theReply): - pass - - def opendocsevent(self, theAppleEvent, theReply): - W.SetCursor('watch') - import aetools - parameters, args = aetools.unpackevent(theAppleEvent) - docs = parameters['----'] - if type(docs) <> type([]): - docs = [docs] - for doc in docs: - fss, a = doc.Resolve() - path = fss.as_pathname() - self.opendoc(path) - - def opendoc(self, path): - fcreator, ftype = macfs.FSSpec(path).GetCreatorType() - if ftype == 'TEXT': - self.openscript(path) - else: - W.Message("Canąt open file of type '%s'." % ftype) - - def getabouttext(self): - return "About Python IDEŠ" - - def do_about(self, id, item, window, event): - Splash.about() - - def do_setscriptsfolder(self, *args): - fss, ok = macfs.GetDirectory("Select Scripts Folder") - if ok: - prefs = self.getprefs() - alis = fss.NewAlias() - prefs.scriptsfolder = alis.data - self.scriptsfolder = alis - self.makescriptsmenu() - prefs.save() - - def domenu_modulebrowser(self, *args): - W.SetCursor('watch') - import ModuleBrowser - ModuleBrowser.ModuleBrowser() - - def domenu_open(self, *args): - fss, ok = macfs.StandardGetFile("TEXT") - if ok: - self.openscript(fss.as_pathname()) - - def domenu_new(self, *args): - W.SetCursor('watch') - import PyEdit - return PyEdit.Editor() - - def makescriptsmenu(self): - W.SetCursor('watch') - if self._scripts: - for id, item in self._scripts.keys(): - if self.menubar.menus.has_key(id): - m = self.menubar.menus[id] - m.delete() - self._scripts = {} - if self.scriptsmenu: - if hasattr(self.scriptsmenu, 'id') and self.menubar.menus.has_key(self.scriptsmenu.id): - self.scriptsmenu.delete() - self.scriptsmenu = FrameWork.Menu(self.menubar, "Scripts") - #FrameWork.MenuItem(self.scriptsmenu, "New script", None, self.domenu_new) - #self.scriptsmenu.addseparator() - fss, fss_changed = self.scriptsfolder.Resolve() - self.scriptswalk(fss.as_pathname(), self.scriptsmenu) - - def makeopenwindowsmenu(self): - for i in range(len(self.openwindowsmenu.items)): - self.openwindowsmenu.menu.DeleteMenuItem(1) - self.openwindowsmenu.items = [] - windows = [] - self._openwindows = {} - for window in self._windows.keys(): - title = window.GetWTitle() - if not title: - title = "<no title>" - windows.append(title, window) - windows.sort() - for title, window in windows: - item = FrameWork.MenuItem(self.openwindowsmenu, title, callback = self.domenu_openwindows) - self._openwindows[item.item] = window - self._openwindowscheckmark = 0 - self.checkopenwindowsmenu() - - def domenu_openwindows(self, id, item, window, event): - w = self._openwindows[item] - w.ShowWindow() - w.SelectWindow() - - def domenu_quit(self): - self._quit() - - def domenu_save(self, *args): - print "Save" - - def _quit(self): - import PyConsole, PyEdit - PyConsole.console.writeprefs() - PyEdit.searchengine.writeprefs() - for window in self._windows.values(): - if window.close() > 0: - return - self.quitting = 1 - -PythonIDE() |