1 # -*- coding: utf-8 -*-
3 # GUIのメインフレームにおけるSeed2特定Notebookのview
4 # 2013/12/15 written by kei9
11 class NoteBookSeed2View():
12 u""" メインのフレームのSeed2特定タブ """
13 def __init__(self, frame):
21 self.button_search = xrc.XRCCTRL(self.frame, "ButtonSeedSearch")
22 self.button_clear = xrc.XRCCTRL(self.frame, "ButtonSeedClear")
23 self.button_skill2 = xrc.XRCCTRL(self.frame, "ButtonSkillFromSeedSearch")
25 self.ID_BUTTON_SEARCH = xrc.XRCID("ButtonSeedSearch")
26 self.ID_BUTTON_CLEAR = xrc.XRCID("ButtonSeedClear")
27 self.ID_BUTTON_SKILL2 = xrc.XRCID("ButtonSkillFromSeedSearch")
30 self.text_ctrl_seed2_explain = xrc.XRCCTRL(self.frame, "TextCtrlSeed2Explain")
31 self.text_ctrl_seed2_result = xrc.XRCCTRL(self.frame, "TextCtrlSeedResults")
34 self.combo_box_skill_dict = {}
35 self.combo_box_skill_dict[constnumbers.KEY_AMULET1] = [
36 xrc.XRCCTRL(self.frame, "ComboBoxAmulet1_1"),
37 xrc.XRCCTRL(self.frame, "ComboBoxAmulet1_2"),
38 xrc.XRCCTRL(self.frame, "ComboBoxAmulet1_3"),
39 xrc.XRCCTRL(self.frame, "ComboBoxAmulet1_4"),
40 xrc.XRCCTRL(self.frame, "ComboBoxAmulet1_5"),
41 xrc.XRCCTRL(self.frame, "ComboBoxAmulet1_6"),
42 xrc.XRCCTRL(self.frame, "ComboBoxAmulet1_7")]
43 self.combo_box_skill_dict[constnumbers.KEY_AMULET2] = [
44 xrc.XRCCTRL(self.frame, "ComboBoxAmulet2_1"),
45 xrc.XRCCTRL(self.frame, "ComboBoxAmulet2_2"),
46 xrc.XRCCTRL(self.frame, "ComboBoxAmulet2_3"),
47 xrc.XRCCTRL(self.frame, "ComboBoxAmulet2_4"),
48 xrc.XRCCTRL(self.frame, "ComboBoxAmulet2_5"),
49 xrc.XRCCTRL(self.frame, "ComboBoxAmulet2_6"),
50 xrc.XRCCTRL(self.frame, "ComboBoxAmulet2_7")]
51 self.combo_box_skill_dict[constnumbers.KEY_AMULET3] = [
52 xrc.XRCCTRL(self.frame, "ComboBoxAmulet3_1"),
53 xrc.XRCCTRL(self.frame, "ComboBoxAmulet3_2"),
54 xrc.XRCCTRL(self.frame, "ComboBoxAmulet3_3"),
55 xrc.XRCCTRL(self.frame, "ComboBoxAmulet3_4"),
56 xrc.XRCCTRL(self.frame, "ComboBoxAmulet3_5"),
57 xrc.XRCCTRL(self.frame, "ComboBoxAmulet3_6"),
58 xrc.XRCCTRL(self.frame, "ComboBoxAmulet3_7")]
61 self.list_box_seed = xrc.XRCCTRL(self.frame, "ListBoxSeed")
62 self.ID_LIST_BOX_SEED = xrc.XRCID("ListBoxSeed")
64 # set explanation text
65 self.text_ctrl_seed2_explain.SetValue(constnumbers.SEED_DECISION_EXPLANATION)
67 def bind_button_search(self, event_func, evt=wx.EVT_BUTTON):
68 u""" 検索ボタンへのイベント登録 """
69 self.button_search.Bind(evt, event_func)
71 def bind_button_clear(self, event_func, evt=wx.EVT_BUTTON):
72 u""" クリアボタンへのイベント登録 """
73 self.button_clear.Bind(evt, event_func)
75 def bind_button_skill2(self, event_func, evt=wx.EVT_BUTTON):
76 u""" 対応スキル2ボタンへのイベント登録 """
77 self.button_skill2.Bind(evt, event_func)
79 def set_skill_names(self, amulet_key, skill_names):
80 u""" キーに対応するComboboxにスキル名をセットする。"""
81 for combo in self.combo_box_skill_dict[amulet_key]:
82 combo.SetItems(skill_names)
85 def get_selected_skill_names(self, amulet_key):
86 u""" キーに対応するComboboxで選択されているスキル名を返す"""
87 return [combo.GetStringSelection() for combo in self.combo_box_skill_dict[amulet_key]]
89 def set_skill_selected_idx(self, idx=0):
90 u""" Comboboxの選択されたインデックスを全て指定された値とする """
91 for key, combo_list in self.combo_box_skill_dict.items():
92 for combo in combo_list:
93 combo.SetSelection(idx)
95 def set_seed_lists(self, seed_list):
96 u""" Seed2一覧をセットする """
97 self.list_box_seed.SetItems(seed_list)
98 self.list_box_seed.SetSelection(0)
100 def clear_seed_list(self):
101 u""" Seed2一覧をクリアする """
102 self.list_box_seed.Clear()
104 def set_result_text(self, value):
105 u""" 検索結果を示すTextCtrlへの値のセット """
106 self.text_ctrl_seed2_result.SetValue(value)
108 def set_skill2_button_enable(self, value):
109 u""" 対応スキル検索ボタンの有効・無効の切り替え """
111 self.button_skill2.Enable()
113 self.button_skill2.Disable()
115 def get_selected_seed2(self):
116 u""" ListBoxから選択したSeed2を返す。値が不正な場合はNoneを返す """
117 seed = self.list_box_seed.GetStringSelection()