Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 11 additions & 3 deletions Lib/idlelib/configdialog.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
Notebook, Radiobutton, Scrollbar, Style)
import tkinter.colorchooser as tkColorChooser
import tkinter.font as tkFont
import tkinter.messagebox as tkMessageBox
from tkinter import messagebox

from idlelib.config import idleConf, ConfigChanges
from idlelib.config_key import GetKeysDialog
Expand Down Expand Up @@ -1227,6 +1227,10 @@ def save_new(self, theme_name, theme):
value = theme[element]
idleConf.userCfg['highlight'].SetOption(theme_name, element, value)

def askyesno(self, *args, **kwargs):
# Make testing easier. Could change implementation.
messagebox.askyesno(*args, **kwargs)

def delete_custom(self):
"""Handle event to delete custom theme.

Expand All @@ -1251,7 +1255,7 @@ def delete_custom(self):
"""
theme_name = self.custom_name.get()
delmsg = 'Are you sure you wish to delete the theme %r ?'
if not tkMessageBox.askyesno(
if not self.askyesno(
'Delete Theme', delmsg % theme_name, parent=self):
return
self.cd.deactivate_current_config()
Expand Down Expand Up @@ -1669,6 +1673,10 @@ def save_new_key_set(keyset_name, keyset):
value = keyset[event]
idleConf.userCfg['keys'].SetOption(keyset_name, event, value)

def askyesno(self, *args, **kwargs):
# Make testing easier. Could change implementation.
messagebox.askyesno(*args, **kwargs)

def delete_custom_keys(self):
"""Handle event to delete a custom key set.

Expand All @@ -1678,7 +1686,7 @@ def delete_custom_keys(self):
"""
keyset_name = self.custom_name.get()
delmsg = 'Are you sure you wish to delete the key set %r ?'
if not tkMessageBox.askyesno(
if not self.askyesno(
'Delete Key Set', delmsg % keyset_name, parent=self):
return
self.cd.deactivate_current_config()
Expand Down
8 changes: 4 additions & 4 deletions Lib/idlelib/idle_test/test_configdialog.py
Original file line number Diff line number Diff line change
Expand Up @@ -643,7 +643,7 @@ def test_delete_custom(self):
eq = self.assertEqual
d = self.page
d.button_delete_custom.state(('!disabled',))
yesno = configdialog.tkMessageBox.askyesno = Func()
yesno = d.askyesno = Func()
dialog.deactivate_current_config = Func()
dialog.activate_config_changes = Func()

Expand Down Expand Up @@ -678,7 +678,7 @@ def test_delete_custom(self):
eq(d.set_theme_type.called, 1)

del dialog.activate_config_changes, dialog.deactivate_current_config
del configdialog.tkMessageBox.askyesno
del d.askyesno


class KeysPageTest(unittest.TestCase):
Expand Down Expand Up @@ -1034,7 +1034,7 @@ def test_delete_custom_keys(self):
eq = self.assertEqual
d = self.page
d.button_delete_custom_keys.state(('!disabled',))
yesno = configdialog.tkMessageBox.askyesno = Func()
yesno = d.askyesno = Func()
dialog.deactivate_current_config = Func()
dialog.activate_config_changes = Func()

Expand Down Expand Up @@ -1069,7 +1069,7 @@ def test_delete_custom_keys(self):
eq(d.set_keys_type.called, 1)

del dialog.activate_config_changes, dialog.deactivate_current_config
del configdialog.tkMessageBox.askyesno
del d.askyesno


class GenPageTest(unittest.TestCase):
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
IDLE - Do not modify tkinter.message in test_configdialog.