Better menus
This commit is contained in:
		@@ -1,7 +1,11 @@
 | 
				
			|||||||
 | 
					from enum import Enum, auto
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class Menu:
 | 
					class Menu:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def __init__(self, values:list):
 | 
					    values:list
 | 
				
			||||||
        self.values = values
 | 
					
 | 
				
			||||||
 | 
					    def __init__(self):
 | 
				
			||||||
        self.position = 0
 | 
					        self.position = 0
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    def go_up(self):
 | 
					    def go_up(self):
 | 
				
			||||||
@@ -12,3 +16,18 @@ class Menu:
 | 
				
			|||||||
    
 | 
					    
 | 
				
			||||||
    def validate(self):
 | 
					    def validate(self):
 | 
				
			||||||
        return self.values[self.position]
 | 
					        return self.values[self.position]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class MainMenuValues(Enum):
 | 
				
			||||||
 | 
					    START = auto()
 | 
				
			||||||
 | 
					    SETTINGS = auto()
 | 
				
			||||||
 | 
					    EXIT = auto()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class MainMenu(Menu):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    values = [ e for e in MainMenuValues ]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class ArbitraryMenu:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def __init__(self, values:list):
 | 
				
			||||||
 | 
					        super().__init__(self)
 | 
				
			||||||
 | 
					        self.values = values
 | 
				
			||||||
		Reference in New Issue
	
	Block a user