123456789101112131415161718192021222324252627282930313233343536373839404142 |
- # coding: utf-8
- import typing
- from tkinter import Tk
- from tkinter import StringVar
- from tkinter import OptionMenu
- from tkinter import W
-
- from synergine2.config import Config
-
- from opencombat.gui import Gui
- from opencombat.strategy.manager import TroopManager
-
-
- class SelectTroopsGui(Gui):
- def __init__(
- self,
- config: Config,
- master: Tk,
- troop_manager: TroopManager,
- countries: typing.List[str],
- ) -> None:
- super().__init__(config, master)
- self._master.title('Troops selection')
-
- # Widgets
- self.selected_country_var = StringVar(self._master)
- self.selected_country_var.set(countries[0])
- self.selected_country_var.trace('w', self.change_country)
- self.select_country_menu = OptionMenu(
- self._master,
- self.selected_country_var,
- *countries,
- )
-
- # Layout
- self.select_country_menu.grid(row=0, column=0, sticky=W)
-
- def change_country(self, *args, **kwargs) -> None:
- self._logger.info('Change country to "{}"'.format(
- self.selected_country_var.get(),
- ))
|