ya2 · news · projects · code · about

housekeeping: ya2.utils.gui
[pmachines.git] / pmachines / gui / menu.py
1 from pmachines.gui.main_page import MainPage
2 from pmachines.gui.play_page import PlayPage
3 from pmachines.gui.options_page import OptionsPage
4 from pmachines.gui.credits_page import CreditsPage
5 from ya2.utils.gui.menu import BaseMenu
6 from ya2.utils.gui.cursor import MouseCursorArgs
7
8
9 class Menu(BaseMenu):
10
11 def __init__(self, start_scene, set_language, option_file,
12 gfx_pipeline, scenes,
13 running_functional_tests, test_positions):
14 c = MouseCursorArgs(
15 'assets/images/buttons/arrowUpLeft.dds',
16 running_functional_tests,
17 (.04, 1, .04),
18 (.5, .5, .5, 1),
19 (.01, .01))
20 super().__init__(c, running_functional_tests, test_positions)
21 self.__start_scene = start_scene
22 self.__set_language = set_language
23 self.__option_file = option_file
24 self.__gfx_pipeline = gfx_pipeline
25 self.__scenes = scenes
26 self.set_page('main')
27
28 def _set_page(self, page_name):
29 match page_name:
30 case 'main': p = MainPage(self._page_info)
31 case 'credits': p = CreditsPage(self._page_info)
32 case 'options': p = OptionsPage(self._page_info, self.__option_file, self.__set_language, self.__gfx_pipeline)
33 case 'play': p = PlayPage(self._page_info, self.__scenes, self.__start_scene)
34 return p