Abfragedialog J/N eingebaut. Für Rennabbruch Tracker.
This commit is contained in:
@@ -39,6 +39,8 @@ class RaceTracker(Page):
|
||||
self.buttonlabel[2] = 'INFO'
|
||||
self.buttonlabel[5] = 'ABORT'
|
||||
self.mode = 'N' # (N)ormal, (C)onfiguration, (M)itteilung
|
||||
self.query_active = False
|
||||
self.savebuttons = None
|
||||
|
||||
# Flaggengröße: 96 x 64 Pixel
|
||||
self.flagpos = ((208, 140), (308, 140), (208, 210), (308, 210))
|
||||
@@ -74,6 +76,15 @@ class RaceTracker(Page):
|
||||
self.sym_flag[f] = cairo.ImageSurface.create_from_png(flagfile)
|
||||
|
||||
def handle_key(self, buttonid):
|
||||
if self.query_active:
|
||||
if buttonid == 2:
|
||||
self.query_active = False
|
||||
self.app.track.hero_giveup()
|
||||
self.buttonlabel = self.savebuttons.copy()
|
||||
elif buttonid == 5:
|
||||
self.query_active = False
|
||||
self.buttonlabel = self.savebuttons.copy()
|
||||
return True
|
||||
if buttonid == 1:
|
||||
# Modus umschalten
|
||||
if self.mode == 'N':
|
||||
@@ -122,7 +133,17 @@ class RaceTracker(Page):
|
||||
print(f"Selected race '{self.raceid}'")
|
||||
return True
|
||||
elif buttonid == 5:
|
||||
if self.mode == 'C':
|
||||
if self.mode == 'N':
|
||||
self.query_active = True;
|
||||
self.savebuttons = self.buttonlabel.copy()
|
||||
self.buttonlabel[1] = ""
|
||||
self.buttonlabel[2] = "YES"
|
||||
self.buttonlabel[3] = ""
|
||||
self.buttonlabel[4] = ""
|
||||
self.buttonlabel[5] = "NO"
|
||||
self.buttonlabel[6] = ""
|
||||
# Taste 2 = JA, Taste 5 = NEIN
|
||||
elif self.mode == 'C':
|
||||
# Tracking ein/-ausschalten
|
||||
if self.app.track.is_active():
|
||||
self.app.track.set_active(False)
|
||||
@@ -220,6 +241,8 @@ class RaceTracker(Page):
|
||||
ctx.paint()
|
||||
ctx.restore()
|
||||
pos += 1
|
||||
if self.query_active:
|
||||
self.draw_query(ctx, "A B O R T R A C E", "Are you sure to abort the current race? This cannot be undone. Are you sure?")
|
||||
|
||||
|
||||
def draw_config(self, ctx):
|
||||
|
||||
Reference in New Issue
Block a user