I18N Code Work done.

This commit is contained in:
Christopher T. Johnson
2024-02-14 10:02:27 -05:00
parent 633d5e48b1
commit 793d758377
24 changed files with 8712 additions and 206 deletions

View File

@@ -36,10 +36,10 @@ from lib.preferences import Preferences
from lib.session import SessionDialog
from lib.sounds import SoundOff
from main import query_error
from ui.ReadDialog import Ui_Dialog
from ui.ReadDialog import Ui_ReadDialog
class ReadDialog(QDialog, Ui_Dialog):
class ReadDialog(QDialog, Ui_ReadDialog):
playSound = pyqtSignal(str)
playAlert = pyqtSignal()
block: int
@@ -112,9 +112,9 @@ class ReadDialog(QDialog, Ui_Dialog):
@pyqtSlot()
def timerAction(self) -> None:
if self.session.isActive(): # We are stopping
self.sessionBtn.setText("Start")
self.sessionBtn.setText(self.tr("Start"))
else:
self.sessionBtn.setText("Stop")
self.sessionBtn.setText(self.tr("Stop"))
self.session.timerAction()
self.newParagraph.emit(self.section_id, self.block)
return
@@ -153,7 +153,6 @@ class ReadDialog(QDialog, Ui_Dialog):
@pyqtSlot()
def playAction(self) -> None:
print("playAction")
idx = self.stackedWidget.currentIndex()
if idx == 0: # Reading
# find word
@@ -188,11 +187,11 @@ class ReadDialog(QDialog, Ui_Dialog):
self.phonetics = None
if not self.phonetics:
return
print("Searching for audio file")
print(self.tr("Searching for audio file"))
for entry in self.phonetics:
if len(entry["audio"]) > 0:
# self.parent().playAlert.emit()
print(f"playing {entry['audio']}")
print(self.tr("playing ") + f"{entry['audio']}")
self.playSound.emit(entry["audio"])
return
@@ -279,16 +278,23 @@ class ReadDialog(QDialog, Ui_Dialog):
return
def defToHtml(self, word: str, definition: Dict[str, Any]) -> str:
SPEAKER = "\U0001F508"
html = f'<h1 class="def-word">{word}</h1>' + "\n"
try:
words: List[str] = []
for phonetic in definition["phonetics"]:
# XXX - Some phonetics have text and audio but audio is empty,
# some have just text and some have just audio
if phonetic["text"] in words:
continue
words.append(phonetic["text"])
html += f'<p class="phonetic">{phonetic["text"]}</p>' + "\n"
html += f'<p class="phonetic">{phonetic["text"]}'
if "audio" in phonetic:
html += f'<a href="{phonetic["audio"]}">{SPEAKER}</a>'
html += "</p>\n"
except Exception:
pass
print(html + "\n")
html += '<ul class="outer">' + "\n"
for meaning in definition["meanings"]:
html += f"<li>{meaning['partOfSpeech']}"
@@ -391,17 +397,17 @@ class ReadDialog(QDialog, Ui_Dialog):
# Event handlers
#
def keyReleaseEvent(self, event: Optional[QKeyEvent]) -> None:
self.nextBtn.setText("Next Para")
self.prevBtn.setText("Prev Para")
self.defineBtn.setText("Show Def")
self.nextBtn.setText(self.tr("Next Paragraph"))
self.prevBtn.setText(self.tr("Previous Paragraph"))
self.defineBtn.setText(self.tr("Definition"))
self.paragraphs = True
super().keyReleaseEvent(event)
return
def keyPressEvent(self, event: Optional[QKeyEvent]) -> None:
self.nextBtn.setText("Next Sect")
self.prevBtn.setText("Prev Sect")
self.defineBtn.setText("Add Def")
self.nextBtn.setText(self.tr("Next Section"))
self.prevBtn.setText(self.tr("Previous Secttion"))
self.defineBtn.setText(self.tr("Definition"))
self.paragraphs = False
super().keyPressEvent(event)
return
@@ -601,11 +607,11 @@ class ReadDialog(QDialog, Ui_Dialog):
def returnAction(self) -> None:
self.returnBtn.setVisible(False)
if self.paragraphs:
self.nextBtn.setText("Next Para")
self.prevBtn.setText("Prev Para")
self.nextBtn.setText(self.tr("Next Paragraph"))
self.prevBtn.setText(self.tr("Previous Paragraph"))
else:
self.nextBtn.setText("Next Sect")
self.prevBtn.setText("Prev Sect")
self.nextBtn.setText(self.tr("Next Section"))
self.prevBtn.setText(self.tr("Previous Section"))
self.stackedWidget.setCurrentIndex(0)
self.update()
return
@@ -613,8 +619,8 @@ class ReadDialog(QDialog, Ui_Dialog):
def showDefinition(self) -> None:
idx = self.stackedWidget.currentIndex()
self.returnBtn.setVisible(True)
self.nextBtn.setText("Next Def")
self.prevBtn.setText("Prev Def")
self.nextBtn.setText(self.tr("Next Definition"))
self.prevBtn.setText(self.tr("Previous Definition"))
if not self.display_definition(idx):
return
self.stackedWidget.setCurrentIndex(1)