Enhance "Colors" dialog box (as listed in change_log.txt)
This commit is contained in:
parent
cb49ea8989
commit
2f3aeeaa29
|
@ -5,6 +5,15 @@ Please add newer entries at the top, list the date and your name with
|
||||||
email address.
|
email address.
|
||||||
|
|
||||||
|
|
||||||
|
2007-Sep-13 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
|
||||||
|
================================================================================
|
||||||
|
+ eeschema & pcbnew & gerbview
|
||||||
|
A Cancel button has now been provided for the "Colors" dialog box, which also
|
||||||
|
permits it to (otherwise) be cancelled by pressing the "Esc" key; the button
|
||||||
|
whose color matches that of the color currently selected (for the layer being
|
||||||
|
edited) also has the initial focus set to it.
|
||||||
|
|
||||||
|
|
||||||
2007-Sep-11 UPDATE Dick Hollenbeck <dick@softplc.com>
|
2007-Sep-11 UPDATE Dick Hollenbeck <dick@softplc.com>
|
||||||
================================================================================
|
================================================================================
|
||||||
+ pcbnew
|
+ pcbnew
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
/************************/
|
/************************/
|
||||||
/* SETCOLOR.CPP */
|
/* SETCOLOR.CPP */
|
||||||
/************************/
|
/************************/
|
||||||
/* Affichage et selection de la palette des couleurs disponibles
|
/* Affichage et selection de la palette des couleurs disponibles
|
||||||
dans une frame
|
* dans une frame
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "fctsys.h"
|
#include "fctsys.h"
|
||||||
#include "gr_basic.h"
|
#include "gr_basic.h"
|
||||||
|
@ -22,30 +22,33 @@ enum colors_id {
|
||||||
class WinEDA_SelColorFrame: public wxDialog
|
class WinEDA_SelColorFrame: public wxDialog
|
||||||
/*******************************************/
|
/*******************************************/
|
||||||
/* Frame d'affichage de la palette des couleurs disponibles
|
/* Frame d'affichage de la palette des couleurs disponibles
|
||||||
*/
|
*/
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
public:
|
public:
|
||||||
|
|
||||||
// Constructor and destructor
|
// Constructor and destructor
|
||||||
WinEDA_SelColorFrame(wxWindow *parent, const wxPoint& framepos);
|
WinEDA_SelColorFrame(wxWindow *parent,
|
||||||
|
const wxPoint& framepos, int OldColor);
|
||||||
~WinEDA_SelColorFrame(void) {};
|
~WinEDA_SelColorFrame(void) {};
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
void OnCancel(wxCommandEvent& event);
|
||||||
void SelColor(wxCommandEvent& event);
|
void SelColor(wxCommandEvent& event);
|
||||||
|
|
||||||
DECLARE_EVENT_TABLE()
|
DECLARE_EVENT_TABLE()
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
/* Construction de la table des evenements pour FrameClassMain */
|
/* Construction de la table des evenements pour FrameClassMain */
|
||||||
BEGIN_EVENT_TABLE(WinEDA_SelColorFrame, wxDialog)
|
BEGIN_EVENT_TABLE(WinEDA_SelColorFrame, wxDialog)
|
||||||
EVT_COMMAND_RANGE(ID_COLOR_BLACK,ID_COLOR_BLACK+31,
|
EVT_BUTTON(wxID_CANCEL, WinEDA_SelColorFrame::OnCancel)
|
||||||
wxEVT_COMMAND_BUTTON_CLICKED,
|
EVT_COMMAND_RANGE( ID_COLOR_BLACK, ID_COLOR_BLACK + 31,
|
||||||
WinEDA_SelColorFrame::SelColor)
|
wxEVT_COMMAND_BUTTON_CLICKED, WinEDA_SelColorFrame::SelColor )
|
||||||
END_EVENT_TABLE()
|
END_EVENT_TABLE()
|
||||||
|
|
||||||
|
|
||||||
/***************************************/
|
/***************************************/
|
||||||
int DisplayColorFrame(wxWindow * parent)
|
int DisplayColorFrame(wxWindow * parent, int OldColor)
|
||||||
/***************************************/
|
/***************************************/
|
||||||
{
|
{
|
||||||
wxPoint framepos;
|
wxPoint framepos;
|
||||||
|
@ -53,27 +56,33 @@ int color;
|
||||||
|
|
||||||
wxGetMousePosition(&framepos.x, &framepos.y);
|
wxGetMousePosition(&framepos.x, &framepos.y);
|
||||||
|
|
||||||
WinEDA_SelColorFrame * frame = new WinEDA_SelColorFrame(parent,framepos);
|
WinEDA_SelColorFrame * frame = new WinEDA_SelColorFrame(parent,
|
||||||
color = frame->ShowModal(); frame->Destroy();
|
framepos, OldColor);
|
||||||
if (color > NBCOLOR) color = -1;
|
color = frame->ShowModal();
|
||||||
|
frame->Destroy();
|
||||||
|
if( color > NBCOLOR )
|
||||||
|
color = -1;
|
||||||
return color;
|
return color;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*******************************************************************/
|
/*******************************************************************/
|
||||||
WinEDA_SelColorFrame::WinEDA_SelColorFrame(wxWindow *parent,
|
WinEDA_SelColorFrame::WinEDA_SelColorFrame(wxWindow *parent,
|
||||||
const wxPoint& framepos):
|
const wxPoint& framepos, int OldColor):
|
||||||
wxDialog(parent, -1, _("Colors"), framepos, wxSize(375, 240),
|
wxDialog(parent, -1, _("Colors"), framepos, wxSize(375, 240),
|
||||||
DIALOG_STYLE )
|
DIALOG_STYLE )
|
||||||
/*******************************************************************/
|
/*******************************************************************/
|
||||||
{
|
{
|
||||||
#define START_Y 10
|
#define START_Y 10
|
||||||
wxBitmapButton * Button;
|
wxBitmapButton * BitmapButton;
|
||||||
|
wxButton * Button;
|
||||||
int ii, butt_ID, buttcolor;
|
int ii, butt_ID, buttcolor;
|
||||||
wxPoint pos;
|
wxPoint pos;
|
||||||
int w = 20, h = 20;
|
int w = 20, h = 20;
|
||||||
wxStaticText * text;
|
wxStaticText * text;
|
||||||
int right, bottom, line_height;
|
int right, bottom, line_height;
|
||||||
|
bool ColorFound = false;
|
||||||
|
|
||||||
SetFont(*g_DialogFont);
|
SetFont(*g_DialogFont);
|
||||||
|
|
||||||
SetReturnCode(-1);
|
SetReturnCode(-1);
|
||||||
|
@ -99,33 +108,64 @@ int right, bottom, line_height;
|
||||||
iconDC.SetBrush(Brush);
|
iconDC.SetBrush(Brush);
|
||||||
iconDC.SetBackground(*wxGREY_BRUSH);
|
iconDC.SetBackground(*wxGREY_BRUSH);
|
||||||
iconDC.Clear();
|
iconDC.Clear();
|
||||||
iconDC.DrawRoundedRectangle(0,0, w, h, (double)h/3);
|
iconDC.DrawRoundedRectangle(0, 0, w, h, (double)h / 3);
|
||||||
|
|
||||||
text = new wxStaticText(this,-1,
|
text = new wxStaticText( this, -1,
|
||||||
ColorRefs[ii].m_Name,
|
ColorRefs[ii].m_Name,
|
||||||
wxPoint(pos.x + 2 + w , pos.y ),
|
wxPoint( pos.x + 2 + w, pos.y ),
|
||||||
wxSize(-1,-1), 0 );
|
wxSize(-1, -1), 0 );
|
||||||
line_height = MAX( line_height, text->GetRect().GetHeight());
|
line_height = MAX( line_height, text->GetRect().GetHeight() );
|
||||||
right = MAX(right, text->GetRect().GetRight());
|
right = MAX( right, text->GetRect().GetRight() );
|
||||||
bottom = MAX(bottom, text->GetRect().GetBottom());
|
bottom = MAX( bottom, text->GetRect().GetBottom() );
|
||||||
|
|
||||||
Button = new wxBitmapButton(this, butt_ID,
|
|
||||||
ButtBitmap,
|
|
||||||
wxPoint(pos.x, pos.y - ((h -line_height)/2)),
|
|
||||||
wxSize(w,h) );
|
|
||||||
|
|
||||||
pos.y += line_height + 5;
|
BitmapButton = new wxBitmapButton( this, butt_ID,
|
||||||
if ( ii == 7 )
|
ButtBitmap,
|
||||||
|
wxPoint( pos.x, pos.y - (h - line_height) / 2 ),
|
||||||
|
wxSize(w, h) );
|
||||||
|
|
||||||
|
// Set focus to this button if its color matches the
|
||||||
|
// color which had been selected previously (for
|
||||||
|
// whichever layer's color is currently being edited).
|
||||||
|
if( OldColor == buttcolor )
|
||||||
{
|
{
|
||||||
pos.x = right + 10; pos.y = START_Y;
|
ColorFound = true;
|
||||||
|
BitmapButton->SetFocus();
|
||||||
}
|
}
|
||||||
else if ( (ii == 15) || (ii == 23) )
|
|
||||||
|
pos.y += line_height + 5;
|
||||||
|
if ( ii == 7 || ii == 15 )
|
||||||
{
|
{
|
||||||
pos.x = right+ 10; pos.y = START_Y;
|
pos.x = right + 10;
|
||||||
|
pos.y = START_Y;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
SetClientSize( wxSize(right + 10, bottom + 10) );
|
pos.x = 140;
|
||||||
|
|
||||||
|
// Provide a Cancel button as well, so that this dialog
|
||||||
|
// box can also be cancelled by pressing the Esc key.
|
||||||
|
Button = new wxButton( this, wxID_CANCEL, _( "Cancel" ), pos );
|
||||||
|
Button->SetForegroundColour( *wxBLUE );
|
||||||
|
// Set focus to the Cancel button if the currently selected color
|
||||||
|
// does not match any of the colors provided by this dialog box.
|
||||||
|
// (That shouldn't ever happen in practice though.)
|
||||||
|
if( !ColorFound )
|
||||||
|
Button->SetFocus();
|
||||||
|
|
||||||
|
SetClientSize( wxSize( right + 10, bottom + 40 ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/***************************************************************/
|
||||||
|
void WinEDA_SelColorFrame::OnCancel(wxCommandEvent& WXUNUSED(event))
|
||||||
|
/***************************************************************/
|
||||||
|
/* Called by the Cancel button
|
||||||
|
*/
|
||||||
|
{
|
||||||
|
// Setting the return value to -1 indicates that the
|
||||||
|
// dialog box has been cancelled (and thus that the
|
||||||
|
// previously selected color is to be retained).
|
||||||
|
EndModal(-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -138,5 +178,3 @@ int id = event.GetId();
|
||||||
EndModal(id - ID_COLOR_BLACK);
|
EndModal(id - ID_COLOR_BLACK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -273,9 +273,11 @@ void DisplayColorSetupFrame(WinEDA_DrawFrame * parent,
|
||||||
{
|
{
|
||||||
WinEDA_SetColorsFrame * frame =
|
WinEDA_SetColorsFrame * frame =
|
||||||
new WinEDA_SetColorsFrame(parent, framepos);
|
new WinEDA_SetColorsFrame(parent, framepos);
|
||||||
frame->ShowModal(); frame->Destroy();
|
frame->ShowModal();
|
||||||
|
frame->Destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**********************************************************************/
|
/**********************************************************************/
|
||||||
WinEDA_SetColorsFrame::WinEDA_SetColorsFrame(WinEDA_DrawFrame *parent,
|
WinEDA_SetColorsFrame::WinEDA_SetColorsFrame(WinEDA_DrawFrame *parent,
|
||||||
const wxPoint& framepos):
|
const wxPoint& framepos):
|
||||||
|
@ -299,9 +301,9 @@ wxPoint bg_color_pos;
|
||||||
right = pos.x; bottom = 0;
|
right = pos.x; bottom = 0;
|
||||||
line_height = h;
|
line_height = h;
|
||||||
for ( ii = 0; laytool_list[ii] != NULL; ii++ )
|
for ( ii = 0; laytool_list[ii] != NULL; ii++ )
|
||||||
|
{
|
||||||
|
if( laytool_list[ii]->m_Color == NULL )
|
||||||
{
|
{
|
||||||
if( laytool_list[ii]->m_Color == NULL)
|
|
||||||
{
|
|
||||||
if( pos.y != START_Y )
|
if( pos.y != START_Y )
|
||||||
{
|
{
|
||||||
pos.x = right + 10;
|
pos.x = right + 10;
|
||||||
|
@ -309,14 +311,14 @@ wxPoint bg_color_pos;
|
||||||
bg_color_pos = pos;
|
bg_color_pos = pos;
|
||||||
}
|
}
|
||||||
wxString msg = wxGetTranslation(laytool_list[ii]->m_Name);
|
wxString msg = wxGetTranslation(laytool_list[ii]->m_Name);
|
||||||
text = new wxStaticText(this,-1,
|
text = new wxStaticText( this, -1,
|
||||||
msg,
|
msg,
|
||||||
wxPoint(pos.x, pos.y ),
|
wxPoint( pos.x, pos.y ),
|
||||||
wxSize(-1,-1), 0 );
|
wxSize(-1, -1), 0 );
|
||||||
line_height = MAX(line_height, text->GetRect().GetHeight());
|
line_height = MAX(line_height, text->GetRect().GetHeight());
|
||||||
pos.y += line_height;
|
pos.y += line_height;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
butt_ID = ID_COLOR_SETUP + ii;
|
butt_ID = ID_COLOR_SETUP + ii;
|
||||||
laytool_list[ii]->m_Id = butt_ID;
|
laytool_list[ii]->m_Id = butt_ID;
|
||||||
wxMemoryDC iconDC;
|
wxMemoryDC iconDC;
|
||||||
|
@ -334,19 +336,19 @@ wxPoint bg_color_pos;
|
||||||
Brush.SetStyle(wxSOLID);
|
Brush.SetStyle(wxSOLID);
|
||||||
|
|
||||||
iconDC.SetBrush(Brush);
|
iconDC.SetBrush(Brush);
|
||||||
iconDC.DrawRectangle(0,0, w, h);
|
iconDC.DrawRectangle(0, 0, w, h);
|
||||||
|
|
||||||
Button = new wxBitmapButton(this, butt_ID,
|
Button = new wxBitmapButton( this, butt_ID,
|
||||||
ButtBitmap,
|
ButtBitmap,
|
||||||
wxPoint(pos.x, pos.y - ((h -line_height)/2) ),
|
wxPoint( pos.x, pos.y - (h - line_height) / 2 ),
|
||||||
wxSize(w,h) );
|
wxSize(w, h) );
|
||||||
laytool_list[ii]->m_Button = Button;
|
laytool_list[ii]->m_Button = Button;
|
||||||
|
|
||||||
wxString msg = wxGetTranslation(laytool_list[ii]->m_Name);
|
wxString msg = wxGetTranslation(laytool_list[ii]->m_Name);
|
||||||
text = new wxStaticText(this,-1,
|
text = new wxStaticText( this, -1,
|
||||||
msg,
|
msg,
|
||||||
wxPoint(pos.x + 5 + w , pos.y ),
|
wxPoint(pos.x + 5 + w, pos.y ),
|
||||||
wxSize(-1,-1), 0 );
|
wxSize(-1, -1), 0 );
|
||||||
wxPoint lowpos;
|
wxPoint lowpos;
|
||||||
lowpos.x = text->GetRect().GetRight();
|
lowpos.x = text->GetRect().GetRight();
|
||||||
lowpos.y = text->GetRect().GetBottom();
|
lowpos.y = text->GetRect().GetBottom();
|
||||||
|
@ -356,7 +358,7 @@ wxPoint bg_color_pos;
|
||||||
|
|
||||||
yy = line_height + 5;
|
yy = line_height + 5;
|
||||||
pos.y += yy;
|
pos.y += yy;
|
||||||
}
|
}
|
||||||
|
|
||||||
bg_color_pos.x += 5; bg_color_pos.y += 25;
|
bg_color_pos.x += 5; bg_color_pos.y += 25;
|
||||||
wxString bg_choice[2] = { _("White Background"), _("Black Background")};
|
wxString bg_choice[2] = { _("White Background"), _("Black Background")};
|
||||||
|
@ -364,8 +366,8 @@ wxString bg_choice[2] = { _("White Background"), _("Black Background")};
|
||||||
_("Background Colour"), bg_color_pos,
|
_("Background Colour"), bg_color_pos,
|
||||||
wxDefaultSize, 2, bg_choice, 1, wxRA_SPECIFY_COLS);
|
wxDefaultSize, 2, bg_choice, 1, wxRA_SPECIFY_COLS);
|
||||||
m_SelBgColor->SetSelection( (g_DrawBgColor == BLACK) ? 1 : 0);
|
m_SelBgColor->SetSelection( (g_DrawBgColor == BLACK) ? 1 : 0);
|
||||||
bottom = MAX(bottom, m_SelBgColor->GetRect().GetBottom());;
|
bottom = MAX(bottom, m_SelBgColor->GetRect().GetBottom());
|
||||||
right = MAX(right, m_SelBgColor->GetRect().GetRight());;
|
right = MAX(right, m_SelBgColor->GetRect().GetRight());
|
||||||
|
|
||||||
SetClientSize(wxSize(right+10, bottom+10));
|
SetClientSize(wxSize(right+10, bottom+10));
|
||||||
}
|
}
|
||||||
|
@ -375,17 +377,23 @@ wxString bg_choice[2] = { _("White Background"), _("Black Background")};
|
||||||
void WinEDA_SetColorsFrame::SetColor(wxCommandEvent& event)
|
void WinEDA_SetColorsFrame::SetColor(wxCommandEvent& event)
|
||||||
/***************************************************************/
|
/***************************************************************/
|
||||||
{
|
{
|
||||||
|
int ii;
|
||||||
int id = event.GetId();
|
int id = event.GetId();
|
||||||
int color = DisplayColorFrame(this);
|
int color;
|
||||||
int w = BUTT_SIZE_X, h = BUTT_SIZE_Y;
|
int w = BUTT_SIZE_X, h = BUTT_SIZE_Y;
|
||||||
|
|
||||||
if ( color < 0) return;
|
color = DisplayColorFrame( this,
|
||||||
|
*laytool_list[id - ID_COLOR_SETUP]->m_Color );
|
||||||
|
if ( color < 0 )
|
||||||
|
return;
|
||||||
|
|
||||||
for ( int ii = 0; laytool_list[ii] != NULL; ii++ )
|
for ( ii = 0; laytool_list[ii] != NULL; ii++ )
|
||||||
{
|
{
|
||||||
if( laytool_list[ii]->m_Id != id) continue;
|
if( laytool_list[ii]->m_Id != id )
|
||||||
|
continue;
|
||||||
|
|
||||||
if( *laytool_list[ii]->m_Color == color) break;
|
if( *laytool_list[ii]->m_Color == color )
|
||||||
|
break;
|
||||||
|
|
||||||
*laytool_list[ii]->m_Color = color;
|
*laytool_list[ii]->m_Color = color;
|
||||||
wxMemoryDC iconDC;
|
wxMemoryDC iconDC;
|
||||||
|
@ -421,21 +429,20 @@ void WinEDA_SetColorsFrame::BgColorChoice(wxCommandEvent& event)
|
||||||
{
|
{
|
||||||
int color;
|
int color;
|
||||||
|
|
||||||
if ( m_SelBgColor->GetSelection() == 0 ) color = WHITE;
|
if ( m_SelBgColor->GetSelection() == 0 )
|
||||||
else color = BLACK;
|
color = WHITE;
|
||||||
|
else
|
||||||
|
color = BLACK;
|
||||||
|
|
||||||
if ( color != g_DrawBgColor )
|
if ( color != g_DrawBgColor )
|
||||||
{
|
{
|
||||||
g_DrawBgColor = color;
|
g_DrawBgColor = color;
|
||||||
m_Parent->SetDrawBgColor(g_DrawBgColor);
|
m_Parent->SetDrawBgColor(g_DrawBgColor);
|
||||||
m_Parent->ReDrawPanel();
|
m_Parent->ReDrawPanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*************************/
|
/*************************/
|
||||||
void SeedLayers(void)
|
void SeedLayers(void)
|
||||||
/*************************/
|
/*************************/
|
||||||
|
@ -445,18 +452,18 @@ int pt;
|
||||||
|
|
||||||
LayerPointer->CommonColor = WHITE;
|
LayerPointer->CommonColor = WHITE;
|
||||||
LayerPointer->Flags = 0;
|
LayerPointer->Flags = 0;
|
||||||
pt=0;
|
pt = 0;
|
||||||
LayerPointer->CurrentWidth = 1;
|
LayerPointer->CurrentWidth = 1;
|
||||||
|
|
||||||
/* seed Up the Layer colours, set all user layers off */
|
/* seed Up the Layer colours, set all user layers off */
|
||||||
for( pt = 0; pt < MAX_LAYERS; pt++ )
|
for( pt = 0; pt < MAX_LAYERS; pt++ )
|
||||||
{
|
{
|
||||||
LayerPointer->LayerStatus[pt]= 0;
|
LayerPointer->LayerStatus[pt] = 0;
|
||||||
LayerPointer->LayerColor[pt] = DARKGRAY;
|
LayerPointer->LayerColor[pt] = DARKGRAY;
|
||||||
}
|
}
|
||||||
|
|
||||||
LayerPointer->NumberOfLayers = pt - 1;
|
LayerPointer->NumberOfLayers = pt - 1;
|
||||||
/* Couleurs specifiques: Mise a jour par la lecture de la config*/
|
/* Couleurs specifiques: Mise a jour par la lecture de la config */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -464,10 +471,9 @@ int pt;
|
||||||
int ReturnLayerColor(int Layer)
|
int ReturnLayerColor(int Layer)
|
||||||
/*******************************/
|
/*******************************/
|
||||||
{
|
{
|
||||||
if(g_LayerDescr.Flags==0)
|
if( g_LayerDescr.Flags==0 )
|
||||||
return(g_LayerDescr.LayerColor[Layer]);
|
return( g_LayerDescr.LayerColor[Layer] );
|
||||||
else
|
else
|
||||||
return(g_LayerDescr.CommonColor);
|
return( g_LayerDescr.CommonColor );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -28,6 +28,7 @@ enum col_sel_id {
|
||||||
ID_COLOR_SETUP
|
ID_COLOR_SETUP
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
/**********************************/
|
/**********************************/
|
||||||
/* Liste des menus de Menu_Layers */
|
/* Liste des menus de Menu_Layers */
|
||||||
/**********************************/
|
/**********************************/
|
||||||
|
@ -133,11 +134,11 @@ void DisplayColorSetupFrame(WinEDA_DrawFrame * parent,
|
||||||
{
|
{
|
||||||
WinEDA_SetColorsFrame * frame =
|
WinEDA_SetColorsFrame * frame =
|
||||||
new WinEDA_SetColorsFrame(parent, framepos);
|
new WinEDA_SetColorsFrame(parent, framepos);
|
||||||
frame->ShowModal(); frame->Destroy();
|
frame->ShowModal();
|
||||||
|
frame->Destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**********************************************************************/
|
/**********************************************************************/
|
||||||
WinEDA_SetColorsFrame::WinEDA_SetColorsFrame(WinEDA_DrawFrame *parent,
|
WinEDA_SetColorsFrame::WinEDA_SetColorsFrame(WinEDA_DrawFrame *parent,
|
||||||
const wxPoint& framepos):
|
const wxPoint& framepos):
|
||||||
|
@ -185,7 +186,8 @@ wxBoxSizer * CurrBoxSizer = NULL;
|
||||||
{
|
{
|
||||||
if ( *laytool_list[ii]->m_Color & ITEM_NOT_SHOW )
|
if ( *laytool_list[ii]->m_Color & ITEM_NOT_SHOW )
|
||||||
laytool_list[ii]->m_CheckBox->SetValue(FALSE);
|
laytool_list[ii]->m_CheckBox->SetValue(FALSE);
|
||||||
else laytool_list[ii]->m_CheckBox->SetValue(TRUE);
|
else
|
||||||
|
laytool_list[ii]->m_CheckBox->SetValue(TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
else if ( laytool_list[ii]->m_NoDisplay )
|
else if ( laytool_list[ii]->m_NoDisplay )
|
||||||
|
@ -242,6 +244,7 @@ wxBoxSizer * CurrBoxSizer = NULL;
|
||||||
GetSizer()->SetSizeHints(this);
|
GetSizer()->SetSizeHints(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*******************************************************************/
|
/*******************************************************************/
|
||||||
void WinEDA_SetColorsFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
|
void WinEDA_SetColorsFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
|
||||||
/*******************************************************************/
|
/*******************************************************************/
|
||||||
|
@ -251,7 +254,6 @@ void WinEDA_SetColorsFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/***********************************************************/
|
/***********************************************************/
|
||||||
void WinEDA_SetColorsFrame::SetColor(wxCommandEvent& event)
|
void WinEDA_SetColorsFrame::SetColor(wxCommandEvent& event)
|
||||||
/***********************************************************/
|
/***********************************************************/
|
||||||
|
@ -261,16 +263,21 @@ int id = event.GetId();
|
||||||
int color;
|
int color;
|
||||||
int w = BUTT_SIZE_X, h = BUTT_SIZE_Y;
|
int w = BUTT_SIZE_X, h = BUTT_SIZE_Y;
|
||||||
|
|
||||||
|
color = DisplayColorFrame( this,
|
||||||
color = DisplayColorFrame(this);
|
*laytool_list[id - ID_COLOR_SETUP]->m_Color );
|
||||||
if ( color < 0) return;
|
if ( color < 0 )
|
||||||
|
return;
|
||||||
|
|
||||||
for ( ii = 0; laytool_list[ii] != NULL; ii++ )
|
for ( ii = 0; laytool_list[ii] != NULL; ii++ )
|
||||||
{
|
{
|
||||||
if( laytool_list[ii]->m_Id != id) continue;
|
if( laytool_list[ii]->m_Id != id )
|
||||||
if( laytool_list[ii]->m_Color == NULL) continue;
|
continue;
|
||||||
|
|
||||||
if( *laytool_list[ii]->m_Color == color) break;
|
if( laytool_list[ii]->m_Color == NULL )
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if( *laytool_list[ii]->m_Color == color )
|
||||||
|
break;
|
||||||
|
|
||||||
*laytool_list[ii]->m_Color = color;
|
*laytool_list[ii]->m_Color = color;
|
||||||
wxMemoryDC iconDC;
|
wxMemoryDC iconDC;
|
||||||
|
@ -295,7 +302,7 @@ int w = BUTT_SIZE_X, h = BUTT_SIZE_Y;
|
||||||
Button->SetBitmapLabel(ButtBitmap);
|
Button->SetBitmapLabel(ButtBitmap);
|
||||||
SetDisplayOnOff(event);
|
SetDisplayOnOff(event);
|
||||||
m_Parent->GetScreen()->SetRefreshReq();
|
m_Parent->GetScreen()->SetRefreshReq();
|
||||||
}
|
}
|
||||||
Refresh(FALSE);
|
Refresh(FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -305,29 +312,29 @@ void WinEDA_SetColorsFrame::SetDisplayOnOff(wxCommandEvent& event)
|
||||||
/******************************************************************/
|
/******************************************************************/
|
||||||
{
|
{
|
||||||
for ( int ii = 0; laytool_list[ii] != NULL; ii++ )
|
for ( int ii = 0; laytool_list[ii] != NULL; ii++ )
|
||||||
{
|
{
|
||||||
if ( laytool_list[ii]->m_CheckBox == NULL ) continue;
|
if ( laytool_list[ii]->m_CheckBox == NULL )
|
||||||
|
continue;
|
||||||
if ( ! laytool_list[ii]->m_NoDisplayIsColor &&
|
if ( ! laytool_list[ii]->m_NoDisplayIsColor &&
|
||||||
(laytool_list[ii]->m_NoDisplay == NULL) ) continue;
|
(laytool_list[ii]->m_NoDisplay == NULL) )
|
||||||
|
continue;
|
||||||
|
|
||||||
if ( laytool_list[ii]->m_NoDisplayIsColor )
|
if ( laytool_list[ii]->m_NoDisplayIsColor )
|
||||||
{
|
{
|
||||||
if ( laytool_list[ii]->m_CheckBox->GetValue() )
|
if ( laytool_list[ii]->m_CheckBox->GetValue() )
|
||||||
*laytool_list[ii]->m_Color &= ~ITEM_NOT_SHOW;
|
*laytool_list[ii]->m_Color &= ~ITEM_NOT_SHOW;
|
||||||
else *laytool_list[ii]->m_Color |= ITEM_NOT_SHOW;
|
else
|
||||||
}
|
*laytool_list[ii]->m_Color |= ITEM_NOT_SHOW;
|
||||||
|
|
||||||
else
|
|
||||||
{
|
|
||||||
*laytool_list[ii]->m_NoDisplay = laytool_list[ii]->m_CheckBox->GetValue();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
*laytool_list[ii]->m_NoDisplay = laytool_list[ii]->m_CheckBox->GetValue();
|
||||||
|
}
|
||||||
|
}
|
||||||
m_Parent->GetScreen()->SetRefreshReq();
|
m_Parent->GetScreen()->SetRefreshReq();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/***********************************************************************/
|
/***********************************************************************/
|
||||||
void WinEDA_SetColorsFrame::ResetDisplayLayersCu(wxCommandEvent& event)
|
void WinEDA_SetColorsFrame::ResetDisplayLayersCu(wxCommandEvent& event)
|
||||||
/***********************************************************************/
|
/***********************************************************************/
|
||||||
|
@ -335,10 +342,11 @@ void WinEDA_SetColorsFrame::ResetDisplayLayersCu(wxCommandEvent& event)
|
||||||
bool NewState = (event.GetId() == ID_COLOR_RESET_SHOW_LAYER_ON) ? TRUE : FALSE;
|
bool NewState = (event.GetId() == ID_COLOR_RESET_SHOW_LAYER_ON) ? TRUE : FALSE;
|
||||||
|
|
||||||
for ( int ii = 1; ii < 34; ii++ )
|
for ( int ii = 1; ii < 34; ii++ )
|
||||||
{
|
{
|
||||||
if ( laytool_list[ii]->m_CheckBox == NULL ) continue;
|
if ( laytool_list[ii]->m_CheckBox == NULL )
|
||||||
|
continue;
|
||||||
laytool_list[ii]->m_CheckBox->SetValue(NewState);
|
laytool_list[ii]->m_CheckBox->SetValue(NewState);
|
||||||
}
|
}
|
||||||
|
|
||||||
SetDisplayOnOff(event);
|
SetDisplayOnOff(event);
|
||||||
}
|
}
|
||||||
|
|
|
@ -551,7 +551,7 @@ void AfficheDoc(WinEDA_DrawFrame * frame, const wxString & Doc, const wxString &
|
||||||
|
|
||||||
int GetTimeStamp(void);
|
int GetTimeStamp(void);
|
||||||
/* Retoure une identification temporelle (Time stamp) differente a chaque appel */
|
/* Retoure une identification temporelle (Time stamp) differente a chaque appel */
|
||||||
int DisplayColorFrame(wxWindow * parent);
|
int DisplayColorFrame(wxWindow * parent, int OldColor);
|
||||||
int GetCommandOptions(const int argc, const char **argv, const char * stringtst,
|
int GetCommandOptions(const int argc, const char **argv, const char * stringtst,
|
||||||
const char ** optarg, int * optind);
|
const char ** optarg, int * optind);
|
||||||
|
|
||||||
|
@ -627,4 +627,3 @@ void DrawAndSizingBlockOutlines(WinEDA_DrawPanel * panel, wxDC * DC, bool erase
|
||||||
|
|
||||||
#endif // COMMON_H
|
#endif // COMMON_H
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -50,11 +50,6 @@ static ColorButton Msg_Layers_Cu =
|
||||||
_( "Copper Layers" ), -1 /* Title */
|
_( "Copper Layers" ), -1 /* Title */
|
||||||
};
|
};
|
||||||
|
|
||||||
static ColorButton Msg_Layers_Tech =
|
|
||||||
{
|
|
||||||
_( "Tech Layers" ), -1 /* Title */
|
|
||||||
};
|
|
||||||
|
|
||||||
static ColorButton Layer_1_Butt =
|
static ColorButton Layer_1_Butt =
|
||||||
{
|
{
|
||||||
wxEmptyString,
|
wxEmptyString,
|
||||||
|
@ -183,6 +178,12 @@ static ColorButton Layer_16_Butt =
|
||||||
TRUE // toggle bit ITEM_NOT_SHOW of the color variable
|
TRUE // toggle bit ITEM_NOT_SHOW of the color variable
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
static ColorButton Msg_Layers_Tech =
|
||||||
|
{
|
||||||
|
_( "Tech Layers" ), -1 /* Title */
|
||||||
|
};
|
||||||
|
|
||||||
static ColorButton Layer_17_Butt =
|
static ColorButton Layer_17_Butt =
|
||||||
{
|
{
|
||||||
wxEmptyString,
|
wxEmptyString,
|
||||||
|
@ -322,7 +323,8 @@ static ColorButton Ratsnest_Butt =
|
||||||
_( "Ratsnest" ), /* Title */
|
_( "Ratsnest" ), /* Title */
|
||||||
-1,
|
-1,
|
||||||
&g_DesignSettings.m_RatsnestColor, /* adr du parametre optionnel */
|
&g_DesignSettings.m_RatsnestColor, /* adr du parametre optionnel */
|
||||||
FALSE, &g_Show_Ratsnest // address of boolean display control parameter to toggle
|
FALSE,
|
||||||
|
&g_Show_Ratsnest // address of boolean display control parameter to toggle
|
||||||
};
|
};
|
||||||
|
|
||||||
static ColorButton Pad_Cu_Butt =
|
static ColorButton Pad_Cu_Butt =
|
||||||
|
@ -455,6 +457,7 @@ static ColorButton* laytool_list[] = {
|
||||||
|
|
||||||
// &Layer_30_Butt,
|
// &Layer_30_Butt,
|
||||||
// &Layer_31_Butt,
|
// &Layer_31_Butt,
|
||||||
|
// &Layer_32_Butt,
|
||||||
|
|
||||||
&Msg_Others_Items,
|
&Msg_Others_Items,
|
||||||
&Via_Normale_Butt,
|
&Via_Normale_Butt,
|
||||||
|
@ -552,7 +555,7 @@ BEGIN_EVENT_TABLE( WinEDA_SetColorsFrame, wxDialog )
|
||||||
EVT_BUTTON( ID_COLOR_SETUP + 41, WinEDA_SetColorsFrame::SetColor )
|
EVT_BUTTON( ID_COLOR_SETUP + 41, WinEDA_SetColorsFrame::SetColor )
|
||||||
EVT_BUTTON( ID_COLOR_SETUP + 42, WinEDA_SetColorsFrame::SetColor )
|
EVT_BUTTON( ID_COLOR_SETUP + 42, WinEDA_SetColorsFrame::SetColor )
|
||||||
EVT_BUTTON( ID_COLOR_SETUP + 43, WinEDA_SetColorsFrame::SetColor )
|
EVT_BUTTON( ID_COLOR_SETUP + 43, WinEDA_SetColorsFrame::SetColor )
|
||||||
EVT_BUTTON( ID_COLOR_SETUP + 44, WinEDA_SetColorsFrame::SetColor )
|
// EVT_BUTTON( ID_COLOR_SETUP + 44, WinEDA_SetColorsFrame::SetColor )
|
||||||
END_EVENT_TABLE()
|
END_EVENT_TABLE()
|
||||||
|
|
||||||
/*****************************************************/
|
/*****************************************************/
|
||||||
|
@ -561,9 +564,10 @@ void DisplayColorSetupFrame( WinEDA_DrawFrame* parent,
|
||||||
/*****************************************************/
|
/*****************************************************/
|
||||||
{
|
{
|
||||||
WinEDA_SetColorsFrame* frame =
|
WinEDA_SetColorsFrame* frame =
|
||||||
new WinEDA_SetColorsFrame( parent,framepos);
|
new WinEDA_SetColorsFrame( parent, framepos );
|
||||||
|
|
||||||
frame->ShowModal(); frame->Destroy();
|
frame->ShowModal();
|
||||||
|
frame->Destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -586,7 +590,7 @@ WinEDA_SetColorsFrame::WinEDA_SetColorsFrame(
|
||||||
|
|
||||||
SetFont( *g_DialogFont );
|
SetFont( *g_DialogFont );
|
||||||
|
|
||||||
pos.x = 5;
|
pos.x = 5;
|
||||||
pos.y = START_Y;
|
pos.y = START_Y;
|
||||||
|
|
||||||
for( ii = 0; laytool_list[ii] != NULL; ii++ )
|
for( ii = 0; laytool_list[ii] != NULL; ii++ )
|
||||||
|
@ -595,7 +599,7 @@ WinEDA_SetColorsFrame::WinEDA_SetColorsFrame(
|
||||||
{
|
{
|
||||||
if( pos.y != START_Y )
|
if( pos.y != START_Y )
|
||||||
{
|
{
|
||||||
pos.x += w + 120;
|
pos.x += w + 120;
|
||||||
pos.y = START_Y;
|
pos.y = START_Y;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -619,7 +623,7 @@ WinEDA_SetColorsFrame::WinEDA_SetColorsFrame(
|
||||||
|
|
||||||
if( laytool_list[ii]->m_Id == 0 )
|
if( laytool_list[ii]->m_Id == 0 )
|
||||||
laytool_list[ii]->m_Id = ID_COLOR_SETUP + ii;
|
laytool_list[ii]->m_Id = ID_COLOR_SETUP + ii;
|
||||||
|
|
||||||
butt_ID = laytool_list[ii]->m_Id;
|
butt_ID = laytool_list[ii]->m_Id;
|
||||||
|
|
||||||
laytool_list[ii]->m_CheckBox = new wxCheckBox( this,
|
laytool_list[ii]->m_CheckBox = new wxCheckBox( this,
|
||||||
|
@ -693,9 +697,9 @@ WinEDA_SetColorsFrame::WinEDA_SetColorsFrame(
|
||||||
pos.y += yy;
|
pos.y += yy;
|
||||||
}
|
}
|
||||||
|
|
||||||
pos.x = 150;
|
pos.x = 150;
|
||||||
pos.y = 300;
|
pos.y = 300;
|
||||||
|
|
||||||
wxButton* Button = new wxButton( this, ID_COLOR_RESET_SHOW_LAYER_ON,
|
wxButton* Button = new wxButton( this, ID_COLOR_RESET_SHOW_LAYER_ON,
|
||||||
_( "Show All" ), pos );
|
_( "Show All" ), pos );
|
||||||
|
|
||||||
|
@ -712,8 +716,8 @@ WinEDA_SetColorsFrame::WinEDA_SetColorsFrame(
|
||||||
_( "Exit" ), pos );
|
_( "Exit" ), pos );
|
||||||
|
|
||||||
Button->SetForegroundColour( *wxBLUE );
|
Button->SetForegroundColour( *wxBLUE );
|
||||||
|
|
||||||
winsize.x = 500;
|
winsize.x = 500;
|
||||||
winsize.y = pos.y + Button->GetSize().y + 5;
|
winsize.y = pos.y + Button->GetSize().y + 5;
|
||||||
SetClientSize( winsize );
|
SetClientSize( winsize );
|
||||||
}
|
}
|
||||||
|
@ -736,7 +740,9 @@ void WinEDA_SetColorsFrame::SetColor( wxCommandEvent& event )
|
||||||
int color;
|
int color;
|
||||||
int w = BUTT_SIZE_X, h = BUTT_SIZE_Y;
|
int w = BUTT_SIZE_X, h = BUTT_SIZE_Y;
|
||||||
|
|
||||||
color = DisplayColorFrame( this );
|
color = DisplayColorFrame( this,
|
||||||
|
*laytool_list[id - ID_COLOR_SETUP]->m_Color );
|
||||||
|
|
||||||
if( color < 0 )
|
if( color < 0 )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue