bpo-33962: Use ttk spinbox for IDLE indent space config (GH-22954) · python/cpython@540ebc4 · GitHub
Skip to content

Commit 540ebc4

Browse files
bpo-33962: Use ttk spinbox for IDLE indent space config (GH-22954)
If ttk.Spinbox is not available (Tk < 8.5.9) use readonly ttk.Combobox. Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu> (cherry picked from commit 42d5a4f) Co-authored-by: Mark Roseman <mark@markroseman.com>
1 parent 7496486 commit 540ebc4

3 files changed

Lines changed: 73 additions & 118 deletions

File tree

Lib/idlelib/configdialog.py

Lines changed: 62 additions & 94 deletions

Lib/idlelib/idle_test/test_configdialog.py

Lines changed: 9 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -73,13 +73,13 @@ def test_click_ok(self):
7373
def test_click_apply(self):
7474
d = dialog
7575
deactivate = d.deactivate_current_config = mock.Mock()
76-
save_ext = d.save_all_changed_extensions = mock.Mock()
76+
save_ext = d.extpage.save_all_changed_extensions = mock.Mock()
7777
activate = d.activate_config_changes = mock.Mock()
7878
d.buttons['Apply'].invoke()
7979
deactivate.assert_called_once()
8080
save_ext.assert_called_once()
8181
activate.assert_called_once()
82-
del d.save_all_changed_extensions
82+
del d.extpage.save_all_changed_extensions
8383
del d.activate_config_changes, d.deactivate_current_config
8484

8585
def test_click_cancel(self):
@@ -260,27 +260,6 @@ def test_set_samples(self):
260260
d.set_samples = Func() # Re-mask for other tests.
261261

262262

263-
class IndentTest(unittest.TestCase):
264-
265-
@classmethod
266-
def setUpClass(cls):
267-
cls.page = dialog.fontpage
268-
cls.page.update()
269-
270-
def test_load_tab_cfg(self):
271-
d = self.page
272-
d.space_num.set(16)
273-
d.load_tab_cfg()
274-
self.assertEqual(d.space_num.get(), 4)
275-
276-
def test_indent_scale(self):
277-
d = self.page
278-
changes.clear()
279-
d.indent_scale.set(20)
280-
self.assertEqual(d.space_num.get(), 16)
281-
self.assertEqual(mainpage, {'Indent': {'num-spaces': '16'}})
282-
283-
284263
class HighPageTest(unittest.TestCase):
285264
"""Test that highlight tab widgets enable users to make changes.
286265
@@ -1250,6 +1229,12 @@ def test_editor_size(self):
12501229
d.win_width_int.insert(0, '11')
12511230
self.assertEqual(mainpage, {'EditorWindow': {'width': '11'}})
12521231

1232+
def test_indent_spaces(self):
1233+
d = self.page
1234+
d.indent_chooser.set(6)
1235+
self.assertEqual(d.indent_spaces.get(), '6')
1236+
self.assertEqual(mainpage, {'Indent': {'num-spaces': '6'}})
1237+
12531238
def test_cursor_blink(self):
12541239
self.page.cursor_blink_bool.invoke()
12551240
self.assertEqual(mainpage, {'EditorWindow': {'cursor-blink': 'False'}})
@@ -1278,7 +1263,7 @@ def test_paragraph(self):
12781263
self.assertEqual(extpage, {'FormatParagraph': {'max-width': '11'}})
12791264

12801265

1281-
class GenPageTest(unittest.TestCase):
1266+
class ShedPageTest(unittest.TestCase):
12821267
"""Test that shed tab widgets enable users to make changes.
12831268
12841269
Test that widget actions set vars, that var changes add
Lines changed: 2 additions & 0 deletions

0 commit comments

Comments
 (0)