| 2056 | return pyglet.event.EVENT_HANDLED |
| 2057 | |
| 2058 | def select(self): |
| 2059 | k = self.options[self.selpos] |
| 2060 | i = self.selpos |
| 2061 | if k == "Blank line": |
| 2062 | pass |
| 2063 | elif k in self.actions.keys(): |
| 2064 | self.values[k] = self.actions[k](k) |
| 2065 | elif type(self.values[k]) == bool: |
| 2066 | self.values[k] = not self.values[k] # todo: other data types |
| 2067 | elif isinstance(self.values[k], Cycler): |
| 2068 | self.values[k].nxt() |
| 2069 | elif self.values[k] == None: |
| 2070 | self.choose(k, i) |
| 2071 | self.close() |
| 2072 | if self.choose_once: |
| 2073 | self.close() |
| 2074 | self.update_labels() |
| 2075 | |
| 2076 | def choose(self, k, i): # override this method in subclasses |
| 2077 | print("Thank you for beta-testing our software.") |