tie dialog title with context details

This commit is contained in:
Maxime Réaux 2026-03-18 14:30:57 +01:00
parent aa75a5b84f
commit 9e602e8ca4
8 changed files with 109 additions and 46 deletions

View file

@ -23,6 +23,7 @@ from warchron.model.tie_manager import TieContext, TieResolver
from warchron.model.score_service import ScoreService
from warchron.controller.closure_workflow import CampaignClosureWorkflow
from warchron.controller.ranking_icon import RankingIcon
from warchron.controller.presenter import TiePresenter
from warchron.view.campaign_dialog import CampaignDialog
from warchron.view.campaign_participant_dialog import CampaignParticipantDialog
from warchron.view.sector_dialog import SectorDialog
@ -176,24 +177,17 @@ class CampaignController:
for pid in active
]
counters = [war.get_influence_tokens(pid) for pid in active]
data = TiePresenter.build_dialog_data(
war, ctx, campaign=war.get_campaign(ctx.context_id)
)
dialog = TieDialog(
parent=self.app.view,
players=players,
counters=counters,
context_type=ctx.context_type,
context_id=ctx.context_id,
context_name=None,
context_name=data.title,
)
if ctx.objective_id:
objective = war.objectives[ctx.objective_id]
dialog = TieDialog(
parent=self.app.view,
players=players,
counters=counters,
context_type=ctx.context_type,
context_id=ctx.context_id,
context_name=f"Objective tie: {objective.name}",
)
if not dialog.exec():
TieResolver.cancel_tie_break(war, ctx)
raise AbortedOperation("Tie resolution cancelled")