Current Path: > > opt > alt > > python35 > lib64 > python3.5 > > idlelib
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
Icons | Directory | - | - | |
__pycache__ | Directory | - | - | |
idle_test | Directory | - | - | |
AutoComplete.py | File | 9201 bytes | May 31 2024 13:51:41. | |
AutoCompleteWindow.py | File | 17739 bytes | May 31 2024 13:51:41. | |
AutoExpand.py | File | 3395 bytes | May 31 2024 13:51:41. | |
Bindings.py | File | 3111 bytes | May 31 2024 13:51:41. | |
CREDITS.txt | File | 1866 bytes | November 01 2019 23:02:34. | |
CallTipWindow.py | File | 6035 bytes | May 31 2024 13:51:41. | |
CallTips.py | File | 5932 bytes | May 31 2024 13:51:41. | |
ChangeLog | File | 56388 bytes | November 01 2019 23:02:34. | |
ClassBrowser.py | File | 6999 bytes | May 31 2024 13:51:41. | |
CodeContext.py | File | 8357 bytes | May 31 2024 13:51:41. | |
ColorDelegator.py | File | 10598 bytes | May 31 2024 13:51:41. | |
Debugger.py | File | 18758 bytes | May 31 2024 13:51:41. | |
Delegator.py | File | 1043 bytes | May 31 2024 13:51:41. | |
EditorWindow.py | File | 65595 bytes | May 31 2024 13:51:41. | |
FileList.py | File | 3813 bytes | May 31 2024 13:51:41. | |
FormatParagraph.py | File | 7287 bytes | May 31 2024 13:51:41. | |
GrepDialog.py | File | 5124 bytes | May 31 2024 13:51:41. | |
HISTORY.txt | File | 10312 bytes | November 01 2019 23:02:34. | |
HyperParser.py | File | 12877 bytes | May 31 2024 13:51:41. | |
IOBinding.py | File | 20599 bytes | May 31 2024 13:51:41. | |
IdleHistory.py | File | 4052 bytes | May 31 2024 13:51:41. | |
MultiCall.py | File | 18571 bytes | May 31 2024 13:51:41. | |
MultiStatusBar.py | File | 1348 bytes | May 31 2024 13:51:41. | |
NEWS.txt | File | 15536 bytes | November 01 2019 23:02:34. | |
NEWS2x.txt | File | 27172 bytes | November 01 2019 23:02:34. | |
ObjectBrowser.py | File | 3975 bytes | May 31 2024 13:51:41. | |
OutputWindow.py | File | 4394 bytes | May 31 2024 13:51:41. | |
ParenMatch.py | File | 6714 bytes | May 31 2024 13:51:41. | |
PathBrowser.py | File | 3207 bytes | May 31 2024 13:51:41. | |
Percolator.py | File | 3179 bytes | May 31 2024 13:51:41. | |
PyParse.py | File | 20461 bytes | May 31 2024 13:51:41. | |
PyShell.py | File | 58846 bytes | May 31 2024 13:51:41. | |
README.txt | File | 7891 bytes | November 01 2019 23:02:34. | |
RemoteDebugger.py | File | 12007 bytes | May 31 2024 13:51:41. | |
RemoteObjectBrowser.py | File | 964 bytes | May 31 2024 13:51:41. | |
ReplaceDialog.py | File | 7481 bytes | May 31 2024 13:51:41. | |
RstripExtension.py | File | 1050 bytes | May 31 2024 13:51:41. | |
ScriptBinding.py | File | 8061 bytes | May 31 2024 13:51:41. | |
ScrolledList.py | File | 4375 bytes | May 31 2024 13:51:41. | |
SearchDialog.py | File | 3127 bytes | May 31 2024 13:51:41. | |
SearchDialogBase.py | File | 7009 bytes | May 31 2024 13:51:41. | |
SearchEngine.py | File | 7485 bytes | May 31 2024 13:51:41. | |
StackViewer.py | File | 4426 bytes | May 31 2024 13:51:41. | |
TODO.txt | File | 8478 bytes | November 01 2019 23:02:34. | |
ToolTip.py | File | 3173 bytes | May 31 2024 13:51:41. | |
TreeWidget.py | File | 15024 bytes | May 31 2024 13:51:41. | |
UndoDelegator.py | File | 10980 bytes | May 31 2024 13:51:41. | |
WidgetRedirector.py | File | 6939 bytes | May 31 2024 13:51:41. | |
WindowList.py | File | 2472 bytes | May 31 2024 13:51:41. | |
ZoomHeight.py | File | 1300 bytes | May 31 2024 13:51:41. | |
__init__.py | File | 335 bytes | May 31 2024 13:51:41. | |
__main__.py | File | 159 bytes | May 31 2024 13:51:41. | |
aboutDialog.py | File | 6987 bytes | May 31 2024 13:51:41. | |
config-extensions.def | File | 2965 bytes | November 01 2019 23:02:34. | |
config-highlight.def | File | 2515 bytes | November 01 2019 23:02:34. | |
config-keys.def | File | 7777 bytes | November 01 2019 23:02:34. | |
config-main.def | File | 2563 bytes | November 01 2019 23:02:34. | |
configDialog.py | File | 65061 bytes | May 31 2024 13:51:41. | |
configHandler.py | File | 32451 bytes | May 31 2024 13:51:41. | |
configHelpSourceEdit.py | File | 6817 bytes | May 31 2024 13:51:41. | |
configSectionNameDialog.py | File | 4007 bytes | May 31 2024 13:51:41. | |
dynOptionMenuWidget.py | File | 1990 bytes | May 31 2024 13:51:41. | |
extend.txt | File | 3642 bytes | November 01 2019 23:02:34. | |
help.html | File | 43411 bytes | November 01 2019 23:02:34. | |
help.py | File | 10952 bytes | May 31 2024 13:51:41. | |
help.txt | File | 17900 bytes | November 01 2019 23:02:34. | |
idle.py | File | 453 bytes | May 31 2024 13:51:41. | |
idle.pyw | File | 570 bytes | November 01 2019 23:02:34. | |
idlever.py | File | 415 bytes | May 31 2024 13:51:41. | |
keybindingDialog.py | File | 12416 bytes | May 31 2024 13:51:41. | |
macosxSupport.py | File | 8684 bytes | May 31 2024 13:51:41. | |
rpc.py | File | 20784 bytes | May 31 2024 13:51:41. | |
run.py | File | 13869 bytes | May 31 2024 13:51:41. | |
tabbedpages.py | File | 18418 bytes | May 31 2024 13:51:41. | |
textView.py | File | 3419 bytes | May 31 2024 13:51:41. |
'''Define SearchDialogBase used by Search, Replace, and Grep dialogs.''' from tkinter import (Toplevel, Frame, Entry, Label, Button, Checkbutton, Radiobutton) class SearchDialogBase: '''Create most of a 3 or 4 row, 3 column search dialog. The left and wide middle column contain: 1 or 2 labeled text entry lines (make_entry, create_entries); a row of standard Checkbuttons (make_frame, create_option_buttons), each of which corresponds to a search engine Variable; a row of dialog-specific Check/Radiobuttons (create_other_buttons). The narrow right column contains command buttons (make_button, create_command_buttons). These are bound to functions that execute the command. Except for command buttons, this base class is not limited to items common to all three subclasses. Rather, it is the Find dialog minus the "Find Next" command, its execution function, and the default_command attribute needed in create_widgets. The other dialogs override attributes and methods, the latter to replace and add widgets. ''' title = "Search Dialog" # replace in subclasses icon = "Search" needwrapbutton = 1 # not in Find in Files def __init__(self, root, engine): '''Initialize root, engine, and top attributes. top (level widget): set in create_widgets() called from open(). text (Text searched): set in open(), only used in subclasses(). ent (ry): created in make_entry() called from create_entry(). row (of grid): 0 in create_widgets(), +1 in make_entry/frame(). default_command: set in subclasses, used in create_widgers(). title (of dialog): class attribute, override in subclasses. icon (of dialog): ditto, use unclear if cannot minimize dialog. ''' self.root = root self.engine = engine self.top = None def open(self, text, searchphrase=None): "Make dialog visible on top of others and ready to use." self.text = text if not self.top: self.create_widgets() else: self.top.deiconify() self.top.tkraise() if searchphrase: self.ent.delete(0,"end") self.ent.insert("end",searchphrase) self.ent.focus_set() self.ent.selection_range(0, "end") self.ent.icursor(0) self.top.grab_set() def close(self, event=None): "Put dialog away for later use." if self.top: self.top.grab_release() self.top.withdraw() def create_widgets(self): '''Create basic 3 row x 3 col search (find) dialog. Other dialogs override subsidiary create_x methods as needed. Replace and Find-in-Files add another entry row. ''' top = Toplevel(self.root) top.bind("<Return>", self.default_command) top.bind("<Escape>", self.close) top.protocol("WM_DELETE_WINDOW", self.close) top.wm_title(self.title) top.wm_iconname(self.icon) self.top = top self.row = 0 self.top.grid_columnconfigure(0, pad=2, weight=0) self.top.grid_columnconfigure(1, pad=2, minsize=100, weight=100) self.create_entries() # row 0 (and maybe 1), cols 0, 1 self.create_option_buttons() # next row, cols 0, 1 self.create_other_buttons() # next row, cols 0, 1 self.create_command_buttons() # col 2, all rows def make_entry(self, label_text, var): '''Return (entry, label), . entry - gridded labeled Entry for text entry. label - Label widget, returned for testing. ''' label = Label(self.top, text=label_text) label.grid(row=self.row, column=0, sticky="nw") entry = Entry(self.top, textvariable=var, exportselection=0) entry.grid(row=self.row, column=1, sticky="nwe") self.row = self.row + 1 return entry, label def create_entries(self): "Create one or more entry lines with make_entry." self.ent = self.make_entry("Find:", self.engine.patvar)[0] def make_frame(self,labeltext=None): '''Return (frame, label). frame - gridded labeled Frame for option or other buttons. label - Label widget, returned for testing. ''' if labeltext: label = Label(self.top, text=labeltext) label.grid(row=self.row, column=0, sticky="nw") else: label = '' frame = Frame(self.top) frame.grid(row=self.row, column=1, columnspan=1, sticky="nwe") self.row = self.row + 1 return frame, label def create_option_buttons(self): '''Return (filled frame, options) for testing. Options is a list of SearchEngine booleanvar, label pairs. A gridded frame from make_frame is filled with a Checkbutton for each pair, bound to the var, with the corresponding label. ''' frame = self.make_frame("Options")[0] engine = self.engine options = [(engine.revar, "Regular expression"), (engine.casevar, "Match case"), (engine.wordvar, "Whole word")] if self.needwrapbutton: options.append((engine.wrapvar, "Wrap around")) for var, label in options: btn = Checkbutton(frame, anchor="w", variable=var, text=label) btn.pack(side="left", fill="both") if var.get(): btn.select() return frame, options def create_other_buttons(self): '''Return (frame, others) for testing. Others is a list of value, label pairs. A gridded frame from make_frame is filled with radio buttons. ''' frame = self.make_frame("Direction")[0] var = self.engine.backvar others = [(1, 'Up'), (0, 'Down')] for val, label in others: btn = Radiobutton(frame, anchor="w", variable=var, value=val, text=label) btn.pack(side="left", fill="both") if var.get() == val: btn.select() return frame, others def make_button(self, label, command, isdef=0): "Return command button gridded in command frame." b = Button(self.buttonframe, text=label, command=command, default=isdef and "active" or "normal") cols,rows=self.buttonframe.grid_size() b.grid(pady=1,row=rows,column=0,sticky="ew") self.buttonframe.grid(rowspan=rows+1) return b def create_command_buttons(self): "Place buttons in vertical command frame gridded on right." f = self.buttonframe = Frame(self.top) f.grid(row=0,column=2,padx=2,pady=2,ipadx=2,ipady=2) b = self.make_button("close", self.close) b.lower() if __name__ == '__main__': import unittest unittest.main( 'idlelib.idle_test.test_searchdialogbase', verbosity=2)
SILENT KILLER Tool