404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@3.22.81.96: ~ $
import os
from tkinter import *
import tkinter.messagebox as tkMessageBox


class FileList:

    # N.B. this import overridden in PyShellFileList.
    from idlelib.EditorWindow import EditorWindow

    def __init__(self, root):
        self.root = root
        self.dict = {}
        self.inversedict = {}
        self.vars = {} # For EditorWindow.getrawvar (shared Tcl variables)

    def open(self, filename, action=None):
        assert filename
        filename = self.canonize(filename)
        if os.path.isdir(filename):
            # This can happen when bad filename is passed on command line:
            tkMessageBox.showerror(
                "File Error",
                "%r is a directory." % (filename,),
                master=self.root)
            return None
        key = os.path.normcase(filename)
        if key in self.dict:
            edit = self.dict[key]
            edit.top.wakeup()
            return edit
        if action:
            # Don't create window, perform 'action', e.g. open in same window
            return action(filename)
        else:
            edit = self.EditorWindow(self, filename, key)
            if edit.good_load:
                return edit
            else:
                edit._close()
                return None

    def gotofileline(self, filename, lineno=None):
        edit = self.open(filename)
        if edit is not None and lineno is not None:
            edit.gotoline(lineno)

    def new(self, filename=None):
        return self.EditorWindow(self, filename)

    def close_all_callback(self, *args, **kwds):
        for edit in list(self.inversedict):
            reply = edit.close()
            if reply == "cancel":
                break
        return "break"

    def unregister_maybe_terminate(self, edit):
        try:
            key = self.inversedict[edit]
        except KeyError:
            print("Don't know this EditorWindow object.  (close)")
            return
        if key:
            del self.dict[key]
        del self.inversedict[edit]
        if not self.inversedict:
            self.root.quit()

    def filename_changed_edit(self, edit):
        edit.saved_change_hook()
        try:
            key = self.inversedict[edit]
        except KeyError:
            print("Don't know this EditorWindow object.  (rename)")
            return
        filename = edit.io.filename
        if not filename:
            if key:
                del self.dict[key]
            self.inversedict[edit] = None
            return
        filename = self.canonize(filename)
        newkey = os.path.normcase(filename)
        if newkey == key:
            return
        if newkey in self.dict:
            conflict = self.dict[newkey]
            self.inversedict[conflict] = None
            tkMessageBox.showerror(
                "Name Conflict",
                "You now have multiple edit windows open for %r" % (filename,),
                master=self.root)
        self.dict[newkey] = edit
        self.inversedict[edit] = newkey
        if key:
            try:
                del self.dict[key]
            except KeyError:
                pass

    def canonize(self, filename):
        if not os.path.isabs(filename):
            try:
                pwd = os.getcwd()
            except OSError:
                pass
            else:
                filename = os.path.join(pwd, filename)
        return os.path.normpath(filename)


def _test():
    from idlelib.EditorWindow import fixwordbreaks
    import sys
    root = Tk()
    fixwordbreaks(root)
    root.withdraw()
    flist = FileList(root)
    if sys.argv[1:]:
        for filename in sys.argv[1:]:
            flist.open(filename)
    else:
        flist.new()
    if flist.inversedict:
        root.mainloop()

if __name__ == '__main__':
    _test()

Filemanager

Name Type Size Permission Actions
Icons Folder 0755
__pycache__ Folder 0755
idle_test Folder 0755
AutoComplete.py File 8.99 KB 0644
AutoCompleteWindow.py File 17.32 KB 0644
AutoExpand.py File 3.32 KB 0644
Bindings.py File 2.97 KB 0644
CREDITS.txt File 1.82 KB 0644
CallTipWindow.py File 5.89 KB 0644
CallTips.py File 5.79 KB 0644
ChangeLog File 55.07 KB 0644
ClassBrowser.py File 6.83 KB 0644
CodeContext.py File 8.15 KB 0644
ColorDelegator.py File 9.47 KB 0644
Debugger.py File 18.32 KB 0644
Delegator.py File 665 B 0644
EditorWindow.py File 64.51 KB 0644
FileList.py File 3.72 KB 0644
FormatParagraph.py File 7.12 KB 0644
GrepDialog.py File 5 KB 0644
HISTORY.txt File 10.08 KB 0644
HyperParser.py File 12.58 KB 0644
IOBinding.py File 19.31 KB 0644
IdleHistory.py File 3.96 KB 0644
MultiCall.py File 18.14 KB 0644
MultiStatusBar.py File 1.32 KB 0644
NEWS.txt File 38.9 KB 0644
ObjectBrowser.py File 3.88 KB 0644
OutputWindow.py File 4.29 KB 0644
ParenMatch.py File 6.56 KB 0644
PathBrowser.py File 3.13 KB 0644
Percolator.py File 3.17 KB 0644
PyParse.py File 19.98 KB 0644
PyShell.py File 57.08 KB 0755
README.txt File 7.53 KB 0644
RemoteDebugger.py File 11.73 KB 0644
RemoteObjectBrowser.py File 964 B 0644
ReplaceDialog.py File 6.48 KB 0644
RstripExtension.py File 1.03 KB 0644
ScriptBinding.py File 7.87 KB 0644
ScrolledList.py File 4.27 KB 0644
SearchDialog.py File 2.57 KB 0644
SearchDialogBase.py File 6.84 KB 0644
SearchEngine.py File 7.31 KB 0644
StackViewer.py File 4.32 KB 0644
TODO.txt File 8.28 KB 0644
ToolTip.py File 3.1 KB 0644
TreeWidget.py File 14.67 KB 0644
UndoDelegator.py File 10.56 KB 0644
WidgetRedirector.py File 6.71 KB 0644
WindowList.py File 2.41 KB 0644
ZoomHeight.py File 1.27 KB 0644
__init__.py File 288 B 0644
__main__.py File 159 B 0644
aboutDialog.py File 6.53 KB 0644
config-extensions.def File 2.9 KB 0644
config-highlight.def File 2.46 KB 0644
config-keys.def File 7.59 KB 0644
config-main.def File 2.5 KB 0644
configDialog.py File 62.8 KB 0644
configHandler.py File 31.44 KB 0644
configHelpSourceEdit.py File 6.51 KB 0644
configSectionNameDialog.py File 3.91 KB 0644
dynOptionMenuWidget.py File 1.94 KB 0644
extend.txt File 3.56 KB 0644
help.html File 40.16 KB 0644
help.py File 9.47 KB 0644
help.txt File 17.48 KB 0644
idle.py File 400 B 0644
idle.pyw File 570 B 0644
idlever.py File 415 B 0644
keybindingDialog.py File 12.13 KB 0644
macosxSupport.py File 8.48 KB 0644
rpc.py File 20.29 KB 0644
run.py File 13.35 KB 0644
tabbedpages.py File 17.99 KB 0644
textView.py File 3.15 KB 0644