improve widescreen support

This commit is contained in:
cidoku 2025-10-09 00:28:34 -03:00
parent 59c6f32a75
commit d75eed10e3

View File

@ -544,7 +544,7 @@ class AOCharMovie(QtGui.QLabel):
def getScaledImage(self, f_img): def getScaledImage(self, f_img):
if not f_img.isNull(): if not f_img.isNull():
transform = self.getTransform(f_img.size().height() > self.size().height()) transform = self.getTransform(f_img.size().height() > self.size().height())
aspect = self.getAspect(f_img.size().height() > f_img.size().width()) aspect = self.getAspect((f_img.size().height() > f_img.size().width()) or not (f_img.size().height() > self.size().height()))
return f_img.scaled(self.size(), aspect, transform) return f_img.scaled(self.size(), aspect, transform)
return f_img return f_img
@ -1691,7 +1691,7 @@ class GUI(QtGui.QWidget):
self.ao2text.setStyleSheet(self.text.styleSheet()) self.ao2text.setStyleSheet(self.text.styleSheet())
chatboxPixmap = QtGui.QPixmap(AO2XPpath + 'themes/default/chatmed.png') chatboxPixmap = QtGui.QPixmap(AO2XPpath + 'themes/default/chatmed.png')
chatboxWidth = chatboxPixmap.size().width() * self.viewportScale chatboxWidth = self.viewport.width() #chatboxPixmap.size().width() * self.viewportScale
self.chatboxHeight = chatboxPixmap.size().height() * self.viewportScale self.chatboxHeight = chatboxPixmap.size().height() * self.viewportScale
self.chatbox.setPixmap(chatboxPixmap.scaled(chatboxWidth, self.chatboxHeight, QtCore.Qt.KeepAspectRatioByExpanding, QtCore.Qt.FastTransformation)) self.chatbox.setPixmap(chatboxPixmap.scaled(chatboxWidth, self.chatboxHeight, QtCore.Qt.KeepAspectRatioByExpanding, QtCore.Qt.FastTransformation))
self.chatbox.resize(chatboxWidth, self.chatboxHeight) self.chatbox.resize(chatboxWidth, self.chatboxHeight)
@ -2811,26 +2811,30 @@ class GUI(QtGui.QWidget):
if not exists(AOpath + 'background/' + bg): if not exists(AOpath + 'background/' + bg):
bg = 'default' bg = 'default'
for bgfile in [["side_def", "defenseempty"], for bgfile in [["sideDef", "defenseempty"],
["bench_def", "defensedesk"], ["benchDef", "defensedesk"],
["side_pro", "prosecutorempty"], ["sidePro", "prosecutorempty"],
["bench_pro", "prosecutiondesk"], ["benchPro", "prosecutiondesk"],
["side_wit", "witnessempty"], ["sideWit", "witnessempty"],
["bench_wit", "stand"], ["benchWit", "stand"],
["side_hld", "helperstand"], ["sideHld", "helperstand"],
["bench_hld", "helperdesk"], ["benchHld", "helperdesk"],
["side_hlp", "prohelperstand"], ["sideHlp", "prohelperstand"],
["bench_hlp", "prohelperdesk"], ["benchHlp", "prohelperdesk"],
["side_jud", "judgestand"], ["sideJud", "judgestand"],
["bench_jud", "judgedesk"], ["benchJud", "judgedesk"],
["side_jur", "jurystand"], ["sideJur", "jurystand"],
["bench_jur", "jurydesk"], ["benchJur", "jurydesk"],
["side_sea", "seancestand"], ["sideSea", "seancestand"],
["bench_sea", "seancedesk"]]: ["benchSea", "seancedesk"]]:
bgimg = QtGui.QImage(AOpath + 'background/' + bg + '/' + bgfile[1] + '.png') bgimg = QtGui.QImage(AOpath + 'background/' + bg + '/' + bgfile[1] + '.png')
if not bgimg.isNull(): if not bgimg.isNull():
if bgimg.size().width() != self.viewport.width() or bgimg.size().height() != self.viewport.height(): if bgimg.size().width() != self.viewport.width() or bgimg.size().height() != self.viewport.height():
if "bench" in bgfile[0]:
_scale = self.viewport.height() / float(bgimg.size().height())
setattr(self, bgfile[0], QtGui.QPixmap.fromImage(bgimg.scaled(bgimg.size().width() * _scale, bgimg.size().height() * _scale, QtCore.Qt.KeepAspectRatioByExpanding, QtCore.Qt.FastTransformation)))
else:
setattr(self, bgfile[0], QtGui.QPixmap.fromImage(bgimg.scaled(self.viewport.width(), self.viewport.height(), QtCore.Qt.KeepAspectRatioByExpanding, QtCore.Qt.FastTransformation))) setattr(self, bgfile[0], QtGui.QPixmap.fromImage(bgimg.scaled(self.viewport.width(), self.viewport.height(), QtCore.Qt.KeepAspectRatioByExpanding, QtCore.Qt.FastTransformation)))
else: else:
setattr(self, bgfile[0], QtGui.QPixmap.fromImage(bgimg)) setattr(self, bgfile[0], QtGui.QPixmap.fromImage(bgimg))
@ -3136,32 +3140,37 @@ class GUI(QtGui.QWidget):
self.presentedEvidence.hide() self.presentedEvidence.hide()
if side == 'def': if side == 'def':
self.court.setPixmap(self.side_def) self.court.setPixmap(self.sideDef)
self.bench.setPixmap(self.bench_def) self.bench.setPixmap(self.benchDef)
self.bench.move(0, self.viewport.height() - self.bench_def.size().height()) self.bench.move(0, self.viewport.height() - self.benchDef.size().height())
elif side == 'pro': elif side == 'pro':
self.court.setPixmap(self.side_pro) self.court.setPixmap(self.sidePro)
self.bench.setPixmap(self.bench_pro) self.bench.setPixmap(self.benchPro)
self.bench.move(self.viewport.width() - self.bench_pro.size().width(), self.viewport.height() - self.bench_pro.size().height()) self.bench.move(self.viewport.width() - self.benchPro.size().width(), self.viewport.height() - self.benchPro.size().height())
elif side == 'wit': elif side == 'wit':
self.court.setPixmap(self.side_wit) self.court.setPixmap(self.sideWit)
self.bench.setPixmap(self.bench_wit) self.bench.setPixmap(self.benchWit)
self.bench.move(0, 0) self.bench.move(self.viewport.width() / 2 - self.benchPro.size().width() / 2, 0)
elif side == 'hld': elif side == 'hld':
self.court.setPixmap(self.side_hld) self.court.setPixmap(self.sideHld)
self.bench.setPixmap(self.bench_hld) self.bench.setPixmap(self.benchHld)
elif side == 'hlp': elif side == 'hlp':
self.court.setPixmap(self.side_hlp) self.court.setPixmap(self.sideHlp)
self.bench.setPixmap(self.bench_hlp) self.bench.setPixmap(self.benchHlp)
elif side == 'jud': elif side == 'jud':
self.court.setPixmap(self.side_jud) self.court.setPixmap(self.sideJud)
self.bench.setPixmap(self.bench_jud) self.bench.setPixmap(self.benchJud)
self.bench.move(self.viewport.width() / 2 - self.benchJud.size().width() / 2, 0)
elif side == 'sea': elif side == 'sea':
self.court.setPixmap(self.side_jud if self.side_sea.isNull() else self.side_sea) bench = self.benchJud if self.benchSea.isNull() else self.benchSea
self.bench.setPixmap(self.bench_jud if self.bench_sea.isNull() else self.bench_sea) self.court.setPixmap(self.sideJud if self.sideSea.isNull() else self.sideSea)
self.bench.setPixmap(bench)
self.bench.move(self.viewport.width() / 2 - bench.size().width() / 2, 0)
elif side == 'jur': elif side == 'jur':
self.court.setPixmap(self.side_jud if self.side_jur.isNull() else self.side_jur) bench = self.benchJud if self.benchJur.isNull() else self.benchJur
self.bench.setPixmap(self.bench_jud if self.bench_jur.isNull() else self.bench_jur) self.court.setPixmap(self.sideJud if self.sideJur.isNull() else self.sideJur)
self.bench.setPixmap(bench)
self.bench.move(self.viewport.width() / 2 - bench.size().width() / 2, 0)
def setBench(self, isPreanim = False): def setBench(self, isPreanim = False):
if self.animIsEmpty: if self.animIsEmpty: