We should read back the language dictionary setting from the spell class before updating status bar
This commit is contained in:
@@ -315,7 +315,7 @@ class GuiDocEditor(QTextEdit):
|
|||||||
|
|
||||||
def setDictionaries(self):
|
def setDictionaries(self):
|
||||||
self.theDict.setLanguage(self.mainConf.spellLanguage, self.theProject.projDict)
|
self.theDict.setLanguage(self.mainConf.spellLanguage, self.theProject.projDict)
|
||||||
self.theParent.statusBar.setLanguage(self.mainConf.spellLanguage)
|
self.theParent.statusBar.setLanguage(self.theDict.spellLanguage)
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def setSpellCheck(self, theMode):
|
def setSpellCheck(self, theMode):
|
||||||
|
|||||||
+4
-1
@@ -116,7 +116,10 @@ class GuiMainStatus(QStatusBar):
|
|||||||
return
|
return
|
||||||
|
|
||||||
def setLanguage(self, theLanguage):
|
def setLanguage(self, theLanguage):
|
||||||
self.langBox.setText(NWSpellCheck.expandLanguage(theLanguage))
|
if theLanguage is None:
|
||||||
|
self.langBox.setText("None")
|
||||||
|
else:
|
||||||
|
self.langBox.setText(NWSpellCheck.expandLanguage(theLanguage))
|
||||||
return
|
return
|
||||||
|
|
||||||
def setProjectStatus(self, isChanged):
|
def setProjectStatus(self, isChanged):
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ class NWSpellCheck():
|
|||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.mainConf = nw.CONFIG
|
self.mainConf = nw.CONFIG
|
||||||
self.projectDict = None
|
self.projectDict = None
|
||||||
|
self.spellLanguage = None
|
||||||
return
|
return
|
||||||
|
|
||||||
def setLanguage(self, theLang, projectDict=None):
|
def setLanguage(self, theLang, projectDict=None):
|
||||||
@@ -45,11 +46,10 @@ class NWSpellCheck():
|
|||||||
newWord = newWord.strip()
|
newWord = newWord.strip()
|
||||||
self.PROJW.append(newWord)
|
self.PROJW.append(newWord)
|
||||||
try:
|
try:
|
||||||
with open(self.projectDict,mode="w+",encoding="utf-8") as outFile:
|
with open(self.projectDict,mode="a+",encoding="utf-8") as outFile:
|
||||||
for pWord in self.PROJW:
|
outFile.write("%s\n" % newWord)
|
||||||
outFile.write("%s\n" % pWord)
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error("Failed to write to project word list at %s" % str(self.projectDict))
|
logger.error("Failed to add word to project word list %s" % str(self.projectDict))
|
||||||
logger.error(str(e))
|
logger.error(str(e))
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|||||||
@@ -32,10 +32,12 @@ class NWSpellEnchant(NWSpellCheck):
|
|||||||
"""
|
"""
|
||||||
try:
|
try:
|
||||||
self.theDict = enchant.Dict(theLang)
|
self.theDict = enchant.Dict(theLang)
|
||||||
|
self.spellLanguage = theLang
|
||||||
logger.debug("Enchant spell checking for language %s loaded" % theLang)
|
logger.debug("Enchant spell checking for language %s loaded" % theLang)
|
||||||
except:
|
except:
|
||||||
logger.error("Failed to load enchant spell checking for language %s" % theLang)
|
logger.error("Failed to load enchant spell checking for language %s" % theLang)
|
||||||
self.theDict = NWSpellEnchantDummy()
|
self.theDict = NWSpellEnchantDummy()
|
||||||
|
self.spellLanguage = None
|
||||||
|
|
||||||
self._readProjectDictionary(projectDict)
|
self._readProjectDictionary(projectDict)
|
||||||
for pWord in self.PROJW:
|
for pWord in self.PROJW:
|
||||||
|
|||||||
@@ -41,9 +41,11 @@ class NWSpellSimple(NWSpellCheck):
|
|||||||
self.WORDS.append(theLine.strip().lower())
|
self.WORDS.append(theLine.strip().lower())
|
||||||
logger.debug("Spell check word list for language %s loaded" % theLang)
|
logger.debug("Spell check word list for language %s loaded" % theLang)
|
||||||
logger.debug("Word list contains %d words" % len(self.WORDS))
|
logger.debug("Word list contains %d words" % len(self.WORDS))
|
||||||
|
self.spellLanguage = theLang
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error("Failed to load spell check word list for language %s" % theLang)
|
logger.error("Failed to load spell check word list for language %s" % theLang)
|
||||||
logger.error(str(e))
|
logger.error(str(e))
|
||||||
|
self.spellLanguage = None
|
||||||
|
|
||||||
self._readProjectDictionary(projectDict)
|
self._readProjectDictionary(projectDict)
|
||||||
for pWord in self.PROJW:
|
for pWord in self.PROJW:
|
||||||
@@ -104,7 +106,7 @@ class NWSpellSimple(NWSpellCheck):
|
|||||||
if theBits[1] != ".dict":
|
if theBits[1] != ".dict":
|
||||||
continue
|
continue
|
||||||
|
|
||||||
spName = "%s [nternal]" % self.expandLanguage(theBits[0])
|
spName = "%s [Internal]" % self.expandLanguage(theBits[0])
|
||||||
retList.append((theBits[0], spName))
|
retList.append((theBits[0], spName))
|
||||||
|
|
||||||
return retList
|
return retList
|
||||||
|
|||||||
Reference in New Issue
Block a user