1 # -*- coding: utf-8 -*-
3 from __future__
import absolute_import
6 from ..widget
.storedsize
import StoredSizeDialog
7 from jben
.dict_downloader
import static_mirror_list
10 class MirrorSelect(StoredSizeDialog
):
12 def __init__(self
, parent
):
13 StoredSizeDialog
.__init
__(
14 self
, "gui.dialog.dict_mirror_select.size", -1, -1,
15 title
=_("Select download site"),
17 buttons
=(gtk
.STOCK_CANCEL
, gtk
.RESPONSE_CANCEL
,
18 gtk
.STOCK_OK
, gtk
.RESPONSE_OK
)
23 self
.server_list
= gtk
.combo_box_new_text()
24 for row
in static_mirror_list
:
25 self
.server_list
.append_text(row
)
26 self
.server_list
.set_active(0)
27 self
.server_list
.show()
28 wframe
= gtk
.Frame(_("Word dictionaries"))
29 cframe
= gtk
.Frame(_("Character dictionaries"))
30 edict_btn
= gtk
.RadioButton(group
=None,
31 label
=_("EDICT (Recommended)"))
32 kanjidic_btn
= gtk
.RadioButton(group
=None,
33 label
=_("KANJIDIC (Recommended)"))
34 kanjidic2_btn
= gtk
.RadioButton(group
=kanjidic_btn
,
35 label
=_("KANJIDIC 2"))
36 edict_btn
.set_active(True)
37 kanjidic_btn
.set_active(True)
38 d
= {wframe
: [edict_btn
],
39 cframe
: [kanjidic_btn
, kanjidic2_btn
]}
41 box
= gtk
.VBox(spacing
=5)
43 box
.pack_start(obj
, expand
=False)
45 hbox
= gtk
.HBox(spacing
=5)
46 for obj
in (wframe
, cframe
):
49 layout
= self
.get_content_area()
50 for obj
in (self
.server_list
, hbox
):
51 layout
.pack_start(obj
, expand
=False)
54 return self
.server_list
.get_active_text()
57 """Single-time run command; hides GTK boilerplate and gets result."""
59 resp
= gtk
.Dialog
.run(self
)
60 if resp
== gtk
.RESPONSE_OK
:
61 result
= self
.get_mirror()