← Back to team overview

kicad-developers team mailing list archive

Re: GAL canvas strategy - testers needed!

 

Le 06/09/2018 à 17:57, Tomasz Wlostowski a écrit :
> On 06/09/18 17:37, Jeff Young wrote:
>> Hi Tom,
>>
>> I have committed the completion of the block rotate and mirror fixes (including for LibEdit).
> 
> Hi Jeff,
> 
> Thanks, I played with eeschema for a short while and I really appreciate
> all the work you have done!
> 
> Dear devs (non-devs too ;-) - whoever is interested in testing this
> branch, please compile this and send the feedback here:
> 
> https://git.launchpad.net/~jeyjey/kicad/log/?h=tom-eeschema-gal-aug27
> 
> Cheers,
> Tom

Hi Jeff,

Attached, a small patch that fixes a few minor compil warnings, and
re-enable calls to draw symbols items in wxDC canvas for printing
purpose, making printing working again.

Thanks to you, Jeff and Tomasz, for all your hard work on GAL for Eeschema.


-- 
Jean-Pierre CHARRAS
From dd692c0ce100a7481638d13acbf58f5d3e318912 Mon Sep 17 00:00:00 2001
From: jean-pierre charras <jp.charras@xxxxxxxxxx>
Date: Thu, 6 Sep 2018 17:55:37 +0200
Subject: [PATCH] minor compil warnings and drawings fix

---
 eeschema/class_libentry.cpp | 5 ++---
 eeschema/lib_draw_item.cpp  | 2 +-
 eeschema/sch_painter.cpp    | 2 +-
 pcbnew/pcb_painter.h        | 2 +-
 4 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/eeschema/class_libentry.cpp b/eeschema/class_libentry.cpp
index 0135448ba..373fef81f 100644
--- a/eeschema/class_libentry.cpp
+++ b/eeschema/class_libentry.cpp
@@ -342,7 +342,6 @@ void LIB_PART::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDc, const wxPoint& aOffset,
             int aMulti, int aConvert, const PART_DRAW_OPTIONS& aOpts )
 {
     BASE_SCREEN*   screen = aPanel ? aPanel->GetScreen() : NULL;
-
     GRSetDrawMode( aDc, aOpts.draw_mode );
 
     /* draw background for filled items using background option
@@ -410,7 +409,7 @@ void LIB_PART::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDc, const wxPoint& aOffset,
 
         if( drawItem.Type() == LIB_FIELD_T )
         {
-            LIB_FIELD& field = dynamic_cast<LIB_FIELD&>( drawItem );
+            LIB_FIELD& field = static_cast<LIB_FIELD&>( drawItem );
 
             if( field.IsVisible() && !aOpts.draw_visible_fields )
                 continue;
@@ -421,7 +420,7 @@ void LIB_PART::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDc, const wxPoint& aOffset,
 
         if( drawItem.Type() == LIB_PIN_T )
         {
-            LIB_PIN& pin = dynamic_cast<LIB_PIN&>( drawItem );
+            LIB_PIN& pin = static_cast<LIB_PIN&>( drawItem );
 
             uintptr_t flags = 0;
             if( aOpts.show_pin_text )
diff --git a/eeschema/lib_draw_item.cpp b/eeschema/lib_draw_item.cpp
index 96f164472..806ece92b 100644
--- a/eeschema/lib_draw_item.cpp
+++ b/eeschema/lib_draw_item.cpp
@@ -146,10 +146,10 @@ void LIB_ITEM::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC,
         m_Fill = fillMode;
     }
     else
+    #endif
     {
         drawGraphic( aPanel, aDC, aOffset, aColor, aDrawMode, aData, aTransform );
     }
-    #endif
 }
 
 
diff --git a/eeschema/sch_painter.cpp b/eeschema/sch_painter.cpp
index 233456456..23c443e65 100644
--- a/eeschema/sch_painter.cpp
+++ b/eeschema/sch_painter.cpp
@@ -674,7 +674,7 @@ void SCH_PAINTER::draw( LIB_PIN *aPin, int aLayer, bool isDangling, bool isMovin
     // Four locations around a pin where text can be drawn
     enum { INSIDE = 0, OUTSIDE, ABOVE, BELOW };
     int size[4] = { 0, 0, 0, 0 };
-    int thickness[4];
+    int thickness[4] = { numLineWidth, numLineWidth, numLineWidth, numLineWidth };
     COLOR4D colour[4];
     wxString text[4];
 
diff --git a/pcbnew/pcb_painter.h b/pcbnew/pcb_painter.h
index c1df40a07..48ad17eba 100644
--- a/pcbnew/pcb_painter.h
+++ b/pcbnew/pcb_painter.h
@@ -136,7 +136,7 @@ public:
         m_sketchBoardGfx = aEnabled;
     }
 
-    inline bool IsBackgroundDark() const
+    inline bool IsBackgroundDark() const override
     {
         auto luma = m_layerColors[ LAYER_PCB_BACKGROUND ].GetBrightness();
 
-- 
2.17.0.windows.1


Follow ups

References