Skip to content

Commit 424d4ee

Browse files
committed
Minor compatibility update
1 parent f4bfa7a commit 424d4ee

File tree

1 file changed

+32
-32
lines changed

1 file changed

+32
-32
lines changed

lib/core/gui.py

Lines changed: 32 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
from lib.core.settings import SITE
2828
from lib.core.settings import VERSION_STRING
2929
from lib.core.settings import WIKI_PAGE
30-
from thirdparty.six.moves import tkinter_messagebox as _tkinter_messagebox
3130
from thirdparty.six.moves import queue as _queue
3231

3332
line = ""
@@ -36,19 +35,20 @@
3635

3736
def runGui(parser):
3837
try:
39-
import tkinter
40-
import tkinter.scrolledtext
41-
import tkinter.ttk
38+
from thirdparty.six.moves import tkinter as _tkinter
39+
from thirdparty.six.moves import tkinter_scrolledtext as _tkinter_scrolledtext
40+
from thirdparty.six.moves import tkinter_ttk as _tkinter_ttk
41+
from thirdparty.six.moves import tkinter_messagebox as _tkinter_messagebox
4242
except ImportError as ex:
4343
raise SqlmapMissingDependence("missing dependence ('%s')" % getSafeExString(ex))
4444

4545
# Reference: https://www.reddit.com/r/learnpython/comments/985umy/limit_user_input_to_only_int_with_tkinter/e4dj9k9?utm_source=share&utm_medium=web2x
46-
class ConstrainedEntry(tkinter.Entry):
46+
class ConstrainedEntry(_tkinter.Entry):
4747
def __init__(self, master=None, **kwargs):
48-
self.var = tkinter.StringVar()
48+
self.var = _tkinter.StringVar()
4949
self.regex = kwargs["regex"]
5050
del kwargs["regex"]
51-
tkinter.Entry.__init__(self, master, textvariable=self.var, **kwargs)
51+
_tkinter.Entry.__init__(self, master, textvariable=self.var, **kwargs)
5252
self.old_value = ''
5353
self.var.trace('w', self.check)
5454
self.get, self.set = self.var.get, self.var.set
@@ -60,9 +60,9 @@ def check(self, *args):
6060
self.set(self.old_value)
6161

6262
# Reference: https://code.activestate.com/recipes/580726-tkinter-notebook-that-fits-to-the-height-of-every-/
63-
class AutoresizableNotebook(tkinter.ttk.Notebook):
63+
class AutoresizableNotebook(_tkinter_ttk.Notebook):
6464
def __init__(self, master=None, **kw):
65-
tkinter.ttk.Notebook.__init__(self, master, **kw)
65+
_tkinter_ttk.Notebook.__init__(self, master, **kw)
6666
self.bind("<<NotebookTabChanged>>", self._on_tab_changed)
6767

6868
def _on_tab_changed(self,event):
@@ -71,11 +71,11 @@ def _on_tab_changed(self,event):
7171
tab = event.widget.nametowidget(event.widget.select())
7272
event.widget.configure(height=tab.winfo_reqheight())
7373

74-
window = tkinter.Tk()
74+
window = _tkinter.Tk()
7575
window.title(VERSION_STRING)
7676

7777
# Reference: https://www.holadevs.com/pregunta/64750/change-selected-tab-color-in-ttknotebook
78-
style = tkinter.ttk.Style()
78+
style = _tkinter_ttk.Style()
7979
settings = {"TNotebook.Tab": {"configure": {"padding": [5, 1], "background": "#fdd57e" }, "map": {"background": [("selected", "#C70039"), ("active", "#fc9292")], "foreground": [("selected", "#ffffff"), ("active", "#000000")]}}}
8080
style.theme_create("custom", parent="alt", settings=settings)
8181
style.theme_use("custom")
@@ -119,7 +119,7 @@ def onReturnPress(event):
119119
except:
120120
return
121121

122-
event.widget.insert(tkinter.END, "\n")
122+
event.widget.insert(_tkinter.END, "\n")
123123

124124
return "break"
125125

@@ -174,11 +174,11 @@ def enqueue(stream, queue):
174174
thread.daemon = True
175175
thread.start()
176176

177-
top = tkinter.Toplevel()
177+
top = _tkinter.Toplevel()
178178
top.title("Console")
179179

180180
# Reference: https://stackoverflow.com/a/13833338
181-
text = tkinter.scrolledtext.ScrolledText(top, undo=True)
181+
text = _tkinter_scrolledtext.ScrolledText(top, undo=True)
182182
text.bind("<Key>", onKeyPress)
183183
text.bind("<Return>", onReturnPress)
184184
text.pack()
@@ -191,23 +191,23 @@ def enqueue(stream, queue):
191191
try:
192192
#line = queue.get_nowait()
193193
line = queue.get(timeout=.1)
194-
text.insert(tkinter.END, line)
194+
text.insert(_tkinter.END, line)
195195
except _queue.Empty:
196-
text.see(tkinter.END)
196+
text.see(_tkinter.END)
197197
text.update_idletasks()
198198

199-
menubar = tkinter.Menu(window)
199+
menubar = _tkinter.Menu(window)
200200

201-
filemenu = tkinter.Menu(menubar, tearoff=0)
202-
filemenu.add_command(label="Open", state=tkinter.DISABLED)
203-
filemenu.add_command(label="Save", state=tkinter.DISABLED)
201+
filemenu = _tkinter.Menu(menubar, tearoff=0)
202+
filemenu.add_command(label="Open", state=_tkinter.DISABLED)
203+
filemenu.add_command(label="Save", state=_tkinter.DISABLED)
204204
filemenu.add_separator()
205205
filemenu.add_command(label="Exit", command=window.quit)
206206
menubar.add_cascade(label="File", menu=filemenu)
207207

208208
menubar.add_command(label="Run", command=run)
209209

210-
helpmenu = tkinter.Menu(menubar, tearoff=0)
210+
helpmenu = _tkinter.Menu(menubar, tearoff=0)
211211
helpmenu.add_command(label="Official site", command=lambda: webbrowser.open(SITE))
212212
helpmenu.add_command(label="Github pages", command=lambda: webbrowser.open(GIT_PAGE))
213213
helpmenu.add_command(label="Wiki pages", command=lambda: webbrowser.open(WIKI_PAGE))
@@ -225,33 +225,33 @@ def enqueue(stream, queue):
225225
frames = {}
226226

227227
for group in parser.option_groups:
228-
frame = frames[group.title] = tkinter.Frame(notebook, width=200, height=200)
228+
frame = frames[group.title] = _tkinter.Frame(notebook, width=200, height=200)
229229
notebook.add(frames[group.title], text=group.title)
230230

231-
tkinter.Label(frame).grid(column=0, row=0, sticky=tkinter.W)
231+
_tkinter.Label(frame).grid(column=0, row=0, sticky=_tkinter.W)
232232

233233
row = 1
234234
if group.get_description():
235-
tkinter.Label(frame, text="%s:" % group.get_description()).grid(column=0, row=1, columnspan=3, sticky=tkinter.W)
236-
tkinter.Label(frame).grid(column=0, row=2, sticky=tkinter.W)
235+
_tkinter.Label(frame, text="%s:" % group.get_description()).grid(column=0, row=1, columnspan=3, sticky=_tkinter.W)
236+
_tkinter.Label(frame).grid(column=0, row=2, sticky=_tkinter.W)
237237
row += 2
238238

239239
for option in group.option_list:
240-
tkinter.Label(frame, text="%s " % parser.formatter._format_option_strings(option)).grid(column=0, row=row, sticky=tkinter.W)
240+
_tkinter.Label(frame, text="%s " % parser.formatter._format_option_strings(option)).grid(column=0, row=row, sticky=_tkinter.W)
241241

242242
if option.type == "string":
243-
widget = tkinter.Entry(frame)
243+
widget = _tkinter.Entry(frame)
244244
elif option.type == "float":
245245
widget = ConstrainedEntry(frame, regex=r"\A\d*\.?\d*\Z")
246246
elif option.type == "int":
247247
widget = ConstrainedEntry(frame, regex=r"\A\d*\Z")
248248
else:
249-
var = tkinter.IntVar()
250-
widget = tkinter.Checkbutton(frame, variable=var)
249+
var = _tkinter.IntVar()
250+
widget = _tkinter.Checkbutton(frame, variable=var)
251251
widget.var = var
252252

253253
first = first or widget
254-
widget.grid(column=1, row=row, sticky=tkinter.W)
254+
widget.grid(column=1, row=row, sticky=_tkinter.W)
255255

256256
window._widgets[(option.dest, option.type)] = widget
257257

@@ -260,11 +260,11 @@ def enqueue(stream, queue):
260260
if hasattr(widget, "insert"):
261261
widget.insert(0, default)
262262

263-
tkinter.Label(frame, text=" %s" % option.help).grid(column=2, row=row, sticky=tkinter.W)
263+
_tkinter.Label(frame, text=" %s" % option.help).grid(column=2, row=row, sticky=_tkinter.W)
264264

265265
row += 1
266266

267-
tkinter.Label(frame).grid(column=0, row=row, sticky=tkinter.W)
267+
_tkinter.Label(frame).grid(column=0, row=row, sticky=_tkinter.W)
268268

269269
notebook.pack(expand=1, fill="both")
270270
notebook.enable_traversal()

0 commit comments

Comments
 (0)