MCPcopy Index your code
hub / github.com/sqlmapproject/sqlmap / runGui

Function runGui

lib/utils/gui.py:38–426  ·  view source on GitHub ↗
(parser)

Source from the content-addressed store, hash-verified

36queue = None
37
38def runGui(parser):
39 try:
40 from thirdparty.six.moves import tkinter as _tkinter
41 from thirdparty.six.moves import tkinter_scrolledtext as _tkinter_scrolledtext
42 from thirdparty.six.moves import tkinter_ttk as _tkinter_ttk
43 from thirdparty.six.moves import tkinter_messagebox as _tkinter_messagebox
44 except ImportError as ex:
45 raise SqlmapMissingDependence("missing dependence ('%s')" % getSafeExString(ex))
46
47 # Reference: https://www.reddit.com/r/learnpython/comments/985umy/limit_user_input_to_only_int_with_tkinter/e4dj9k9?utm_source=share&utm_medium=web2x
48 class ConstrainedEntry(_tkinter.Entry):
49 def __init__(self, master=None, **kwargs):
50 self.var = _tkinter.StringVar()
51 self.regex = kwargs["regex"]
52 del kwargs["regex"]
53 _tkinter.Entry.__init__(self, master, textvariable=self.var, **kwargs)
54 self.old_value = ''
55 self.var.trace('w', self.check)
56 self.get, self.set = self.var.get, self.var.set
57
58 def check(self, *args):
59 if re.search(self.regex, self.get()):
60 self.old_value = self.get()
61 else:
62 self.set(self.old_value)
63
64 try:
65 window = _tkinter.Tk()
66 except Exception as ex:
67 errMsg = "unable to create GUI window ('%s')" % getSafeExString(ex)
68 raise SqlmapSystemException(errMsg)
69
70 window.title("sqlmap - Tkinter GUI")
71
72 # Set theme and colors
73 bg_color = "#f5f5f5"
74 fg_color = "#333333"
75 accent_color = "#2c7fb8"
76 window.configure(background=bg_color)
77
78 # Configure styles
79 style = _tkinter_ttk.Style()
80
81 # Try to use a more modern theme if available
82 available_themes = style.theme_names()
83 if 'clam' in available_themes:
84 style.theme_use('clam')
85 elif 'alt' in available_themes:
86 style.theme_use('alt')
87
88 # Configure notebook style
89 style.configure("TNotebook", background=bg_color)
90 style.configure("TNotebook.Tab",
91 padding=[10, 4],
92 background="#e1e1e1",
93 font=('Helvetica', 9))
94 style.map("TNotebook.Tab",
95 background=[("selected", accent_color), ("active", "#7fcdbb")],

Callers 1

cmdLineParserFunction · 0.90

Calls 8

getSafeExStringFunction · 0.90
centerFunction · 0.85
titleMethod · 0.80
openMethod · 0.80
addMethod · 0.45
updateMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…