--- a/blogic/app.py Thu Jan 04 01:05:39 2007 -0300
+++ b/blogic/app.py Fri Jan 05 16:04:44 2007 -0300
@@ -26,6 +26,7 @@
import os
import cPickle
import gtkspell
+import gtksourceview
from gettext import bindtextdomain, textdomain
from gettext import gettext as _
from categories import CategoryDialog
@@ -89,6 +90,16 @@
return scrollwindow
+ def create_custom_editor(self, str1, str2, int1, int2):
+ """ Create the widget to edit html in colors """
+ self.editor = Editor()
+ self.editor.connect("modified-changed", self.on_modified_changed)
+ self.textview = gtksourceview.SourceView(self.editor)
+ self.textview.set_show_margin(True)
+ self.textview.set_wrap_mode(gtk.WRAP_WORD)
+
+ return self.textview
+
def __init__(self):
self.blogs = {}
self.categories = {}
@@ -112,7 +123,6 @@
self.main_window = self.gxml.get_widget('main_window')
- self.textview = self.gxml.get_widget('textview')
self.statusbar = self.gxml.get_widget('statusbar')
self.keywords = self.gxml.get_widget('keywords')
self.trackback = self.gxml.get_widget('trackback')
@@ -124,11 +134,6 @@
# Categories of Blogs
self.label_categories = self.gxml.get_widget('label_categories')
- # Editor
- self.editor = Editor()
- self.editor.connect("modified-changed", self.on_modified_changed)
- self.textview.set_buffer(self.editor)
-
self.home_dir = os.path.expanduser(HOME_DIR)
if not os.path.isdir(self.home_dir):
os.makedirs(self.home_dir)
--- a/blogic/editor.py Thu Jan 04 01:05:39 2007 -0300
+++ b/blogic/editor.py Fri Jan 05 16:04:44 2007 -0300
@@ -23,10 +23,11 @@
import gtk
import gobject
import gtkspell
+import gtksourceview
from gettext import bindtextdomain, textdomain
from gettext import gettext as _
-class Editor(gtk.TextBuffer):
+class Editor(gtksourceview.SourceBuffer):
__gsignals__ = {
'title-changed' : (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE,
(str,str,)),
@@ -49,7 +50,16 @@
}
def __init__(self, *args):
- gtk.TextBuffer.__init__(self)
+ gtksourceview.SourceBuffer.__init__(self)
+
+ lm = gtksourceview.SourceLanguagesManager()
+ self.set_data('languages-manager', lm)
+
+ language = lm.get_language_from_mime_type('text/html')
+ if language:
+ self.set_highlight(True)
+ self.set_language(language)
+
self._create_tags()
self.connect("modified-changed", self._on_modified_changed)
@@ -172,7 +182,7 @@
buffer = Editor()
buffer.connect('title-changed', title_changed, window)
buffer.connect('body-changed', body_changed, window)
- view = gtk.TextView(buffer)
+ view = gtksourceview.SourceView(buffer)
window.connect('delete-event', gtk.main_quit, None)
--- a/dialogs/blogic.glade Thu Jan 04 01:05:39 2007 -0300
+++ b/dialogs/blogic.glade Fri Jan 05 16:04:44 2007 -0300
@@ -62,63 +62,24 @@
<child>
<widget class="GtkImageMenuItem" id="open_menu">
<property name="visible">True</property>
- <property name="label" translatable="yes">_Open Saved Post...</property>
- <property name="use_underline">True</property>
+ <property name="stock_item">GNOMEUIINFO_MENU_OPEN_ITEM</property>
<signal name="activate" handler="on_open_activate" last_modification_time="Mon, 12 Jul 2004 14:28:30 GMT"/>
-
- <child internal-child="image">
- <widget class="GtkImage" id="image966">
- <property name="visible">True</property>
- <property name="stock">gtk-open</property>
- <property name="icon_size">1</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- </child>
</widget>
</child>
<child>
<widget class="GtkImageMenuItem" id="save_menu">
<property name="visible">True</property>
- <property name="label" translatable="yes">_Save Post</property>
- <property name="use_underline">True</property>
+ <property name="stock_item">GNOMEUIINFO_MENU_SAVE_ITEM</property>
<signal name="activate" handler="on_save_activate" last_modification_time="Mon, 12 Jul 2004 14:28:30 GMT"/>
-
- <child internal-child="image">
- <widget class="GtkImage" id="image967">
- <property name="visible">True</property>
- <property name="stock">gtk-save</property>
- <property name="icon_size">1</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- </child>
</widget>
</child>
<child>
<widget class="GtkImageMenuItem" id="save_as_menu">
<property name="visible">True</property>
- <property name="label" translatable="yes">Save Post _As...</property>
- <property name="use_underline">True</property>
+ <property name="stock_item">GNOMEUIINFO_MENU_SAVE_AS_ITEM</property>
<signal name="activate" handler="on_save_as_activate" last_modification_time="Mon, 12 Jul 2004 14:28:30 GMT"/>
-
- <child internal-child="image">
- <widget class="GtkImage" id="image968">
- <property name="visible">True</property>
- <property name="stock">gtk-save-as</property>
- <property name="icon_size">1</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- </child>
</widget>
</child>
@@ -200,7 +161,7 @@
<signal name="activate" handler="on_insert_image_activate" last_modification_time="Thu, 15 Jun 2006 20:03:36 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image969">
+ <widget class="GtkImage" id="image993">
<property name="visible">True</property>
<property name="pixbuf">stock_insert-image.png</property>
<property name="xalign">0.5</property>
@@ -220,7 +181,7 @@
<signal name="activate" handler="on_insert_link_activate" last_modification_time="Thu, 15 Jun 2006 20:05:59 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image970">
+ <widget class="GtkImage" id="image994">
<property name="visible">True</property>
<property name="pixbuf">stock_link.png</property>
<property name="xalign">0.5</property>
@@ -287,7 +248,7 @@
<signal name="activate" handler="on_accounts_activate" last_modification_time="Fri, 26 Nov 2004 02:56:36 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image971">
+ <widget class="GtkImage" id="image995">
<property name="visible">True</property>
<property name="stock">gnome-stock-multiple-file</property>
<property name="icon_size">1</property>
@@ -330,7 +291,7 @@
<signal name="activate" handler="on_post_activate" last_modification_time="Wed, 04 Jan 2006 15:01:51 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image972">
+ <widget class="GtkImage" id="image996">
<property name="visible">True</property>
<property name="stock">gnome-stock-mail-fwd</property>
<property name="icon_size">1</property>
@@ -351,7 +312,7 @@
<signal name="activate" handler="on_post_draft_activate" last_modification_time="Wed, 04 Jan 2006 15:01:51 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image973">
+ <widget class="GtkImage" id="image997">
<property name="visible">True</property>
<property name="stock">gnome-stock-mail-new</property>
<property name="icon_size">1</property>
@@ -430,7 +391,7 @@
<signal name="activate" handler="on_bold_activate" last_modification_time="Thu, 15 Jun 2006 19:54:53 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image974">
+ <widget class="GtkImage" id="image998">
<property name="visible">True</property>
<property name="stock">gtk-bold</property>
<property name="icon_size">1</property>
@@ -451,7 +412,7 @@
<signal name="activate" handler="on_italic_activate" last_modification_time="Thu, 15 Jun 2006 19:54:53 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image975">
+ <widget class="GtkImage" id="image999">
<property name="visible">True</property>
<property name="stock">gtk-italic</property>
<property name="icon_size">1</property>
@@ -472,7 +433,7 @@
<signal name="activate" handler="on_underline_activate" last_modification_time="Thu, 15 Jun 2006 19:54:53 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image976">
+ <widget class="GtkImage" id="image1000">
<property name="visible">True</property>
<property name="stock">gtk-underline</property>
<property name="icon_size">1</property>
@@ -493,7 +454,7 @@
<signal name="activate" handler="on_strikethrough_activate" last_modification_time="Thu, 15 Jun 2006 20:00:41 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image977">
+ <widget class="GtkImage" id="image1001">
<property name="visible">True</property>
<property name="stock">gtk-strikethrough</property>
<property name="icon_size">1</property>
@@ -520,7 +481,7 @@
<signal name="activate" handler="on_align_left_activate" last_modification_time="Thu, 15 Jun 2006 20:00:41 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image978">
+ <widget class="GtkImage" id="image1002">
<property name="visible">True</property>
<property name="stock">gtk-justify-left</property>
<property name="icon_size">1</property>
@@ -541,7 +502,7 @@
<signal name="activate" handler="on_align_center_activate" last_modification_time="Thu, 15 Jun 2006 20:00:41 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image979">
+ <widget class="GtkImage" id="image1003">
<property name="visible">True</property>
<property name="stock">gtk-justify-center</property>
<property name="icon_size">1</property>
@@ -562,7 +523,7 @@
<signal name="activate" handler="on_align_right_activate" last_modification_time="Thu, 15 Jun 2006 20:00:41 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image980">
+ <widget class="GtkImage" id="image1004">
<property name="visible">True</property>
<property name="stock">gtk-justify-right</property>
<property name="icon_size">1</property>
@@ -589,7 +550,7 @@
<signal name="activate" handler="on_quotation_activate" last_modification_time="Thu, 15 Jun 2006 20:02:41 GMT"/>
<child internal-child="image">
- <widget class="GtkImage" id="image981">
+ <widget class="GtkImage" id="image1005">
<property name="visible">True</property>
<property name="stock">gtk-indent</property>
<property name="icon_size">1</property>
@@ -892,24 +853,6 @@
</child>
<child>
- <widget class="GtkToolButton" id="strikethrough_button">
- <property name="visible">True</property>
- <property name="tooltip" translatable="yes">Strikethrough</property>
- <property name="label" translatable="yes">Strikethrough</property>
- <property name="use_underline">True</property>
- <property name="stock_id">gtk-strikethrough</property>
- <property name="visible_horizontal">True</property>
- <property name="visible_vertical">True</property>
- <property name="is_important">False</property>
- <signal name="clicked" handler="on_strikethrough_activate" last_modification_time="Thu, 15 Jun 2006 20:25:07 GMT"/>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
- </packing>
- </child>
-
- <child>
<widget class="GtkSeparatorToolItem" id="separatortoolitem3">
<property name="visible">True</property>
<property name="draw">True</property>
@@ -1025,23 +968,21 @@
<property name="window_placement">GTK_CORNER_TOP_LEFT</property>
<child>
- <widget class="GtkTextView" id="textview">
+ <widget class="GtkViewport" id="viewport1">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="has_focus">True</property>
- <property name="editable">True</property>
- <property name="overwrite">False</property>
- <property name="accepts_tab">True</property>
- <property name="justification">GTK_JUSTIFY_LEFT</property>
- <property name="wrap_mode">GTK_WRAP_WORD</property>
- <property name="cursor_visible">True</property>
- <property name="pixels_above_lines">0</property>
- <property name="pixels_below_lines">0</property>
- <property name="pixels_inside_wrap">0</property>
- <property name="left_margin">0</property>
- <property name="right_margin">0</property>
- <property name="indent">0</property>
- <property name="text" translatable="yes"></property>
+ <property name="shadow_type">GTK_SHADOW_IN</property>
+
+ <child>
+ <widget class="Custom" id="custom2">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="has_focus">True</property>
+ <property name="creation_function">create_custom_editor</property>
+ <property name="int1">0</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Fri, 05 Jan 2007 13:28:26 GMT</property>
+ </widget>
+ </child>
</widget>
</child>
</widget>
@@ -1085,7 +1026,7 @@
<child>
<widget class="GtkLabel" id="label_categories">
<property name="visible">True</property>
- <property name="label" translatable="yes">...</property>
+ <property name="label" translatable="yes"><i>None</i></property>
<property name="use_underline">False</property>
<property name="use_markup">True</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>