diff --git a/AO2XPbase/ao2xp_themes/default/theme.py b/AO2XPbase/ao2xp_themes/default/theme.py index cd46ecc..cd8abdd 100644 --- a/AO2XPbase/ao2xp_themes/default/theme.py +++ b/AO2XPbase/ao2xp_themes/default/theme.py @@ -1,5 +1,34 @@ self.gamewindow.setFixedSize(820, 730) +self.text.resize(VIEWPORT_W, 96) +self.text.move(6, 20) +self.text.setStyleSheet('color: white;') + +self.ao2text.setGeometry(16, 32, VIEWPORT_W - 32, 112) +self.ao2text.setStyleSheet("background-color: rgba(0, 0, 0, 0); color: white;") + +self.name.setStyleSheet('color: white') +self.name.move(16, -1) +self.name.resize(248, 32) + +self.icchatinput.setGeometry(0, VIEWPORT_H, VIEWPORT_W, 23) +self.emotedropdown.setGeometry(164 - 28, 344 + 66 + 4, 72, 20) +self.colordropdown.setGeometry(self.emotedropdown.x(), 376 + 64, 72, 20) +self.posdropdown.setGeometry(self.emotedropdown.x() + self.emotedropdown.size().width() + 4, self.emotedropdown.y(), 72, 20) + +self.flipbutton.move(self.posdropdown.x() + self.posdropdown.width() + 4, self.colordropdown.y() - 5) +self.sfxbutton.move(self.flipbutton.x(), self.flipbutton.y() + 14) +self.nointerruptbtn.move(self.flipbutton.x() + 140, self.flipbutton.y()) +self.additivebtn.move(self.nointerruptbtn.x(), self.sfxbutton.y()) + +self.deskbtn.move(self.flipbutton.x()+70, self.flipbutton.y()) +self.effectdropdown.setGeometry(self.posdropdown.x(), self.colordropdown.y(), 72, 20) +self.callmodbtn.setGeometry(10, 376 + 62, 60, 23) +self.settingsbtn.setGeometry(self.callmodbtn.x()+self.callmodbtn.size().width(), 376 + 62, self.callmodbtn.width(), 23) +self.changechar.setGeometry(10, 344 + 66 + 4, self.callmodbtn.size().width() + self.settingsbtn.size().width(), 23) + +self.shownameedit.setGeometry(self.posdropdown.x() + self.posdropdown.width() + 4, self.posdropdown.y(), 168 + 56, 20) + self.ooclog.setGeometry(814 - 288, 0, 288, 248) self.oocnameinput.resize(self.oocnameinput.sizeHint().width() - 32, self.oocnameinput.sizeHint().height()) self.oocnameinput.move(814 - 288, 248) @@ -16,21 +45,25 @@ self.evidencedropdown.setGeometry(8, 8, 192, 20) self.evidencedesc.setGeometry(8, 108, 714 - 304 - 22, 112) self.evidenceimage.setGeometry(326, 8, 70, 70) self.evidenceadd.move(8, 32) -self.evidenceedit.move(8, 56) -self.evidencedelete.move(8, 80) +self.evidenceadd.resize(60, 23) +self.evidenceedit.move(3 + self.evidenceadd.x() + self.evidenceadd.size().width(), 32) +self.evidencedelete.move(3 + self.evidenceedit.x() + self.evidenceedit.size().width(), 32) +self.evidenceload.move(3 + self.evidencedelete.x() + self.evidencedelete.size().width(), 32) +self.evidencesave.move(3 + self.evidenceload.x() + self.evidenceload.size().width(), 32) self.evidencepresent.move((714 - 304 - 22) / 2 - self.evidencepresent.button_off.size().width() / 2, self.evidencedesc.y() - self.evidencepresent.button_off.size().height()) self.msgqueueList.setGeometry(8, 8, 714 - 304 - 22, 180) self.playerList.setGeometry(8, 8, 714 - 304 - 22, 180) self.removeQueue.resize(self.removeQueue.sizeHint()) self.removeQueue.move(8, self.msgqueueList.size().height() + 16) +self.clearQueue.move(self.removeQueue.x() + self.removeQueue.size().width(), self.removeQueue.y()) self.playerPair.resize(self.playerPair.sizeHint()) -self.playerPair.move(8, self.playerList.size().height() + 16) self.playerKick.resize(self.playerKick.sizeHint()) -self.playerKick.move(16 + self.playerPair.size().width(), self.playerList.size().height() + 16) self.playerBan.resize(self.playerBan.sizeHint()) -self.playerBan.move(24 + self.playerPair.size().width() + self.playerKick.size().width(), self.playerList.size().height() + 16) +self.playerPair.move(8, self.playerList.size().height() + 16) +self.playerKick.move(8 + self.playerPair.x() + self.playerPair.size().width(), self.playerList.size().height() + 16) +self.playerBan.move(8 + self.playerKick.x() + self.playerKick.size().width(), self.playerList.size().height() + 16) self.notmutedlabel.move(8, 8) self.unmutedlist.setGeometry(8, 24, 160, 192) @@ -72,4 +105,7 @@ self.sliderlabel1.move(self.musicslider.x() + self.musicslider.size().width()+8, self.sliderlabel2.move(self.soundslider.x() + self.soundslider.size().width()+8, self.soundslider.y()) self.sliderlabel3.move(self.blipslider.x() + self.blipslider.size().width()+8, self.blipslider.y()) -self.pinglabel.setGeometry(self.sliderlabel3.x() + 32, self.sliderlabel3.y(), 96, 14) \ No newline at end of file +self.pinglabel.setGeometry(self.sliderlabel3.x() + 32, self.sliderlabel3.y(), 96, 14) + +self.defensebar.moveBar(265 + 164, 164 + 304) +self.prosecutionbar.moveBar(265 + 164, 178 + 304) \ No newline at end of file diff --git a/gameview.py b/gameview.py index 87a2654..93daf8a 100644 --- a/gameview.py +++ b/gameview.py @@ -759,9 +759,6 @@ class gui(QtGui.QWidget): self.text = QtGui.QLabel(self.chatbox) self.text.setWordWrap(True) - self.text.resize(VIEWPORT_W, 96) - self.text.move(6, 20) - self.text.setStyleSheet('color: white;') self.text.setAlignment(QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop) self.ao2text = QtGui.QTextEdit(self.chatbox) @@ -769,15 +766,10 @@ class gui(QtGui.QWidget): self.ao2text.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff) self.ao2text.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff) self.ao2text.setReadOnly(True) - self.ao2text.setGeometry(16, 32, VIEWPORT_W - 32, 112) self.ao2text.setTextInteractionFlags(QtCore.Qt.NoTextInteraction) - self.ao2text.setStyleSheet("background-color: rgba(0, 0, 0, 0); color: white;") self.ao2text.setFont(ao2text_font) self.name = QtGui.QLabel(self.chatbox) - self.name.setStyleSheet('color: white') - self.name.move(16, -1) - self.name.resize(248, 32) self.name.setFont(name_font) self.wtceview = WTCE_View(self) @@ -845,9 +837,20 @@ class gui(QtGui.QWidget): self.evidenceedit = QtGui.QPushButton(self.gametab_evidence) self.evidenceedit.setText('Edit') self.evidenceedit.clicked.connect(self.onEditEvidence) + self.evidenceedit.resize(self.evidenceadd.size()) self.evidencedelete = QtGui.QPushButton(self.gametab_evidence) self.evidencedelete.setText('Delete') self.evidencedelete.clicked.connect(self.onDeleteEvidence) + self.evidencedelete.resize(self.evidenceadd.size()) + self.evidenceload = QtGui.QPushButton(self.gametab_evidence) + self.evidenceload.setText('Load') + self.evidenceload.clicked.connect(self.onLoadEvidence) + self.evidenceload.resize(self.evidenceadd.size()) + self.evidencesave = QtGui.QPushButton(self.gametab_evidence) + self.evidencesave.setText('Save') + self.evidencesave.clicked.connect(self.onSaveEvidence) + self.evidencesave.resize(self.evidenceadd.size()) + self.evidencepresent = PresentButton(self, self.gametab_evidence) self.msgqueueList = QtGui.QListWidget(self.gametab_msgqueue) @@ -855,6 +858,9 @@ class gui(QtGui.QWidget): self.removeQueue = QtGui.QPushButton(self.gametab_msgqueue) self.removeQueue.setText('Delete') self.removeQueue.clicked.connect(self.onClicked_removeQueue) + self.clearQueue = QtGui.QPushButton(self.gametab_msgqueue) + self.clearQueue.setText('Clear') + self.clearQueue.clicked.connect(self.onClicked_clearQueue) self.playerList = QtGui.QListWidget(self.gametab_players) self.playerList.itemClicked.connect(self.onClicked_playerList) @@ -942,71 +948,56 @@ class gui(QtGui.QWidget): self.gametabs.addTab(self.gametab_msgqueue, 'Queue') self.icchatinput = QtGui.QLineEdit(self) - self.icchatinput.setGeometry(0, VIEWPORT_H, VIEWPORT_W, 23) self.icchatinput.returnPressed.connect(self.onICreturn) self.icchatinput.setPlaceholderText('Game chat') self.emotedropdown = QtGui.QComboBox(self) - self.emotedropdown.setGeometry(164 - 28, 344 + 66 + 4, 72, 20) self.emotedropdown.currentIndexChanged.connect(partial(self.changeEmote, True)) self.colordropdown = QtGui.QComboBox(self) - self.colordropdown.setGeometry(self.emotedropdown.x(), 376 + 64, 72, 20) self.colordropdown.currentIndexChanged.connect(self.setChatColor) self.posdropdown = QtGui.QComboBox(self) self.posdropdown.addItems(["def", "pro", "wit", "hld", "hlp", "jud"]) - self.posdropdown.setGeometry(self.emotedropdown.x() + self.emotedropdown.size().width() + 4, self.emotedropdown.y(), 72, 20) self.posdropdown.currentIndexChanged.connect(self.setPosition) self.flipbutton = QtGui.QCheckBox(self) self.flipbutton.stateChanged.connect(self.changeFlipCheck) self.flipbutton.setText('Flip') self.flipbutton.resize(self.flipbutton.sizeHint()) - self.flipbutton.move(self.posdropdown.x() + self.posdropdown.width() + 4, self.colordropdown.y() - 5) self.sfxbutton = QtGui.QCheckBox(self) self.sfxbutton.setChecked(True) self.sfxbutton.stateChanged.connect(self.changeSfxCheck) self.sfxbutton.setText('Play pre-animation') - self.sfxbutton.resize(self.sfxbutton.sizeHint()) - self.sfxbutton.move(self.flipbutton.x(), self.flipbutton.y() + 14) self.nointerruptbtn = QtGui.QCheckBox(self) self.nointerruptbtn.setChecked(False) self.nointerruptbtn.setText('No Interrupt') - self.nointerruptbtn.resize(self.nointerruptbtn.sizeHint()) - self.nointerruptbtn.move(self.flipbutton.x() + 140, self.flipbutton.y()) # AO 2.8 self.additivebtn = QtGui.QCheckBox(self) self.additivebtn.setChecked(False) self.additivebtn.setText('Additive') self.additivebtn.resize(self.additivebtn.sizeHint()) - self.additivebtn.move(self.nointerruptbtn.x(), self.sfxbutton.y()) self.additivebtn.clicked.connect(self.onAdditiveCheck) self.deskbtn = QtGui.QCheckBox(self) self.deskbtn.setChecked(True) self.deskbtn.setText('Desk') self.deskbtn.resize(self.nointerruptbtn.sizeHint()) - self.deskbtn.move(self.flipbutton.x()+70, self.flipbutton.y()) self.effectdropdown = QtGui.QComboBox(self) - self.effectdropdown.setGeometry(self.posdropdown.x(), self.colordropdown.y(), 72, 20) self.callmodbtn = QtGui.QPushButton(self) self.callmodbtn.setText('Call mod') - self.callmodbtn.setGeometry(10, 376 + 62, 60, 23) self.callmodbtn.clicked.connect(self.onClick_callMod) self.settingsbtn = QtGui.QPushButton("Settings", self) - self.settingsbtn.setGeometry(self.callmodbtn.x()+self.callmodbtn.size().width(), 376 + 62, self.callmodbtn.width(), 23) self.settingsbtn.clicked.connect(self.gamewindow.showSettings) self.changechar = QtGui.QPushButton(self) self.changechar.setText('Switch character') - self.changechar.setGeometry(10, 344 + 66 + 4, self.callmodbtn.size().width() + self.settingsbtn.size().width(), 23) self.changechar.clicked.connect(self.onClick_changeChar) spacing = 1 @@ -1043,8 +1034,6 @@ class gui(QtGui.QWidget): self.objectsnd = 0 self.defensebar = buttons.PenaltyBars(self, 1) self.prosecutionbar = buttons.PenaltyBars(self, 2) - self.defensebar.moveBar(265 + 164, 164 + 304) - self.prosecutionbar.moveBar(265 + 164, 178 + 304) self.defensebar.minusClicked.connect(self.penaltyBarMinus) self.defensebar.plusClicked.connect(self.penaltyBarPlus) self.prosecutionbar.minusClicked.connect(self.penaltyBarMinus) @@ -1071,7 +1060,6 @@ class gui(QtGui.QWidget): self.showname = "" self.shownameedit = QtGui.QLineEdit(self) self.shownameedit.textChanged.connect(self.onChangeShowname) - self.shownameedit.setGeometry(self.posdropdown.x() + self.posdropdown.width() + 4, self.posdropdown.y(), 168 + 56, 20) self.shownameedit.setPlaceholderText("Showname") self.musicslider = QtGui.QSlider(QtCore.Qt.Horizontal, self) @@ -1354,7 +1342,12 @@ class gui(QtGui.QWidget): self.tcp.send("RT#judgeruling#" +str(variant)+ "#%") def onPVPacket(self, charname): - exec open(AO2XPpath+"ao2xp_themes/"+get_option("General", "theme", "default")+"/theme.py") + theme = get_option("General", "theme", "default") + try: + exec open(AO2XPpath+"ao2xp_themes/"+theme+"/theme.py") + except Exception as e: + QtGui.QMessageBox.critical(None, "Unable to load theme", "There was a problem loading the current theme \"%s\":\n\n%s." % (theme, e)) + os._exit(-2) if not self.swapping: self.loadCharacter(charname) @@ -1489,6 +1482,12 @@ class gui(QtGui.QWidget): self.tcp.send('DE#' + str(self.selectedevi) + '#%') else: self.tcp.send('DE#0#%') + + def onSaveEvidence(self): + pass + + def onLoadEvidence(self): + pass def onClick_callMod(self): if "modcall_reason" in self.features: @@ -1534,6 +1533,9 @@ class gui(QtGui.QWidget): return QtGui.QMessageBox.warning(self, "Can't remove", 'There are no messages in the message queue.\nEnter a message on the Game chat to add one.') self.msgqueueList.takeItem(self.selectedmsg) del self.msgqueue[self.selectedmsg] + + def onClicked_clearQueue(self): + print "Not implemented" def onClicked_playerPair(self): if not self.selectedplayer == -1: