X-Git-Url: https://git.ralfj.de/lilass.git/blobdiff_plain/a6c79626b2d248d0484b5242c0a2051da8ec84d1..17a0398e7b52df31bc10364e49717a548ee4069d:/question_frontend.py diff --git a/question_frontend.py b/question_frontend.py index a17b7ca..8fe4a7a 100644 --- a/question_frontend.py +++ b/question_frontend.py @@ -40,19 +40,26 @@ class QuestionFrontend: return self.userChoose("Select resolution for %s"%displayname, modedescs, availablemodes, None) def setup (self, situation): + if situation.previousSetup: + applyPrevious = self.userChoose("This display is known. The last setup for it was like this:\n%s.\nApply the last used configuration?" % str(situation.previousSetup), ("Apply last setup", "Enter different setup"), (True,False), None) + if applyPrevious is None: + return None + if applyPrevious is True: + return situation.previousSetup + assert applyPrevious is False operationmodes = list(OperationMode) operationmodedescs = list(map(lambda x: x.text, operationmodes)) operationmode = self.userChoose ("Display setup", operationmodedescs, operationmodes, None) if operationmode is None: return None elif operationmode is OperationMode.INTERNAL_ONLY: - intres = self.selectResolution("the internal screen", situation.internalResolutions()) + intres = self.selectResolution("the internal screen", situation.internalConnector.getResolutionList()) if intres is None: return None else: return ScreenSetup(intres, None, None, False) elif operationmode is OperationMode.EXTERNAL_ONLY: - extres = self.selectResolution("the external screen", situation.externalResolutions()) + extres = self.selectResolution("the external screen", situation.externalConnector.getResolutionList()) if extres is None: return None else: @@ -71,10 +78,10 @@ class QuestionFrontend: return None return ScreenSetup(commonres,commonres,relpos,False) # select resolutions independently - intres = self.selectResolution("the internal screen", situation.internalResolutions()) + intres = self.selectResolution("the internal screen", situation.internalConnector.getResolutionList()) if intres is None: return None - extres = self.selectResolution("the external screen", situation.externalResolutions()) + extres = self.selectResolution("the external screen", situation.externalConnector.getResolutionList()) if extres is None: return None extprim = self.userChoose("Select primary screen", ["Internal screen is primary","External screen is primary"], [False,True], None)