# HG changeset patch # User Simon Heimberg <sim...@besonet.ch> # Date 1250506284 -7200 # Node ID 700915ee13c0f7713bc2978f971e7b117d5d214a # Parent ed176dd517f711c444ef907af765de866523f5c5 gtklib: default spell check language is configurable
The default language is read from tortoisehg.spellcheck. If none is found, the default language (from $LANG) is used. The configuration dialog shows the entry for setting the language only if spell check is possible. diff -r ed176dd517f7 -r 700915ee13c0 hggtk/commit.py --- a/hggtk/commit.py Mon Aug 17 12:51:24 2009 +0200 +++ b/hggtk/commit.py Mon Aug 17 12:51:24 2009 +0200 @@ -292,7 +292,7 @@ self.text.connect('populate-popup', self.msg_add_to_popup) self.text.modify_font(pango.FontDescription(self.fontcomment)) scroller.add(self.text) - gtklib.addspellcheck(self.text) + gtklib.addspellcheck(self.text, self.repo.ui) self.vpaned = gtk.VPaned() self.vpaned.add1(vbox) diff -r ed176dd517f7 -r 700915ee13c0 hggtk/gtklib.py --- a/hggtk/gtklib.py Mon Aug 17 12:51:24 2009 +0200 +++ b/hggtk/gtklib.py Mon Aug 17 12:51:24 2009 +0200 @@ -319,10 +319,13 @@ return fname return None -def addspellcheck(textview): +def addspellcheck(textview, ui=None): + lang = None + if ui: + lang = ui.config('tortoisehg', 'spellcheck', None) try: import gtkspell - gtkspell.Spell(textview) + gtkspell.Spell(textview, lang) except ImportError: pass else: @@ -366,3 +369,11 @@ menu.append(item) item.show() textview.connect('populate-popup', langmenu) + +def hasspellcheck(): + try: + import gtkspell + gtkspell.Spell + return True + except ImportError: + return False diff -r ed176dd517f7 -r 700915ee13c0 hggtk/hgemail.py --- a/hggtk/hgemail.py Mon Aug 17 12:51:24 2009 +0200 +++ b/hggtk/hgemail.py Mon Aug 17 12:51:24 2009 +0200 @@ -178,7 +178,6 @@ self.descview.set_editable(True) self.descview.modify_font(pango.FontDescription('Monospace')) self.descbuffer = self.descview.get_buffer() - gtklib.addspellcheck(self.descview) scrolledwindow = gtk.ScrolledWindow() scrolledwindow.set_shadow_type(gtk.SHADOW_ETCHED_IN) scrolledwindow.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC) @@ -231,6 +230,7 @@ ' the effects of the entire patch series. When emailing' ' a bundle, these fields make up the message subject and body.') ) + gtklib.addspellcheck(self.descview, self.repo.ui) fill_history(history, self._tolist, 'email.to') fill_history(history, self._cclist, 'email.cc') fill_history(history, self._fromlist, 'email.from') diff -r ed176dd517f7 -r 700915ee13c0 hggtk/thgconfig.py --- a/hggtk/thgconfig.py Mon Aug 17 12:51:24 2009 +0200 +++ b/hggtk/thgconfig.py Mon Aug 17 12:51:24 2009 +0200 @@ -555,9 +555,18 @@ self.tooltips = gtk.Tooltips() self.history = settings.Settings('thgconfig') + # add spell ckeck entry if spell check is supported + tortoise_info = _tortoise_info + if gtklib.hasspellcheck(): + tortoise_info += (( + _('Spell Check Language'), 'tortoisehg.spellcheck', [], + _('Default language for spell check. ' + 'System language is used if not specified. ' + 'Examples: en, en_GB, en_US')),) + # create pages for each section of configuration file self.tortoise_frame = self.add_page(notebook, 'TortoiseHG') - self.fill_frame(self.tortoise_frame, _tortoise_info) + self.fill_frame(self.tortoise_frame, tortoise_info) self.commit_frame = self.add_page(notebook, _('Commit')) self.fill_frame(self.commit_frame, _commit_info) ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Tortoisehg-develop mailing list Tortoisehg-develop@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tortoisehg-develop