OSDN Git Service

revise database generator for seed1 decision & threshold2 & inishie
[amulettoolsmh4/main.git] / view / notebookamuletview.py
index 1af4dd3..8a587a7 100644 (file)
@@ -26,20 +26,8 @@ class NoteBookAmuletView():
         self.ID_BUTTON_SKILL = xrc.XRCID("ButtonAmuletSearchSkill")
 
         # radio button
-        self.radio_button_amulet1 = xrc.XRCCTRL(self.frame, "RadioButtonAmulet1")
-        self.radio_button_amulet2 = xrc.XRCCTRL(self.frame, "RadioButtonAmulet2")
-        self.radio_button_amulet3 = xrc.XRCCTRL(self.frame, "RadioButtonAmulet3")
-        self.ID_RADIO_BUTTON_AMULET1 = xrc.XRCID("RadioButtonAmulet1")
-        self.ID_RADIO_BUTTON_AMULET2 = xrc.XRCID("RadioButtonAmulet2")
-        self.ID_RADIO_BUTTON_AMULET3 = xrc.XRCID("RadioButtonAmulet3")
-        self.amulet2radio_button_dict = {}
-        self.amulet2radio_button_dict[constnumbers.NAME_AMULET1] = self.radio_button_amulet1
-        self.amulet2radio_button_dict[constnumbers.NAME_AMULET2] = self.radio_button_amulet2
-        self.amulet2radio_button_dict[constnumbers.NAME_AMULET3] = self.radio_button_amulet3
-        self.amulet2radio_id_dict = {}
-        self.amulet2radio_id_dict[constnumbers.NAME_AMULET1] = self.ID_RADIO_BUTTON_AMULET1
-        self.amulet2radio_id_dict[constnumbers.NAME_AMULET2] = self.ID_RADIO_BUTTON_AMULET2
-        self.amulet2radio_id_dict[constnumbers.NAME_AMULET3] = self.ID_RADIO_BUTTON_AMULET3
+        self.radiobox_amulet = xrc.XRCCTRL(self.frame, "RadioBoxAmulet")
+        self.radiobox_threshold_type = xrc.XRCCTRL(self.frame, "RadioBoxThresholdType")
 
         # seed list
         self.list_box_seeds = xrc.XRCCTRL(self.frame, "ListBoxAmuletSearchSeeds")
@@ -64,11 +52,13 @@ class NoteBookAmuletView():
         # set min & max of slot
         self.set_slot_minmax(constnumbers.SLOT_MIN, constnumbers.SLOT_MAX)
 
-    def bind_radio_button(self, event_func, evt=wx.EVT_RADIOBUTTON):
-        u""" ラジオボタンが押された時のイベントをセットする """
-        self.radio_button_amulet1.Bind(evt, event_func)
-        self.radio_button_amulet2.Bind(evt, event_func)
-        self.radio_button_amulet3.Bind(evt, event_func)
+    def bind_radiobox_amulet(self, event_func, evt=wx.EVT_RADIOBOX):
+        u""" お守り種類のラジオボタンが押された時のイベントをセットする """
+        self.radiobox_amulet.Bind(evt, event_func)
+
+    def bind_radiobox_threshold_type(self, event_func, evt=wx.EVT_RADIOBOX):
+        u""" 判定値の種類のラジオボタンが押された時のイベントをセットする """
+        self.radiobox_threshold_type.Bind(evt, event_func)
 
     def bind_combobox(self, event_func, evt=wx.EVT_COMBOBOX):
         u""" コンボボタンが押された時のイベントをセットする """
@@ -111,27 +101,56 @@ class NoteBookAmuletView():
         u""" ラジオボタンの値をセットする 
             arg: (value, amulet_name)
         """
-        self.amulet2radio_button_dict[amulet_name].SetValue(value)
+        if amulet_name == constnumbers.NAME_AMULET1:
+            idx = 0
+        elif amulet_name == constnumbers.NAME_AMULET2:
+            idx = 1
+        elif amulet_name == constnumbers.NAME_AMULET3:
+            idx = 2
+        self.radiobox_amulet.SetSelection(idx)
 
     def get_radio_value(self, amulet_name=constnumbers.NAME_AMULET1):
         u""" ラジオボタンの値を得る
             return: (value)
         """
-        return self.amulet2radio_button_dict[amulet_name].GetValue()
-
-    def get_selected_radio_name(self):
-        u""" 選択されているラジオボタンのお守り名を得る 
+        if amulet_name == constnumbers.NAME_AMULET1:
+            idx = 0
+        elif amulet_name == constnumbers.NAME_AMULET2:
+            idx = 1
+        elif amulet_name == constnumbers.NAME_AMULET3:
+            idx = 2
+        return self.radiobox_amulet.GetSelection() == idx
+
+    def get_selected_amulet(self):
+        u""" 選択されているお守り名を得る 
             return: (NAME_OF_AMULET)
         """
-        if self.amulet2radio_button_dict[constnumbers.NAME_AMULET1].GetValue:
+        idx = self.radiobox_amulet.GetSelection()
+        if idx == 0:
             return constnumbers.NAME_AMULET1
-        elif self.amulet2radio_button_dict[constnumbers.NAME_AMULET2].GetValue:
+        elif idx == 1:
             return constnumbers.NAME_AMULET2
-        elif self.amulet2radio_button_dict[constnumbers.NAME_AMULET3].GetValue:
+        elif idx == 2:
             return constnumbers.NAME_AMULET3
         else:
             raise NotImplementedError("irregular radio button selected")
 
+    def get_selected_threshold_type(self):
+        u""" 選択されているラジオボタンの検索種類IDを得る
+            return: (THRESHOLD_TYPE_ID)
+        """
+        idx = self.radiobox_threshold_type.GetSelection()
+        if idx == 0:
+            return constnumbers.THRESHOLD_TYPE_ALL
+        elif idx == 1:
+            return constnumbers.THRESHOLD_TYPE_THRESHOLD1
+        elif idx == 2:
+            return constnumbers.THRESHOLD_TYPE_THRESHOLD2
+        elif idx == 3:
+            return constnumbers.THRESHOLD_TYPE_INISHIE
+        else:
+            raise NotImplementedError("irregular radio button selected")
+
     def set_selection_skill1_combobox(self, idx):
         u""" skill1のコンボボックスの選択されたインデックスをセットする """
         self.combo_box_skill1.SetSelection(idx)