Hi, On 5/26/10, Jared Casper <jaredcasper@xxxxxxxxx> wrote: > So since the only way to contribute to PCB seems to be to continually > spam the list with patches, here's three patches to fix bugs in the > bug tracker. Comments welcome. Here are two more patches dealing with issues similar to 0001-Fix-pr2976245-refdes-labels-in-new-layout-can-t-be-m.patch 0001 makes PCB reinserts the text into the tree when the length may be changed; 0002 aligns the default symbols on solder side (t.pcb is a test case). > If any of the devs have any > suggestions for how I can better contribute to PCB, I'd be glad to > hear it. I second. Cheers, Ineiev
From b7af7773d5edb9110c96f538e9b050c582d4bd56 Mon Sep 17 00:00:00 2001
From: Ineiev <ineiev@xxxxxxxxxxxxxxxx>
Date: Sat, 7 Mar 2009 08:12:21 +0300
Subject: [PATCH] misfix a bug of "edit text" action
re-insert the text object into the rtree when it's size may change
HOW TO REPRODUCE
Put a short text ("o"); change it's name (<N> in default GTK shortcuts)
to something much longer ("longlonglonglong text");
(1) zoom in at the end of the text; the text disappears
(2) click at the end of the text; the text is not selected/deselected
---
src/change.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/src/change.c b/src/change.c
index 4d42bc3..70bec00 100644
--- a/src/change.c
+++ b/src/change.c
@@ -1066,10 +1066,12 @@ ChangeTextName (LayerTypePtr Layer, TextTypePtr Text)
return (NULL);
EraseText (Layer, Text);
RestoreToPolygon (PCB->Data, TEXT_TYPE, Layer, Text);
+ r_delete_entry (Layer->text_tree, (BoxTypePtr) Text);
Text->TextString = NewName;
/* calculate size of the bounding box */
SetTextBoundingBox (&PCB->Font, Text);
+ r_insert_entry (Layer->text_tree, (BoxTypePtr) Text, 0);
ClearFromPolygon (PCB->Data, TEXT_TYPE, Layer, Text);
DrawText (Layer, Text, 0);
return (old);
--
1.6.0.4
From 90ea11d2c6aef91906a123d2da13dd29dc2c9ab2 Mon Sep 17 00:00:00 2001
From: Ineiev <ineiev@xxxxxxxxxxxxxxxx>
Date: Sat, 28 Feb 2009 11:41:20 +0300
Subject: [PATCH] misfix default symbol on solder
the symbol was shifted
HOW TO REPRODUCE
Remove a symbol from the font embedded in a PCB file;
put a text using undefined symbol in the solder layer;
rotate it
In the unpatched version the default symbol is shifted relatively
to the text; in the patched it is aligned correctly
---
src/draw.c | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/src/draw.c b/src/draw.c
index d06813d..98d2e05 100644
--- a/src/draw.c
+++ b/src/draw.c
@@ -1594,6 +1594,14 @@ DrawTextLowLevel (TextTypePtr Text, int min_line_width)
RotateBoxLowLevel (&defaultsymbol, 0, 0, Text->Direction);
+ if (TEST_FLAG (ONSOLDERFLAG, Text))
+ {
+ defaultsymbol.X1 = SWAP_SIGN_X (defaultsymbol.X1);
+ defaultsymbol.Y1 = SWAP_SIGN_Y (defaultsymbol.Y1);
+ defaultsymbol.X2 = SWAP_SIGN_X (defaultsymbol.X2);
+ defaultsymbol.Y2 = SWAP_SIGN_Y (defaultsymbol.Y2);
+ }
+
/* add offset and draw box */
defaultsymbol.X1 += Text->X;
defaultsymbol.Y1 += Text->Y;
--
1.6.0.4
Attachment:
t.pcb
Description: Binary data
_______________________________________________ geda-user mailing list geda-user@xxxxxxxxxxxxxx http://www.seul.org/cgi-bin/mailman/listinfo/geda-user