diff options
-rw-r--r-- | AbiWordActivity.py | 6 | ||||
-rw-r--r-- | toolbar.py | 23 | ||||
-rw-r--r-- | widgets.py | 4 |
3 files changed, 30 insertions, 3 deletions
diff --git a/AbiWordActivity.py b/AbiWordActivity.py index ed1a3f8..8e94205 100644 --- a/AbiWordActivity.py +++ b/AbiWordActivity.py @@ -207,6 +207,12 @@ class AbiWordActivity(activity.Activity): self.abiword_canvas.invoke_cmd( 'com.abisource.abiword.loadbindings.fromURI', keybindings_file, 0, 0) + # set default font + self.abiword_canvas.select_all() + # get_selection return content and length + if self.abiword_canvas.get_selection('text/plain')[1] == 0: + logging.error('Setting default font to Sans in new documents') + self.abiword_canvas.set_font_name('Sans') def get_preview(self): if not hasattr(self.abiword_canvas, 'render_page_to_image'): @@ -37,8 +37,8 @@ from sugar.activity.widgets import UndoButton from sugar.activity.widgets import RedoButton from widgets import AbiButton -from widgets import FontCombo from widgets import FontSizeCombo +from fontcombobox import FontComboBox logger = logging.getLogger('write-activity') @@ -402,8 +402,13 @@ class TextToolbar(gtk.Toolbar): def __init__(self, abiword_canvas): gtk.Toolbar.__init__(self) - font_name = ToolComboBox(FontCombo(abiword_canvas)) - self.insert(font_name, -1) + self.font_name_combo = FontComboBox() + self.font_name_combo.set_font_name('Sans') + self._fonts_changed_id = self.font_name_combo.connect('changed', + self._font_changed_cb, abiword_canvas) + self._abi_handler = abiword_canvas.connect('font-family', + self._font_family_cb) + self.insert(ToolComboBox(self.font_name_combo), -1) font_size = ToolComboBox(FontSizeCombo(abiword_canvas)) self.insert(font_size, -1) @@ -449,6 +454,18 @@ class TextToolbar(gtk.Toolbar): self.show_all() + def _font_changed_cb(self, combobox, abi): + logger.debug('Setting font: %s', combobox.get_font_name()) + try: + abi.handler_block(self._abi_handler) + abi.set_font_name(combobox.get_font_name()) + finally: + abi.handler_unblock(self._abi_handler) + + def _font_family_cb(self, abi, font_family): + logging.debug('Abiword font changed to %s', font_family) + self.font_name_combo.set_font_name(font_family) + def _setToggleButtonState(self, button, b, id): button.handler_block(id) button.set_active(b) @@ -27,6 +27,9 @@ from sugar.datastore import datastore logger = logging.getLogger('write-activity') +""" +# The FontCombo is not used anymore, keep the code here for reference +# for a few versions class FontCombo(ComboBox): @@ -86,6 +89,7 @@ class FontCombo(ComboBox): self.handler_block(self._fonts_changed_id) self.set_active(font_index) self.handler_unblock(self._fonts_changed_id) +""" class FontSizeCombo(ComboBox): |