diff --git a/common/block_commande.cpp b/common/block_commande.cpp
index 2ecb289d5f..59a6beca79 100644
--- a/common/block_commande.cpp
+++ b/common/block_commande.cpp
@@ -117,7 +117,7 @@ void BLOCK_SELECTOR::SetMessageBlock( EDA_DRAW_FRAME* frame )
void BLOCK_SELECTOR::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDrawMode, int aColor )
+ GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor )
{
int w = GetWidth();
diff --git a/common/class_colors_design_settings.cpp b/common/class_colors_design_settings.cpp
index e809d0d88e..8901544c58 100644
--- a/common/class_colors_design_settings.cpp
+++ b/common/class_colors_design_settings.cpp
@@ -15,7 +15,7 @@
/* Initial colors values: optimized for Pcbnew, but are also Ok for Eeschema
* these values are superseded by config reading
*/
-static const int default_layer_color[LAYERSCOLORSBUFFERSIZE] =
+static const EDA_COLOR_T default_layer_color[LAYERSCOLORSBUFFERSIZE] =
{
GREEN, BLUE, LIGHTGRAY, BROWN,
RED, MAGENTA, LIGHTGRAY, MAGENTA,
@@ -34,7 +34,7 @@ static const int default_layer_color[LAYERSCOLORSBUFFERSIZE] =
DARKGRAY
};
-static const int default_items_color[LAYERSCOLORSBUFFERSIZE] =
+static const EDA_COLOR_T default_items_color[LAYERSCOLORSBUFFERSIZE] =
{
LIGHTGRAY, // unused
CYAN, // VIA_MICROVIA_VISIBLE
@@ -78,13 +78,13 @@ COLORS_DESIGN_SETTINGS:: COLORS_DESIGN_SETTINGS()
* @return the color for aLayer which is one of the layer indices given
* in pcbstruct.h or in schematic
*/
-int COLORS_DESIGN_SETTINGS::GetLayerColor( int aLayer )
+EDA_COLOR_T COLORS_DESIGN_SETTINGS::GetLayerColor( int aLayer ) const
{
if( (unsigned) aLayer < DIM(m_LayersColors) )
{
return m_LayersColors[aLayer];
}
- return -1;
+ return UNSPECIFIED_COLOR;
}
@@ -93,7 +93,7 @@ int COLORS_DESIGN_SETTINGS::GetLayerColor( int aLayer )
* sets the color for aLayer which is one of the layer indices given
* in pcbstruct.h or in schematic
*/
-void COLORS_DESIGN_SETTINGS::SetLayerColor( int aLayer, int aColor )
+void COLORS_DESIGN_SETTINGS::SetLayerColor( int aLayer, EDA_COLOR_T aColor )
{
if( (unsigned) aLayer < DIM(m_LayersColors) )
{
@@ -107,13 +107,13 @@ void COLORS_DESIGN_SETTINGS::SetLayerColor( int aLayer, int aColor )
* @return the color for an item which is one of the item indices given
* in pcbstruct.h, enum PCB_VISIBLE or in schematic
*/
-int COLORS_DESIGN_SETTINGS::GetItemColor( int aItemIdx )
+EDA_COLOR_T COLORS_DESIGN_SETTINGS::GetItemColor( int aItemIdx )
{
if( (unsigned) aItemIdx < DIM(m_ItemsColors) )
{
return m_ItemsColors[aItemIdx];
}
- return -1;
+ return UNSPECIFIED_COLOR;
}
@@ -122,7 +122,7 @@ int COLORS_DESIGN_SETTINGS::GetItemColor( int aItemIdx )
* sets the color for an item which is one of the item indices given
* in pcbstruct.h, enum PCB_VISIBLE or in schematic
*/
-void COLORS_DESIGN_SETTINGS::SetItemColor( int aItemIdx, int aColor )
+void COLORS_DESIGN_SETTINGS::SetItemColor( int aItemIdx, EDA_COLOR_T aColor )
{
if( (unsigned) aItemIdx < DIM(m_ItemsColors) )
{
@@ -136,7 +136,7 @@ void COLORS_DESIGN_SETTINGS::SetItemColor( int aItemIdx, int aColor )
* sets alls colors to aColor
* Usefull to create a monochrome color selection for printing purpose
*/
-void COLORS_DESIGN_SETTINGS::SetAllColorsAs( int aColor)
+void COLORS_DESIGN_SETTINGS::SetAllColorsAs( EDA_COLOR_T aColor )
{
for( unsigned ii = 0; ii < DIM(m_LayersColors); ii++ )
m_LayersColors[ii] = aColor;
diff --git a/common/common.cpp b/common/common.cpp
index 7f0e4cc6e1..2b4183744c 100644
--- a/common/common.cpp
+++ b/common/common.cpp
@@ -57,13 +57,13 @@ wxString g_Prj_Config_LocalFilename;
EDA_UNITS_T g_UserUnit;
-int g_GhostColor;
+EDA_COLOR_T g_GhostColor;
#if defined(KICAD_GOST)
-static bool s_gost = true;
+static const bool s_gost = true;
#else
-static bool s_gost = false;
+static const bool s_gost = false;
#endif
bool IsGOST()
diff --git a/common/drawframe.cpp b/common/drawframe.cpp
index a06d3e6bcd..b00ca4f3cb 100644
--- a/common/drawframe.cpp
+++ b/common/drawframe.cpp
@@ -475,7 +475,7 @@ void EDA_DRAW_FRAME::OnGrid( int grid_type )
}
-wxPoint EDA_DRAW_FRAME::GetGridPosition( const wxPoint& aPosition )
+wxPoint EDA_DRAW_FRAME::GetGridPosition( const wxPoint& aPosition ) const
{
wxPoint pos = aPosition;
@@ -553,7 +553,7 @@ void EDA_DRAW_FRAME::LoadSettings()
int itmp;
if( cfg->Read( m_FrameName + GridColorEntryKeyword, &itmp ) )
- SetGridColor( itmp );
+ SetGridColor( ColorFromInt( itmp ) );
cfg->Read( m_FrameName + LastGridSizeId, &m_LastGridSizeId, 0L );
}
@@ -575,7 +575,7 @@ void EDA_DRAW_FRAME::SaveSettings()
void EDA_DRAW_FRAME::AppendMsgPanel( const wxString& textUpper,
const wxString& textLower,
- int color, int pad )
+ EDA_COLOR_T color, int pad )
{
if( m_messagePanel == NULL )
return;
@@ -593,12 +593,12 @@ void EDA_DRAW_FRAME::ClearMsgPanel( void )
}
-wxString EDA_DRAW_FRAME::CoordinateToString( int aValue, bool aConvertToMils )
+wxString EDA_DRAW_FRAME::CoordinateToString( int aValue, bool aConvertToMils ) const
{
return ::CoordinateToString( aValue, aConvertToMils );
}
-wxString EDA_DRAW_FRAME::LengthDoubleToString( double aValue, bool aConvertToMils )
+wxString EDA_DRAW_FRAME::LengthDoubleToString( double aValue, bool aConvertToMils ) const
{
return ::LengthDoubleToString( aValue, aConvertToMils );
}
diff --git a/common/drawpanel.cpp b/common/drawpanel.cpp
index 16c2f7b6f6..f65ae44873 100644
--- a/common/drawpanel.cpp
+++ b/common/drawpanel.cpp
@@ -153,7 +153,7 @@ BASE_SCREEN* EDA_DRAW_PANEL::GetScreen()
}
-void EDA_DRAW_PANEL::DrawCrossHair( wxDC* aDC, int aColor )
+void EDA_DRAW_PANEL::DrawCrossHair( wxDC* aDC, EDA_COLOR_T aColor )
{
if( m_cursorLevel != 0 || aDC == NULL || !m_showCrossHair )
return;
@@ -560,7 +560,7 @@ void EDA_DRAW_PANEL::ReDraw( wxDC* DC, bool erasebg )
void EDA_DRAW_PANEL::DrawBackGround( wxDC* DC )
{
- int axis_color = BLUE;
+ EDA_COLOR_T axis_color = BLUE;
GRSetDrawMode( DC, GR_COPY );
@@ -721,7 +721,7 @@ void EDA_DRAW_PANEL::DrawAuxiliaryAxis( wxDC* aDC, GR_DRAWMODE aDrawMode )
if( origin == wxPoint( 0, 0 ) )
return;
- int color = DARKRED;
+ EDA_COLOR_T color = DARKRED;
wxSize pageSize = GetParent()->GetPageSizeIU();
GRSetDrawMode( aDC, aDrawMode );
@@ -752,7 +752,7 @@ void EDA_DRAW_PANEL::DrawGridAxis( wxDC* aDC, GR_DRAWMODE aDrawMode )
|| ( screen->m_GridOrigin.x == 0 && screen->m_GridOrigin.y == 0 ) )
return;
- int color = GetParent()->GetGridColor();
+ EDA_COLOR_T color = GetParent()->GetGridColor();
wxSize pageSize = GetParent()->GetPageSizeIU();
GRSetDrawMode( aDC, aDrawMode );
diff --git a/common/eda_text.cpp b/common/eda_text.cpp
index 3b301bc608..35bda7bed7 100644
--- a/common/eda_text.cpp
+++ b/common/eda_text.cpp
@@ -237,7 +237,7 @@ void EDA_TEXT::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
aColor,
aDrawMode,
aFillMode,
- i ? UNSPECIFIED : aAnchor_color,
+ i ? UNSPECIFIED_COLOR : aAnchor_color,
txt,
pos );
pos += offset;
@@ -273,7 +273,7 @@ void EDA_TEXT::DrawOneLineOfText( EDA_DRAW_PANEL* aPanel, wxDC* aDC,
GRSetDrawMode( aDC, aDrawMode );
/* Draw text anchor, if allowed */
- if( aAnchor_color != UNSPECIFIED )
+ if( aAnchor_color != UNSPECIFIED_COLOR )
{
int anchor_size = aDC->DeviceToLogicalXRel( 2 );
diff --git a/common/edaappl.cpp b/common/edaappl.cpp
index d870a08ac7..2359b83c3e 100644
--- a/common/edaappl.cpp
+++ b/common/edaappl.cpp
@@ -655,9 +655,11 @@ void EDA_APP::GetSettings( bool aReopenLastUsedDirectory )
}
}
- m_settings->Read( wxT( "BgColor" ), &g_DrawBgColor );
+ int draw_bg_color;
+ m_settings->Read( wxT( "BgColor" ), &draw_bg_color );
+ g_DrawBgColor = ColorFromInt( draw_bg_color );
- /* Load per-user search paths from settings file */
+ // Load per-user search paths from settings file
wxString upath;
int i = 1;
diff --git a/common/gr_basic.cpp b/common/gr_basic.cpp
index 9c6f368b5f..bfe4b3952e 100644
--- a/common/gr_basic.cpp
+++ b/common/gr_basic.cpp
@@ -14,10 +14,7 @@
#include
#include
-
-#ifndef FILLED
-#define FILLED 1
-#endif
+static const bool FILLED = true;
/* Important Note:
* These drawing functions clip draw item before send these items to wxDC draw
@@ -50,7 +47,7 @@
GR_DRAWMODE g_XorMode = GR_NXOR;
// Background color of the design frame
-int g_DrawBgColor = WHITE;
+EDA_COLOR_T g_DrawBgColor = WHITE;
#define USE_CLIP_FILLED_POLYGONS
@@ -64,7 +61,7 @@ static void ClipAndDrawFilledPoly( EDA_RECT * ClipBox, wxDC * DC, wxPoint Points
* from user units to screen units(pixels coordinates)
*/
static void GRSRect( EDA_RECT* aClipBox, wxDC* aDC, int x1, int y1,
- int x2, int y2, int aWidth, int aColor,
+ int x2, int y2, int aWidth, EDA_COLOR_T aColor,
wxPenStyle aStyle = wxPENSTYLE_SOLID );
/**/
@@ -77,11 +74,11 @@ static int xcliplo = 0,
xcliphi = 2000,
ycliphi = 2000;
-static int s_DC_lastcolor = -1;
+static EDA_COLOR_T s_DC_lastcolor = UNSPECIFIED_COLOR;
static int s_DC_lastwidth = -1;
static int s_DC_lastpenstyle = -1;
-static int s_DC_lastbrushcolor = -1;
-static int s_DC_lastbrushfill = -1;
+static EDA_COLOR_T s_DC_lastbrushcolor = UNSPECIFIED_COLOR;
+static bool s_DC_lastbrushfill = false;
static wxDC* s_DC_lastDC = NULL;
@@ -318,7 +315,7 @@ static bool clipLine( EDA_RECT* aClipBox, int& x1, int& y1, int& x2, int& y2 )
static void WinClipAndDrawLine( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int Color, int width = 1 )
+ EDA_COLOR_T Color, int width = 1 )
{
GRLastMoveToX = x2;
GRLastMoveToY = y2;
@@ -342,8 +339,8 @@ static void WinClipAndDrawLine( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int
void GRResetPenAndBrush( wxDC* DC )
{
GRSetBrush( DC, BLACK ); // Force no fill
- s_DC_lastbrushcolor = -1;
- s_DC_lastcolor = -1;
+ s_DC_lastbrushcolor = UNSPECIFIED_COLOR;
+ s_DC_lastcolor = UNSPECIFIED_COLOR;
s_DC_lastDC = NULL;
}
@@ -352,7 +349,7 @@ void GRResetPenAndBrush( wxDC* DC )
* Function GRSetColorPen
* sets a pen style, width, color, and alpha into the given device context.
*/
-void GRSetColorPen( wxDC* DC, int Color, int width, wxPenStyle style )
+void GRSetColorPen( wxDC* DC, EDA_COLOR_T Color, int width, wxPenStyle style )
{
if( width < 0 )
width = 0;
@@ -391,7 +388,7 @@ void GRSetColorPen( wxDC* DC, int Color, int width, wxPenStyle style )
}
-void GRSetBrush( wxDC* DC, int Color, int fill )
+void GRSetBrush( wxDC* DC, EDA_COLOR_T Color, bool fill )
{
if( s_ForceBlackPen )
Color = BLACK;
@@ -489,7 +486,7 @@ void GRSetDrawMode( wxDC* DC, GR_DRAWMODE draw_mode )
}
-void GRPutPixel( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int Color )
+void GRPutPixel( EDA_RECT* ClipBox, wxDC* DC, int x, int y, EDA_COLOR_T Color )
{
if( ClipBox && !ClipBox->Contains( x, y ) )
return;
@@ -509,7 +506,7 @@ void GRLine( EDA_RECT* ClipBox,
int x2,
int y2,
int width,
- int Color )
+ EDA_COLOR_T Color )
{
WinClipAndDrawLine( ClipBox, DC, x1, y1, x2, y2, Color, width );
GRLastMoveToX = x2;
@@ -517,18 +514,18 @@ void GRLine( EDA_RECT* ClipBox,
}
-void GRLine( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aStart, wxPoint aEnd, int aWidth, int aColor )
+void GRLine( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aStart, wxPoint aEnd, int aWidth, EDA_COLOR_T aColor )
{
GRLine( aClipBox, aDC, aStart.x, aStart.y, aEnd.x, aEnd.y, aWidth, aColor );
}
-void GRDashedLineTo( EDA_RECT* ClipBox, wxDC* DC, int x2, int y2, int width, int Color )
+void GRDashedLineTo( EDA_RECT* ClipBox, wxDC* DC, int x2, int y2, int width, EDA_COLOR_T Color )
{
- s_DC_lastcolor = -1;
+ s_DC_lastcolor = UNSPECIFIED_COLOR;
GRSetColorPen( DC, Color, width, wxPENSTYLE_SHORT_DASH );
GRLine( ClipBox, DC, GRLastMoveToX, GRLastMoveToY, x2, y2, width, Color );
- s_DC_lastcolor = -1;
+ s_DC_lastcolor = UNSPECIFIED_COLOR;
GRSetColorPen( DC, Color, width );
GRLastMoveToX = x2;
GRLastMoveToY = y2;
@@ -542,14 +539,14 @@ void GRDashedLine( EDA_RECT* ClipBox,
int x2,
int y2,
int width,
- int Color )
+ EDA_COLOR_T Color )
{
GRLastMoveToX = x2;
GRLastMoveToY = y2;
- s_DC_lastcolor = -1;
+ s_DC_lastcolor = UNSPECIFIED_COLOR;
GRSetColorPen( DC, Color, width, wxPENSTYLE_SHORT_DASH );
GRLine( ClipBox, DC, x1, y1, x2, y2, width, Color );
- s_DC_lastcolor = -1;
+ s_DC_lastcolor = UNSPECIFIED_COLOR;
GRSetColorPen( DC, Color, width );
}
@@ -567,7 +564,7 @@ void GRMoveTo( int x, int y )
/*
* Draw line to a new position, in object space.
*/
-void GRLineTo( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int width, int Color )
+void GRLineTo( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int width, EDA_COLOR_T Color )
{
int GRLineToX, GRLineToY;
@@ -579,7 +576,7 @@ void GRLineTo( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int width, int Color )
void GRMixedLine( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int width, int Color )
+ int width, EDA_COLOR_T Color )
{
GRSetColorPen( DC, Color, width, wxPENSTYLE_DOT_DASH );
GRLine( ClipBox, DC, x1, y1, x2, y2, width, Color );
@@ -599,7 +596,7 @@ void GRMixedLine( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
* @see EDA_COLOR_T and colors.h
*/
void GRLineArray( EDA_RECT* aClipBox, wxDC* aDC, std::vector& aLines,
- int aWidth, int aColor )
+ int aWidth, EDA_COLOR_T aColor )
{
GRSetColorPen( aDC, aColor, aWidth );
@@ -642,7 +639,7 @@ void GRLineArray( EDA_RECT* aClipBox, wxDC* aDC, std::vector& aLines,
void GRCSegm( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int width, int aPenSize, int Color )
+ int width, int aPenSize, EDA_COLOR_T Color )
{
long radius;
int dwx, dwy;
@@ -787,14 +784,14 @@ void GRCSegm( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
void GRCSegm( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int width, int Color )
+ int width, EDA_COLOR_T Color )
{
GRCSegm( ClipBox, DC, x1, y1, x2, y2, width, 0, Color );
}
void GRCSegm( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aStart, wxPoint aEnd,
- int aWidth, int aColor )
+ int aWidth, EDA_COLOR_T aColor )
{
GRCSegm( aClipBox, aDC, aStart.x, aStart.y, aEnd.x, aEnd.y, aWidth, 0, aColor );
}
@@ -804,14 +801,14 @@ void GRCSegm( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aStart, wxPoint aEnd,
* Draw segment (full) with rounded ends in object space (real coords.).
*/
void GRFillCSegm( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int width, int Color )
+ int width, EDA_COLOR_T Color )
{
WinClipAndDrawLine( ClipBox, DC, x1, y1, x2, y2, Color, width );
}
void GRFilledSegment( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aStart, wxPoint aEnd,
- int aWidth, int aColor )
+ int aWidth, EDA_COLOR_T aColor )
{
WinClipAndDrawLine( aClipBox, aDC, aStart.x, aStart.y, aEnd.x, aEnd.y, aColor, aWidth );
}
@@ -865,8 +862,8 @@ static void GRSPoly( EDA_RECT* ClipBox,
wxPoint Points[],
bool Fill,
int width,
- int Color,
- int BgColor )
+ EDA_COLOR_T Color,
+ EDA_COLOR_T BgColor )
{
if( !IsGRSPolyDrawable( ClipBox, n, Points ) )
return;
@@ -911,8 +908,8 @@ static void GRSClosedPoly( EDA_RECT* ClipBox,
wxPoint aPoints[],
bool Fill,
int width,
- int Color,
- int BgColor )
+ EDA_COLOR_T Color,
+ EDA_COLOR_T BgColor )
{
if( !IsGRSPolyDrawable( ClipBox, aPointCount, aPoints ) )
return;
@@ -955,7 +952,7 @@ static void GRSClosedPoly( EDA_RECT* ClipBox,
* Draw a new polyline and fill it if Fill, in drawing space.
*/
void GRPoly( EDA_RECT* ClipBox, wxDC* DC, int n, wxPoint Points[],
- bool Fill, int width, int Color, int BgColor )
+ bool Fill, int width, EDA_COLOR_T Color, EDA_COLOR_T BgColor )
{
GRSPoly( ClipBox, DC, n, Points, Fill, width, Color, BgColor );
}
@@ -965,20 +962,20 @@ void GRPoly( EDA_RECT* ClipBox, wxDC* DC, int n, wxPoint Points[],
* Draw a closed polyline and fill it if Fill, in object space.
*/
void GRClosedPoly( EDA_RECT* ClipBox, wxDC* DC, int n, wxPoint Points[],
- bool Fill, int Color, int BgColor )
+ bool Fill, EDA_COLOR_T Color, EDA_COLOR_T BgColor )
{
GRClosedPoly( ClipBox, DC, n, Points, Fill, 0, Color, BgColor );
}
void GRClosedPoly( EDA_RECT* ClipBox, wxDC* DC, int n, wxPoint Points[],
- bool Fill, int width, int Color, int BgColor )
+ bool Fill, int width, EDA_COLOR_T Color, EDA_COLOR_T BgColor )
{
GRSClosedPoly( ClipBox, DC, n, Points, Fill, width, Color, BgColor );
}
-void GRCircle( EDA_RECT* ClipBox, wxDC* DC, int xc, int yc, int r, int width, int Color )
+void GRCircle( EDA_RECT* ClipBox, wxDC* DC, int xc, int yc, int r, int width, EDA_COLOR_T Color )
{
/* Clip circles off screen. */
if( ClipBox )
@@ -1008,20 +1005,20 @@ void GRCircle( EDA_RECT* ClipBox, wxDC* DC, int xc, int yc, int r, int width, in
}
-void GRCircle( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int r, int Color )
+void GRCircle( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int r, EDA_COLOR_T Color )
{
GRCircle( ClipBox, DC, x, y, r, 0, Color );
}
-void GRCircle( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aPos, int aRadius, int aWidth, int aColor )
+void GRCircle( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aPos, int aRadius, int aWidth, EDA_COLOR_T aColor )
{
GRCircle( aClipBox, aDC, aPos.x, aPos.y, aRadius, aWidth, aColor );
}
void GRFilledCircle( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int r,
- int width, int Color, int BgColor )
+ int width, EDA_COLOR_T Color, EDA_COLOR_T BgColor )
{
/* Clip circles off screen. */
if( ClipBox )
@@ -1047,7 +1044,7 @@ void GRFilledCircle( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int r,
}
-void GRFilledCircle( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aPos, int aRadius, int aColor )
+void GRFilledCircle( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aPos, int aRadius, EDA_COLOR_T aColor )
{
GRFilledCircle( aClipBox, aDC, aPos.x, aPos.y, aRadius, 0, aColor, aColor );
}
@@ -1057,7 +1054,7 @@ void GRFilledCircle( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aPos, int aRadius, i
* Draw an arc in user space.
*/
void GRArc1( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int xc, int yc, int Color )
+ int xc, int yc, EDA_COLOR_T Color )
{
GRArc1( ClipBox, DC, x1, y1, x2, y2, xc, yc, 0, Color );
}
@@ -1067,7 +1064,7 @@ void GRArc1( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
* Draw an arc, width = width in user space.
*/
void GRArc1( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int xc, int yc, int width, int Color )
+ int xc, int yc, int width, EDA_COLOR_T Color )
{
/* Clip arcs off screen. */
if( ClipBox )
@@ -1095,7 +1092,7 @@ void GRArc1( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
void GRArc1( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aStart, wxPoint aEnd,
- wxPoint aCenter, int aWidth, int aColor )
+ wxPoint aCenter, int aWidth, EDA_COLOR_T aColor )
{
GRArc1( aClipBox, aDC, aStart.x, aStart.y, aEnd.x, aEnd.y, aCenter.x, aCenter.y,
aWidth, aColor );
@@ -1113,8 +1110,8 @@ void GRFilledArc( EDA_RECT* ClipBox,
int EndAngle,
int r,
int width,
- int Color,
- int BgColor )
+ EDA_COLOR_T Color,
+ EDA_COLOR_T BgColor )
{
int x1, y1, x2, y2;
@@ -1155,7 +1152,7 @@ void GRFilledArc( EDA_RECT* ClipBox,
void GRFilledArc( EDA_RECT* ClipBox, wxDC* DC, int x, int y,
- int StAngle, int EndAngle, int r, int Color, int BgColor )
+ int StAngle, int EndAngle, int r, EDA_COLOR_T Color, EDA_COLOR_T BgColor )
{
GRFilledArc( ClipBox, DC, x, y, StAngle, EndAngle, r, 0, Color, BgColor );
}
@@ -1165,7 +1162,7 @@ void GRFilledArc( EDA_RECT* ClipBox, wxDC* DC, int x, int y,
* Draw an arc in drawing space.
*/
void GRArc( EDA_RECT* ClipBox, wxDC* DC, int xc, int yc, int StAngle,
- int EndAngle, int r, int Color )
+ int EndAngle, int r, EDA_COLOR_T Color )
{
int x1, y1, x2, y2;
@@ -1216,7 +1213,7 @@ void GRArc( EDA_RECT* ClipBox,
int EndAngle,
int r,
int width,
- int Color )
+ EDA_COLOR_T Color )
{
int x1, y1, x2, y2;
@@ -1259,13 +1256,13 @@ void GRArc( EDA_RECT* ClipBox,
/*
* Draw a rectangle in drawing space.
*/
-void GRRect( EDA_RECT* aClipBox, wxDC* aDC, int x1, int y1, int x2, int y2, int aColor )
+void GRRect( EDA_RECT* aClipBox, wxDC* aDC, int x1, int y1, int x2, int y2, EDA_COLOR_T aColor )
{
GRSRect( aClipBox, aDC, x1, y1, x2, y2, 0, aColor );
}
-void GRRectPs( EDA_RECT* aClipBox, wxDC* aDC, const EDA_RECT& aRect, int aColor, wxPenStyle aStyle )
+void GRRectPs( EDA_RECT* aClipBox, wxDC* aDC, const EDA_RECT& aRect, EDA_COLOR_T aColor, wxPenStyle aStyle )
{
int x1 = aRect.GetX();
int y1 = aRect.GetY();
@@ -1279,13 +1276,13 @@ void GRRectPs( EDA_RECT* aClipBox, wxDC* aDC, const EDA_RECT& aRect, int aColor,
/*
* Draw a rectangle (thick lines) in drawing space.
*/
-void GRRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2, int width, int Color )
+void GRRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2, int width, EDA_COLOR_T Color )
{
GRSRect( ClipBox, DC, x1, y1, x2, y2, width, Color );
}
-void GRRect( EDA_RECT* aClipBox, wxDC* aDC, const EDA_RECT& aRect, int aWidth, int aColor )
+void GRRect( EDA_RECT* aClipBox, wxDC* aDC, const EDA_RECT& aRect, int aWidth, EDA_COLOR_T aColor )
{
int x1 = aRect.GetX();
int y1 = aRect.GetY();
@@ -1300,7 +1297,7 @@ void GRRect( EDA_RECT* aClipBox, wxDC* aDC, const EDA_RECT& aRect, int aWidth, i
* Draw a rectangle (filled with AreaColor) in drawing space.
*/
void GRFilledRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int Color, int BgColor )
+ EDA_COLOR_T Color, EDA_COLOR_T BgColor )
{
GRSFilledRect( ClipBox, DC, x1, y1, x2, y2, 0, Color, BgColor );
}
@@ -1310,7 +1307,7 @@ void GRFilledRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
* Draw a rectangle (filled with AreaColor) in drawing space.
*/
void GRFilledRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int width, int Color, int BgColor )
+ int width, EDA_COLOR_T Color, EDA_COLOR_T BgColor )
{
GRSFilledRect( ClipBox, DC, x1, y1, x2, y2, width, Color, BgColor );
}
@@ -1321,7 +1318,7 @@ void GRFilledRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
*/
void GRSRect( EDA_RECT* aClipBox, wxDC* aDC, int x1, int y1, int x2, int y2,
- int aWidth, int aColor, wxPenStyle aStyle )
+ int aWidth, EDA_COLOR_T aColor, wxPenStyle aStyle )
{
wxPoint points[5];
@@ -1344,7 +1341,7 @@ void GRSRect( EDA_RECT* aClipBox, wxDC* aDC, int x1, int y1, int x2, int y2,
void GRSFilledRect( EDA_RECT* aClipBox, wxDC* aDC, int x1, int y1, int x2, int y2,
- int aWidth, int aColor, int aBgColor )
+ int aWidth, EDA_COLOR_T aColor, EDA_COLOR_T aBgColor )
{
wxPoint points[5];
@@ -1430,10 +1427,10 @@ void GRBezier( EDA_RECT* ClipBox,
int x3,
int y3,
int width,
- int Color )
+ EDA_COLOR_T Color )
{
std::vector Points = Bezier2Poly( x1, y1, x2, y2, x3, y3 );
- GRPoly( ClipBox, DC, Points.size(), &Points[0], false, width, Color, 0 );
+ GRPoly( ClipBox, DC, Points.size(), &Points[0], false, width, Color, Color );
}
@@ -1448,8 +1445,8 @@ void GRBezier( EDA_RECT* ClipBox,
int x4,
int y4,
int width,
- int Color )
+ EDA_COLOR_T Color )
{
std::vector Points = Bezier2Poly( x1, y1, x2, y2, x3, y3, x4, y4 );
- GRPoly( ClipBox, DC, Points.size(), &Points[0], false, width, Color, 0 );
+ GRPoly( ClipBox, DC, Points.size(), &Points[0], false, width, Color, Color );
}
diff --git a/common/msgpanel.cpp b/common/msgpanel.cpp
index c57d32f5e2..69d46cd3b1 100644
--- a/common/msgpanel.cpp
+++ b/common/msgpanel.cpp
@@ -76,7 +76,7 @@ int EDA_MSG_PANEL::GetRequiredHeight()
}
-wxSize EDA_MSG_PANEL::computeTextSize( const wxString& text )
+wxSize EDA_MSG_PANEL::computeTextSize( const wxString& text ) const
{
// Get size of the wxSYS_DEFAULT_GUI_FONT
wxSize textSizeInPixels;
@@ -109,7 +109,7 @@ void EDA_MSG_PANEL::OnPaint( wxPaintEvent& event )
void EDA_MSG_PANEL::AppendMessage( const wxString& textUpper,
const wxString& textLower,
- int color, int pad )
+ EDA_COLOR_T color, int pad )
{
wxString text;
wxSize drawSize = GetClientSize();
@@ -143,7 +143,7 @@ void EDA_MSG_PANEL::AppendMessage( const wxString& textUpper,
void EDA_MSG_PANEL::SetMessage( int aXPosition, const wxString& aUpperText,
- const wxString& aLowerText, int aColor )
+ const wxString& aLowerText, EDA_COLOR_T aColor )
{
wxPoint pos;
wxSize drawSize = GetClientSize();
@@ -196,11 +196,11 @@ void EDA_MSG_PANEL::SetMessage( int aXPosition, const wxString& aUpperText,
void EDA_MSG_PANEL::showItem( wxDC& dc, const EDA_MSG_ITEM& aItem )
{
- int color = aItem.m_Color;
+ EDA_COLOR_T color = aItem.m_Color;
if( color >= 0 )
{
- color &= MASKCOLOR;
+ color = ColorGetBase( color );
dc.SetTextForeground( wxColour( ColorRefs[color].m_Red,
ColorRefs[color].m_Green,
ColorRefs[color].m_Blue ) );
diff --git a/common/projet_config.cpp b/common/projet_config.cpp
index 94ef5cded8..8707d58c7d 100644
--- a/common/projet_config.cpp
+++ b/common/projet_config.cpp
@@ -463,8 +463,8 @@ void PARAM_CFG_INT::SaveParam( wxConfigBase* aConfig ) const
}
-PARAM_CFG_SETCOLOR::PARAM_CFG_SETCOLOR( const wxChar* ident, int* ptparam,
- int default_val,
+PARAM_CFG_SETCOLOR::PARAM_CFG_SETCOLOR( const wxChar* ident, EDA_COLOR_T* ptparam,
+ EDA_COLOR_T default_val,
const wxChar* group ) :
PARAM_CFG_BASE( ident, PARAM_SETCOLOR, group )
{
@@ -475,8 +475,8 @@ PARAM_CFG_SETCOLOR::PARAM_CFG_SETCOLOR( const wxChar* ident, int* ptparam,
PARAM_CFG_SETCOLOR::PARAM_CFG_SETCOLOR( bool Insetup,
const wxChar* ident,
- int* ptparam,
- int default_val,
+ EDA_COLOR_T* ptparam,
+ EDA_COLOR_T default_val,
const wxChar* group ) :
PARAM_CFG_BASE( ident, PARAM_SETCOLOR, group )
{
@@ -488,9 +488,11 @@ PARAM_CFG_SETCOLOR::PARAM_CFG_SETCOLOR( bool Insetup,
void PARAM_CFG_SETCOLOR::ReadParam( wxConfigBase* aConfig ) const
{
+ static const int MAX_COLOR = 0x8001F;
+
if( m_Pt_param == NULL || aConfig == NULL )
return;
- int itmp = aConfig->Read( m_Ident, m_Default );
+ EDA_COLOR_T itmp = ColorFromInt( aConfig->Read( m_Ident, m_Default ) );
if( (itmp < 0) || (itmp > MAX_COLOR) )
itmp = m_Default;
diff --git a/common/selcolor.cpp b/common/selcolor.cpp
index 0b3b3cb1e2..abb0d7e420 100644
--- a/common/selcolor.cpp
+++ b/common/selcolor.cpp
@@ -45,19 +45,19 @@ BEGIN_EVENT_TABLE( WinEDA_SelColorFrame, wxDialog )
END_EVENT_TABLE()
-int DisplayColorFrame( wxWindow* parent, int OldColor )
+EDA_COLOR_T DisplayColorFrame( wxWindow* parent, int OldColor )
{
wxPoint framepos;
- int color;
+ EDA_COLOR_T color;
wxGetMousePosition( &framepos.x, &framepos.y );
WinEDA_SelColorFrame* frame = new WinEDA_SelColorFrame( parent,
framepos, OldColor );
- color = frame->ShowModal();
+ color = static_cast( frame->ShowModal() );
frame->Destroy();
if( color > NBCOLOR )
- color = -1;
+ color = UNSPECIFIED_COLOR;
return color;
}
diff --git a/common/worksheet.cpp b/common/worksheet.cpp
index 1917d091aa..9e79735fc5 100644
--- a/common/worksheet.cpp
+++ b/common/worksheet.cpp
@@ -1606,7 +1606,7 @@ void EDA_DRAW_FRAME::TraceWorkSheet( wxDC* aDC, wxSize& aSz, wxPoint& aLT, wxPoi
}
-const wxString EDA_DRAW_FRAME::GetXYSheetReferences( const wxPoint& aPosition )
+const wxString EDA_DRAW_FRAME::GetXYSheetReferences( const wxPoint& aPosition ) const
{
const PAGE_INFO& pageInfo = GetPageSettings();
diff --git a/cvpcb/class_DisplayFootprintsFrame.cpp b/cvpcb/class_DisplayFootprintsFrame.cpp
index 69d55be7db..68b455f8f0 100644
--- a/cvpcb/class_DisplayFootprintsFrame.cpp
+++ b/cvpcb/class_DisplayFootprintsFrame.cpp
@@ -464,7 +464,7 @@ void PCB_SCREEN::ClearUndoORRedoList( UNDO_REDO_CONTAINER&, int )
* Function IsGridVisible() , virtual
* @return true if the grid must be shown
*/
-bool DISPLAY_FOOTPRINTS_FRAME::IsGridVisible()
+bool DISPLAY_FOOTPRINTS_FRAME::IsGridVisible() const
{
return m_DrawGrid;
}
@@ -486,7 +486,7 @@ void DISPLAY_FOOTPRINTS_FRAME::SetGridVisibility(bool aVisible)
* Function GetGridColor() , virtual
* @return the color of the grid
*/
-int DISPLAY_FOOTPRINTS_FRAME::GetGridColor()
+EDA_COLOR_T DISPLAY_FOOTPRINTS_FRAME::GetGridColor() const
{
return DARKGRAY;
}
diff --git a/cvpcb/class_DisplayFootprintsFrame.h b/cvpcb/class_DisplayFootprintsFrame.h
index 37dad4c960..bdf2874141 100644
--- a/cvpcb/class_DisplayFootprintsFrame.h
+++ b/cvpcb/class_DisplayFootprintsFrame.h
@@ -46,7 +46,7 @@ public:
* Function IsGridVisible() , virtual
* @return true if the grid must be shown
*/
- virtual bool IsGridVisible();
+ virtual bool IsGridVisible() const;
/**
* Function SetGridVisibility() , virtual
@@ -59,7 +59,7 @@ public:
* Function GetGridColor() , virtual
* @return the color of the grid
*/
- virtual int GetGridColor();
+ virtual EDA_COLOR_T GetGridColor() const;
void OnLeftClick( wxDC* DC, const wxPoint& MousePos );
void OnLeftDClick( wxDC* DC, const wxPoint& MousePos );
diff --git a/eeschema/block_libedit.cpp b/eeschema/block_libedit.cpp
index 5e149620f1..5f099321b1 100644
--- a/eeschema/block_libedit.cpp
+++ b/eeschema/block_libedit.cpp
@@ -338,15 +338,15 @@ void DrawMovingBlockOutlines( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint&
block->Draw( aPanel, aDC, block->GetMoveVector(), g_XorMode, block->GetColor() );
component->Draw( aPanel, aDC, block->GetMoveVector(), unit, convert,
- g_XorMode, -1, DefaultTransform, true, true, true );
+ g_XorMode, UNSPECIFIED_COLOR, DefaultTransform, true, true, true );
}
- /* Repaint new view */
+ // Repaint new view
block->SetMoveVector( screen->GetCrossHairPosition() - block->GetLastCursorPosition() );
GRSetDrawMode( aDC, g_XorMode );
block->Draw( aPanel, aDC, block->GetMoveVector(), g_XorMode, block->GetColor() );
component->Draw( aPanel, aDC, block->GetMoveVector(), unit, convert,
- g_XorMode, -1, DefaultTransform, true, true, true );
+ g_XorMode, UNSPECIFIED_COLOR, DefaultTransform, true, true, true );
}
diff --git a/eeschema/bus-wire-junction.cpp b/eeschema/bus-wire-junction.cpp
index dcca3a87dd..1939c3ff89 100644
--- a/eeschema/bus-wire-junction.cpp
+++ b/eeschema/bus-wire-junction.cpp
@@ -63,13 +63,13 @@ static void DrawSegment( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aPosi
bool aErase )
{
SCH_LINE* segment;
- int color;
if( s_wires.GetCount() == 0 )
return;
segment = (SCH_LINE*) s_wires.begin();
- color = ReturnLayerColor( segment->GetLayer() ) ^ HIGHLIGHT_FLAG;
+ EDA_COLOR_T color = ReturnLayerColor( segment->GetLayer() );
+ ColorChangeHighlightFlag( &color, !(color & HIGHLIGHT_FLAG) );
if( aErase )
{
diff --git a/eeschema/class_libentry.cpp b/eeschema/class_libentry.cpp
index 8054496e52..01e00fe734 100644
--- a/eeschema/class_libentry.cpp
+++ b/eeschema/class_libentry.cpp
@@ -273,7 +273,7 @@ void LIB_COMPONENT::SetName( const wxString& aName )
void LIB_COMPONENT::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDc, const wxPoint& aOffset, int aMulti,
- int aConvert, GR_DRAWMODE aDrawMode, int aColor, const TRANSFORM& aTransform,
+ int aConvert, GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor, const TRANSFORM& aTransform,
bool aShowPinText, bool aDrawFields, bool aOnlySelected )
{
BASE_SCREEN* screen = aPanel->GetScreen();
@@ -286,7 +286,8 @@ void LIB_COMPONENT::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDc, const wxPoint& aOff
* printing in black and white
* If the color is not the default color (aColor != -1 )
*/
- if( ! (screen->m_IsPrinting && GetGRForceBlackPenState()) && (aColor == -1) )
+ if( ! (screen->m_IsPrinting && GetGRForceBlackPenState())
+ && (aColor == UNSPECIFIED_COLOR) )
{
BOOST_FOREACH( LIB_ITEM& drawItem, drawings )
{
@@ -426,7 +427,7 @@ from component %s in library %s." ),
if( *i == aItem )
{
if( aDc != NULL )
- aItem->Draw( aPanel, aDc, wxPoint( 0, 0 ), -1, g_XorMode, NULL, DefaultTransform );
+ aItem->Draw( aPanel, aDc, wxPoint( 0, 0 ), UNSPECIFIED_COLOR, g_XorMode, NULL, DefaultTransform );
drawings.erase( i );
SetModified();
diff --git a/eeschema/class_libentry.h b/eeschema/class_libentry.h
index 127c52acd6..ee567a258e 100644
--- a/eeschema/class_libentry.h
+++ b/eeschema/class_libentry.h
@@ -397,7 +397,8 @@ public:
* Used for block move redraws.
*/
void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDc, const wxPoint& aOffset,
- int aMulti, int aConvert, GR_DRAWMODE aDrawMode, int aColor = -1,
+ int aMulti, int aConvert, GR_DRAWMODE aDrawMode,
+ EDA_COLOR_T aColor = UNSPECIFIED_COLOR,
const TRANSFORM& aTransform = DefaultTransform,
bool aShowPinText = true, bool aDrawFields = true,
bool aOnlySelected = false );
diff --git a/eeschema/dialogs/dialog_color_config.cpp b/eeschema/dialogs/dialog_color_config.cpp
index 38a239d03f..b87f9f17c5 100644
--- a/eeschema/dialogs/dialog_color_config.cpp
+++ b/eeschema/dialogs/dialog_color_config.cpp
@@ -66,7 +66,7 @@ static ButtonIndex buttonGroups[] = {
};
-static int currentColors[ MAX_LAYER ];
+static EDA_COLOR_T currentColors[ MAX_LAYER ];
IMPLEMENT_DYNAMIC_CLASS( DIALOG_COLOR_CONFIG, wxDialog )
@@ -253,7 +253,7 @@ void DIALOG_COLOR_CONFIG::SetColor( wxCommandEvent& event )
wxCHECK_RET( colorButton != NULL, wxT( "Client data not set for color button." ) );
- int color = DisplayColorFrame( this, colorButton->m_Layer );
+ EDA_COLOR_T color = DisplayColorFrame( this, colorButton->m_Layer );
if( color < 0 || currentColors[ colorButton->m_Layer ] == color )
return;
diff --git a/eeschema/dialogs/dialog_lib_edit_pin.cpp b/eeschema/dialogs/dialog_lib_edit_pin.cpp
index 9c65992709..54e5b78c22 100644
--- a/eeschema/dialogs/dialog_lib_edit_pin.cpp
+++ b/eeschema/dialogs/dialog_lib_edit_pin.cpp
@@ -65,7 +65,7 @@ void DIALOG_LIB_EDIT_PIN::OnPaintShowPanel( wxPaintEvent& event )
NEGATE( offset.y );
GRResetPenAndBrush( &dc );
- m_dummyPin->Draw( NULL, &dc, offset, -1, GR_COPY,
+ m_dummyPin->Draw( NULL, &dc, offset, UNSPECIFIED_COLOR, GR_COPY,
NULL, DefaultTransform );
m_dummyPin->SetParent(NULL);
diff --git a/eeschema/dialogs/dialog_print_using_printer.cpp b/eeschema/dialogs/dialog_print_using_printer.cpp
index aceacedff4..b25d6ea58c 100644
--- a/eeschema/dialogs/dialog_print_using_printer.cpp
+++ b/eeschema/dialogs/dialog_print_using_printer.cpp
@@ -415,7 +415,7 @@ void SCH_PRINTOUT::DrawPage( SCH_SCREEN* aScreen )
aScreen->m_IsPrinting = true;
- int bg_color = g_DrawBgColor;
+ EDA_COLOR_T bg_color = g_DrawBgColor;
aScreen->Draw( panel, dc, GR_DEFAULT_DRAWMODE );
diff --git a/eeschema/eeredraw.cpp b/eeschema/eeredraw.cpp
index 63acb50cf0..04bdf2ed91 100644
--- a/eeschema/eeredraw.cpp
+++ b/eeschema/eeredraw.cpp
@@ -45,7 +45,7 @@
#include
-void DrawDanglingSymbol( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& pos, int Color )
+void DrawDanglingSymbol( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& pos, EDA_COLOR_T Color )
{
BASE_SCREEN* screen = panel->GetScreen();
diff --git a/eeschema/eeschema.cpp b/eeschema/eeschema.cpp
index e899851990..caac4ce5b0 100644
--- a/eeschema/eeschema.cpp
+++ b/eeschema/eeschema.cpp
@@ -81,11 +81,11 @@ int g_DrawDefaultLineThickness = 6; /* Default line thickness in
* line width */
// Color to draw selected items
-int g_ItemSelectetColor = BROWN;
+EDA_COLOR_T g_ItemSelectetColor = BROWN;
// Color to draw items flagged invisible, in libedit (they are invisible
// in Eeschema
-int g_InvisibleItemColor = DARKGRAY;
+EDA_COLOR_T g_InvisibleItemColor = DARKGRAY;
TRANSFORM DefaultTransform = TRANSFORM( 1, 0, 0, -1 );
diff --git a/eeschema/general.h b/eeschema/general.h
index 40a3ec4e4c..40d2434711 100644
--- a/eeschema/general.h
+++ b/eeschema/general.h
@@ -95,12 +95,12 @@ class LayerStruct
{
public:
char LayerNames[MAX_LAYERS + 1][8];
- int LayerColor[MAX_LAYERS + 1];
+ EDA_COLOR_T LayerColor[MAX_LAYERS + 1];
char LayerStatus[MAX_LAYERS + 1];
int NumberOfLayers;
int CurrentLayer;
int CurrentWidth;
- int CommonColor;
+ EDA_COLOR_T CommonColor;
int Flags;
};
@@ -149,10 +149,10 @@ extern int g_DrawDefaultLineThickness;
/// Color to draw selected items
-extern int g_ItemSelectetColor;
+extern EDA_COLOR_T g_ItemSelectetColor;
/// Color to draw items flagged invisible, in libedit (they are invisible in Eeschema
-extern int g_InvisibleItemColor;
+extern EDA_COLOR_T g_InvisibleItemColor;
/* Global Variables */
diff --git a/eeschema/lib_arc.cpp b/eeschema/lib_arc.cpp
index 75f0715dd4..cb028bafd3 100644
--- a/eeschema/lib_arc.cpp
+++ b/eeschema/lib_arc.cpp
@@ -341,7 +341,7 @@ int LIB_ARC::GetPenSize() const
}
-void LIB_ARC::drawEditGraphics( EDA_RECT* aClipBox, wxDC* aDC, int aColor )
+void LIB_ARC::drawEditGraphics( EDA_RECT* aClipBox, wxDC* aDC, EDA_COLOR_T aColor )
{
// The edit indicators only get drawn when a new arc is being drawn.
if( !IsNew() )
@@ -362,7 +362,8 @@ void LIB_ARC::drawEditGraphics( EDA_RECT* aClipBox, wxDC* aDC, int aColor )
void LIB_ARC::drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData, const TRANSFORM& aTransform )
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
+ const TRANSFORM& aTransform )
{
// Don't draw the arc until the end point is selected. Only the edit indicators
// get drawn at this time.
@@ -370,7 +371,7 @@ void LIB_ARC::drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOf
return;
wxPoint pos1, pos2, posc;
- int color = ReturnLayerColor( LAYER_DEVICE );
+ EDA_COLOR_T color = ReturnLayerColor( LAYER_DEVICE );
if( aColor < 0 ) // Used normal color or selected color
{
diff --git a/eeschema/lib_arc.h b/eeschema/lib_arc.h
index b3dc3b0ba7..4bf41aba49 100644
--- a/eeschema/lib_arc.h
+++ b/eeschema/lib_arc.h
@@ -61,13 +61,13 @@ class LIB_ARC : public LIB_ITEM
* Draws the arc.
*/
void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData,
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
const TRANSFORM& aTransform );
/**
* Draw the graphics when the arc is being edited.
*/
- void drawEditGraphics( EDA_RECT* aClipBox, wxDC* aDC, int aColor );
+ void drawEditGraphics( EDA_RECT* aClipBox, wxDC* aDC, EDA_COLOR_T aColor );
/**
* Calculates the center, radius, and angles at \a aPosition when the arc is being edited.
diff --git a/eeschema/lib_bezier.cpp b/eeschema/lib_bezier.cpp
index 89466cb4d5..54d85b9017 100644
--- a/eeschema/lib_bezier.cpp
+++ b/eeschema/lib_bezier.cpp
@@ -287,12 +287,13 @@ int LIB_BEZIER::GetPenSize() const
void LIB_BEZIER::drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData, const TRANSFORM& aTransform )
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
+ const TRANSFORM& aTransform )
{
wxPoint pos1;
std::vector PolyPointsTraslated;
- int color = ReturnLayerColor( LAYER_DEVICE );
+ EDA_COLOR_T color = ReturnLayerColor( LAYER_DEVICE );
m_PolyPoints = Bezier2Poly( m_BezierPoints[0],
m_BezierPoints[1],
diff --git a/eeschema/lib_bezier.h b/eeschema/lib_bezier.h
index 878a482a0a..b900a17bd5 100644
--- a/eeschema/lib_bezier.h
+++ b/eeschema/lib_bezier.h
@@ -43,7 +43,7 @@ class LIB_BEZIER : public LIB_ITEM
std::vector m_PolyPoints; // list of points (>= 2)
void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData,
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
const TRANSFORM& aTransform );
public:
diff --git a/eeschema/lib_circle.cpp b/eeschema/lib_circle.cpp
index 63dbeede20..caf9b07474 100644
--- a/eeschema/lib_circle.cpp
+++ b/eeschema/lib_circle.cpp
@@ -210,11 +210,12 @@ int LIB_CIRCLE::GetPenSize() const
void LIB_CIRCLE::drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData, const TRANSFORM& aTransform )
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
+ const TRANSFORM& aTransform )
{
wxPoint pos1;
- int color = ReturnLayerColor( LAYER_DEVICE );
+ EDA_COLOR_T color = ReturnLayerColor( LAYER_DEVICE );
if( aColor < 0 ) // Used normal color or selected color
{
diff --git a/eeschema/lib_circle.h b/eeschema/lib_circle.h
index 49e01549b6..ce42932d7d 100644
--- a/eeschema/lib_circle.h
+++ b/eeschema/lib_circle.h
@@ -39,7 +39,7 @@ class LIB_CIRCLE : public LIB_ITEM
int m_Width; // Line width.
void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData,
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
const TRANSFORM& aTransform );
void calcEdit( const wxPoint& aPosition );
diff --git a/eeschema/lib_draw_item.cpp b/eeschema/lib_draw_item.cpp
index 2ef77b0f2e..8475f179e1 100644
--- a/eeschema/lib_draw_item.cpp
+++ b/eeschema/lib_draw_item.cpp
@@ -114,14 +114,14 @@ bool LIB_ITEM::operator<( const LIB_ITEM& aOther ) const
}
-void LIB_ITEM::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset, int aColor,
+void LIB_ITEM::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset, EDA_COLOR_T aColor,
GR_DRAWMODE aDrawMode, void* aData, const TRANSFORM& aTransform )
{
if( InEditMode() )
{
// Temporarily disable filling while the item is being edited.
FILL_T fillMode = m_Fill;
- int color = GetDefaultColor();
+ EDA_COLOR_T color = GetDefaultColor();
m_Fill = NO_FILL;
@@ -150,7 +150,7 @@ void LIB_ITEM::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
}
-int LIB_ITEM::GetDefaultColor()
+EDA_COLOR_T LIB_ITEM::GetDefaultColor()
{
return ReturnLayerColor( LAYER_DEVICE );
}
diff --git a/eeschema/lib_draw_item.h b/eeschema/lib_draw_item.h
index d743cb4dcd..70aeeb5b26 100644
--- a/eeschema/lib_draw_item.h
+++ b/eeschema/lib_draw_item.h
@@ -88,7 +88,7 @@ class LIB_ITEM : public EDA_ITEM
* @param aTransform A reference to a #TRANSFORM object containing drawing transform.
*/
virtual void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC,
- const wxPoint& aOffset, int aColor,
+ const wxPoint& aOffset, EDA_COLOR_T aColor,
GR_DRAWMODE aDrawMode, void* aData,
const TRANSFORM& aTransform ) = 0;
@@ -99,7 +99,7 @@ class LIB_ITEM : public EDA_ITEM
* @param aDC The device context to draw on.
* @param aColor The index of the color to draw.
*/
- virtual void drawEditGraphics( EDA_RECT* aClipBox, wxDC* aDC, int aColor ) {}
+ virtual void drawEditGraphics( EDA_RECT* aClipBox, wxDC* aDC, EDA_COLOR_T aColor ) {}
/**
* Calculates the attributes of an item at \a aPosition when it is being edited.
@@ -213,7 +213,7 @@ public:
* @param aTransform Transform Matrix (rotation, mirror ..)
*/
virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint &aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData,
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
const TRANSFORM& aTransform );
/**
@@ -402,7 +402,7 @@ public:
void SetEraseLastDrawItem( bool aErase = true ) { m_eraseLastDrawItem = aErase; }
- virtual int GetDefaultColor();
+ virtual EDA_COLOR_T GetDefaultColor();
void SetUnit( int aUnit ) { m_Unit = aUnit; }
diff --git a/eeschema/lib_field.cpp b/eeschema/lib_field.cpp
index 9a3c9ee08c..9627c8aedb 100644
--- a/eeschema/lib_field.cpp
+++ b/eeschema/lib_field.cpp
@@ -260,7 +260,8 @@ int LIB_FIELD::GetPenSize() const
void LIB_FIELD::drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData, const TRANSFORM& aTransform )
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
+ const TRANSFORM& aTransform )
{
wxPoint text_pos;
int color;
@@ -514,9 +515,9 @@ EDA_RECT LIB_FIELD::GetBoundingBox() const
}
-int LIB_FIELD::GetDefaultColor()
+EDA_COLOR_T LIB_FIELD::GetDefaultColor()
{
- int color;
+ EDA_COLOR_T color;
switch( m_id )
{
diff --git a/eeschema/lib_field.h b/eeschema/lib_field.h
index e46610692c..fef1c85fb2 100644
--- a/eeschema/lib_field.h
+++ b/eeschema/lib_field.h
@@ -71,7 +71,7 @@ class LIB_FIELD : public LIB_ITEM, public EDA_TEXT
*
*/
void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData,
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
const TRANSFORM& aTransform );
/**
@@ -205,7 +205,7 @@ public:
*/
wxString GetFullText( int unit = 1 );
- int GetDefaultColor();
+ EDA_COLOR_T GetDefaultColor();
void BeginEdit( int aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) );
diff --git a/eeschema/lib_pin.cpp b/eeschema/lib_pin.cpp
index 9dc2161bda..ff5c39c0be 100644
--- a/eeschema/lib_pin.cpp
+++ b/eeschema/lib_pin.cpp
@@ -789,7 +789,7 @@ int LIB_PIN::GetPenSize() const
void LIB_PIN::drawGraphic( EDA_DRAW_PANEL* aPanel,
wxDC* aDC,
const wxPoint& aOffset,
- int aColor,
+ EDA_COLOR_T aColor,
GR_DRAWMODE aDrawMode,
void* aData,
const TRANSFORM& aTransform )
@@ -854,15 +854,14 @@ void LIB_PIN::DrawPinSymbol( EDA_DRAW_PANEL* aPanel,
const wxPoint& aPinPos,
int aOrient,
GR_DRAWMODE aDrawMode,
- int aColor )
+ EDA_COLOR_T aColor )
{
int MapX1, MapY1, x1, y1;
- int color;
int width = GetPenSize();
int posX = aPinPos.x, posY = aPinPos.y, len = m_length;
EDA_RECT* clipbox = aPanel ? aPanel->GetClipBox() : NULL;
- color = ReturnLayerColor( LAYER_PIN );
+ EDA_COLOR_T color = ReturnLayerColor( LAYER_PIN );
if( aColor < 0 ) // Used normal color or selected color
{
@@ -1069,7 +1068,7 @@ void LIB_PIN::DrawPinTexts( EDA_DRAW_PANEL* panel,
int TextInside,
bool DrawPinNum,
bool DrawPinName,
- int Color,
+ EDA_COLOR_T Color,
GR_DRAWMODE DrawMode )
{
int x, y, x1, y1;
@@ -1271,9 +1270,7 @@ void LIB_PIN::DrawPinTexts( EDA_DRAW_PANEL* panel,
void LIB_PIN::PlotSymbol( PLOTTER* aPlotter, const wxPoint& aPosition, int aOrientation )
{
int MapX1, MapY1, x1, y1;
- EDA_COLOR_T color = UNSPECIFIED;
-
- color = ReturnLayerColor( LAYER_PIN );
+ EDA_COLOR_T color = ReturnLayerColor( LAYER_PIN );
aPlotter->SetColor( color );
diff --git a/eeschema/lib_pin.h b/eeschema/lib_pin.h
index 64c01e4036..37b9fae0eb 100644
--- a/eeschema/lib_pin.h
+++ b/eeschema/lib_pin.h
@@ -117,7 +117,7 @@ class LIB_PIN : public LIB_ITEM
int m_nameTextSize; /* Pin num and Pin name sizes */
void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData,
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
const TRANSFORM& aTransform );
public:
@@ -363,7 +363,7 @@ public:
*/
void DrawPinSymbol( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aPosition,
int aOrientation, GR_DRAWMODE aDrawMode,
- int aColor = -1 );
+ EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
/**
* Function DrawPinTexts
@@ -376,7 +376,7 @@ public:
*/
void DrawPinTexts( EDA_DRAW_PANEL* aPanel, wxDC* aDC, wxPoint& aPosition,
int aOrientation, int TextInside, bool DrawPinNum, bool DrawPinName,
- int aColor, GR_DRAWMODE aDrawMode );
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode );
/**
* Function PlotPinTexts
diff --git a/eeschema/lib_polyline.cpp b/eeschema/lib_polyline.cpp
index 8d26694e1b..1ea2645c34 100644
--- a/eeschema/lib_polyline.cpp
+++ b/eeschema/lib_polyline.cpp
@@ -265,11 +265,11 @@ int LIB_POLYLINE::GetPenSize() const
void LIB_POLYLINE::drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData,
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
const TRANSFORM& aTransform )
{
wxPoint pos1;
- int color = ReturnLayerColor( LAYER_DEVICE );
+ EDA_COLOR_T color = ReturnLayerColor( LAYER_DEVICE );
wxPoint* buffer = NULL;
if( aColor < 0 ) // Used normal color or selected color
diff --git a/eeschema/lib_polyline.h b/eeschema/lib_polyline.h
index 3332998cf9..cd8be707a0 100644
--- a/eeschema/lib_polyline.h
+++ b/eeschema/lib_polyline.h
@@ -40,7 +40,7 @@ class LIB_POLYLINE : public LIB_ITEM
int m_ModifyIndex; // Index of the polyline point to modify
void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData,
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
const TRANSFORM& aTransform );
void calcEdit( const wxPoint& aPosition );
diff --git a/eeschema/lib_rectangle.cpp b/eeschema/lib_rectangle.cpp
index e0675fb28a..1824c443a7 100644
--- a/eeschema/lib_rectangle.cpp
+++ b/eeschema/lib_rectangle.cpp
@@ -195,12 +195,12 @@ int LIB_RECTANGLE::GetPenSize() const
void LIB_RECTANGLE::drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC,
- const wxPoint& aOffset, int aColor, GR_DRAWMODE aDrawMode,
+ const wxPoint& aOffset, EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode,
void* aData, const TRANSFORM& aTransform )
{
wxPoint pos1, pos2;
- int color = ReturnLayerColor( LAYER_DEVICE );
+ EDA_COLOR_T color = ReturnLayerColor( LAYER_DEVICE );
if( aColor < 0 ) // Used normal color or selected color
{
diff --git a/eeschema/lib_rectangle.h b/eeschema/lib_rectangle.h
index 4743406c73..70e300297a 100644
--- a/eeschema/lib_rectangle.h
+++ b/eeschema/lib_rectangle.h
@@ -42,7 +42,7 @@ class LIB_RECTANGLE : public LIB_ITEM
bool m_isStartPointSelected; // Flag: is the upper left edge selected?
void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData,
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
const TRANSFORM& aTransform );
void calcEdit( const wxPoint& aPosition );
diff --git a/eeschema/lib_text.cpp b/eeschema/lib_text.cpp
index 565fad24d7..2151f64e61 100644
--- a/eeschema/lib_text.cpp
+++ b/eeschema/lib_text.cpp
@@ -318,7 +318,7 @@ void LIB_TEXT::Plot( PLOTTER* plotter, const wxPoint& offset, bool fill,
int t1 = ( aTransform.x1 != 0 ) ^ ( m_Orient != 0 );
wxPoint pos = aTransform.TransformCoordinate( m_Pos ) + offset;
- plotter->Text( pos, UNSPECIFIED, m_Text,
+ plotter->Text( pos, UNSPECIFIED_COLOR, m_Text,
t1 ? TEXT_ORIENT_HORIZ : TEXT_ORIENT_VERT,
m_Size, GR_TEXT_HJUSTIFY_CENTER, GR_TEXT_VJUSTIFY_CENTER,
GetPenSize(), m_Italic, m_Bold );
@@ -344,9 +344,10 @@ int LIB_TEXT::GetPenSize() const
void LIB_TEXT::drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData, const TRANSFORM& aTransform )
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
+ const TRANSFORM& aTransform )
{
- int color = GetDefaultColor();
+ EDA_COLOR_T color = GetDefaultColor();
if( aColor < 0 ) // Used normal color or selected color
{
diff --git a/eeschema/lib_text.h b/eeschema/lib_text.h
index 4d9fb9e859..50c19a16fa 100644
--- a/eeschema/lib_text.h
+++ b/eeschema/lib_text.h
@@ -48,7 +48,7 @@ class LIB_TEXT : public LIB_ITEM, public EDA_TEXT
bool m_updateText; ///< Flag to indicate text change occurred while editing.
void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- int aColor, GR_DRAWMODE aDrawMode, void* aData,
+ EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
const TRANSFORM& aTransform );
void calcEdit( const wxPoint& aPosition );
diff --git a/eeschema/libeditframe.cpp b/eeschema/libeditframe.cpp
index fc403a8fdf..a8f4fe76ce 100644
--- a/eeschema/libeditframe.cpp
+++ b/eeschema/libeditframe.cpp
@@ -726,9 +726,9 @@ void LIB_EDIT_FRAME::Process_Special_Functions( wxCommandEvent& event )
m_canvas->MoveCursorToCrossHair();
int oldFlags = m_drawItem->GetFlags();
m_drawItem->ClearFlags();
- m_drawItem->Draw( m_canvas, &dc, wxPoint( 0, 0 ), -1, g_XorMode, NULL, DefaultTransform );
+ m_drawItem->Draw( m_canvas, &dc, wxPoint( 0, 0 ), UNSPECIFIED_COLOR, g_XorMode, NULL, DefaultTransform );
( (LIB_POLYLINE*) m_drawItem )->DeleteSegment( GetScreen()->GetCrossHairPosition( true ) );
- m_drawItem->Draw( m_canvas, &dc, wxPoint( 0, 0 ), -1, g_XorMode, NULL, DefaultTransform );
+ m_drawItem->Draw( m_canvas, &dc, wxPoint( 0, 0 ), UNSPECIFIED_COLOR, g_XorMode, NULL, DefaultTransform );
m_drawItem->SetFlags( oldFlags );
m_lastDrawItem = NULL;
break;
@@ -932,18 +932,18 @@ void LIB_EDIT_FRAME::EditSymbolText( wxDC* DC, LIB_ITEM* DrawItem )
if ( ( DrawItem == NULL ) || ( DrawItem->Type() != LIB_TEXT_T ) )
return;
- /* Deleting old text. */
+ // Deleting old text
if( DC && !DrawItem->InEditMode() )
- DrawItem->Draw( m_canvas, DC, wxPoint( 0, 0 ), -1, g_XorMode, NULL, DefaultTransform );
+ DrawItem->Draw( m_canvas, DC, wxPoint( 0, 0 ), UNSPECIFIED_COLOR, g_XorMode, NULL, DefaultTransform );
DIALOG_LIB_EDIT_TEXT* frame = new DIALOG_LIB_EDIT_TEXT( this, (LIB_TEXT*) DrawItem );
frame->ShowModal();
frame->Destroy();
OnModify();
- /* Display new text. */
+ // Display new text
if( DC && !DrawItem->InEditMode() )
- DrawItem->Draw( m_canvas, DC, wxPoint( 0, 0 ), -1, GR_DEFAULT_DRAWMODE, NULL,
+ DrawItem->Draw( m_canvas, DC, wxPoint( 0, 0 ), UNSPECIFIED_COLOR, GR_DEFAULT_DRAWMODE, NULL,
DefaultTransform );
}
diff --git a/eeschema/pinedit.cpp b/eeschema/pinedit.cpp
index 232660af34..5573323e84 100644
--- a/eeschema/pinedit.cpp
+++ b/eeschema/pinedit.cpp
@@ -267,7 +267,7 @@ another pin. Continue?" ) );
m_canvas->CrossHairOff( DC );
bool showPinText = true;
- CurrentPin->Draw( m_canvas, DC, wxPoint( 0, 0 ), -1, GR_DEFAULT_DRAWMODE,
+ CurrentPin->Draw( m_canvas, DC, wxPoint( 0, 0 ), UNSPECIFIED_COLOR, GR_DEFAULT_DRAWMODE,
&showPinText, DefaultTransform );
m_canvas->CrossHairOn( DC );
@@ -342,13 +342,13 @@ static void DrawMovePin( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aPosi
if( aErase )
{
CurrentPin->SetPosition( PinPreviousPos );
- CurrentPin->Draw( aPanel, aDC, wxPoint( 0, 0 ), -1, g_XorMode,
+ CurrentPin->Draw( aPanel, aDC, wxPoint( 0, 0 ), UNSPECIFIED_COLOR, g_XorMode,
&showPinText, DefaultTransform );
}
// Redraw pin in new position
CurrentPin->SetPosition( aPanel->GetScreen()->GetCrossHairPosition( true ) );
- CurrentPin->Draw( aPanel, aDC, wxPoint( 0, 0 ), -1, g_XorMode, &showPinText, DefaultTransform );
+ CurrentPin->Draw( aPanel, aDC, wxPoint( 0, 0 ), UNSPECIFIED_COLOR, g_XorMode, &showPinText, DefaultTransform );
PinPreviousPos = CurrentPin->GetPosition();
@@ -412,7 +412,7 @@ void LIB_EDIT_FRAME::CreatePin( wxDC* DC )
m_canvas->SetMouseCapture( DrawMovePin, AbortPinMove );
if( DC )
- pin->Draw( m_canvas, DC, wxPoint( 0, 0 ), -1, GR_COPY, &showPinText,
+ pin->Draw( m_canvas, DC, wxPoint( 0, 0 ), UNSPECIFIED_COLOR, GR_COPY, &showPinText,
DefaultTransform );
}
@@ -500,7 +500,7 @@ void LIB_EDIT_FRAME::GlobalSetPins( wxDC* DC, LIB_PIN* MasterPin, int id )
if( selected && !Pin->IsSelected() )
continue;
- Pin->Draw( m_canvas, DC, wxPoint( 0, 0 ), -1, g_XorMode, &showPinText, DefaultTransform );
+ Pin->Draw( m_canvas, DC, wxPoint( 0, 0 ), UNSPECIFIED_COLOR, g_XorMode, &showPinText, DefaultTransform );
switch( id )
{
@@ -517,7 +517,7 @@ void LIB_EDIT_FRAME::GlobalSetPins( wxDC* DC, LIB_PIN* MasterPin, int id )
break;
}
- Pin->Draw( m_canvas, DC, wxPoint( 0, 0 ), -1, GR_DEFAULT_DRAWMODE, &showPinText,
+ Pin->Draw( m_canvas, DC, wxPoint( 0, 0 ), UNSPECIFIED_COLOR, GR_DEFAULT_DRAWMODE, &showPinText,
DefaultTransform );
}
}
diff --git a/eeschema/protos.h b/eeschema/protos.h
index 38763ffcc3..df1b6ba9fd 100644
--- a/eeschema/protos.h
+++ b/eeschema/protos.h
@@ -49,7 +49,7 @@ SCH_ITEM* DuplicateStruct( SCH_ITEM* DrawStruct, bool aClone = false );
/****************/
/* EEREDRAW.CPP */
/****************/
-void DrawDanglingSymbol( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& pos, int Color );
+void DrawDanglingSymbol( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& pos, EDA_COLOR_T Color );
/***********************************/
diff --git a/eeschema/sch_bitmap.cpp b/eeschema/sch_bitmap.cpp
index 5534e788d0..452af7162d 100644
--- a/eeschema/sch_bitmap.cpp
+++ b/eeschema/sch_bitmap.cpp
@@ -195,7 +195,7 @@ EDA_RECT SCH_BITMAP::GetBoundingBox() const
void SCH_BITMAP::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDrawMode, int aColor )
+ GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor )
{
wxPoint pos = m_Pos + aOffset;
diff --git a/eeschema/sch_bitmap.h b/eeschema/sch_bitmap.h
index 4267394a68..cf77d16ed8 100644
--- a/eeschema/sch_bitmap.h
+++ b/eeschema/sch_bitmap.h
@@ -95,7 +95,7 @@ public:
void SwapData( SCH_ITEM* aItem );
void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDrawMode, int aColor = -1 );
+ GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
/**
* Function ReadImageFile
diff --git a/eeschema/sch_bus_entry.cpp b/eeschema/sch_bus_entry.cpp
index 4e8605910d..1d8c603de0 100644
--- a/eeschema/sch_bus_entry.cpp
+++ b/eeschema/sch_bus_entry.cpp
@@ -178,9 +178,9 @@ int SCH_BUS_ENTRY::GetPenSize() const
void SCH_BUS_ENTRY::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDrawMode, int aColor )
+ GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor )
{
- int color;
+ EDA_COLOR_T color;
if( aColor >= 0 )
color = aColor;
diff --git a/eeschema/sch_bus_entry.h b/eeschema/sch_bus_entry.h
index e4bb2fa641..9ad33c8d42 100644
--- a/eeschema/sch_bus_entry.h
+++ b/eeschema/sch_bus_entry.h
@@ -86,7 +86,7 @@ public:
void SwapData( SCH_ITEM* aItem );
void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDrawMode, int aColor = -1 );
+ GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
bool Save( FILE* aFile ) const;
diff --git a/eeschema/sch_component.cpp b/eeschema/sch_component.cpp
index 675ed10673..d15d7e66bb 100644
--- a/eeschema/sch_component.cpp
+++ b/eeschema/sch_component.cpp
@@ -290,7 +290,7 @@ int SCH_COMPONENT::GetPartCount() const
void SCH_COMPONENT::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& offset,
- GR_DRAWMODE DrawMode, int Color, bool DrawPinText )
+ GR_DRAWMODE DrawMode, EDA_COLOR_T Color, bool DrawPinText )
{
bool dummy = false;
diff --git a/eeschema/sch_component.h b/eeschema/sch_component.h
index 88fbeec360..833d3f8fe0 100644
--- a/eeschema/sch_component.h
+++ b/eeschema/sch_component.h
@@ -250,7 +250,7 @@ public:
wxDC* DC,
const wxPoint& offset,
GR_DRAWMODE draw_mode,
- int Color = -1 )
+ EDA_COLOR_T Color = UNSPECIFIED_COLOR )
{
Draw( panel, DC, offset, draw_mode, Color, true );
}
@@ -259,7 +259,7 @@ public:
wxDC* DC,
const wxPoint& offset,
GR_DRAWMODE draw_mode,
- int Color,
+ EDA_COLOR_T Color,
bool DrawPinText );
void SwapData( SCH_ITEM* aItem );
diff --git a/eeschema/sch_field.cpp b/eeschema/sch_field.cpp
index a354f4ad14..83b68699eb 100644
--- a/eeschema/sch_field.cpp
+++ b/eeschema/sch_field.cpp
@@ -130,7 +130,7 @@ int SCH_FIELD::GetPenSize() const
void SCH_FIELD::Draw( EDA_DRAW_PANEL* panel, wxDC* DC,
- const wxPoint& offset, GR_DRAWMODE DrawMode, int Color )
+ const wxPoint& offset, GR_DRAWMODE DrawMode, EDA_COLOR_T Color )
{
int orient;
EDA_COLOR_T color;
@@ -537,9 +537,7 @@ void SCH_FIELD::Plot( PLOTTER* aPlotter )
wxCHECK_RET( parent != NULL && parent->Type() == SCH_COMPONENT_T,
wxT( "Cannot plot field with invalid parent." ) );
- EDA_COLOR_T color = UNSPECIFIED;
-
- color = ReturnLayerColor( GetLayer() );
+ EDA_COLOR_T color = ReturnLayerColor( GetLayer() );
if( m_Attributs & TEXT_NO_VISIBLE )
return;
diff --git a/eeschema/sch_field.h b/eeschema/sch_field.h
index c10760d33f..0a66ba2450 100644
--- a/eeschema/sch_field.h
+++ b/eeschema/sch_field.h
@@ -138,7 +138,7 @@ public:
wxDC* aDC,
const wxPoint& aOffset,
GR_DRAWMODE aDrawMode,
- int aColor = -1 );
+ EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
bool Save( FILE* aFile ) const;
diff --git a/eeschema/sch_junction.cpp b/eeschema/sch_junction.cpp
index 542c59207b..a8d7efab93 100644
--- a/eeschema/sch_junction.cpp
+++ b/eeschema/sch_junction.cpp
@@ -114,9 +114,9 @@ EDA_RECT SCH_JUNCTION::GetBoundingBox() const
void SCH_JUNCTION::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDrawMode, int aColor )
+ GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor )
{
- int color;
+ EDA_COLOR_T color;
if( aColor >= 0 )
color = aColor;
diff --git a/eeschema/sch_junction.h b/eeschema/sch_junction.h
index 0a0ad2b05c..6b295f5baa 100644
--- a/eeschema/sch_junction.h
+++ b/eeschema/sch_junction.h
@@ -55,7 +55,7 @@ public:
EDA_RECT GetBoundingBox() const;
void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDrawMode, int aColor = -1 );
+ GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
bool Save( FILE* aFile ) const;
diff --git a/eeschema/sch_line.cpp b/eeschema/sch_line.cpp
index 0f127f41f8..bfacb238a4 100644
--- a/eeschema/sch_line.cpp
+++ b/eeschema/sch_line.cpp
@@ -222,9 +222,9 @@ int SCH_LINE::GetPenSize() const
void SCH_LINE::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& offset,
- GR_DRAWMODE DrawMode, int Color )
+ GR_DRAWMODE DrawMode, EDA_COLOR_T Color )
{
- int color;
+ EDA_COLOR_T color;
int width = GetPenSize();
if( Color >= 0 )
diff --git a/eeschema/sch_line.h b/eeschema/sch_line.h
index 10bc87e597..bb5c7876dc 100644
--- a/eeschema/sch_line.h
+++ b/eeschema/sch_line.h
@@ -85,7 +85,7 @@ public:
double GetLength() const;
void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDrawMode, int aColor = -1 );
+ GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
bool Save( FILE* aFile ) const;
diff --git a/eeschema/sch_marker.cpp b/eeschema/sch_marker.cpp
index 96ea330e57..cfc7feb78c 100644
--- a/eeschema/sch_marker.cpp
+++ b/eeschema/sch_marker.cpp
@@ -103,7 +103,7 @@ bool SCH_MARKER::Save( FILE* aFile ) const
void SCH_MARKER::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC,
- const wxPoint& aOffset, GR_DRAWMODE aDrawMode, int aColor )
+ const wxPoint& aOffset, GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor )
{
EDA_COLOR_T color = (EDA_COLOR_T) m_Color;
EDA_COLOR_T tmp = color;
@@ -118,7 +118,7 @@ void SCH_MARKER::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC,
if( aColor < 0 )
m_Color = color;
else
- m_Color = (EDA_COLOR_T) aColor;
+ m_Color = aColor;
DrawMarker( aPanel, aDC, aDrawMode, aOffset );
m_Color = tmp;
diff --git a/eeschema/sch_marker.h b/eeschema/sch_marker.h
index 08b1dfef4a..748ac82591 100644
--- a/eeschema/sch_marker.h
+++ b/eeschema/sch_marker.h
@@ -67,7 +67,7 @@ public:
}
void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDraw_mode, int aColor = -1 );
+ GR_DRAWMODE aDraw_mode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
bool Save( FILE* aFile ) const;
diff --git a/eeschema/sch_no_connect.cpp b/eeschema/sch_no_connect.cpp
index d08c1e23a5..4412bee4d3 100644
--- a/eeschema/sch_no_connect.cpp
+++ b/eeschema/sch_no_connect.cpp
@@ -123,15 +123,16 @@ int SCH_NO_CONNECT::GetPenSize() const
void SCH_NO_CONNECT::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDrawMode, int aColor )
+ GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor )
{
- int pX, pY, color;
+ int pX, pY;
int delta = m_size.x / 2;
int width = g_DrawDefaultLineThickness;
pX = m_pos.x + aOffset.x;
pY = m_pos.y + aOffset.y;
+ EDA_COLOR_T color;
if( aColor >= 0 )
color = aColor;
else
diff --git a/eeschema/sch_no_connect.h b/eeschema/sch_no_connect.h
index 5da5ef132b..c2956e65d4 100644
--- a/eeschema/sch_no_connect.h
+++ b/eeschema/sch_no_connect.h
@@ -55,7 +55,7 @@ public:
void SwapData( SCH_ITEM* aItem );
void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDrawMode, int aColor = -1 );
+ GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
bool Save( FILE* aFile ) const;
diff --git a/eeschema/sch_polyline.cpp b/eeschema/sch_polyline.cpp
index fe5bc895f2..299bcbb256 100644
--- a/eeschema/sch_polyline.cpp
+++ b/eeschema/sch_polyline.cpp
@@ -156,9 +156,9 @@ int SCH_POLYLINE::GetPenSize() const
void SCH_POLYLINE::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDrawMode, int aColor )
+ GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor )
{
- int color;
+ EDA_COLOR_T color;
int width = GetPenSize();
if( aColor >= 0 )
diff --git a/eeschema/sch_polyline.h b/eeschema/sch_polyline.h
index 4cdde356f0..84ac454d2f 100644
--- a/eeschema/sch_polyline.h
+++ b/eeschema/sch_polyline.h
@@ -52,7 +52,7 @@ public:
}
void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
- GR_DRAWMODE aDrawMode, int aColor = -1 );
+ GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
bool Save( FILE* aFile ) const;
diff --git a/eeschema/sch_screen.cpp b/eeschema/sch_screen.cpp
index 71e871015d..47716a302b 100644
--- a/eeschema/sch_screen.cpp
+++ b/eeschema/sch_screen.cpp
@@ -549,7 +549,7 @@ bool SCH_SCREEN::Save( FILE* aFile ) const
// note: SCH_SCREEN::Draw is useful only for schematic.
// library editor and library viewer do not use a draw list, and therefore
// SCH_SCREEN::Draw draws nothing
-void SCH_SCREEN::Draw( EDA_DRAW_PANEL* aCanvas, wxDC* aDC, GR_DRAWMODE aDrawMode, int aColor )
+void SCH_SCREEN::Draw( EDA_DRAW_PANEL* aCanvas, wxDC* aDC, GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor )
{
for( SCH_ITEM* item = m_drawList.begin(); item != NULL; item = item->Next() )
{
diff --git a/eeschema/sch_sheet.cpp b/eeschema/sch_sheet.cpp
index f1c09ff675..758ff3da34 100644
--- a/eeschema/sch_sheet.cpp
+++ b/eeschema/sch_sheet.cpp
@@ -566,11 +566,11 @@ wxPoint SCH_SHEET::GetFileNamePosition()
void SCH_SHEET::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC,
- const wxPoint& aOffset, GR_DRAWMODE aDrawMode, int aColor )
+ const wxPoint& aOffset, GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor )
{
- int txtcolor;
+ EDA_COLOR_T txtcolor;
wxString Text;
- int color;
+ EDA_COLOR_T color;
int name_orientation;
wxPoint pos_sheetname,pos_filename;
wxPoint pos = m_pos + aOffset;
@@ -1102,7 +1102,7 @@ void SCH_SHEET::GetNetListItem( vector& aNetListItems,
void SCH_SHEET::Plot( PLOTTER* aPlotter )
{
- EDA_COLOR_T txtcolor = UNSPECIFIED;
+ EDA_COLOR_T txtcolor = UNSPECIFIED_COLOR;
wxSize size;
wxString Text;
int name_orientation;
diff --git a/eeschema/sch_sheet.h b/eeschema/sch_sheet.h
index 8cd29a75a4..7b371f2cdd 100644
--- a/eeschema/sch_sheet.h
+++ b/eeschema/sch_sheet.h
@@ -98,7 +98,7 @@ public:
wxDC* aDC,
const wxPoint& aOffset,
GR_DRAWMODE aDraw_mode,
- int aColor = -1 );
+ EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
/**
* Function CreateGraphicShape (virtual)
@@ -395,7 +395,7 @@ public:
wxDC* aDC,
const wxPoint& aOffset,
GR_DRAWMODE aDrawMode,
- int aColor = -1 );
+ EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
EDA_RECT GetBoundingBox() const;
diff --git a/eeschema/sch_sheet_pin.cpp b/eeschema/sch_sheet_pin.cpp
index 373fa23f6d..fa9ef9a8ea 100644
--- a/eeschema/sch_sheet_pin.cpp
+++ b/eeschema/sch_sheet_pin.cpp
@@ -71,7 +71,7 @@ void SCH_SHEET_PIN::Draw( EDA_DRAW_PANEL* aPanel,
wxDC* aDC,
const wxPoint& aOffset,
GR_DRAWMODE aDraw_mode,
- int aColor )
+ EDA_COLOR_T aColor )
{
// The icon selection is handle by the virtual method CreateGraphicShape
// called by ::Draw
diff --git a/eeschema/sch_text.cpp b/eeschema/sch_text.cpp
index b6e386d5a5..c431abf135 100644
--- a/eeschema/sch_text.cpp
+++ b/eeschema/sch_text.cpp
@@ -370,7 +370,7 @@ int SCH_TEXT::GetPenSize() const
void SCH_TEXT::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& aOffset,
- GR_DRAWMODE DrawMode, int Color )
+ GR_DRAWMODE DrawMode, EDA_COLOR_T Color )
{
EDA_COLOR_T color;
int linewidth = ( m_Thickness == 0 ) ? g_DrawDefaultLineThickness : m_Thickness;
@@ -378,7 +378,7 @@ void SCH_TEXT::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& aOffset,
linewidth = Clamp_Text_PenSize( linewidth, m_Size, m_Bold );
if( Color >= 0 )
- color = (EDA_COLOR_T) Color;
+ color = Color;
else
color = ReturnLayerColor( m_Layer );
@@ -386,7 +386,7 @@ void SCH_TEXT::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& aOffset,
wxPoint text_offset = aOffset + GetSchematicTextOffset();
EXCHG( linewidth, m_Thickness ); // Set the minimum width
- EDA_TEXT::Draw( panel, DC, text_offset, color, DrawMode, FILLED, UNSPECIFIED );
+ EDA_TEXT::Draw( panel, DC, text_offset, color, DrawMode, FILLED, UNSPECIFIED_COLOR );
EXCHG( linewidth, m_Thickness ); // set initial value
if( m_isDangling )
@@ -880,7 +880,7 @@ bool SCH_LABEL::Load( LINE_READER& aLine, wxString& aErrorMsg )
void SCH_LABEL::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& offset,
- GR_DRAWMODE DrawMode, int Color )
+ GR_DRAWMODE DrawMode, EDA_COLOR_T Color )
{
SCH_TEXT::Draw( panel, DC, offset, DrawMode, Color );
}
@@ -1192,14 +1192,14 @@ void SCH_GLOBALLABEL::Draw( EDA_DRAW_PANEL* panel,
wxDC* DC,
const wxPoint& aOffset,
GR_DRAWMODE DrawMode,
- int Color )
+ EDA_COLOR_T Color )
{
static std::vector Poly;
EDA_COLOR_T color;
wxPoint text_offset = aOffset + GetSchematicTextOffset();
if( Color >= 0 )
- color = (EDA_COLOR_T) Color;
+ color = Color;
else
color = ReturnLayerColor( m_Layer );
@@ -1208,7 +1208,7 @@ void SCH_GLOBALLABEL::Draw( EDA_DRAW_PANEL* panel,
int linewidth = (m_Thickness == 0) ? g_DrawDefaultLineThickness : m_Thickness;
linewidth = Clamp_Text_PenSize( linewidth, m_Size, m_Bold );
EXCHG( linewidth, m_Thickness ); // Set the minimum width
- EDA_TEXT::Draw( panel, DC, text_offset, color, DrawMode, FILLED, UNSPECIFIED );
+ EDA_TEXT::Draw( panel, DC, text_offset, color, DrawMode, FILLED, UNSPECIFIED_COLOR );
EXCHG( linewidth, m_Thickness ); // set initial value
CreateGraphicShape( Poly, m_Pos + aOffset );
@@ -1522,7 +1522,7 @@ void SCH_HIERLABEL::Draw( EDA_DRAW_PANEL* panel,
wxDC* DC,
const wxPoint& offset,
GR_DRAWMODE DrawMode,
- int Color )
+ EDA_COLOR_T Color )
{
static std::vector Poly;
EDA_COLOR_T color;
@@ -1531,7 +1531,7 @@ void SCH_HIERLABEL::Draw( EDA_DRAW_PANEL* panel,
linewidth = Clamp_Text_PenSize( linewidth, m_Size, m_Bold );
if( Color >= 0 )
- color = (EDA_COLOR_T) Color;
+ color = Color;
else
color = ReturnLayerColor( m_Layer );
@@ -1539,7 +1539,7 @@ void SCH_HIERLABEL::Draw( EDA_DRAW_PANEL* panel,
EXCHG( linewidth, m_Thickness ); // Set the minimum width
wxPoint text_offset = offset + GetSchematicTextOffset();
- EDA_TEXT::Draw( panel, DC, text_offset, color, DrawMode, FILLED, UNSPECIFIED );
+ EDA_TEXT::Draw( panel, DC, text_offset, color, DrawMode, FILLED, UNSPECIFIED_COLOR );
EXCHG( linewidth, m_Thickness ); // set initial value
CreateGraphicShape( Poly, m_Pos + offset );
diff --git a/eeschema/sch_text.h b/eeschema/sch_text.h
index cbea95b59a..f06ae636cf 100644
--- a/eeschema/sch_text.h
+++ b/eeschema/sch_text.h
@@ -134,7 +134,7 @@ public:
wxDC* DC,
const wxPoint& offset,
GR_DRAWMODE draw_mode,
- int Color = -1 );
+ EDA_COLOR_T Color = UNSPECIFIED_COLOR );
/**
* Function CreateGraphicShape
@@ -231,7 +231,7 @@ public:
wxDC* DC,
const wxPoint& offset,
GR_DRAWMODE draw_mode,
- int Color = -1 );
+ EDA_COLOR_T Color = UNSPECIFIED_COLOR );
wxString GetClass() const
{
@@ -282,7 +282,7 @@ public:
wxDC* DC,
const wxPoint& offset,
GR_DRAWMODE draw_mode,
- int Color = -1 );
+ EDA_COLOR_T Color = UNSPECIFIED_COLOR );
wxString GetClass() const
{
@@ -337,7 +337,7 @@ public:
wxDC* DC,
const wxPoint& offset,
GR_DRAWMODE draw_mode,
- int Color = -1 );
+ EDA_COLOR_T Color = UNSPECIFIED_COLOR );
wxString GetClass() const
{
diff --git a/eeschema/symbdraw.cpp b/eeschema/symbdraw.cpp
index f6f8d7db5d..b66099bf57 100644
--- a/eeschema/symbdraw.cpp
+++ b/eeschema/symbdraw.cpp
@@ -240,7 +240,7 @@ void LIB_EDIT_FRAME::GraphicItemBeginDraw( wxDC* DC )
if( m_drawItem->ContinueEdit( pos ) )
{
- m_drawItem->Draw( m_canvas, DC, pos, -1, g_XorMode, NULL, DefaultTransform );
+ m_drawItem->Draw( m_canvas, DC, pos, UNSPECIFIED_COLOR, g_XorMode, NULL, DefaultTransform );
return;
}
@@ -270,11 +270,11 @@ static void RedrawWhileMovingCursor( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wx
{
int unit = ((LIB_EDIT_FRAME*)aPanel->GetParent())->GetUnit();
wxString text = ((LIB_FIELD*)item)->GetFullText( unit );
- item->Draw( aPanel, aDC, Screen->GetCrossHairPosition( true ), -1, g_XorMode, &text,
+ item->Draw( aPanel, aDC, Screen->GetCrossHairPosition( true ), UNSPECIFIED_COLOR, g_XorMode, &text,
DefaultTransform );
}
else
- item->Draw( aPanel, aDC, Screen->GetCrossHairPosition( true ), -1, g_XorMode, NULL,
+ item->Draw( aPanel, aDC, Screen->GetCrossHairPosition( true ), UNSPECIFIED_COLOR, g_XorMode, NULL,
DefaultTransform );
}
@@ -317,7 +317,7 @@ static void SymbolDisplayDraw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint&
return;
item->SetEraseLastDrawItem( aErase );
- item->Draw( aPanel, aDC, Screen->GetCrossHairPosition( true ), -1, g_XorMode, NULL,
+ item->Draw( aPanel, aDC, Screen->GetCrossHairPosition( true ), UNSPECIFIED_COLOR, g_XorMode, NULL,
DefaultTransform );
}
diff --git a/gerbview/block.cpp b/gerbview/block.cpp
index b36fae0431..774e5dde2a 100644
--- a/gerbview/block.cpp
+++ b/gerbview/block.cpp
@@ -151,10 +151,9 @@ bool GERBVIEW_FRAME::HandleBlockEnd( wxDC* DC )
static void DrawMovingBlockOutlines( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aPositon,
bool aErase )
{
- int Color;
BASE_SCREEN* screen = aPanel->GetScreen();
- Color = YELLOW;
+ EDA_COLOR_T Color = YELLOW;
if( aErase )
{
diff --git a/gerbview/class_aperture_macro.cpp b/gerbview/class_aperture_macro.cpp
index 2e7d9ee4a3..b9714f6bbc 100644
--- a/gerbview/class_aperture_macro.cpp
+++ b/gerbview/class_aperture_macro.cpp
@@ -131,7 +131,7 @@ int AM_PRIMITIVE::GetExposure(GERBER_DRAW_ITEM* aParent) const
void AM_PRIMITIVE::DrawBasicShape( GERBER_DRAW_ITEM* aParent,
EDA_RECT* aClipBox,
wxDC* aDC,
- int aColor, int aAltColor,
+ EDA_COLOR_T aColor, EDA_COLOR_T aAltColor,
wxPoint aShapePos,
bool aFilledShape )
{
@@ -727,7 +727,7 @@ int AM_PRIMITIVE::GetShapeDim( GERBER_DRAW_ITEM* aParent )
*/
void APERTURE_MACRO::DrawApertureMacroShape( GERBER_DRAW_ITEM* aParent,
EDA_RECT* aClipBox, wxDC* aDC,
- int aColor, int aAltColor,
+ EDA_COLOR_T aColor, EDA_COLOR_T aAltColor,
wxPoint aShapePos, bool aFilledShape )
{
for( AM_PRIMITIVES::iterator prim_macro = primitives.begin();
diff --git a/gerbview/class_aperture_macro.h b/gerbview/class_aperture_macro.h
index 7d2ace227d..959a2546aa 100644
--- a/gerbview/class_aperture_macro.h
+++ b/gerbview/class_aperture_macro.h
@@ -135,7 +135,7 @@ public: AM_PRIMITIVE( bool aGerbMetric, AM_PRIMITIVE_ID aId = AMP_UNKNOWN )
* @param aFilledShape = true to draw in filled mode, false to draw in skecth mode
*/
void DrawBasicShape( GERBER_DRAW_ITEM* aParent, EDA_RECT* aClipBox, wxDC* aDC,
- int aColor, int aAltColor, wxPoint aShapePos, bool aFilledShape );
+ EDA_COLOR_T aColor, EDA_COLOR_T aAltColor, wxPoint aShapePos, bool aFilledShape );
/** GetShapeDim
* Calculate a value that can be used to evaluate the size of text
@@ -207,7 +207,7 @@ struct APERTURE_MACRO
* @param aFilledShape = true to draw in filled mode, false to draw in skecth mode
*/
void DrawApertureMacroShape( GERBER_DRAW_ITEM* aParent, EDA_RECT* aClipBox, wxDC* aDC,
- int aColor, int aAltColor, wxPoint aShapePos, bool aFilledShape );
+ EDA_COLOR_T aColor, EDA_COLOR_T aAltColor, wxPoint aShapePos, bool aFilledShape );
/**
* Function GetShapeDim
diff --git a/gerbview/class_gbr_layer_box_selector.cpp b/gerbview/class_gbr_layer_box_selector.cpp
index 49f56df014..a931aca56d 100644
--- a/gerbview/class_gbr_layer_box_selector.cpp
+++ b/gerbview/class_gbr_layer_box_selector.cpp
@@ -64,7 +64,7 @@ void GBR_LAYER_BOX_SELECTOR::Resync()
}
// Returns a color index from the layer id
-int GBR_LAYER_BOX_SELECTOR::GetLayerColor( int aLayerIndex )
+EDA_COLOR_T GBR_LAYER_BOX_SELECTOR::GetLayerColor( int aLayerIndex ) const
{
GERBVIEW_FRAME* frame = (GERBVIEW_FRAME*) GetParent()->GetParent();
@@ -72,7 +72,7 @@ int GBR_LAYER_BOX_SELECTOR::GetLayerColor( int aLayerIndex )
}
// Returns the name of the layer id
-const wxString GBR_LAYER_BOX_SELECTOR::GetLayerName( int aLayerIndex )
+wxString GBR_LAYER_BOX_SELECTOR::GetLayerName( int aLayerIndex ) const
{
wxString name;
name.Printf( _( "Layer %d" ), aLayerIndex + 1 );
diff --git a/gerbview/class_gbr_layer_box_selector.h b/gerbview/class_gbr_layer_box_selector.h
index d21fd06287..64812e5a57 100644
--- a/gerbview/class_gbr_layer_box_selector.h
+++ b/gerbview/class_gbr_layer_box_selector.h
@@ -37,15 +37,15 @@ public:
// Returns a color index from the layer id
// Virtual function
- int GetLayerColor( int aLayerIndex );
+ EDA_COLOR_T GetLayerColor( int aLayerIndex ) const;
// Returns true if the layer id is enabled (i.e. is it should be displayed)
// Virtual function
- bool IsLayerEnabled( int aLayerIndex ) { return true; };
+ bool IsLayerEnabled( int aLayerIndex ) const { return true; };
// Returns the name of the layer id
// Virtual function
- const wxString GetLayerName( int aLayerIndex );
+ wxString GetLayerName( int aLayerIndex ) const;
};
#endif //CLASS_GBR_LAYER_BOX_SELECTOR_H
diff --git a/gerbview/class_gerber_draw_item.cpp b/gerbview/class_gerber_draw_item.cpp
index 86199f6cbc..2d428d19e9 100644
--- a/gerbview/class_gerber_draw_item.cpp
+++ b/gerbview/class_gerber_draw_item.cpp
@@ -308,7 +308,7 @@ void GERBER_DRAW_ITEM::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, GR_DRAWMODE aDra
{
// used when a D_CODE is not found. default D_CODE to draw a flashed item
static D_CODE dummyD_CODE( 0 );
- int color, alt_color;
+ EDA_COLOR_T color, alt_color;
bool isFilled;
int radius;
int halfPenWidth;
@@ -325,12 +325,7 @@ void GERBER_DRAW_ITEM::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, GR_DRAWMODE aDra
color = gerbFrame->GetLayerColor( GetLayer() );
if( aDrawMode & GR_HIGHLIGHT )
- {
- if( aDrawMode & GR_AND )
- color &= ~HIGHLIGHT_FLAG;
- else
- color |= HIGHLIGHT_FLAG;
- }
+ ColorChangeHighlightFlag( &color, !(aDrawMode & GR_AND) );
if( color & HIGHLIGHT_FLAG )
color = ColorRefs[color & MASKCOLOR].m_LightColor;
@@ -528,7 +523,7 @@ void GERBER_DRAW_ITEM::ConvertSegmentToPolygon( )
void GERBER_DRAW_ITEM::DrawGbrPoly( EDA_RECT* aClipBox,
wxDC* aDC,
- int aColor,
+ EDA_COLOR_T aColor,
const wxPoint& aOffset,
bool aFilledShape )
{
diff --git a/gerbview/class_gerber_draw_item.h b/gerbview/class_gerber_draw_item.h
index 8735ec8211..d0d4a33518 100644
--- a/gerbview/class_gerber_draw_item.h
+++ b/gerbview/class_gerber_draw_item.h
@@ -237,7 +237,7 @@ public:
* a helper function used to draw the polygon stored in m_PolyCorners
*/
void DrawGbrPoly( EDA_RECT* aClipBox,
- wxDC* aDC, int aColor,
+ wxDC* aDC, EDA_COLOR_T aColor,
const wxPoint& aOffset, bool aFilledShape );
/* divers */
diff --git a/gerbview/class_gerbview_layer_widget.cpp b/gerbview/class_gerbview_layer_widget.cpp
index 8325c2b1cc..9eb862cdc9 100644
--- a/gerbview/class_gerbview_layer_widget.cpp
+++ b/gerbview/class_gerbview_layer_widget.cpp
@@ -208,7 +208,7 @@ void GERBER_LAYER_WIDGET::ReFill()
//------------------------------------------------
-void GERBER_LAYER_WIDGET::OnLayerColorChange( int aLayer, int aColor )
+void GERBER_LAYER_WIDGET::OnLayerColorChange( int aLayer, EDA_COLOR_T aColor )
{
myframe->SetLayerColor( aLayer, aColor );
myframe->m_SelLayerBox->ResyncBitmapOnly();
@@ -244,7 +244,7 @@ void GERBER_LAYER_WIDGET::OnLayerVisible( int aLayer, bool isVisible, bool isFin
myframe->GetCanvas()->Refresh();
}
-void GERBER_LAYER_WIDGET::OnRenderColorChange( int aId, int aColor )
+void GERBER_LAYER_WIDGET::OnRenderColorChange( int aId, EDA_COLOR_T aColor )
{
myframe->SetVisibleElementColor( aId, aColor );
myframe->GetCanvas()->Refresh();
diff --git a/gerbview/class_gerbview_layer_widget.h b/gerbview/class_gerbview_layer_widget.h
index 3c93e73571..60349aba6b 100644
--- a/gerbview/class_gerbview_layer_widget.h
+++ b/gerbview/class_gerbview_layer_widget.h
@@ -88,10 +88,10 @@ public:
void ReFillRender();
//----------------
- void OnLayerColorChange( int aLayer, int aColor );
+ void OnLayerColorChange( int aLayer, EDA_COLOR_T aColor );
bool OnLayerSelect( int aLayer );
void OnLayerVisible( int aLayer, bool isVisible, bool isFinal );
- void OnRenderColorChange( int aId, int aColor );
+ void OnRenderColorChange( int aId, EDA_COLOR_T aColor );
void OnRenderEnable( int aId, bool isEnabled );
/**
* Function SetLayersManagerTabsText
diff --git a/gerbview/dcode.cpp b/gerbview/dcode.cpp
index 0a6201d0f8..14f02bbf54 100644
--- a/gerbview/dcode.cpp
+++ b/gerbview/dcode.cpp
@@ -339,7 +339,8 @@ void GERBVIEW_FRAME::CopyDCodesSizeToItems()
void D_CODE::DrawFlashedShape( GERBER_DRAW_ITEM* aParent,
- EDA_RECT* aClipBox, wxDC* aDC, int aColor, int aAltColor,
+ EDA_RECT* aClipBox, wxDC* aDC, EDA_COLOR_T aColor,
+ EDA_COLOR_T aAltColor,
wxPoint aShapePos, bool aFilledShape )
{
int radius;
@@ -456,7 +457,7 @@ void D_CODE::DrawFlashedShape( GERBER_DRAW_ITEM* aParent,
void D_CODE::DrawFlashedPolygon( GERBER_DRAW_ITEM* aParent,
EDA_RECT* aClipBox, wxDC* aDC,
- int aColor, bool aFilled,
+ EDA_COLOR_T aColor, bool aFilled,
const wxPoint& aPosition )
{
if( m_PolyCorners.size() == 0 )
diff --git a/gerbview/dcode.h b/gerbview/dcode.h
index 87de8ac0a4..ebc36c1f54 100644
--- a/gerbview/dcode.h
+++ b/gerbview/dcode.h
@@ -171,7 +171,7 @@ public:
* @param aFilledShape = true to draw in filled mode, false to draw in sketch mode
*/
void DrawFlashedShape( GERBER_DRAW_ITEM* aParent, EDA_RECT* aClipBox,
- wxDC* aDC, int aColor, int aAltColor,
+ wxDC* aDC, EDA_COLOR_T aColor, EDA_COLOR_T aAltColor,
wxPoint aShapePos, bool aFilledShape );
/**
@@ -188,7 +188,7 @@ public:
* @param aPosition = the actual shape position
*/
void DrawFlashedPolygon( GERBER_DRAW_ITEM* aParent,
- EDA_RECT* aClipBox, wxDC* aDC, int aColor,
+ EDA_RECT* aClipBox, wxDC* aDC, EDA_COLOR_T aColor,
bool aFilled, const wxPoint& aPosition );
/**
diff --git a/gerbview/draw_gerber_screen.cpp b/gerbview/draw_gerber_screen.cpp
index bbb56fd631..098d979722 100644
--- a/gerbview/draw_gerber_screen.cpp
+++ b/gerbview/draw_gerber_screen.cpp
@@ -259,7 +259,7 @@ void GBR_LAYOUT::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, GR_DRAWMODE aDrawMode,
if( gerber->m_ImageNegative )
{
// Draw background negative (i.e. in graphic layer color) for negative images.
- int color = gerbFrame->GetLayerColor( layer );
+ EDA_COLOR_T color = gerbFrame->GetLayerColor( layer );
GRSetDrawMode( &layerDC, GR_COPY );
GRFilledRect( &drawBox, plotDC, drawBox.GetX(), drawBox.GetY(),
diff --git a/gerbview/gerbview.cpp b/gerbview/gerbview.cpp
index d78b478b0d..36bbd91341 100644
--- a/gerbview/gerbview.cpp
+++ b/gerbview/gerbview.cpp
@@ -44,7 +44,7 @@
// Colors for layers and items
COLORS_DESIGN_SETTINGS g_ColorsSettings;
-extern int g_DrawBgColor;
+extern EDA_COLOR_T g_DrawBgColor;
int g_Default_GERBER_Format;
diff --git a/gerbview/gerbview_config.cpp b/gerbview/gerbview_config.cpp
index 5ae6b915af..a690359d9c 100644
--- a/gerbview/gerbview_config.cpp
+++ b/gerbview/gerbview_config.cpp
@@ -102,7 +102,7 @@ PARAM_CFG_ARRAY& GERBVIEW_FRAME::GetConfigurationSettings()
false ) );
// Default colors for layers 0 to 31
- static const int color_default[] = {
+ static const EDA_COLOR_T color_default[] = {
GREEN, BLUE, LIGHTGRAY, MAGENTA,
RED, DARKGREEN, BROWN, MAGENTA,
LIGHTGRAY, BLUE, GREEN, CYAN,
@@ -134,7 +134,7 @@ PARAM_CFG_ARRAY& GERBVIEW_FRAME::GetConfigurationSettings()
for( unsigned i = 0; i < DIM(keys); ++i )
{
- int* prm = &g_ColorsSettings.m_LayersColors[i];
+ EDA_COLOR_T* prm = &g_ColorsSettings.m_LayersColors[i];
PARAM_CFG_SETCOLOR* prm_entry =
new PARAM_CFG_SETCOLOR( true, keys[i], prm, color_default[i] );
diff --git a/gerbview/gerbview_frame.cpp b/gerbview/gerbview_frame.cpp
index 869fd806c2..24e206b7f3 100644
--- a/gerbview/gerbview_frame.cpp
+++ b/gerbview/gerbview_frame.cpp
@@ -563,9 +563,9 @@ bool GERBVIEW_FRAME::IsLayerVisible( int aLayerIndex ) const
* returns the color of a pcb visible element.
* @see enum PCB_VISIBLE
*/
-int GERBVIEW_FRAME::GetVisibleElementColor( int aItemIdVisible )
+EDA_COLOR_T GERBVIEW_FRAME::GetVisibleElementColor( int aItemIdVisible )
{
- int color = -1;
+ EDA_COLOR_T color = UNSPECIFIED_COLOR;
switch( aItemIdVisible )
{
@@ -594,7 +594,7 @@ void GERBVIEW_FRAME::SetGridVisibility( bool aVisible )
}
-void GERBVIEW_FRAME::SetVisibleElementColor( int aItemIdVisible, int aColor )
+void GERBVIEW_FRAME::SetVisibleElementColor( int aItemIdVisible, EDA_COLOR_T aColor )
{
switch( aItemIdVisible )
{
@@ -617,7 +617,7 @@ void GERBVIEW_FRAME::SetVisibleElementColor( int aItemIdVisible, int aColor )
* Function GetLayerColor
* gets a layer color for any valid layer, including non-copper ones.
*/
-int GERBVIEW_FRAME::GetLayerColor( int aLayer )
+EDA_COLOR_T GERBVIEW_FRAME::GetLayerColor( int aLayer ) const
{
return m_colorsSettings->GetLayerColor( aLayer );
}
@@ -627,7 +627,7 @@ int GERBVIEW_FRAME::GetLayerColor( int aLayer )
* Function SetLayerColor
* changes a layer color for any valid layer, including non-copper ones.
*/
-void GERBVIEW_FRAME::SetLayerColor( int aLayer, int aColor )
+void GERBVIEW_FRAME::SetLayerColor( int aLayer, EDA_COLOR_T aColor )
{
m_colorsSettings->SetLayerColor( aLayer, aColor );
}
diff --git a/gerbview/gerbview_frame.h b/gerbview/gerbview_frame.h
index 41fc77506f..98f5e348c8 100644
--- a/gerbview/gerbview_frame.h
+++ b/gerbview/gerbview_frame.h
@@ -320,21 +320,21 @@ public:
* returns the color of a pcb visible element.
* @see enum PCB_VISIBLE
*/
- int GetVisibleElementColor( int aItemIdVisible );
+ EDA_COLOR_T GetVisibleElementColor( int aItemIdVisible );
- void SetVisibleElementColor( int aItemIdVisible, int aColor );
+ void SetVisibleElementColor( int aItemIdVisible, EDA_COLOR_T aColor );
/**
* Function GetLayerColor
* gets a layer color for any valid layer, including non-copper ones.
*/
- int GetLayerColor( int aLayer );
+ EDA_COLOR_T GetLayerColor( int aLayer ) const;
/**
* Function SetLayerColor
* changes a layer color for any valid layer, including non-copper ones.
*/
- void SetLayerColor( int aLayer, int aColor );
+ void SetLayerColor( int aLayer, EDA_COLOR_T aColor );
/**
* Function ReFillLayerWidget
diff --git a/include/block_commande.h b/include/block_commande.h
index 26bc974635..c8579c1c14 100644
--- a/include/block_commande.h
+++ b/include/block_commande.h
@@ -124,7 +124,7 @@ public:
wxDC* aDC,
const wxPoint& aOffset,
GR_DRAWMODE aDrawMode,
- int aColor );
+ EDA_COLOR_T aColor );
/**
* Function PushItem
@@ -147,7 +147,7 @@ public:
*/
void ClearItemsList();
- unsigned GetCount()
+ unsigned GetCount() const
{
return m_items.GetCount();
}
diff --git a/include/class_colors_design_settings.h b/include/class_colors_design_settings.h
index 8e8dcc0d10..fe606cb389 100644
--- a/include/class_colors_design_settings.h
+++ b/include/class_colors_design_settings.h
@@ -19,10 +19,10 @@ public:
// Color options for screen display of the Printed Board and schematic:
// Common to Eeschema, Pcbnew, GerbView
- int m_LayersColors[LAYERSCOLORSBUFFERSIZE]; ///< Layer colors (tracks and graphic items)
+ EDA_COLOR_T m_LayersColors[LAYERSCOLORSBUFFERSIZE]; ///< Layer colors (tracks and graphic items)
// Common to Eeschema, Pcbnew
- int m_ItemsColors[ITEMSCOLORSBUFFERSIZE]; ///< All others items but layers
+ EDA_COLOR_T m_ItemsColors[ITEMSCOLORSBUFFERSIZE]; ///< All others items but layers
public:
COLORS_DESIGN_SETTINGS( );
@@ -32,35 +32,35 @@ public:
* @return the color for aLayer which is one of the layer indices given
* in pcbstruct.h or in schematic
*/
- int GetLayerColor( int aLayer );
+ EDA_COLOR_T GetLayerColor( int aLayer ) const;
/**
* Function SetLayerColor
* sets the color for aLayer which is one of the layer indices given
* in pcbstruct.h or in schematic
*/
- void SetLayerColor( int aLayer, int aColor );
+ void SetLayerColor( int aLayer, EDA_COLOR_T aColor );
/**
* Function GetItemColor
* @return the color for an item which is one of the item indices given
* in pcbstruct.h, enum PCB_VISIBLE or in schematic
*/
- int GetItemColor( int aItemIdx );
+ EDA_COLOR_T GetItemColor( int aItemIdx );
/**
* Function SetItemColor
* sets the color for an item which is one of the item indices given
* in pcbstruct.h, enum PCB_VISIBLE or in schematic
*/
- void SetItemColor( int aItemIdx, int aColor );
+ void SetItemColor( int aItemIdx, EDA_COLOR_T aColor );
/**
* Function SetAllColorsAs
* sets alls colors to aColor
* Usefull to create a monochrome color selection for printing purpose
*/
- void SetAllColorsAs( int aColor);
+ void SetAllColorsAs( EDA_COLOR_T aColor);
};
#endif // _COLORS_DESIGN_SETTING_H
diff --git a/include/class_drawpanel.h b/include/class_drawpanel.h
index 0b88a30ac3..059c4a7437 100644
--- a/include/class_drawpanel.h
+++ b/include/class_drawpanel.h
@@ -326,7 +326,7 @@ public:
* @param aDC - the device context to draw the cursor
* @param aColor - the color to draw the cursor
*/
- void DrawCrossHair( wxDC* aDC, int aColor = WHITE );
+ void DrawCrossHair( wxDC* aDC, EDA_COLOR_T aColor = WHITE );
// Hide the cross hair.
void CrossHairOff( wxDC* DC );
diff --git a/include/class_layer_box_selector.h b/include/class_layer_box_selector.h
index c4039d8bae..4ee711981c 100644
--- a/include/class_layer_box_selector.h
+++ b/include/class_layer_box_selector.h
@@ -34,15 +34,15 @@ public:
// Returns a color index from the layer id
// Virtual function because GerbView uses its own functions in a derived class
- virtual int GetLayerColor( int aLayerIndex ) = 0;
+ virtual EDA_COLOR_T GetLayerColor( int aLayerIndex ) const = 0;
// Returns the name of the layer id
// Virtual pure function because GerbView uses its own functions in a derived class
- virtual const wxString GetLayerName( int aLayerIndex ) = 0;
+ virtual wxString GetLayerName( int aLayerIndex ) const = 0;
// Returns true if the layer id is enabled (i.e. is it should be displayed)
// Virtual function pure because GerbView uses its own functions in a derived class
- virtual bool IsLayerEnabled( int aLayerIndex ) = 0;
+ virtual bool IsLayerEnabled( int aLayerIndex ) const = 0;
// Get Current Item #
int GetChoice();
diff --git a/include/class_sch_screen.h b/include/class_sch_screen.h
index 40bfb5c317..26f9a7b0ec 100644
--- a/include/class_sch_screen.h
+++ b/include/class_sch_screen.h
@@ -190,7 +190,7 @@ public:
* @param aColor The drawing color.
*/
void Draw( EDA_DRAW_PANEL* aCanvas, wxDC* aDC, GR_DRAWMODE aDrawMode,
- int aColor = -1 );
+ EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
/**
* Function Plot
diff --git a/include/colors.h b/include/colors.h
index 7a26ea3baa..ee33edc137 100644
--- a/include/colors.h
+++ b/include/colors.h
@@ -7,43 +7,12 @@
#include
-/* Number of colors ( 32 bit palette. ) */
-#define NBCOLOR 24
-
-#define MASKCOLOR 31 ///< mask for color index into ColorRefs[]
-
-/// Flag bit display (seen / not seen) items: (defined in the color values
-//IMB: Not used anymore #define ITEM_NOT_SHOW (1<<18) // 0x40000
-
-#define HIGHLIGHT_FLAG ( 1<<19 ) // 0x80000
-
-
-/**
- * Function SetAlpha
- * ORs in the alpha blend parameter in to a color index.
+/** The color enumeration. Also contains a flag and the alpha value in
+ * the upper bits
*/
-static inline void SetAlpha( int* aColor, int aBlend )
-{
- const int MASKALPHA = 0xFF;
-
- *aColor = (*aColor & ~(MASKALPHA << 24)) | ((aBlend & MASKALPHA) << 24);
-}
-
-
-/**
- * Function GetAlpha
- * returns the alpha blend parameter from a color index.
- */
-static inline int GetAlpha( int aColor )
-{
- const int MASKALPHA = 0xFF;
- return (aColor >> 24) & MASKALPHA;
-}
-
-
enum EDA_COLOR_T
{
- UNSPECIFIED = -1,
+ UNSPECIFIED_COLOR = -1,
BLACK = 0,
BLUE,
GREEN,
@@ -68,19 +37,72 @@ enum EDA_COLOR_T
DARKMAGENTA,
DARKBROWN,
LIGHTYELLOW,
- LASTCOLOR
+ LASTCOLOR,
+ HIGHLIGHT_FLAG = ( 1<<19 ),
+ NBCOLOR = 24, ///< Number of colors
+ MASKCOLOR = 31 ///< mask for color index into ColorRefs[]
};
+/// Checked cast. Use only when necessary (ex. I/O)
+inline EDA_COLOR_T ColorFromInt( int aColor )
+{
+ wxASSERT( aColor >= UNSPECIFIED_COLOR && aColor < LASTCOLOR );
+ return static_cast( aColor );
+}
+
+/// Return only the plain color part
+inline EDA_COLOR_T ColorGetBase( EDA_COLOR_T aColor)
+{
+ return static_cast( aColor & MASKCOLOR );
+}
+
+/// Force the color part of a color to darkdarkgray
+inline void ColorTurnToDarkDarkGray( EDA_COLOR_T *aColor )
+{
+ *aColor = static_cast( (int(*aColor) & ~MASKCOLOR) | DARKDARKGRAY );
+}
+
+inline void ColorChangeHighlightFlag( EDA_COLOR_T *aColor, bool flag )
+{
+ if( flag )
+ *aColor = static_cast( (int(*aColor) | HIGHLIGHT_FLAG ) );
+ else
+ *aColor = static_cast( (int(*aColor) & ~HIGHLIGHT_FLAG ) );
+}
+
+/**
+ * Function SetAlpha
+ * ORs in the alpha blend parameter in to a color index.
+ */
+inline void SetAlpha( EDA_COLOR_T* aColor, unsigned char aBlend )
+{
+ const unsigned char MASKALPHA = 0xFF;
+
+ *aColor = static_cast((*aColor & ~(MASKALPHA << 24))
+ | ((aBlend & MASKALPHA) << 24));
+}
+
+
+/**
+ * Function GetAlpha
+ * returns the alpha blend parameter from a color index.
+ */
+inline unsigned char GetAlpha( EDA_COLOR_T aColor )
+{
+ const unsigned char MASKALPHA = 0xFF;
+ return (aColor >> 24) & MASKALPHA;
+}
+
struct StructColors
{
unsigned char m_Blue;
unsigned char m_Green;
unsigned char m_Red;
- unsigned char m_Numcolor;
+ EDA_COLOR_T m_Numcolor;
const wxChar* m_Name;
- int m_LightColor;
+ EDA_COLOR_T m_LightColor;
};
// list of existing Colors:
@@ -95,7 +117,7 @@ extern StructColors ColorRefs[NBCOLOR];
* not supporting alpha.
* @return wxColour - given a KiCad color index with alpha value
*/
-static inline wxColour MakeColour( int aColor )
+inline wxColour MakeColour( EDA_COLOR_T aColor )
{
#if wxCHECK_VERSION(2,8,5)
int alpha = GetAlpha( aColor );
@@ -112,7 +134,4 @@ static inline wxColour MakeColour( int aColor )
);
}
-int DisplayColorFrame( wxWindow* parent, int OldColor );
-
-
#endif /* ifndef _COLORS_H */
diff --git a/include/common.h b/include/common.h
index 7bc8ba65cc..af30065d12 100644
--- a/include/common.h
+++ b/include/common.h
@@ -40,6 +40,7 @@
#include
#include
+#include
#if !wxUSE_PRINTING_ARCHITECTURE && !SWIG
# error "You must use '--enable-printarch' in your wx library configuration."
@@ -465,7 +466,7 @@ extern wxString g_Prj_Config_LocalFilename;
extern EDA_UNITS_T g_UserUnit; ///< display units
/// Draw color for moving objects.
-extern int g_GhostColor;
+extern EDA_COLOR_T g_GhostColor;
// COMMON.CPP
@@ -574,7 +575,7 @@ void InitKiCadAbout( wxAboutDialogInfo& info );
*/
time_t GetNewTimeStamp();
-int DisplayColorFrame( wxWindow* parent, int OldColor );
+EDA_COLOR_T DisplayColorFrame( wxWindow* parent, int OldColor );
int GetCommandOptions( const int argc, const char** argv,
const char* stringtst, const char** optarg,
int* optind );
diff --git a/include/eda_text.h b/include/eda_text.h
index 8dd0540f34..c93050ff9b 100644
--- a/include/eda_text.h
+++ b/include/eda_text.h
@@ -166,7 +166,7 @@ public:
void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC,
const wxPoint& aOffset, EDA_COLOR_T aColor,
GR_DRAWMODE aDrawMode, EDA_DRAW_MODE_T aDisplay_mode = LINE,
- EDA_COLOR_T aAnchor_color = UNSPECIFIED );
+ EDA_COLOR_T aAnchor_color = UNSPECIFIED_COLOR );
private:
@@ -180,7 +180,7 @@ private:
* @param aColor = text color
* @param aDrawMode = GR_OR, GR_XOR.., -1 to use the current mode.
* @param aFillMode = LINE, FILLED or SKETCH
- * @param aAnchor_color = anchor color ( UNSPECIFIED = do not draw anchor ).
+ * @param aAnchor_color = anchor color ( UNSPECIFIED_COLOR = do not draw anchor ).
* @param aText = the single line of text to draw.
* @param aPos = the position of this line ).
*/
diff --git a/include/gr_basic.h b/include/gr_basic.h
index 06cbdc977c..e8d290bb6e 100644
--- a/include/gr_basic.h
+++ b/include/gr_basic.h
@@ -73,8 +73,6 @@ inline GR_DRAWMODE operator &(const GR_DRAWMODE& a, const GR_DRAWMODE& b)
return static_cast( int( a ) & int( b ) );
}
-
-
#define GR_M_LEFT_DOWN 0x10000000
#define GR_M_RIGHT_DOWN 0x20000000
#define GR_M_MIDDLE_DOWN 0x40000000
@@ -90,7 +88,7 @@ typedef int wxPenStyle;
extern GR_DRAWMODE g_XorMode;
-extern int g_DrawBgColor;
+extern EDA_COLOR_T g_DrawBgColor;
typedef enum {
@@ -106,8 +104,8 @@ class EDA_DRAW_PANEL;
void GRSetDrawMode( wxDC* DC, GR_DRAWMODE mode );
GR_DRAWMODE GRGetDrawMode( wxDC* DC );
void GRResetPenAndBrush( wxDC* DC );
-void GRSetColorPen( wxDC* DC, int Color, int width = 1, wxPenStyle stype = wxPENSTYLE_SOLID );
-void GRSetBrush( wxDC* DC, int Color, int fill = 0 );
+void GRSetColorPen( wxDC* DC, EDA_COLOR_T Color, int width = 1, wxPenStyle stype = wxPENSTYLE_SOLID );
+void GRSetBrush( wxDC* DC, EDA_COLOR_T Color, bool fill = false );
/**
* Function GRForceBlackPen
@@ -121,23 +119,23 @@ void GRForceBlackPen( bool flagforce );
*/
bool GetGRForceBlackPenState( void );
-void GRLine( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aStart, wxPoint aEnd, int aWidth, int aColor );
-void GRLine( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2, int width, int Color );
+void GRLine( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aStart, wxPoint aEnd, int aWidth, EDA_COLOR_T aColor );
+void GRLine( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2, int width, EDA_COLOR_T Color );
void GRMixedLine( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int width, int Color );
+ int width, EDA_COLOR_T Color );
void GRDashedLine( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int width, int Color );
-void GRDashedLineTo( EDA_RECT* ClipBox, wxDC* DC, int x2, int y2, int width, int Color );
+ int width, EDA_COLOR_T Color );
+void GRDashedLineTo( EDA_RECT* ClipBox, wxDC* DC, int x2, int y2, int width, EDA_COLOR_T Color );
void GRMoveTo( int x, int y );
-void GRLineTo( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int width, int Color );
+void GRLineTo( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int width, EDA_COLOR_T Color );
void GRPoly( EDA_RECT* ClipBox, wxDC* DC, int n, wxPoint Points[], bool Fill,
- int width, int Color, int BgColor );
+ int width, EDA_COLOR_T Color, EDA_COLOR_T BgColor );
void GRBezier( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int x3, int y3, int width, int Color );
+ int x3, int y3, int width, EDA_COLOR_T Color );
void GRBezier( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int x3, int y3, int x4, int y4, int width, int Color );
+ int x3, int y3, int x4, int y4, int width, EDA_COLOR_T Color );
/**
* Function GRClosedPoly
@@ -156,8 +154,8 @@ void GRClosedPoly( EDA_RECT* ClipBox,
int aPointCount,
wxPoint aPoints[],
bool doFill,
- int aPenColor,
- int aFillColor );
+ EDA_COLOR_T aPenColor,
+ EDA_COLOR_T aFillColor );
// @todo could make these 2 closed polygons calls a single function and default
// the aPenWidth argument
@@ -181,8 +179,8 @@ void GRClosedPoly( EDA_RECT* ClipBox,
wxPoint aPoints[],
bool doFill,
int aPenWidth,
- int aPenColor,
- int aFillColor );
+ EDA_COLOR_T aPenColor,
+ EDA_COLOR_T aFillColor );
/**
@@ -198,56 +196,56 @@ void GRClosedPoly( EDA_RECT* ClipBox,
* @param aColor is an index into our color table of RGB colors.
* @see EDA_COLOR_T and colors.h
*/
-void GRCircle( EDA_RECT* ClipBox, wxDC* aDC, int x, int y, int aRadius, int aColor );
-void GRCircle( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int r, int width, int Color );
+void GRCircle( EDA_RECT* ClipBox, wxDC* aDC, int x, int y, int aRadius, EDA_COLOR_T aColor );
+void GRCircle( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int r, int width, EDA_COLOR_T Color );
void GRFilledCircle( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int r, int width,
- int Color, int BgColor );
-void GRFilledCircle( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aPos, int aRadius, int aColor );
-void GRCircle( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aPos, int aRadius, int aWidth, int aColor );
+ EDA_COLOR_T Color, EDA_COLOR_T BgColor );
+void GRFilledCircle( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aPos, int aRadius, EDA_COLOR_T aColor );
+void GRCircle( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aPos, int aRadius, int aWidth, EDA_COLOR_T aColor );
void GRArc( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int StAngle,
- int EndAngle, int r, int Color );
+ int EndAngle, int r, EDA_COLOR_T Color );
void GRArc( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int StAngle,
- int EndAngle, int r, int width, int Color );
+ int EndAngle, int r, int width, EDA_COLOR_T Color );
void GRArc1( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int xc, int yc, int Color );
+ int xc, int yc, EDA_COLOR_T Color );
void GRArc1( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int xc, int yc, int width, int Color );
+ int xc, int yc, int width, EDA_COLOR_T Color );
void GRArc1( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aStart, wxPoint aEnd,
- wxPoint aCenter, int aWidth, int aColor );
+ wxPoint aCenter, int aWidth, EDA_COLOR_T aColor );
void GRFilledArc( EDA_RECT* ClipBox, wxDC* DC, int x, int y,
- int StAngle, int EndAngle, int r, int Color, int BgColor );
+ int StAngle, int EndAngle, int r, EDA_COLOR_T Color, EDA_COLOR_T BgColor );
void GRFilledArc( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int StAngle,
- int EndAngle, int r, int width, int Color, int BgColor );
-void GRCSegm( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2, int width, int Color );
+ int EndAngle, int r, int width, EDA_COLOR_T Color, EDA_COLOR_T BgColor );
+void GRCSegm( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2, int width, EDA_COLOR_T Color );
void GRFillCSegm( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int width, int Color );
+ int width, EDA_COLOR_T Color );
void GRFilledSegment( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aStart, wxPoint aEnd,
- int aWidth, int aColor );
+ int aWidth, EDA_COLOR_T aColor );
void GRCSegm( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2,
- int width, int aPenSize, int Color );
+ int width, int aPenSize, EDA_COLOR_T Color );
void GRCSegm( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aStart, wxPoint aEnd,
- int aWidth, int aColor );
+ int aWidth, EDA_COLOR_T aColor );
-void GRSetColor( int Color );
+void GRSetColor( EDA_COLOR_T Color );
void GRSetDefaultPalette();
-int GRGetColor();
-void GRPutPixel( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int color );
+EDA_COLOR_T GRGetColor();
+void GRPutPixel( EDA_RECT* ClipBox, wxDC* DC, int x, int y, EDA_COLOR_T color );
void GRFilledRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1,
- int x2, int y2, int Color, int BgColor );
+ int x2, int y2, EDA_COLOR_T Color, EDA_COLOR_T BgColor );
void GRFilledRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1,
- int x2, int y2, int width, int Color, int BgColor );
-void GRRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2, int Color );
-void GRRect( EDA_RECT* ClipBox, wxDC* DC,const EDA_RECT& aRect, int aWidth, int Color );
+ int x2, int y2, int width, EDA_COLOR_T Color, EDA_COLOR_T BgColor );
+void GRRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1, int x2, int y2, EDA_COLOR_T Color );
+void GRRect( EDA_RECT* ClipBox, wxDC* DC,const EDA_RECT& aRect, int aWidth, EDA_COLOR_T Color );
void GRRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1,
- int x2, int y2, int width, int Color );
+ int x2, int y2, int width, EDA_COLOR_T Color );
void GRRectPs( EDA_RECT* aClipBox, wxDC* aDC,const EDA_RECT& aRect,
- int aWidth, int aColor, wxPenStyle aStyle = wxPENSTYLE_SOLID );
+ int aWidth, EDA_COLOR_T aColor, wxPenStyle aStyle = wxPENSTYLE_SOLID );
void GRSFilledRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1,
- int x2, int y2, int width, int Color, int BgColor );
+ int x2, int y2, int width, EDA_COLOR_T Color, EDA_COLOR_T BgColor );
/**
* Function GRLineArray
@@ -260,6 +258,6 @@ void GRSFilledRect( EDA_RECT* ClipBox, wxDC* DC, int x1, int y1,
* @see EDA_COLOR_T and colors.h
*/
void GRLineArray( EDA_RECT* aClipBox, wxDC* aDC,std::vector& aLines,
- int aWidth, int aColor );
+ int aWidth, EDA_COLOR_T aColor );
#endif /* define GR_BASIC */
diff --git a/include/param_config.h b/include/param_config.h
index a1d83c5309..a98ca1c607 100644
--- a/include/param_config.h
+++ b/include/param_config.h
@@ -9,7 +9,8 @@
#include
#include
#include
-
+#include
+#include
@@ -26,13 +27,6 @@ enum paramcfg_id {
PARAM_FIELDNAME_LIST
};
-#define MAX_COLOR 0x8001F
-#define IS_VALID_COLOR( c ) ( ( c >= 0 ) && ( c <= 0x8001F ) )
-
-#define INT_MINVAL 0x80000000
-#define INT_MAXVAL 0x7FFFFFFF
-
-
/**
* Class PARAM_CFG_BASE
@@ -84,10 +78,14 @@ public:
public:
PARAM_CFG_INT( const wxChar* ident, int* ptparam,
- int default_val = 0, int min = INT_MINVAL, int max = INT_MAXVAL,
+ int default_val = 0,
+ int min = std::numeric_limits::min(),
+ int max = std::numeric_limits::max(),
const wxChar* group = NULL );
PARAM_CFG_INT( bool Insetup, const wxChar* ident, int* ptparam,
- int default_val = 0, int min = INT_MINVAL, int max = INT_MAXVAL,
+ int default_val = 0,
+ int min = std::numeric_limits::min(),
+ int max = std::numeric_limits::max(),
const wxChar* group = NULL );
virtual void ReadParam( wxConfigBase* aConfig ) const;
@@ -102,14 +100,14 @@ public:
class PARAM_CFG_SETCOLOR : public PARAM_CFG_BASE
{
public:
- int* m_Pt_param; ///< Pointer to the parameter value
- int m_Default; ///< The default value of the parameter
+ EDA_COLOR_T* m_Pt_param; ///< Pointer to the parameter value
+ EDA_COLOR_T m_Default; ///< The default value of the parameter
public:
- PARAM_CFG_SETCOLOR( const wxChar* ident, int* ptparam,
- int default_val, const wxChar* group = NULL );
- PARAM_CFG_SETCOLOR( bool Insetup, const wxChar* ident, int* ptparam,
- int default_val, const wxChar* group = NULL );
+ PARAM_CFG_SETCOLOR( const wxChar* ident, EDA_COLOR_T* ptparam,
+ EDA_COLOR_T default_val, const wxChar* group = NULL );
+ PARAM_CFG_SETCOLOR( bool Insetup, const wxChar* ident, EDA_COLOR_T* ptparam,
+ EDA_COLOR_T default_val, const wxChar* group = NULL );
virtual void ReadParam( wxConfigBase* aConfig ) const;
virtual void SaveParam( wxConfigBase* aConfig ) const;
diff --git a/include/sch_item_struct.h b/include/sch_item_struct.h
index 2d156484c3..42e6496715 100644
--- a/include/sch_item_struct.h
+++ b/include/sch_item_struct.h
@@ -168,7 +168,7 @@ public:
wxDC* aDC,
const wxPoint& aOffset,
GR_DRAWMODE aDrawMode,
- int aColor = -1 ) = 0;
+ EDA_COLOR_T aColor = UNSPECIFIED_COLOR ) = 0;
/**
* Function Move
diff --git a/include/wxPcbStruct.h b/include/wxPcbStruct.h
index fe8ebcb289..accb2eb734 100644
--- a/include/wxPcbStruct.h
+++ b/include/wxPcbStruct.h
@@ -281,7 +281,7 @@ public:
* Function IsGridVisible() , virtual
* @return true if the grid must be shown
*/
- virtual bool IsGridVisible();
+ virtual bool IsGridVisible() const;
/**
* Function SetGridVisibility() , virtual
@@ -295,13 +295,13 @@ public:
* Function GetGridColor() , virtual
* @return the color of the grid
*/
- virtual int GetGridColor();
+ virtual EDA_COLOR_T GetGridColor() const;
/**
* Function SetGridColor() , virtual
* @param aColor = the new color of the grid
*/
- virtual void SetGridColor(int aColor);
+ virtual void SetGridColor(EDA_COLOR_T aColor);
// Configurations:
void InstallConfigFrame();
@@ -513,7 +513,7 @@ public:
* @return bool - true if the element is visible.
* @see enum PCB_VISIBLE
*/
- bool IsElementVisible( int aElement );
+ bool IsElementVisible( int aElement ) const;
/**
* Function SetElementVisibility
diff --git a/include/wxstruct.h b/include/wxstruct.h
index 8e25273b92..0af8992150 100644
--- a/include/wxstruct.h
+++ b/include/wxstruct.h
@@ -378,7 +378,7 @@ protected:
EDA_HOTKEY_CONFIG* m_HotkeysZoomAndGridList;
int m_LastGridSizeId;
bool m_DrawGrid; // hide/Show grid
- int m_GridColor; // Grid color
+ EDA_COLOR_T m_GridColor; // Grid color
/// The area to draw on.
EDA_DRAW_PANEL* m_canvas;
@@ -533,7 +533,7 @@ public:
* Function IsGridVisible() , virtual
* @return true if the grid must be shown
*/
- virtual bool IsGridVisible()
+ virtual bool IsGridVisible() const
{
return m_DrawGrid;
}
@@ -552,7 +552,7 @@ public:
* Function GetGridColor() , virtual
* @return the color of the grid
*/
- virtual int GetGridColor()
+ virtual EDA_COLOR_T GetGridColor() const
{
return m_GridColor;
}
@@ -561,7 +561,7 @@ public:
* Function SetGridColor() , virtual
* @param aColor = the new color of the grid
*/
- virtual void SetGridColor( int aColor )
+ virtual void SetGridColor( EDA_COLOR_T aColor )
{
m_GridColor = aColor;
}
@@ -574,7 +574,7 @@ public:
* @param aPosition The position to test.
* @return The wxPoint of the appropriate cursor position.
*/
- wxPoint GetGridPosition( const wxPoint& aPosition );
+ wxPoint GetGridPosition( const wxPoint& aPosition ) const;
/**
* Command event handler for selecting grid sizes.
@@ -694,7 +694,7 @@ public:
* @return a wxString containing the message locator like A3 or B6
* (or ?? if out of page limits)
*/
- const wxString GetXYSheetReferences( const wxPoint& aPosition );
+ const wxString GetXYSheetReferences( const wxPoint& aPosition ) const;
void DisplayToolMsg( const wxString& msg );
virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg ) = 0;
@@ -816,7 +816,7 @@ public:
* @param pad - Number of spaces to pad between messages (default = 4).
*/
void AppendMsgPanel( const wxString& textUpper, const wxString& textLower,
- int color, int pad = 6 );
+ EDA_COLOR_T color, int pad = 6 );
/**
* Clear all messages from the message panel.
@@ -843,7 +843,7 @@ public:
* the current user unit is millimeters.
* @return The converted string for display in user interface elements.
*/
- wxString CoordinateToString( int aValue, bool aConvertToMils = false );
+ wxString CoordinateToString( int aValue, bool aConvertToMils = false ) const;
/**
* Function LengthDoubleToString
@@ -854,7 +854,7 @@ public:
* the current user unit is millimeters.
* @return The converted string for display in user interface elements.
*/
- wxString LengthDoubleToString( double aValue, bool aConvertToMils = false );
+ wxString LengthDoubleToString( double aValue, bool aConvertToMils = false ) const;
DECLARE_EVENT_TABLE()
};
@@ -871,25 +871,7 @@ struct EDA_MSG_ITEM
int m_LowerY;
wxString m_UpperText;
wxString m_LowerText;
- int m_Color;
-
- /**
- * Function operator=
- * overload the assignment operator so that the wxStrings get copied
- * properly when copying a EDA_MSG_ITEM.
- * No, actually I'm not sure this needed, C++ compiler may auto-generate it.
- */
- EDA_MSG_ITEM& operator=( const EDA_MSG_ITEM& rv )
- {
- m_X = rv.m_X;
- m_UpperY = rv.m_UpperY;
- m_LowerY = rv.m_LowerY;
- m_UpperText = rv.m_UpperText; // overloaded operator=()
- m_LowerText = rv.m_LowerText; // overloaded operator=()
- m_Color = rv.m_Color;
-
- return * this;
- }
+ EDA_COLOR_T m_Color;
};
@@ -917,7 +899,7 @@ protected:
/**
* Calculate the width and height of a text string using the system UI font.
*/
- wxSize computeTextSize( const wxString& text );
+ wxSize computeTextSize( const wxString& text ) const;
public:
EDA_MSG_PANEL( EDA_DRAW_FRAME* parent, int id, const wxPoint& pos, const wxSize& size );
@@ -944,7 +926,7 @@ public:
* @param aColor Color of the text to display.
*/
void SetMessage( int aXPosition, const wxString& aUpperText,
- const wxString& aLowerText, int aColor );
+ const wxString& aLowerText, EDA_COLOR_T aColor );
/**
* Append a message to the message panel.
@@ -960,7 +942,7 @@ public:
* @param pad - Number of spaces to pad between messages (default = 4).
*/
void AppendMessage( const wxString& textUpper, const wxString& textLower,
- int color, int pad = 6 );
+ EDA_COLOR_T color, int pad = 6 );
DECLARE_EVENT_TABLE()
};
diff --git a/pcbnew/autorouter/autoplac.cpp b/pcbnew/autorouter/autoplac.cpp
index 16f8b14958..3d8859bd27 100644
--- a/pcbnew/autorouter/autoplac.cpp
+++ b/pcbnew/autorouter/autoplac.cpp
@@ -373,7 +373,8 @@ end_of_tst:
void PCB_EDIT_FRAME::DrawInfoPlace( wxDC* DC )
{
- int color, ii, jj;
+ int ii, jj;
+ EDA_COLOR_T color;
int ox, oy;
MATRIX_CELL top_state, bottom_state;
@@ -896,7 +897,7 @@ double PCB_EDIT_FRAME::Compute_Ratsnest_PlaceModule( wxDC* DC )
cout = 0;
- int color = g_ColorsSettings.GetItemColor(RATSNEST_VISIBLE);
+ EDA_COLOR_T color = g_ColorsSettings.GetItemColor(RATSNEST_VISIBLE);
if( AutoPlaceShowAll )
GRSetDrawMode( DC, GR_XOR );
diff --git a/pcbnew/autorouter/autorout.cpp b/pcbnew/autorouter/autorout.cpp
index 7ea56d1768..76e33038c0 100644
--- a/pcbnew/autorouter/autorout.cpp
+++ b/pcbnew/autorouter/autorout.cpp
@@ -220,7 +220,8 @@ void PCB_EDIT_FRAME::Reset_Noroutable( wxDC* DC )
/* DEBUG Function: displays the routing matrix */
void DisplayRoutingMatrix( EDA_DRAW_PANEL* panel, wxDC* DC )
{
- int dcell0, dcell1 = 0, color;
+ int dcell0, dcell1 = 0;
+ EDA_COLOR_T color;
int maxi = 600 / RoutingMatrix.m_Ncols;
maxi = ( maxi * 3 ) / 4;
@@ -234,7 +235,7 @@ void DisplayRoutingMatrix( EDA_DRAW_PANEL* panel, wxDC* DC )
{
for( int row = 0; row < RoutingMatrix.m_Nrows; row++ )
{
- color = 0;
+ color = BLACK;
dcell0 = RoutingMatrix.GetCell( row, col, BOTTOM );
if( dcell0 & HOLE )
@@ -244,7 +245,7 @@ void DisplayRoutingMatrix( EDA_DRAW_PANEL* panel, wxDC* DC )
// dcell1 = GetCell( row, col, TOP );
if( dcell1 & HOLE )
- color |= RED;
+ color = RED;
// dcell0 |= dcell1;
diff --git a/pcbnew/autorouter/solve.cpp b/pcbnew/autorouter/solve.cpp
index 17f9ae35f6..a7f907c6e7 100644
--- a/pcbnew/autorouter/solve.cpp
+++ b/pcbnew/autorouter/solve.cpp
@@ -333,7 +333,7 @@ int PCB_EDIT_FRAME::Solve( wxDC* DC, int aLayersCount )
/* Draw segment. */
GRLine( m_canvas->GetClipBox(), DC,
segm_oX, segm_oY, segm_fX, segm_fY,
- 0, WHITE | GR_XOR );
+ 0, WHITE );
pt_cur_ch->m_PadStart->Draw( m_canvas, DC, GR_OR | GR_HIGHLIGHT );
pt_cur_ch->m_PadEnd->Draw( m_canvas, DC, GR_OR | GR_HIGHLIGHT );
diff --git a/pcbnew/class_board.cpp b/pcbnew/class_board.cpp
index 962fc08386..0909d49762 100644
--- a/pcbnew/class_board.cpp
+++ b/pcbnew/class_board.cpp
@@ -723,9 +723,9 @@ void BOARD::SetElementVisibility( int aPCB_VISIBLE, bool isEnabled )
}
-int BOARD::GetVisibleElementColor( int aPCB_VISIBLE )
+EDA_COLOR_T BOARD::GetVisibleElementColor( int aPCB_VISIBLE )
{
- int color = -1;
+ EDA_COLOR_T color = UNSPECIFIED_COLOR;
switch( aPCB_VISIBLE )
{
@@ -751,7 +751,7 @@ int BOARD::GetVisibleElementColor( int aPCB_VISIBLE )
}
-void BOARD::SetVisibleElementColor( int aPCB_VISIBLE, int aColor )
+void BOARD::SetVisibleElementColor( int aPCB_VISIBLE, EDA_COLOR_T aColor )
{
switch( aPCB_VISIBLE )
{
@@ -775,13 +775,13 @@ void BOARD::SetVisibleElementColor( int aPCB_VISIBLE, int aColor )
}
-void BOARD::SetLayerColor( int aLayer, int aColor )
+void BOARD::SetLayerColor( int aLayer, EDA_COLOR_T aColor )
{
GetColorsSettings()->SetLayerColor( aLayer, aColor );
}
-int BOARD::GetLayerColor( int aLayer )
+EDA_COLOR_T BOARD::GetLayerColor( int aLayer ) const
{
return GetColorsSettings()->GetLayerColor( aLayer );
}
diff --git a/pcbnew/class_board.h b/pcbnew/class_board.h
index 08dee42524..37c33ff5a2 100644
--- a/pcbnew/class_board.h
+++ b/pcbnew/class_board.h
@@ -574,9 +574,9 @@ public:
* returns the color of a pcb visible element.
* @see enum PCB_VISIBLE
*/
- int GetVisibleElementColor( int aPCB_VISIBLE );
+ EDA_COLOR_T GetVisibleElementColor( int aPCB_VISIBLE );
- void SetVisibleElementColor( int aPCB_VISIBLE, int aColor );
+ void SetVisibleElementColor( int aPCB_VISIBLE, EDA_COLOR_T aColor );
/**
* Function GetDesignSettings
@@ -673,13 +673,13 @@ public:
* Function SetLayerColor
* changes a layer color for any valid layer, including non-copper ones.
*/
- void SetLayerColor( int aLayer, int aColor );
+ void SetLayerColor( int aLayer, EDA_COLOR_T aColor );
/**
* Function GetLayerColor
* gets a layer color for any valid layer, including non-copper ones.
*/
- int GetLayerColor( int aLayer );
+ EDA_COLOR_T GetLayerColor( int aLayer ) const;
/** Functions to get some items count */
int GetNumSegmTrack() const;
diff --git a/pcbnew/class_dimension.cpp b/pcbnew/class_dimension.cpp
index 26847def3e..31aa1080fa 100644
--- a/pcbnew/class_dimension.cpp
+++ b/pcbnew/class_dimension.cpp
@@ -354,7 +354,8 @@ void DIMENSION::AdjustDimensionDetails( bool aDoNotChangeText )
void DIMENSION::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE mode_color,
const wxPoint& offset )
{
- int ox, oy, typeaff, width, gcolor;
+ int ox, oy, typeaff, width;
+ EDA_COLOR_T gcolor;
ox = -offset.x;
oy = -offset.y;
diff --git a/pcbnew/class_drawsegment.cpp b/pcbnew/class_drawsegment.cpp
index d0de057b87..6761f8e73e 100644
--- a/pcbnew/class_drawsegment.cpp
+++ b/pcbnew/class_drawsegment.cpp
@@ -172,9 +172,10 @@ void DRAWSEGMENT::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
{
int ux0, uy0, dx, dy;
int l_trace;
- int color, mode;
+ int mode;
int radius;
int curr_layer = ( (PCB_SCREEN*) panel->GetScreen() )->m_Active_Layer;
+ EDA_COLOR_T color;
BOARD * brd = GetBoard( );
@@ -186,10 +187,7 @@ void DRAWSEGMENT::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
if( ( draw_mode & GR_ALLOW_HIGHCONTRAST ) && DisplayOpt.ContrastModeDisplay )
{
if( !IsOnLayer( curr_layer ) && !IsOnLayer( EDGE_N ) )
- {
- color &= ~MASKCOLOR;
- color |= DARKDARKGRAY;
- }
+ ColorTurnToDarkDarkGray( &color );
}
diff --git a/pcbnew/class_edge_mod.cpp b/pcbnew/class_edge_mod.cpp
index 8816cc435f..23ad4714e2 100644
--- a/pcbnew/class_edge_mod.cpp
+++ b/pcbnew/class_edge_mod.cpp
@@ -99,7 +99,7 @@ void EDGE_MODULE::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
const wxPoint& offset )
{
int ux0, uy0, dx, dy, radius, StAngle, EndAngle;
- int color, type_trace;
+ int type_trace;
int typeaff;
int curr_layer = ( (PCB_SCREEN*) panel->GetScreen() )->m_Active_Layer;
PCB_BASE_FRAME* frame;
@@ -114,15 +114,12 @@ void EDGE_MODULE::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
if( brd->IsLayerVisible( m_Layer ) == false )
return;
- color = brd->GetLayerColor( m_Layer );
+ EDA_COLOR_T color = brd->GetLayerColor( m_Layer );
if(( draw_mode & GR_ALLOW_HIGHCONTRAST ) && DisplayOpt.ContrastModeDisplay )
{
if( !IsOnLayer( curr_layer ) )
- {
- color &= ~MASKCOLOR;
- color |= DARKDARKGRAY;
- }
+ ColorTurnToDarkDarkGray( &color );
}
diff --git a/pcbnew/class_mire.cpp b/pcbnew/class_mire.cpp
index bd44948c34..ccb7210cf3 100644
--- a/pcbnew/class_mire.cpp
+++ b/pcbnew/class_mire.cpp
@@ -97,7 +97,7 @@ void PCB_TARGET::Copy( PCB_TARGET* source )
void PCB_TARGET::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE mode_color,
const wxPoint& offset )
{
- int radius, ox, oy, gcolor, width;
+ int radius, ox, oy, width;
int dx1, dx2, dy1, dy2;
int typeaff;
@@ -109,7 +109,7 @@ void PCB_TARGET::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE mode_color,
if( brd->IsLayerVisible( m_Layer ) == false )
return;
- gcolor = brd->GetLayerColor( m_Layer );
+ EDA_COLOR_T gcolor = brd->GetLayerColor( m_Layer );
GRSetDrawMode( DC, mode_color );
typeaff = DisplayOpt.DisplayDrawItems;
diff --git a/pcbnew/class_module.cpp b/pcbnew/class_module.cpp
index 2a73c0e820..2cb21e53b7 100644
--- a/pcbnew/class_module.cpp
+++ b/pcbnew/class_module.cpp
@@ -190,7 +190,7 @@ void MODULE::DrawAncre( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& offset,
if( GetBoard()->IsElementVisible( ANCHOR_VISIBLE ) )
{
- int color = g_ColorsSettings.GetItemColor( ANCHOR_VISIBLE );
+ EDA_COLOR_T color = g_ColorsSettings.GetItemColor( ANCHOR_VISIBLE );
GRLine( panel->GetClipBox(), DC,
m_Pos.x - offset.x - anchor_size, m_Pos.y - offset.y,
m_Pos.x - offset.x + anchor_size, m_Pos.y - offset.y,
diff --git a/pcbnew/class_netinfo_item.cpp b/pcbnew/class_netinfo_item.cpp
index 5099f0779e..c850ddf6e4 100644
--- a/pcbnew/class_netinfo_item.cpp
+++ b/pcbnew/class_netinfo_item.cpp
@@ -199,7 +199,7 @@ void RATSNEST_ITEM::Draw( EDA_DRAW_PANEL* panel,
{
GRSetDrawMode( DC, aDrawMode );
- int color = g_ColorsSettings.GetItemColor(RATSNEST_VISIBLE);
+ EDA_COLOR_T color = g_ColorsSettings.GetItemColor(RATSNEST_VISIBLE);
GRLine( panel->GetClipBox(), DC,
m_PadStart->GetPosition() - aOffset,
diff --git a/pcbnew/class_pad.h b/pcbnew/class_pad.h
index 7c5043bc01..1ba650471e 100644
--- a/pcbnew/class_pad.h
+++ b/pcbnew/class_pad.h
@@ -70,10 +70,10 @@ class PAD_DRAWINFO
public:
EDA_DRAW_PANEL* m_DrawPanel; // the EDA_DRAW_PANEL used to draw a PAD ; can be null
GR_DRAWMODE m_DrawMode; // the draw mode
- int m_Color; // color used to draw the pad shape , from pad layers and
+ EDA_COLOR_T m_Color; // color used to draw the pad shape , from pad layers and
// visible layers
- int m_HoleColor; // color used to draw the pad hole
- int m_NPHoleColor; // color used to draw a pad Not Plated hole
+ EDA_COLOR_T m_HoleColor; // color used to draw the pad hole
+ EDA_COLOR_T m_NPHoleColor; // color used to draw a pad Not Plated hole
int m_PadClearance; // clearance value, used to draw the pad area outlines
wxSize m_Mask_margin; // margin, used to draw solder paste when only one layer is shown
bool m_Display_padnum; // true to show pad number
diff --git a/pcbnew/class_pad_draw_functions.cpp b/pcbnew/class_pad_draw_functions.cpp
index d2c7aa07cd..d139dddf62 100644
--- a/pcbnew/class_pad_draw_functions.cpp
+++ b/pcbnew/class_pad_draw_functions.cpp
@@ -78,7 +78,7 @@ PAD_DRAWINFO::PAD_DRAWINFO()
void D_PAD::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, GR_DRAWMODE aDraw_mode,
const wxPoint& aOffset )
{
- int color = 0;
+ EDA_COLOR_T color = ColorFromInt(0); // XXX EVIL (it will be ORed later)
wxSize mask_margin; // margin (clearance) used for some non copper layers
#ifdef SHOW_PADMASK_REAL_SIZE_AND_COLOR
@@ -150,10 +150,11 @@ void D_PAD::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, GR_DRAWMODE aDraw_mode,
if( m_layerMask & LAYER_BACK )
{
- color |= brd->GetVisibleElementColor( PAD_BK_VISIBLE );
+ // XXX EVIL merge
+ color = ColorFromInt( color | brd->GetVisibleElementColor( PAD_BK_VISIBLE ) );
}
- if( color == 0 ) /* Not on copper layer */
+ if( color == 0 ) // Not on copper layer XXX EVIL check
{
// If the pad in on only one tech layer, use the layer color else use DARKGRAY
int mask_non_copper_layers = m_layerMask & ~ALL_CU_LAYERS;
@@ -253,10 +254,7 @@ void D_PAD::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, GR_DRAWMODE aDraw_mode,
|| ( ( 1 << screen->m_Active_Layer ) & ( LAYER_BACK | LAYER_FRONT ) ) )
{
if( !IsOnLayer( screen->m_Active_Layer ) )
- {
- color &= ~MASKCOLOR;
- color |= DARKDARKGRAY;
- }
+ ColorTurnToDarkDarkGray( &color );
}
// else routing between an internal signal layer and some other
// layer. Grey out all PAD_SMD pads not on current or the single
@@ -265,8 +263,7 @@ void D_PAD::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, GR_DRAWMODE aDraw_mode,
&& !IsOnLayer( routeTop )
&& !IsOnLayer( routeBot ) )
{
- color &= ~MASKCOLOR;
- color |= DARKDARKGRAY;
+ ColorTurnToDarkDarkGray( &color );
}
}
// when not edting tracks, show PAD_SMD components not on active layer
@@ -274,10 +271,7 @@ void D_PAD::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, GR_DRAWMODE aDraw_mode,
else
{
if( !IsOnLayer( screen->m_Active_Layer ) )
- {
- color &= ~MASKCOLOR;
- color |= DARKDARKGRAY;
- }
+ ColorTurnToDarkDarkGray( &color );
}
}
@@ -336,12 +330,7 @@ void D_PAD::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, GR_DRAWMODE aDraw_mode,
if( aDraw_mode & GR_HIGHLIGHT )
- {
- if( aDraw_mode & GR_AND )
- color &= ~HIGHLIGHT_FLAG;
- else
- color |= HIGHLIGHT_FLAG;
- }
+ ColorChangeHighlightFlag( &color, !(aDraw_mode & GR_AND) );
if( color & HIGHLIGHT_FLAG )
color = ColorRefs[color & MASKCOLOR].m_LightColor;
@@ -505,7 +494,7 @@ void D_PAD::DrawShape( EDA_RECT* aClipBox, wxDC* aDC, PAD_DRAWINFO& aDrawInfo )
else
GRSetDrawMode( aDC, GR_XOR );
- int hole_color = aDrawInfo.m_HoleColor;
+ EDA_COLOR_T hole_color = aDrawInfo.m_HoleColor;
if( aDrawInfo. m_ShowNotPlatedHole ) // Draw a specific hole color
hole_color = aDrawInfo.m_NPHoleColor;
@@ -556,7 +545,7 @@ void D_PAD::DrawShape( EDA_RECT* aClipBox, wxDC* aDC, PAD_DRAWINFO& aDrawInfo )
if( m_Netname.IsEmpty() && aDrawInfo.m_ShowNCMark )
{
int dx0 = MIN( halfsize.x, halfsize.y );
- int nc_color = BLUE;
+ EDA_COLOR_T nc_color = BLUE;
if( m_layerMask & LAYER_FRONT ) /* Draw \ */
GRLine( aClipBox, aDC, holepos.x - dx0, holepos.y - dx0,
diff --git a/pcbnew/class_pcb_layer_box_selector.cpp b/pcbnew/class_pcb_layer_box_selector.cpp
index 4dc9f1a331..a5f138b3fd 100644
--- a/pcbnew/class_pcb_layer_box_selector.cpp
+++ b/pcbnew/class_pcb_layer_box_selector.cpp
@@ -82,7 +82,7 @@ void PCB_LAYER_BOX_SELECTOR::Resync()
}
// Returns true if the layer id is enabled (i.e. is it should be displayed)
-bool PCB_LAYER_BOX_SELECTOR::IsLayerEnabled( int aLayerIndex )
+bool PCB_LAYER_BOX_SELECTOR::IsLayerEnabled( int aLayerIndex ) const
{
PCB_BASE_FRAME* pcbFrame = (PCB_BASE_FRAME*) GetParent()->GetParent();
BOARD* board = pcbFrame->GetBoard();
@@ -92,7 +92,7 @@ bool PCB_LAYER_BOX_SELECTOR::IsLayerEnabled( int aLayerIndex )
}
// Returns a color index from the layer id
-int PCB_LAYER_BOX_SELECTOR::GetLayerColor( int aLayerIndex )
+EDA_COLOR_T PCB_LAYER_BOX_SELECTOR::GetLayerColor( int aLayerIndex ) const
{
PCB_BASE_FRAME* pcbFrame = (PCB_BASE_FRAME*) GetParent()->GetParent();
BOARD* board = pcbFrame->GetBoard();
@@ -102,7 +102,7 @@ int PCB_LAYER_BOX_SELECTOR::GetLayerColor( int aLayerIndex )
}
// Returns the name of the layer id
-const wxString PCB_LAYER_BOX_SELECTOR::GetLayerName( int aLayerIndex )
+wxString PCB_LAYER_BOX_SELECTOR::GetLayerName( int aLayerIndex ) const
{
PCB_BASE_FRAME* pcbFrame = (PCB_BASE_FRAME*) GetParent()->GetParent();
BOARD* board = pcbFrame->GetBoard();
diff --git a/pcbnew/class_pcb_layer_box_selector.h b/pcbnew/class_pcb_layer_box_selector.h
index 82865cd023..790988fd07 100644
--- a/pcbnew/class_pcb_layer_box_selector.h
+++ b/pcbnew/class_pcb_layer_box_selector.h
@@ -40,15 +40,15 @@ public:
// Returns a color index from the layer id
// Virtual function
- int GetLayerColor( int aLayerIndex );
+ EDA_COLOR_T GetLayerColor( int aLayerIndex ) const;
// Returns true if the layer id is enabled (i.e. is it should be displayed)
// Virtual function
- bool IsLayerEnabled( int aLayerIndex );
+ bool IsLayerEnabled( int aLayerIndex ) const;
// Returns the name of the layer id
// Virtual function
- const wxString GetLayerName( int aLayerIndex );
+ wxString GetLayerName( int aLayerIndex ) const;
};
#define DECLARE_LAYERS_HOTKEY(list) int list[LAYER_COUNT] = \
diff --git a/pcbnew/class_pcb_layer_widget.cpp b/pcbnew/class_pcb_layer_widget.cpp
index 3cd7ec006b..819a589f20 100644
--- a/pcbnew/class_pcb_layer_widget.cpp
+++ b/pcbnew/class_pcb_layer_widget.cpp
@@ -66,11 +66,11 @@ const LAYER_WIDGET::ROW PCB_LAYER_WIDGET::s_render_rows[] = {
RR( _( "Anchors" ), ANCHOR_VISIBLE, WHITE, _( "Show footprint and text origins as a cross" ) ),
RR( _( "Grid" ), GRID_VISIBLE, WHITE, _( "Show the (x,y) grid dots" ) ),
- RR( _( "No-Connects" ), NO_CONNECTS_VISIBLE, -1, _( "Show a marker on pads which have no net connected" ) ),
- RR( _( "Modules Front" ), MOD_FR_VISIBLE, -1, _( "Show footprints that are on board's front") ),
- RR( _( "Modules Back" ), MOD_BK_VISIBLE, -1, _( "Show footprints that are on board's back") ),
- RR( _( "Values" ), MOD_VALUES_VISIBLE, -1, _( "Show footprint's values") ),
- RR( _( "References" ), MOD_REFERENCES_VISIBLE, -1, _( "Show footprint's references") ),
+ RR( _( "No-Connects" ), NO_CONNECTS_VISIBLE, UNSPECIFIED_COLOR, _( "Show a marker on pads which have no net connected" ) ),
+ RR( _( "Modules Front" ), MOD_FR_VISIBLE, UNSPECIFIED_COLOR, _( "Show footprints that are on board's front") ),
+ RR( _( "Modules Back" ), MOD_BK_VISIBLE, UNSPECIFIED_COLOR, _( "Show footprints that are on board's back") ),
+ RR( _( "Values" ), MOD_VALUES_VISIBLE, UNSPECIFIED_COLOR, _( "Show footprint's values") ),
+ RR( _( "References" ), MOD_REFERENCES_VISIBLE, UNSPECIFIED_COLOR, _( "Show footprint's references") ),
};
@@ -324,7 +324,7 @@ void PCB_LAYER_WIDGET::ReFill()
//------------------------------------------------
-void PCB_LAYER_WIDGET::OnLayerColorChange( int aLayer, int aColor )
+void PCB_LAYER_WIDGET::OnLayerColorChange( int aLayer, EDA_COLOR_T aColor )
{
myframe->GetBoard()->SetLayerColor( aLayer, aColor );
myframe->ReCreateLayerBox( NULL );
@@ -362,7 +362,7 @@ void PCB_LAYER_WIDGET::OnLayerVisible( int aLayer, bool isVisible, bool isFinal
myframe->GetCanvas()->Refresh();
}
-void PCB_LAYER_WIDGET::OnRenderColorChange( int aId, int aColor )
+void PCB_LAYER_WIDGET::OnRenderColorChange( int aId, EDA_COLOR_T aColor )
{
myframe->GetBoard()->SetVisibleElementColor( aId, aColor );
myframe->GetCanvas()->Refresh();
diff --git a/pcbnew/class_pcb_layer_widget.h b/pcbnew/class_pcb_layer_widget.h
index 13f3a85007..8fa09595b5 100644
--- a/pcbnew/class_pcb_layer_widget.h
+++ b/pcbnew/class_pcb_layer_widget.h
@@ -82,10 +82,10 @@ public:
void SetLayersManagerTabsText();
//----------------
- void OnLayerColorChange( int aLayer, int aColor );
+ void OnLayerColorChange( int aLayer, EDA_COLOR_T aColor );
bool OnLayerSelect( int aLayer );
void OnLayerVisible( int aLayer, bool isVisible, bool isFinal );
- void OnRenderColorChange( int aId, int aColor );
+ void OnRenderColorChange( int aId, EDA_COLOR_T aColor );
void OnRenderEnable( int aId, bool isEnabled );
//---------------
diff --git a/pcbnew/class_pcb_text.cpp b/pcbnew/class_pcb_text.cpp
index 189f1dcc8b..d4164ddd72 100644
--- a/pcbnew/class_pcb_text.cpp
+++ b/pcbnew/class_pcb_text.cpp
@@ -89,20 +89,20 @@ void TEXTE_PCB::Draw( EDA_DRAW_PANEL* panel, wxDC* DC,
if( brd->IsLayerVisible( m_Layer ) == false )
return;
- int color = brd->GetLayerColor( m_Layer );
+ EDA_COLOR_T color = brd->GetLayerColor( m_Layer );
EDA_DRAW_MODE_T fillmode = FILLED;
if( DisplayOpt.DisplayDrawItems == SKETCH )
fillmode = SKETCH;
- int anchor_color = UNSPECIFIED;
+ EDA_COLOR_T anchor_color = UNSPECIFIED_COLOR;
if( brd->IsElementVisible( ANCHOR_VISIBLE ) )
anchor_color = brd->GetVisibleElementColor( ANCHOR_VISIBLE );
- EDA_TEXT::Draw( panel, DC, offset, (EDA_COLOR_T) color,
- DrawMode, fillmode, (EDA_COLOR_T) anchor_color );
+ EDA_TEXT::Draw( panel, DC, offset, color,
+ DrawMode, fillmode, anchor_color );
}
diff --git a/pcbnew/class_text_mod.cpp b/pcbnew/class_text_mod.cpp
index 599cc25a6c..325660ce70 100644
--- a/pcbnew/class_text_mod.cpp
+++ b/pcbnew/class_text_mod.cpp
@@ -238,7 +238,7 @@ EDA_RECT TEXTE_MODULE::GetBoundingBox() const
void TEXTE_MODULE::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
const wxPoint& offset )
{
- int width, color, orient;
+ int width, orient;
wxSize size;
wxPoint pos; // Center of text
PCB_BASE_FRAME* frame;
@@ -268,6 +268,7 @@ void TEXTE_MODULE::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
GRSetDrawMode( DC, draw_mode );
BOARD * brd = GetBoard( );
+ EDA_COLOR_T color;
if( brd->IsElementVisible( ANCHOR_VISIBLE ) )
{
color = brd->GetVisibleElementColor(ANCHOR_VISIBLE);
diff --git a/pcbnew/class_track.cpp b/pcbnew/class_track.cpp
index 4b70775747..9d070df617 100644
--- a/pcbnew/class_track.cpp
+++ b/pcbnew/class_track.cpp
@@ -586,7 +586,6 @@ void TRACK::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
const wxPoint& aOffset )
{
int l_trace;
- int color;
int radius;
int curr_layer = ( (PCB_SCREEN*) panel->GetScreen() )->m_Active_Layer;
@@ -594,7 +593,7 @@ void TRACK::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
return;
BOARD * brd = GetBoard( );
- color = brd->GetLayerColor(m_Layer);
+ EDA_COLOR_T color = brd->GetLayerColor(m_Layer);
if( brd->IsLayerVisible( m_Layer ) == false && !( draw_mode & GR_HIGHLIGHT ) )
return;
@@ -608,19 +607,11 @@ void TRACK::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
if( ( draw_mode & GR_ALLOW_HIGHCONTRAST ) && DisplayOpt.ContrastModeDisplay )
{
if( !IsOnLayer( curr_layer ) )
- {
- color &= ~MASKCOLOR;
- color |= DARKDARKGRAY;
- }
+ ColorTurnToDarkDarkGray( &color );
}
if( draw_mode & GR_HIGHLIGHT )
- {
- if( draw_mode & GR_AND )
- color &= ~HIGHLIGHT_FLAG;
- else
- color |= HIGHLIGHT_FLAG;
- }
+ ColorChangeHighlightFlag( &color, !(draw_mode & GR_AND) );
if( color & HIGHLIGHT_FLAG )
color = ColorRefs[color & MASKCOLOR].m_LightColor;
@@ -760,7 +751,6 @@ void TRACK::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
void SEGVIA::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
const wxPoint& aOffset )
{
- int color;
int radius;
int curr_layer = ( (PCB_SCREEN*) panel->GetScreen() )->m_Active_Layer;
@@ -774,7 +764,7 @@ void SEGVIA::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
GRSetDrawMode( DC, draw_mode );
BOARD * brd = GetBoard( );
- color = brd->GetVisibleElementColor(VIAS_VISIBLE + m_Shape);
+ EDA_COLOR_T color = brd->GetVisibleElementColor(VIAS_VISIBLE + m_Shape);
if( brd->IsElementVisible( PCB_VISIBLE(VIAS_VISIBLE + m_Shape) ) == false
&& ( color & HIGHLIGHT_FLAG ) != HIGHLIGHT_FLAG )
@@ -783,19 +773,11 @@ void SEGVIA::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE draw_mode,
if( DisplayOpt.ContrastModeDisplay )
{
if( !IsOnLayer( curr_layer ) )
- {
- color &= ~MASKCOLOR;
- color |= DARKDARKGRAY;
- }
+ ColorTurnToDarkDarkGray( &color );
}
if( draw_mode & GR_HIGHLIGHT )
- {
- if( draw_mode & GR_AND )
- color &= ~HIGHLIGHT_FLAG;
- else
- color |= HIGHLIGHT_FLAG;
- }
+ ColorChangeHighlightFlag( &color, !(draw_mode & GR_AND) );
if( color & HIGHLIGHT_FLAG )
color = ColorRefs[color & MASKCOLOR].m_LightColor;
diff --git a/pcbnew/class_zone.cpp b/pcbnew/class_zone.cpp
index bd6fbb1f8f..7b57d5f303 100644
--- a/pcbnew/class_zone.cpp
+++ b/pcbnew/class_zone.cpp
@@ -172,7 +172,7 @@ void ZONE_CONTAINER::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE aDrawMod
int curr_layer = ( (PCB_SCREEN*) panel->GetScreen() )->m_Active_Layer;
BOARD* brd = GetBoard();
- int color = brd->GetLayerColor( m_Layer );
+ EDA_COLOR_T color = brd->GetLayerColor( m_Layer );
if( brd->IsLayerVisible( m_Layer ) == false && ( color & HIGHLIGHT_FLAG ) != HIGHLIGHT_FLAG )
return;
@@ -182,19 +182,11 @@ void ZONE_CONTAINER::Draw( EDA_DRAW_PANEL* panel, wxDC* DC, GR_DRAWMODE aDrawMod
if( DisplayOpt.ContrastModeDisplay )
{
if( !IsOnLayer( curr_layer ) )
- {
- color &= ~MASKCOLOR;
- color |= DARKDARKGRAY;
- }
+ ColorTurnToDarkDarkGray( &color );
}
if( aDrawMode & GR_HIGHLIGHT )
- {
- if( aDrawMode & GR_AND )
- color &= ~HIGHLIGHT_FLAG;
- else
- color |= HIGHLIGHT_FLAG;
- }
+ ColorChangeHighlightFlag( &color, !(aDrawMode & GR_AND) );
if( color & HIGHLIGHT_FLAG )
color = ColorRefs[color & MASKCOLOR].m_LightColor;
@@ -263,7 +255,7 @@ void ZONE_CONTAINER::DrawFilledArea( EDA_DRAW_PANEL* panel,
BOARD* brd = GetBoard();
int curr_layer = ( (PCB_SCREEN*) panel->GetScreen() )->m_Active_Layer;
- int color = brd->GetLayerColor( m_Layer );
+ EDA_COLOR_T color = brd->GetLayerColor( m_Layer );
if( brd->IsLayerVisible( m_Layer ) == false && ( color & HIGHLIGHT_FLAG ) != HIGHLIGHT_FLAG )
return;
@@ -273,19 +265,11 @@ void ZONE_CONTAINER::DrawFilledArea( EDA_DRAW_PANEL* panel,
if( DisplayOpt.ContrastModeDisplay )
{
if( !IsOnLayer( curr_layer ) )
- {
- color &= ~MASKCOLOR;
- color |= DARKDARKGRAY;
- }
+ ColorTurnToDarkDarkGray( &color );
}
if( aDrawMode & GR_HIGHLIGHT )
- {
- if( aDrawMode & GR_AND )
- color &= ~HIGHLIGHT_FLAG;
- else
- color |= HIGHLIGHT_FLAG;
- }
+ ColorChangeHighlightFlag( &color, !(aDrawMode & GR_AND) );
if( color & HIGHLIGHT_FLAG )
color = ColorRefs[color & MASKCOLOR].m_LightColor;
@@ -412,15 +396,12 @@ void ZONE_CONTAINER::DrawWhileCreateOutline( EDA_DRAW_PANEL* panel, wxDC* DC,
int curr_layer = ( (PCB_SCREEN*) panel->GetScreen() )->m_Active_Layer;
BOARD* brd = GetBoard();
- int color = brd->GetLayerColor( m_Layer ) & MASKCOLOR;
+ EDA_COLOR_T color = brd->GetLayerColor( m_Layer );
if( DisplayOpt.ContrastModeDisplay )
{
if( !IsOnLayer( curr_layer ) )
- {
- color &= ~MASKCOLOR;
- color |= DARKDARKGRAY;
- }
+ ColorTurnToDarkDarkGray( &color );
}
// draw the lines
diff --git a/pcbnew/dialogs/dialog_SVG_print.cpp b/pcbnew/dialogs/dialog_SVG_print.cpp
index ba4b10e850..164d632f36 100644
--- a/pcbnew/dialogs/dialog_SVG_print.cpp
+++ b/pcbnew/dialogs/dialog_SVG_print.cpp
@@ -288,7 +288,7 @@ bool DIALOG_SVG_PRINT::DrawPage( const wxString& FullFileName,
screen->m_IsPrinting = true;
- int bg_color = g_DrawBgColor;
+ EDA_COLOR_T bg_color = g_DrawBgColor;
g_DrawBgColor = WHITE;
if( PrintPageRef() )
diff --git a/pcbnew/dialogs/dialog_copper_zones.cpp b/pcbnew/dialogs/dialog_copper_zones.cpp
index 1cb1b13588..c51872edd6 100644
--- a/pcbnew/dialogs/dialog_copper_zones.cpp
+++ b/pcbnew/dialogs/dialog_copper_zones.cpp
@@ -116,7 +116,7 @@ private:
* creates the colored rectangle bitmaps used in the layer selection widget.
* @param aColor is the color to fill the rectangle with.
*/
- wxBitmap makeLayerBitmap( int aColor );
+ wxBitmap makeLayerBitmap( EDA_COLOR_T aColor );
};
@@ -251,7 +251,7 @@ void DIALOG_COPPER_ZONE::initDialog()
m_LayerSelectionCtrl->InsertColumn( 0, col0 );
// Build copper layer list and append to layer widget
int layerCount = board->GetCopperLayerCount();
- int layerNumber, itemIndex, layerColor;
+ int layerNumber, itemIndex;
wxImageList* imageList = new wxImageList( LAYER_BITMAP_SIZE_X, LAYER_BITMAP_SIZE_Y );
m_LayerSelectionCtrl->AssignImageList( imageList, wxIMAGE_LIST_SMALL );
for( int ii = 0; ii < layerCount; ii++ )
@@ -266,7 +266,7 @@ void DIALOG_COPPER_ZONE::initDialog()
m_LayerId.insert( m_LayerId.begin(), layerNumber );
msg = board->GetLayerName( layerNumber ).Trim();
- layerColor = board->GetLayerColor( layerNumber );
+ EDA_COLOR_T layerColor = board->GetLayerColor( layerNumber );
imageList->Add( makeLayerBitmap( layerColor ) );
itemIndex = m_LayerSelectionCtrl->InsertItem( 0, msg, ii );
@@ -683,7 +683,7 @@ void DIALOG_COPPER_ZONE::buildAvailableListOfNets()
}
-wxBitmap DIALOG_COPPER_ZONE::makeLayerBitmap( int aColor )
+wxBitmap DIALOG_COPPER_ZONE::makeLayerBitmap( EDA_COLOR_T aColor )
{
wxBitmap bitmap( LAYER_BITMAP_SIZE_X, LAYER_BITMAP_SIZE_Y );
wxBrush brush;
diff --git a/pcbnew/dialogs/dialog_keepout_area_properties.cpp b/pcbnew/dialogs/dialog_keepout_area_properties.cpp
index 7963f6d29b..ea400d9ca1 100644
--- a/pcbnew/dialogs/dialog_keepout_area_properties.cpp
+++ b/pcbnew/dialogs/dialog_keepout_area_properties.cpp
@@ -85,7 +85,7 @@ private:
* creates the colored rectangle bitmaps used in the layer selection widget.
* @param aColor is the color to fill the rectangle with.
*/
- wxBitmap makeLayerBitmap( int aColor );
+ wxBitmap makeLayerBitmap( EDA_COLOR_T aColor );
};
@@ -149,7 +149,8 @@ void DIALOG_KEEPOUT_AREA_PROPERTIES::initDialog()
m_LayerSelectionCtrl->InsertColumn( 0, col0 );
// Build copper layer list and append to layer widget
int layerCount = board->GetCopperLayerCount();
- int layerNumber, itemIndex, layerColor;
+ int layerNumber, itemIndex;
+ EDA_COLOR_T layerColor;
wxImageList* imageList = new wxImageList( LAYER_BITMAP_SIZE_X, LAYER_BITMAP_SIZE_Y );
m_LayerSelectionCtrl->AssignImageList( imageList, wxIMAGE_LIST_SMALL );
for( int ii = 0; ii < layerCount; ii++ )
@@ -261,7 +262,7 @@ bool DIALOG_KEEPOUT_AREA_PROPERTIES::AcceptOptionsForKeepOut()
return true;
}
-wxBitmap DIALOG_KEEPOUT_AREA_PROPERTIES::makeLayerBitmap( int aColor )
+wxBitmap DIALOG_KEEPOUT_AREA_PROPERTIES::makeLayerBitmap( EDA_COLOR_T aColor )
{
wxBitmap bitmap( LAYER_BITMAP_SIZE_X, LAYER_BITMAP_SIZE_Y );
wxBrush brush;
diff --git a/pcbnew/dialogs/dialog_pad_properties.cpp b/pcbnew/dialogs/dialog_pad_properties.cpp
index 0dc3dd5058..4b363399f5 100644
--- a/pcbnew/dialogs/dialog_pad_properties.cpp
+++ b/pcbnew/dialogs/dialog_pad_properties.cpp
@@ -171,7 +171,7 @@ void DIALOG_PAD_PROPERTIES::OnPaintShowPanel( wxPaintEvent& event )
wxPaintDC dc( m_panelShowPad );
PAD_DRAWINFO drawInfo;
- int color = 0;
+ EDA_COLOR_T color = ColorFromInt( 0 ); // XXX EVIL merge
if( m_dummyPad->GetLayerMask() & LAYER_FRONT )
{
@@ -180,7 +180,7 @@ void DIALOG_PAD_PROPERTIES::OnPaintShowPanel( wxPaintEvent& event )
if( m_dummyPad->GetLayerMask() & LAYER_BACK )
{
- color |= m_Board->GetVisibleElementColor( PAD_BK_VISIBLE );
+ color = ColorFromInt( color | m_Board->GetVisibleElementColor( PAD_BK_VISIBLE ) ); // XXX EVIL merge
}
if( color == 0 )
diff --git a/pcbnew/editrack.cpp b/pcbnew/editrack.cpp
index 1c7c5feeda..01646443c4 100644
--- a/pcbnew/editrack.cpp
+++ b/pcbnew/editrack.cpp
@@ -684,7 +684,7 @@ void ShowNewTrackWhenMovingCursor( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPo
if( showTrackClearanceMode >= SHOW_CLEARANCE_NEW_TRACKS_AND_VIA_AREAS )
{
- int color = g_ColorsSettings.GetLayerColor( g_CurrentTrackSegment->GetLayer() );
+ EDA_COLOR_T color = g_ColorsSettings.GetLayerColor( g_CurrentTrackSegment->GetLayer() );
GRCircle( aPanel->GetClipBox(), aDC, g_CurrentTrackSegment->m_End.x,
g_CurrentTrackSegment->m_End.y,
@@ -752,7 +752,7 @@ void ShowNewTrackWhenMovingCursor( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPo
if( showTrackClearanceMode >= SHOW_CLEARANCE_NEW_TRACKS_AND_VIA_AREAS )
{
- int color = g_ColorsSettings.GetLayerColor(g_CurrentTrackSegment->GetLayer());
+ EDA_COLOR_T color = g_ColorsSettings.GetLayerColor(g_CurrentTrackSegment->GetLayer());
GRCircle( aPanel->GetClipBox(), aDC, g_CurrentTrackSegment->m_End.x,
g_CurrentTrackSegment->m_End.y,
diff --git a/pcbnew/export_vrml.cpp b/pcbnew/export_vrml.cpp
index c2c75e9d17..48c4d1fe1e 100644
--- a/pcbnew/export_vrml.cpp
+++ b/pcbnew/export_vrml.cpp
@@ -711,7 +711,7 @@ static void export_vrml_pcbtext( TEXTE_PCB* text )
for( unsigned i = 0; iCount(); i++ )
{
wxString txt = list->Item( i );
- DrawGraphicText( NULL, NULL, pos, (EDA_COLOR_T) 0,
+ DrawGraphicText( NULL, NULL, pos, BLACK,
txt, text->GetOrientation(), size,
text->m_HJustify, text->m_VJustify,
text->m_Thickness, text->m_Italic,
@@ -724,7 +724,7 @@ static void export_vrml_pcbtext( TEXTE_PCB* text )
}
else
{
- DrawGraphicText( NULL, NULL, text->m_Pos, (EDA_COLOR_T) 0,
+ DrawGraphicText( NULL, NULL, text->m_Pos, BLACK,
text->m_Text, text->GetOrientation(), size,
text->m_HJustify, text->m_VJustify,
text->m_Thickness, text->m_Italic,
@@ -873,7 +873,7 @@ static void export_vrml_text_module( TEXTE_MODULE* module ) //{{{
s_text_layer = module->GetLayer();
s_text_width = module->m_Thickness;
- DrawGraphicText( NULL, NULL, module->m_Pos, (EDA_COLOR_T) 0,
+ DrawGraphicText( NULL, NULL, module->m_Pos, BLACK,
module->m_Text, module->GetDrawRotation(), size,
module->m_HJustify, module->m_VJustify,
module->m_Thickness, module->m_Italic,
diff --git a/pcbnew/gen_drill_report_files.cpp b/pcbnew/gen_drill_report_files.cpp
index ca59c0256b..e2c21cdabf 100644
--- a/pcbnew/gen_drill_report_files.cpp
+++ b/pcbnew/gen_drill_report_files.cpp
@@ -180,7 +180,7 @@ void GenDrillMapFile( BOARD* aPcb, FILE* aFile, const wxString& aFullFileName,
// Plot title "Info"
wxString Text = wxT( "Drill Map:" );
- plotter->Text( wxPoint( plotX, plotY ), UNSPECIFIED, Text, 0,
+ plotter->Text( wxPoint( plotX, plotY ), UNSPECIFIED_COLOR, Text, 0,
wxSize( (int) ( charSize * charScale ),
(int) ( charSize * charScale ) ),
GR_TEXT_HJUSTIFY_LEFT, GR_TEXT_VJUSTIFY_CENTER,
@@ -232,9 +232,10 @@ void GenDrillMapFile( BOARD* aPcb, FILE* aFile, const wxString& aFullFileName,
aToolListBuffer[ii].m_OvalCount );
msg += FROM_UTF8( line );
- plotter->Text( wxPoint( plotX, y ), UNSPECIFIED,
+ plotter->Text( wxPoint( plotX, y ), UNSPECIFIED_COLOR,
msg,
- 0, wxSize( (int) ( charSize * charScale ), (int) ( charSize * charScale ) ),
+ 0, wxSize( (int) ( charSize * charScale ),
+ (int) ( charSize * charScale ) ),
GR_TEXT_HJUSTIFY_LEFT, GR_TEXT_VJUSTIFY_CENTER,
TextWidth, false, false );
diff --git a/pcbnew/layer_widget.cpp b/pcbnew/layer_widget.cpp
index 3f3a7a7440..fba80155f0 100644
--- a/pcbnew/layer_widget.cpp
+++ b/pcbnew/layer_widget.cpp
@@ -147,7 +147,7 @@ static const char * rightarrow_alternate_xpm[] = {
* returns a string containing the numeric value of the color.
* in a form like 0x00000000. (Color is currently an index, not RGB).
*/
-static wxString makeColorTxt( int aColor )
+static wxString makeColorTxt( EDA_COLOR_T aColor )
{
wxString txt;
txt.Printf( wxT("0x%08x"), aColor );
@@ -181,7 +181,7 @@ int LAYER_WIDGET::getDecodedId( int aControlId )
}
-wxBitmap LAYER_WIDGET::makeBitmap( int aColor )
+wxBitmap LAYER_WIDGET::makeBitmap( EDA_COLOR_T aColor )
{
// the bitmap will be BUTT_VOID*2 pixels smaller than the button, leaving a
// border of BUTT_VOID pixels on each side.
@@ -201,7 +201,7 @@ wxBitmap LAYER_WIDGET::makeBitmap( int aColor )
}
-wxBitmapButton* LAYER_WIDGET::makeColorButton( wxWindow* aParent, int aColor, int aID )
+wxBitmapButton* LAYER_WIDGET::makeColorButton( wxWindow* aParent, EDA_COLOR_T aColor, int aID )
{
// dynamically make a wxBitMap and brush it with the appropriate color,
// then create a wxBitmapButton from it.
@@ -274,8 +274,8 @@ void LAYER_WIDGET::OnMiddleDownLayerColor( wxMouseEvent& event )
wxString colorTxt = eventSource->GetName();
- int oldColor = strtoul( TO_UTF8(colorTxt), NULL, 0 );
- int newColor = DisplayColorFrame( this, oldColor );
+ EDA_COLOR_T oldColor = ColorFromInt( strtoul( TO_UTF8(colorTxt), NULL, 0 ) );
+ EDA_COLOR_T newColor = DisplayColorFrame( this, oldColor );
if( newColor >= 0 )
{
@@ -309,8 +309,8 @@ void LAYER_WIDGET::OnMiddleDownRenderColor( wxMouseEvent& event )
wxString colorTxt = eventSource->GetName();
- int oldColor = strtoul( TO_UTF8(colorTxt), NULL, 0 );
- int newColor = DisplayColorFrame( this, oldColor );
+ EDA_COLOR_T oldColor = ColorFromInt( strtoul( TO_UTF8(colorTxt), NULL, 0 ) );
+ EDA_COLOR_T newColor = DisplayColorFrame( this, oldColor );
if( newColor >= 0 )
{
@@ -346,7 +346,7 @@ void LAYER_WIDGET::OnTabChange( wxNotebookEvent& event )
}
-wxWindow* LAYER_WIDGET::getLayerComp( int aRow, int aColumn )
+wxWindow* LAYER_WIDGET::getLayerComp( int aRow, int aColumn ) const
{
int ndx = aRow * LYR_COLUMN_COUNT + aColumn;
if( (unsigned) ndx < m_LayersFlexGridSizer->GetChildren().GetCount() )
@@ -355,7 +355,7 @@ wxWindow* LAYER_WIDGET::getLayerComp( int aRow, int aColumn )
}
-int LAYER_WIDGET::findLayerRow( int aLayer )
+int LAYER_WIDGET::findLayerRow( int aLayer ) const
{
int count = GetLayerRowCount();
for( int row=0; rowGetChildren().GetCount() )
@@ -380,7 +380,7 @@ wxWindow* LAYER_WIDGET::getRenderComp( int aRow, int aColumn )
}
-int LAYER_WIDGET::findRenderRow( int aId )
+int LAYER_WIDGET::findRenderRow( int aId ) const
{
int count = GetRenderRowCount();
for( int row=0; row= 0 )
@@ -798,7 +798,7 @@ void LAYER_WIDGET::SetLayerColor( int aLayer, int aColor )
}
-int LAYER_WIDGET::GetLayerColor( int aLayer )
+EDA_COLOR_T LAYER_WIDGET::GetLayerColor( int aLayer ) const
{
int row = findLayerRow( aLayer );
if( row >= 0 )
@@ -808,11 +808,10 @@ int LAYER_WIDGET::GetLayerColor( int aLayer )
wxASSERT( bmb );
wxString colorTxt = bmb->GetName();
- int color = strtoul( TO_UTF8(colorTxt), NULL, 0 );
- return color;
+ return ColorFromInt( strtoul( TO_UTF8(colorTxt), NULL, 0 ) );
}
- return 0; // it's caller fault, gave me a bad layer
+ return UNSPECIFIED_COLOR; // it's caller fault, gave me a bad layer
}
@@ -876,7 +875,7 @@ class MYFRAME : public wxFrame
{
}
- void OnLayerColorChange( int aLayer, int aColor )
+ void OnLayerColorChange( int aLayer, EDA_COLOR_T aColor )
{
printf( "OnLayerColorChange( aLayer:%d, aColor:%d )\n", aLayer, aColor );
@@ -900,7 +899,7 @@ class MYFRAME : public wxFrame
printf( "OnLayerVisible( aLayer:%d, isVisible:%d isFinal:%d)\n", aLayer, isVisible, isFinal );
}
- void OnRenderColorChange( int aId, int aColor )
+ void OnRenderColorChange( int aId, EDA_COLOR_T aColor )
{
printf( "OnRenderColorChange( aId:%d, aColor:%d )\n", aId, aColor );
}
diff --git a/pcbnew/layer_widget.h b/pcbnew/layer_widget.h
index a80f58e382..39d55d17ad 100644
--- a/pcbnew/layer_widget.h
+++ b/pcbnew/layer_widget.h
@@ -41,7 +41,7 @@
#include
#include
#include
-
+#include
#define LYR_COLUMN_COUNT 4 ///< Layer tab column count
#define RND_COLUMN_COUNT 2 ///< Rendering tab column count
@@ -74,11 +74,11 @@ public:
{
wxString rowName; ///< the prompt or layername
int id; ///< either a layer or "visible element" id
- int color; ///< -1 if none.
+ EDA_COLOR_T color; ///< -1 if none.
bool state; ///< initial wxCheckBox state
wxString tooltip; ///< if not empty, use this tooltip on row
- ROW( const wxString& aRowName, int aId, int aColor = -1,
+ ROW( const wxString& aRowName, int aId, EDA_COLOR_T aColor = UNSPECIFIED_COLOR,
const wxString& aTooltip = wxEmptyString, bool aState = true )
{
rowName = aRowName;
@@ -109,7 +109,7 @@ protected:
int m_CurrentRow; ///< selected row of layer list
int m_PointSize;
- static wxBitmap makeBitmap( int aColor );
+ static wxBitmap makeBitmap( EDA_COLOR_T aColor );
/**
* Virtual Function useAlternateBitmap
@@ -140,7 +140,7 @@ protected:
* Function makeColorButton
* creates a wxBitmapButton and assigns it a solid color and a control ID
*/
- wxBitmapButton* makeColorButton( wxWindow* aParent, int aColor, int aID );
+ wxBitmapButton* makeColorButton( wxWindow* aParent, EDA_COLOR_T aColor, int aID );
void OnLeftDownLayers( wxMouseEvent& event );
@@ -173,15 +173,15 @@ protected:
* @param aColumn is the column
* @return wxWindow - the component installed within the sizer at given grid coordinate.
*/
- wxWindow* getLayerComp( int aRow, int aColumn );
- wxWindow* getRenderComp( int aRow, int aColumn );
+ wxWindow* getLayerComp( int aRow, int aColumn ) const;
+ wxWindow* getRenderComp( int aRow, int aColumn ) const;
/**
* Function findLayerRow
* returns the row index that \a aLayer resides in, or -1 if not found.
*/
- int findLayerRow( int aLayer );
- int findRenderRow( int aId );
+ int findLayerRow( int aLayer ) const;
+ int findRenderRow( int aId ) const;
/**
* Function insertLayerRow
@@ -319,13 +319,13 @@ public:
* Function SetLayerColor
* changes the color of \a aLayer
*/
- void SetLayerColor( int aLayer, int aColor );
+ void SetLayerColor( int aLayer, EDA_COLOR_T aColor );
/**
* Function GetLayerColor
* returns the color of the layer ROW associated with \a aLayer id.
*/
- int GetLayerColor( int aLayer );
+ EDA_COLOR_T GetLayerColor( int aLayer ) const;
/**
* Function SetRenderState
@@ -373,7 +373,7 @@ public:
* @param aLayer is the board layer to change
* @param aColor is the new color
*/
- virtual void OnLayerColorChange( int aLayer, int aColor ) = 0;
+ virtual void OnLayerColorChange( int aLayer, EDA_COLOR_T aColor ) = 0;
/**
* Function OnLayerSelect
@@ -404,7 +404,7 @@ public:
* via the AddRenderRow() function.
* @param aColor is the new color
*/
- virtual void OnRenderColorChange( int aId, int aColor ) = 0;
+ virtual void OnRenderColorChange( int aId, EDA_COLOR_T aColor ) = 0;
/**
* Function OnRenderEnable
diff --git a/pcbnew/pcbframe.cpp b/pcbnew/pcbframe.cpp
index 119a80cc5a..ad52213cbd 100644
--- a/pcbnew/pcbframe.cpp
+++ b/pcbnew/pcbframe.cpp
@@ -616,7 +616,7 @@ void PCB_EDIT_FRAME::SaveSettings()
}
-bool PCB_EDIT_FRAME::IsGridVisible()
+bool PCB_EDIT_FRAME::IsGridVisible() const
{
return IsElementVisible( GRID_VISIBLE );
}
@@ -628,13 +628,13 @@ void PCB_EDIT_FRAME::SetGridVisibility(bool aVisible)
}
-int PCB_EDIT_FRAME::GetGridColor()
+EDA_COLOR_T PCB_EDIT_FRAME::GetGridColor() const
{
return GetBoard()->GetVisibleElementColor( GRID_VISIBLE );
}
-void PCB_EDIT_FRAME::SetGridColor(int aColor)
+void PCB_EDIT_FRAME::SetGridColor(EDA_COLOR_T aColor)
{
GetBoard()->SetVisibleElementColor( GRID_VISIBLE, aColor );
}
@@ -688,7 +688,7 @@ void PCB_EDIT_FRAME::unitsChangeRefresh()
}
-bool PCB_EDIT_FRAME::IsElementVisible( int aElement )
+bool PCB_EDIT_FRAME::IsElementVisible( int aElement ) const
{
return GetBoard()->IsElementVisible( aElement );
}
diff --git a/pcbnew/pcbnew_config.cpp b/pcbnew/pcbnew_config.cpp
index 3dc0c3420d..6c081f1f60 100644
--- a/pcbnew/pcbnew_config.cpp
+++ b/pcbnew/pcbnew_config.cpp
@@ -282,63 +282,63 @@ PARAM_CFG_ARRAY& PCB_EDIT_FRAME::GetConfigurationSettings()
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLay2" ), LOC_COLOR( 2 ),
LIGHTGRAY ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLay3" ), LOC_COLOR( 3 ),
- 5 ) );
+ MAGENTA ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLay4" ), LOC_COLOR( 4 ),
- 4 ) );
+ RED ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLay5" ), LOC_COLOR( 5 ),
- 5 ) );
+ MAGENTA ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLay6" ), LOC_COLOR( 6 ),
- 6 ) );
+ BROWN ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLay7" ), LOC_COLOR( 7 ),
- 5 ) );
+ MAGENTA ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLay8" ), LOC_COLOR( 8 ),
- 7 ) );
+ LIGHTGRAY ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLay9" ), LOC_COLOR( 9 ),
- 1 ) );
+ BLUE ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayA" ), LOC_COLOR( 10 ),
- 2 ) );
+ GREEN ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayB" ), LOC_COLOR( 11 ),
- 3 ) );
+ CYAN ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayC" ), LOC_COLOR( 12 ),
- 12 ) );
+ LIGHTRED ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayD" ), LOC_COLOR( 13 ),
- 13 ) );
+ LIGHTMAGENTA ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayE" ), LOC_COLOR( 14 ),
- 14 ) );
+ YELLOW ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayF" ), LOC_COLOR( 15 ),
RED ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayG" ), LOC_COLOR( 16 ),
- 1 ) );
+ BLUE ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayH" ), LOC_COLOR( 17 ),
- 5 ) );
+ MAGENTA ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayI" ), LOC_COLOR( 18 ),
- 11 ) );
+ LIGHTCYAN ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayJ" ), LOC_COLOR( 19 ),
- 4 ) );
+ RED ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayK" ), LOC_COLOR( 20 ),
- 5 ) );
+ MAGENTA ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayL" ), LOC_COLOR( 21 ),
- 3 ) );
+ CYAN ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayM" ), LOC_COLOR( 22 ),
- 6 ) );
+ BROWN ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayN" ), LOC_COLOR( 23 ),
- 5 ) );
+ MAGENTA ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayO" ), LOC_COLOR( 24 ),
LIGHTGRAY ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayP" ), LOC_COLOR( 25 ),
- 1 ) );
+ BLUE ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayQ" ), LOC_COLOR( 26 ),
- 2 ) );
+ GREEN ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayR" ), LOC_COLOR( 27 ),
- 14 ) );
+ YELLOW ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayS" ), LOC_COLOR( 28 ),
YELLOW ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayT" ), LOC_COLOR( 29 ),
- 13 ) );
+ LIGHTMAGENTA ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayU" ), LOC_COLOR( 30 ),
- 14 ) );
+ YELLOW ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "ColLayV" ), LOC_COLOR( 31 ),
- 7 ) );
+ LIGHTGRAY ) );
m_configSettings.push_back( new PARAM_CFG_SETCOLOR( true, wxT( "CTxtMoC" ),
ITEM_COLOR( MOD_TEXT_FR_VISIBLE ),
LIGHTGRAY ) );
diff --git a/pcbnew/plot_rtn.cpp b/pcbnew/plot_rtn.cpp
index 50fb516106..385b06c4db 100644
--- a/pcbnew/plot_rtn.cpp
+++ b/pcbnew/plot_rtn.cpp
@@ -512,7 +512,7 @@ void PlotTextePcb( PLOTTER* aPlotter, const PCB_PLOT_PARAMS& aPlotOpts, TEXTE_PC
for( unsigned i = 0; i < list->Count(); i++ )
{
wxString txt = list->Item( i );
- aPlotter->Text( pos, UNSPECIFIED, txt, orient, size,
+ aPlotter->Text( pos, UNSPECIFIED_COLOR, txt, orient, size,
pt_texte->m_HJustify, pt_texte->m_VJustify,
thickness, pt_texte->m_Italic, allow_bold );
pos += offset;
@@ -522,7 +522,7 @@ void PlotTextePcb( PLOTTER* aPlotter, const PCB_PLOT_PARAMS& aPlotOpts, TEXTE_PC
}
else
{
- aPlotter->Text( pos, UNSPECIFIED, pt_texte->m_Text, orient, size,
+ aPlotter->Text( pos, UNSPECIFIED_COLOR, pt_texte->m_Text, orient, size,
pt_texte->m_HJustify, pt_texte->m_VJustify,
thickness, pt_texte->m_Italic, allow_bold );
}
diff --git a/pcbnew/print_board_functions.cpp b/pcbnew/print_board_functions.cpp
index 116a1cddb8..fc57d876e3 100644
--- a/pcbnew/print_board_functions.cpp
+++ b/pcbnew/print_board_functions.cpp
@@ -232,7 +232,7 @@ void PCB_EDIT_FRAME::PrintPage( wxDC* aDC,
if( pt_trace->Type() == PCB_VIA_T ) // VIA encountered.
{
int radius = pt_trace->m_Width >> 1;
- int color = g_ColorsSettings.GetItemColor( VIAS_VISIBLE + pt_trace->m_Shape );
+ EDA_COLOR_T color = g_ColorsSettings.GetItemColor( VIAS_VISIBLE + pt_trace->m_Shape );
GRSetDrawMode( aDC, drawmode );
GRFilledCircle( m_canvas->GetClipBox(), aDC,
pt_trace->m_Start.x,
@@ -285,7 +285,7 @@ void PCB_EDIT_FRAME::PrintPage( wxDC* aDC,
if( drillShapeOpt != PRINT_PARAMETERS::NO_DRILL_SHAPE )
{
pt_trace = Pcb->m_Track;
- int color = g_DrawBgColor;
+ EDA_COLOR_T color = g_DrawBgColor;
bool blackpenstate = GetGRForceBlackPenState();
GRForceBlackPen( false );
GRSetDrawMode( aDC, GR_COPY );
diff --git a/pcbnew/printout_controler.cpp b/pcbnew/printout_controler.cpp
index 7ae272445d..09024dbe17 100644
--- a/pcbnew/printout_controler.cpp
+++ b/pcbnew/printout_controler.cpp
@@ -281,7 +281,7 @@ void BOARD_PRINTOUT_CONTROLER::DrawPage()
panel->SetClipBox( EDA_RECT( wxPoint( 0, 0 ), wxSize( MAX_VALUE, MAX_VALUE ) ) );
m_Parent->GetScreen()->m_IsPrinting = true;
- int bg_color = g_DrawBgColor;
+ EDA_COLOR_T bg_color = g_DrawBgColor;
if( m_PrintParams.m_Print_Sheet_Ref )
m_Parent->TraceWorkSheet( dc, screen, m_PrintParams.m_PenDefaultSize,
diff --git a/pcbnew/ratsnest.cpp b/pcbnew/ratsnest.cpp
index 2d6bd56481..2b19175bce 100644
--- a/pcbnew/ratsnest.cpp
+++ b/pcbnew/ratsnest.cpp
@@ -710,7 +710,7 @@ void PCB_BASE_FRAME::TraceModuleRatsNest( wxDC* DC )
if( ( m_Pcb->m_Status_Pcb & RATSNEST_ITEM_LOCAL_OK ) == 0 )
return;
- int tmpcolor = g_ColorsSettings.GetItemColor(RATSNEST_VISIBLE);
+ EDA_COLOR_T tmpcolor = g_ColorsSettings.GetItemColor(RATSNEST_VISIBLE);
for( unsigned ii = 0; ii < m_Pcb->m_LocalRatsnest.size(); ii++ )
{
diff --git a/pcbnew/tool_pcb.cpp b/pcbnew/tool_pcb.cpp
index 9f20d9372d..3e779fa138 100644
--- a/pcbnew/tool_pcb.cpp
+++ b/pcbnew/tool_pcb.cpp
@@ -94,7 +94,7 @@ static const char s_BitmapLayerIcon[24][24] = {
void PCB_EDIT_FRAME::PrepareLayerIndicator()
{
int ii, jj;
- int active_layer_color, Route_Layer_TOP_color,
+ EDA_COLOR_T active_layer_color, Route_Layer_TOP_color,
Route_Layer_BOTTOM_color, via_color;
bool change = false;
bool first_call = LayerPairBitmap == NULL;