Thanks James!<br>Trying again...<br><br>From dd88a9833d7bf0a4de3dd64bf306c713db84711e Mon Sep 17 00:00:00 2001<br>From: Gonzalo Odiard <gonzalo@aronax.(none)><br>Date: Mon, 17 May 2010 20:43:05 -0300<br>Subject: [PATCH] fix #1015<br>
<br>---<br> icons/icon-fill.svg | 11 +++--<br> icons/icon-stroke.svg | 30 ++++----------<br> toolbox.py | 109 +++++++++----------------------------------------<br> 3 files changed, 34 insertions(+), 116 deletions(-)<br>
<br>diff --git a/icons/icon-fill.svg b/icons/icon-fill.svg<br>index bf1925a..d424356 100644<br>--- a/icons/icon-fill.svg<br>+++ b/icons/icon-fill.svg<br>@@ -1,5 +1,7 @@<br>-<?xml version="1.0" encoding="UTF-8" standalone="no"?><br>
-<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) --><br>+<?xml version="1.0" ?><!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' '<a href="http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd</a>' [<br>
+ <!ENTITY stroke_color "#010101"><br>+ <!ENTITY fill_color "#FFFFFF"><br>+]><br> <svg<br> xmlns:dc="<a href="http://purl.org/dc/elements/1.1/">http://purl.org/dc/elements/1.1/</a>"<br>
xmlns:cc="<a href="http://web.resource.org/cc/">http://web.resource.org/cc/</a>"<br>@@ -48,9 +50,10 @@<br> inkscape:current-layer="svg2" /><br> <br> <path<br>- style="fill:#ffffff;display:inline"<br>
+ style="fill:&fill_color;;display:inline;stroke-opacity:1" stroke-width="3"<br> d="M 48.897307,33.594988 C 48.897307,44.525692 24.353188,48.898307 15.889502,42.513082 C 7.1635122,35.929969 8.1442163,21.098901 17.129718,14.87467 C 22.64423,11.054784 34.272782,10.165018 36.496363,19.452618 C 39.041402,30.082908 48.897307,22.664284 48.897307,33.594988 z "<br>
id="circle5"<br> sodipodi:nodetypes="csssc" /><br> <br>-</svg><br>\ No newline at end of file<br>+</svg><br>+<br>diff --git a/icons/icon-stroke.svg b/icons/icon-stroke.svg<br>index 71545c8..cb6f5b4 100644<br>
--- a/icons/icon-stroke.svg<br>+++ b/icons/icon-stroke.svg<br>@@ -1,5 +1,7 @@<br>-<?xml version="1.0" encoding="UTF-8" standalone="no"?><br>-<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) --><br>
+<?xml version="1.0" ?><!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' '<a href="http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd</a>' [<br>
+ <!ENTITY stroke_color "#010101"><br>+ <!ENTITY fill_color "#FFFFFF"><br>+]><br> <svg<br> xmlns:dc="<a href="http://purl.org/dc/elements/1.1/">http://purl.org/dc/elements/1.1/</a>"<br>
xmlns:cc="<a href="http://web.resource.org/cc/">http://web.resource.org/cc/</a>"<br>@@ -28,29 +30,13 @@<br> rdf:resource="<a href="http://purl.org/dc/dcmitype/StillImage">http://purl.org/dc/dcmitype/StillImage</a>" /></cc:Work></rdf:RDF></metadata><defs<br>
id="defs8"><br> <br>-</defs><sodipodi:namedview<br>- inkscape:window-height="941"<br>- inkscape:window-width="1269"<br>- inkscape:pageshadow="2"<br>- inkscape:pageopacity="0.0"<br>
- guidetolerance="10.0"<br>- gridtolerance="10.0"<br>- objecttolerance="10.0"<br>- borderopacity="1.0"<br>- bordercolor="#666666"<br>- pagecolor="#ffffff"<br>
- id="base"<br>- inkscape:zoom="6.8909091"<br>- inkscape:cx="27.5"<br>- inkscape:cy="15.890501"<br>- inkscape:window-x="0"<br>- inkscape:window-y="27"<br>
- inkscape:current-layer="svg2" /><br>+</defs><br> <br> <path<br>- style="fill:none;display:inline;stroke:#ffffff;stroke-opacity:1"<br>+ style="fill:none;display:inline;stroke:&fill_color;;stroke-opacity:1" stroke-width="3"<br>
d="M 48.897307,33.594988 C 48.897307,44.525692 24.353188,48.898307 15.889502,42.513082 C 7.1635122,35.929969 8.1442163,21.098901 17.129718,14.87467 C 22.64423,11.054784 34.272782,10.165018 36.496363,19.452618 C 39.041402,30.082908 48.897307,22.664284 48.897307,33.594988 z "<br>
id="circle5"<br> sodipodi:nodetypes="csssc" /><br> <br>-</svg><br>\ No newline at end of file<br>+</svg><br>+<br>diff --git a/toolbox.py b/toolbox.py<br>index 9bed17b..3962b90 100644<br>
--- a/toolbox.py<br>+++ b/toolbox.py<br>@@ -72,6 +72,7 @@ from sugar.graphics.toggletoolbutton import ToggleToolButton<br> from sugar.graphics.combobox import ComboBox<br> from sugar.graphics.palette import Palette<br> from sugar.graphics.menuitem import MenuItem<br>
+from sugar.graphics.colorbutton import ColorToolButton<br> from sugar.graphics.objectchooser import ObjectChooser<br> <br> ##Create toolbars for the activity<br>@@ -84,27 +85,27 @@ class Toolbox(ActivityToolbox):<br> <br>
self._edit_toolbar = DrawEditToolbar(activity)<br> self.add_toolbar(_('Edit'), self._edit_toolbar)<br>- self._edit_toolbar.show()<br>+ self._edit_toolbar.show_all()<br> <br> self._tools_toolbar = ToolsToolbar(activity)<br>
self.add_toolbar(_('Tools'), self._tools_toolbar)<br>- self._tools_toolbar.show()<br>+ self._tools_toolbar.show_all()<br> <br> self._shapes_toolbar = ShapesToolbar(activity)<br> self.add_toolbar(_('Shapes'), self._shapes_toolbar)<br>
- self._shapes_toolbar.show()<br>+ self._shapes_toolbar.show_all()<br> <br> self._text_toolbar = TextToolbar(activity)<br> self.add_toolbar(_('Text'), self._text_toolbar)<br>- self._text_toolbar.show() <br>
+ self._text_toolbar.show_all() <br> <br> self._image_toolbar = ImageToolbar(activity)<br> self.add_toolbar(_('Image'), self._image_toolbar)<br>- self._image_toolbar.show()<br>+ self._image_toolbar.show_all()<br>
<br> self._effects_toolbar = EffectsToolbar(activity)<br> self.add_toolbar(_('Effects'), self._effects_toolbar)<br>- self._effects_toolbar.show()<br>+ self._effects_toolbar.show_all()<br>
<br> #self._view_toolbar = ViewToolbar(activity)<br> #self.add_toolbar(_('View'), self._view_toolbar)<br>@@ -129,11 +130,9 @@ class DrawEditToolbar(EditToolbar):<br> separator = gtk.SeparatorToolItem()<br>
separator.set_draw(True)<br> self.insert(separator, -1)<br>- separator.show()<br> <br> self._clear_all = ToolButton('edit-clear')<br> self.insert(self._clear_all, -1)<br>
- self._clear_all.show()<br> self._clear_all.set_tooltip(_('Clear'))<br> <br> self.undo.connect('clicked', self._undo_cb)<br>@@ -285,27 +284,19 @@ class ToolsToolbar(gtk.Toolbar):<br>
<br> self._activity = activity<br> <br>- self._icon_stroke = ToolButton('icon-stroke')<br>- self.insert(self._icon_stroke, -1)<br>- self._icon_stroke.show()<br>- self._icon_stroke.set_tooltip(_('Tool Color'))<br>
- <br> self._stroke_color = ButtonStrokeColor(activity)<br>- self._stroke_color.show()<br>-# self._stroke_color.set_tooltip(_('Stroke Color'))<br>+ self._stroke_color.set_icon_name('icon-stroke')<br>
+ self._stroke_color.set_title(_('Stroke Color'))<br> item = gtk.ToolItem()<br> item.add(self._stroke_color)<br> self.insert(item, -1)<br>- item.show()<br> <br> separator = gtk.SeparatorToolItem()<br>
separator.set_draw(True)<br> self.insert(separator, -1)<br>- separator.show()<br> <br> self._tool_pencil = ToolButton('tool-pencil')<br> self.insert(self._tool_pencil, -1)<br>
- self._tool_pencil.show()<br> self._tool_pencil.set_tooltip(_('Pencil'))<br> try:<br> self._configure_palette(self._tool_pencil, self._TOOL_PENCIL)<br>@@ -314,7 +305,6 @@ class ToolsToolbar(gtk.Toolbar):<br>
<br> self._tool_brush = ToolButton('tool-brush')<br> self.insert(self._tool_brush, -1)<br>- self._tool_brush.show()<br> self._tool_brush.set_tooltip(_('Brush'))<br> try:<br>
self._configure_palette(self._tool_brush, self._TOOL_BRUSH)<br>@@ -323,7 +313,6 @@ class ToolsToolbar(gtk.Toolbar):<br> <br> self._tool_eraser = ToolButton('tool-eraser')<br> self.insert(self._tool_eraser, -1)<br>
- self._tool_eraser.show()<br> self._tool_eraser.set_tooltip(_('Eraser'))<br> try:<br> self._configure_palette(self._tool_eraser, self._TOOL_ERASER)<br>@@ -332,7 +321,6 @@ class ToolsToolbar(gtk.Toolbar):<br>
<br> self._tool_polygon = ToolButton('tool-polygon')<br> self.insert(self._tool_polygon, -1)<br>- self._tool_polygon.show()<br> self._tool_polygon.set_tooltip(_('Polygon'))<br>
try:<br> self._configure_palette(self._tool_polygon, self._TOOL_POLYGON)<br>@@ -341,13 +329,11 @@ class ToolsToolbar(gtk.Toolbar):<br> <br> self._tool_bucket = ToolButton('tool-bucket')<br>
self.insert(self._tool_bucket, -1)<br>- self._tool_bucket.show()<br> self._tool_bucket.set_tooltip(_('Bucket'))<br> <br> separator = gtk.SeparatorToolItem()<br> separator.set_draw(True)<br>
self.insert(separator, -1)<br>- separator.show()<br> <br> """<br> <br>@@ -370,11 +356,8 @@ class ToolsToolbar(gtk.Toolbar):<br> <br> self._tool_marquee_rectangular = ToolButton('tool-marquee-rectangular')<br>
self.insert(self._tool_marquee_rectangular, -1)<br>- self._tool_marquee_rectangular.show()<br> self._tool_marquee_rectangular.set_tooltip(_('Rectangular Marquee'))<br>- <br>- self._icon_stroke.connect('clicked', self._on_icon_stroke_clicked)<br>
- <br>+ <br> # New connect method<br> # Using dictionnaries to control tool's properties<br> self._tool_polygon.connect('clicked', self.set_tool, self._TOOL_POLYGON)<br>
@@ -544,8 +527,6 @@ class ToolsToolbar(gtk.Toolbar):<br> <br> #setting cursor: Moved to Area<br> <br>- def _on_icon_stroke_clicked(self, widget, data=None):<br>- self._stroke_color.clicked()<br>
<br> def _on_fill_checkbutton_toggled(self, checkbutton, button=None, tool=None):<br> logging.debug('Checkbutton is Active: %s', checkbutton.get_active() )<br>@@ -584,10 +565,10 @@ class ToolsToolbar(gtk.Toolbar):<br>
<br> <br> ##Class to manage the Fill Color of a Button<br>-class ButtonFillColor(gtk.ColorButton):<br>+class ButtonFillColor(ColorToolButton):<br> ##The Constructor<br> def __init__(self, activity):<br>- gtk.ColorButton.__init__(self)<br>
+ ColorToolButton.__init__(self)<br> self._activity = activity<br> <br> self.connect('color-set', self._color_button_cb)<br>@@ -605,10 +586,10 @@ class ButtonFillColor(gtk.ColorButton):<br>
self._activity.area.set_fill_color(new_color)<br> <br> ##Class to manage the Stroke Color of a Button<br>-class ButtonStrokeColor(gtk.ColorButton):<br>+class ButtonStrokeColor(ColorToolButton):<br> ##The Constructor<br>
def __init__(self, activity):<br>- gtk.ColorButton.__init__(self)<br>+ ColorToolButton.__init__(self)<br> self._activity = activity<br> <br> self.connect('color-set', self._color_button_cb)<br>
@@ -743,39 +724,26 @@ class ShapesToolbar(gtk.Toolbar):<br> <br> self._activity = activity<br> <br>- self._icon_fill = ToolButton('icon-fill')<br>- self.insert(self._icon_fill, -1)<br>
- self._icon_fill.show()<br>- self._icon_fill.set_tooltip(_('Fill Color'))<br>- <br> self._fill_color = ButtonFillColor(activity)<br>- self._fill_color.show()<br>+ self._fill_color.set_icon_name('icon-fill')<br>
+ self._fill_color.set_title(_('Fill Color'))<br> item = gtk.ToolItem()<br> item.add(self._fill_color)<br> self.insert(item, -1)<br>- item.show()<br>- <br>- self._icon_stroke = ToolButton('icon-stroke')<br>
- self.insert(self._icon_stroke, -1)<br>- self._icon_stroke.show()<br>- self._icon_stroke.set_tooltip(_('Stroke Color'))<br>- <br> <br> self._stroke_color = ButtonStrokeColor(activity)<br>
- self._stroke_color.show()<br>+ self._stroke_color.set_icon_name('icon-stroke')<br>+ self._stroke_color.set_title(_('Stroke Color'))<br> item = gtk.ToolItem()<br> item.add(self._stroke_color)<br>
self.insert(item, -1)<br>- item.show()<br> <br> separator = gtk.SeparatorToolItem()<br> separator.set_draw(True)<br> self.insert(separator, -1)<br>- separator.show()<br>
<br> self._shape_ellipse = ToolButton('tool-shape-ellipse')<br> self.insert(self._shape_ellipse, -1)<br>- self._shape_ellipse.show()<br> self._shape_ellipse.set_tooltip(_('Ellipse'))<br>
try:<br> self._configure_palette_shape_ellipse()<br>@@ -784,7 +752,6 @@ class ShapesToolbar(gtk.Toolbar):<br> <br> self._shape_rectangle = ToolButton('tool-shape-rectangle')<br> self.insert(self._shape_rectangle, -1)<br>
- self._shape_rectangle.show()<br> self._shape_rectangle.set_tooltip(_('Rectangle'))<br> try:<br> self._configure_palette_shape_rectangle()<br>@@ -793,7 +760,6 @@ class ShapesToolbar(gtk.Toolbar):<br>
<br> self._shape_line = ToolButton('tool-shape-line')<br> self.insert(self._shape_line, -1)<br>- self._shape_line.show()<br> self._shape_line.set_tooltip(_('Line'))<br>
try:<br> self._configure_palette_shape_line()<br>@@ -802,7 +768,6 @@ class ShapesToolbar(gtk.Toolbar):<br> <br> self._shape_polygon = ToolButton('tool-shape-polygon')<br> self.insert(self._shape_polygon, -1)<br>
- self._shape_polygon.show()<br> self._shape_polygon.set_tooltip(_('Polygon'))<br> try:<br> self._configure_palette_shape_polygon()<br>@@ -820,7 +785,6 @@ class ShapesToolbar(gtk.Toolbar):<br>
<br> self._shape_heart = ToolButton('tool-shape-heart')<br> self.insert(self._shape_heart, -1)<br>- self._shape_heart.show()<br> self._shape_heart.set_tooltip(_('Heart'))<br>
try:<br> self._configure_palette_shape_heart()<br>@@ -830,7 +794,6 @@ class ShapesToolbar(gtk.Toolbar):<br> <br> self._shape_parallelogram = ToolButton('tool-shape-parallelogram')<br> self.insert(self._shape_parallelogram, -1)<br>
- self._shape_parallelogram.show()<br> self._shape_parallelogram.set_tooltip(_('Parallelogram'))<br> try:<br> self._configure_palette_shape_parallelogram()<br>@@ -839,7 +802,6 @@ class ShapesToolbar(gtk.Toolbar):<br>
<br> self._shape_arrow = ToolButton('tool-shape-arrow')<br> self.insert(self._shape_arrow, -1)<br>- self._shape_arrow.show()<br> self._shape_arrow.set_tooltip(_('Arrow'))<br>
try:<br> self._configure_palette_shape_arrow()<br>@@ -848,7 +810,6 @@ class ShapesToolbar(gtk.Toolbar):<br> <br> self._shape_star = ToolButton('tool-shape-star')<br> self.insert(self._shape_star, -1)<br>
- self._shape_star.show()<br> self._shape_star.set_tooltip(_('Star'))<br> try:<br> self._configure_palette_shape_star()<br>@@ -857,7 +818,6 @@ class ShapesToolbar(gtk.Toolbar):<br>
<br> self._shape_trapezoid = ToolButton('tool-shape-trapezoid')<br> self.insert(self._shape_trapezoid, -1)<br>- self._shape_trapezoid.show()<br> self._shape_trapezoid.set_tooltip(_('Trapezoid'))<br>
try:<br> self._configure_palette_shape_trapezoid()<br>@@ -866,7 +826,6 @@ class ShapesToolbar(gtk.Toolbar):<br> <br> self._shape_triangle = ToolButton('tool-shape-triangle')<br> self.insert(self._shape_triangle, -1)<br>
- self._shape_triangle.show()<br> self._shape_triangle.set_tooltip(_('Triangle'))<br> try:<br> self._configure_palette_shape_triangle()<br>@@ -874,9 +833,6 @@ class ShapesToolbar(gtk.Toolbar):<br>
logging.debug('Could not create palette for Shape Triangle')<br> <br> <br>- self._icon_stroke.connect('clicked', self._on_icon_stroke_clicked)<br>- self._icon_fill.connect('clicked', self._on_icon_fill_clicked)<br>
-<br> self._shape_arrow.connect('clicked', self.set_tool, self._SHAPE_ARROW)<br> self._shape_ellipse.connect('clicked', self.set_tool, self._SHAPE_ELLIPSE)<br> #self._shape_freeform.connect('clicked', self.set_tool, self._SHAPE_FREEFORM)<br>
@@ -902,15 +858,7 @@ class ShapesToolbar(gtk.Toolbar):<br> self._activity.area.set_tool(tool)<br> <br> #setting cursor: moved to Area<br>- <br>- <br>- def _on_icon_stroke_clicked(self, widget, data=None):<br>
- self._stroke_color.clicked()<br>- <br>- def _on_icon_fill_clicked(self, widget, data=None):<br>- self._fill_color.clicked()<br>- <br>- <br>+ <br> def _on_vertices_value_changed(self, spinbutton, tool):<br>
#self._activity.area.polygon_sides = spinbutton.get_value_as_int()<br> tool['vertices'] = spinbutton.get_value_as_int()<br>@@ -1100,21 +1048,17 @@ class TextToolbar(gtk.Toolbar):<br> <br> self._text = ToolButton('text')<br>
self.insert(self._text, -1)<br>- self._text.show()<br> self._text.set_tooltip(_('Type'))<br> self._text.connect('clicked', self.set_tool, self._ACTION_TEXT)<br> <br>
self._text_color = ButtonFillColor(activity)<br>- self._text_color.show()<br> item = gtk.ToolItem()<br> item.add(self._text_color)<br> self.insert(item, -1)<br>- item.show()<br>
<br> separator = gtk.SeparatorToolItem()<br> separator.set_draw(True)<br> self.insert(separator, -1)<br>- separator.show()<br> <br> <br> """<br>
@@ -1171,32 +1115,27 @@ class ImageToolbar(gtk.Toolbar):<br> <br> self._object_insert = ToolButton('object-insert')<br> self.insert(self._object_insert, -1)<br>- self._object_insert.show()<br>
self._object_insert.set_tooltip(_('Insert Image'))<br> <br> separator = gtk.SeparatorToolItem()<br> separator.set_draw(True)<br> self.insert(separator, -1)<br>- separator.show()<br>
<br> self.width_percent = 1.<br> self.height_percent = 1.<br> <br> self._object_rotate_left = ToolButton('object-rotate-left')<br> self.insert(self._object_rotate_left, -1)<br>
- self._object_rotate_left.show()<br> self._object_rotate_left.set_tooltip(_('Rotate Left'))<br> self._object_rotate_left.set_sensitive( self._activity.area.is_selected() )<br> <br> self._object_rotate_right = ToolButton('object-rotate-right')<br>
self.insert(self._object_rotate_right, -1)<br>- self._object_rotate_right.show()<br> self._object_rotate_right.set_tooltip(_('Rotate Right'))<br> self._object_rotate_right.set_sensitive( self._activity.area.is_selected() )<br>
<br> self._object_height = ToolButton('object-height')<br> self.insert(self._object_height, -1)<br>- self._object_height.show()<br> self._object_height.set_tooltip(_('Height')) <br>
<br> height_spinButton = self._create_spinButton(self._object_height, 'object-height', activity)<br>@@ -1204,11 +1143,9 @@ class ImageToolbar(gtk.Toolbar):<br> item = gtk.ToolItem()<br> item.add(height_spinButton)<br>
self.insert(item, -1)<br>- item.show()<br> <br> self._object_width = ToolButton('object-width')<br> self.insert(self._object_width, -1)<br>- self._object_width.show()<br> self._object_width.set_tooltip(_('Width'))<br>
<br> width_spinButton = self._create_spinButton(self._object_width, 'object-width', activity)<br>@@ -1216,7 +1153,6 @@ class ImageToolbar(gtk.Toolbar):<br> item = gtk.ToolItem()<br> item.add(width_spinButton)<br>
self.insert(item, -1)<br>- item.show()<br> <br> self._object_insert.connect('clicked', self.insertImage, activity)<br> self._object_rotate_left.connect('clicked', self.rotate_left, activity)<br>
@@ -1350,18 +1286,15 @@ class EffectsToolbar(gtk.Toolbar):<br> <br> self._effect_grayscale = ToolButton('effect-grayscale')<br> self.insert(self._effect_grayscale, -1)<br>- self._effect_grayscale.show()<br>
self._effect_grayscale.set_tooltip(_('Grayscale'))<br> <br> self._effect_rainbow = ToolButton('effect-rainbow')<br> self.insert(self._effect_rainbow, -1)<br>- self._effect_rainbow.show()<br>
self._effect_rainbow.set_tooltip(_('Rainbow'))<br> self._configure_palette(self._effect_rainbow, self._EFFECT_RAINBOW)<br> <br> separator = gtk.SeparatorToolItem()<br> self.insert(separator, -1)<br>
- separator.show()<br> <br> """<br> #FIXME: Must be implemented<br>@@ -1504,20 +1437,16 @@ class ViewToolbar(gtk.Toolbar):<br> self._view_percent.set_active(0)<br> self._view_percent.connect('changed', self._combo_changed_cb)<br>
self.insert(tool_item, -1)<br>- tool_item.show()<br> <br> separator = gtk.SeparatorToolItem()<br> self.insert(separator, -1)<br>- separator.show()<br> <br> self._zoom_plus = ToolButton('zoom-plus')<br>
self.insert(self._zoom_plus, -1)<br>- self._zoom_plus.show()<br> self._zoom_plus.set_tooltip(_('ZOOM +'))<br> <br> self._zoom_minus = ToolButton('zoom-minus')<br> self.insert(self._zoom_minus, -1)<br>
- self._zoom_minus.show()<br> self._zoom_minus.set_tooltip(_('ZOOM -'))<br> <br> '''<br>-- <br>1.6.6.1<br><br><br><br><div class="gmail_quote">On Mon, May 17, 2010 at 7:43 PM, James Cameron <span dir="ltr"><<a href="mailto:quozl@laptop.org">quozl@laptop.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im">On Mon, May 17, 2010 at 11:32:13AM -0300, Gonzalo Odiard wrote:<br>
> Sorry, i have did "diff -ur" comparing directories. I must use git to<br>
> do the patch?<br>
<br>
</div>There are several ways to do the patch, using git makes it easiest for<br>
those other people who must read your patch. You don't have to make it<br>
easy, but it helps. It is like writing neatly.<br>
<br>
Here's how to make a patch using git ...<br>
<br>
$ git clone git://<a href="http://git.sugarlabs.org/paint/mainline.git" target="_blank">git.sugarlabs.org/paint/mainline.git</a> paint.git<br>
$ cd paint.git<br>
$ ... change the files you want to change ...<br>
$ git commit -a -m 'fix #1015'<br>
$ git format-patch -1<br>
0001-fix-1015.patch<br>
<br>
Then include that patch file in your e-mail, or use the file as the<br>
basis for an e-mail. Avoid "attach".<br>
<font color="#888888"><br>
--<br>
</font><div><div></div><div class="h5">James Cameron<br>
<a href="http://quozl.linux.org.au/" target="_blank">http://quozl.linux.org.au/</a><br>
</div></div></blockquote></div><br><br>