Minor fixes and code cleanup.
This commit is contained in:
parent
a97f5c2530
commit
0d740e45e3
|
@ -112,14 +112,11 @@ int CVPCB_MAINFRAME::ReadSchematicNetlist()
|
|||
// FILE_LINE_READER will close the file.
|
||||
FILE_LINE_READER netlistReader( source, m_NetlistFileName.GetFullPath() );
|
||||
|
||||
// hopes netlistReader's line buffer does not move. It won't unless you encounter
|
||||
// a line larger than LINE_READER_LINE_INITIAL_SIZE = 5000
|
||||
const char* Line = netlistReader.Line();
|
||||
|
||||
/* Read the file header (must be "( { OrCAD PCB" or "({ OrCAD PCB" )
|
||||
* or "# EESchema Netlist"
|
||||
*/
|
||||
netlistReader.ReadLine();
|
||||
const char* Line = netlistReader.Line();
|
||||
|
||||
/* test for netlist type PCB2 */
|
||||
idx = strnicmp( Line, "( {", 3 );
|
||||
|
@ -150,6 +147,7 @@ int CVPCB_MAINFRAME::ReadSchematicNetlist()
|
|||
|
||||
if( netlistReader.ReadLine( ) == 0 )
|
||||
break;
|
||||
Line = netlistReader.Line();
|
||||
|
||||
/* Remove blanks */
|
||||
idx = 0;
|
||||
|
@ -316,7 +314,6 @@ int ReadFootprintFilterList( FILE_LINE_READER& aNetlistReader, COMPONENT_LIST&
|
|||
int ReadPinConnection( FILE_LINE_READER& aNetlistReader, COMPONENT* Cmp )
|
||||
{
|
||||
int i, jj;
|
||||
char* Line = aNetlistReader;
|
||||
char cbuffer[BUFFER_CHAR_SIZE];
|
||||
|
||||
for( ; ; )
|
||||
|
@ -327,6 +324,8 @@ int ReadPinConnection( FILE_LINE_READER& aNetlistReader, COMPONENT* Cmp )
|
|||
if( aNetlistReader.ReadLine() == 0 )
|
||||
return -1;
|
||||
|
||||
char* Line = aNetlistReader.Line();
|
||||
|
||||
/* Remove blanks from the beginning of the line. */
|
||||
i = 0; while( Line[i] == ' ' )
|
||||
i++;
|
||||
|
|
|
@ -200,8 +200,8 @@ public:
|
|||
int ReturnDCodeNumber( char*& Text );
|
||||
|
||||
// functions to execute G commands or D commands:
|
||||
bool Execute_G_Command( char*& text, int G_commande );
|
||||
bool Execute_DCODE_Command( char*& text, int D_commande );
|
||||
bool Execute_G_Command( char*& text, int G_command );
|
||||
bool Execute_DCODE_Command( char*& text, int D_command );
|
||||
|
||||
/**
|
||||
* Function ReadRS274XCommand
|
||||
|
|
|
@ -71,8 +71,7 @@ EVT_TOOL( ID_FIND_ITEMS, GERBVIEW_FRAME::Process_Special_Functions )
|
|||
EVT_KICAD_CHOICEBOX( ID_TOOLBARH_GERBVIEW_SELECT_ACTIVE_LAYER,
|
||||
GERBVIEW_FRAME::OnSelectActiveLayer )
|
||||
|
||||
EVT_SELECT_DCODE( ID_TOOLBARH_GERBER_SELECT_TOOL,
|
||||
GERBVIEW_FRAME::Process_Special_Functions )
|
||||
EVT_SELECT_DCODE( ID_TOOLBARH_GERBER_SELECT_ACTIVE_DCODE, GERBVIEW_FRAME::OnSelectActiveDCode )
|
||||
|
||||
// Vertical toolbar:
|
||||
EVT_TOOL( ID_NO_TOOL_SELECTED, GERBVIEW_FRAME::Process_Special_Functions )
|
||||
|
@ -100,7 +99,7 @@ EVT_UPDATE_UI( ID_TB_OPTIONS_SHOW_DCODES, GERBVIEW_FRAME::OnUpdateShowDCodes )
|
|||
EVT_UPDATE_UI( ID_TB_OPTIONS_SHOW_LAYERS_MANAGER_VERTICAL_TOOLBAR,
|
||||
GERBVIEW_FRAME::OnUpdateShowLayerManager )
|
||||
|
||||
EVT_UPDATE_UI( ID_TOOLBARH_GERBER_SELECT_TOOL, GERBVIEW_FRAME::OnUpdateSelectDCode )
|
||||
EVT_UPDATE_UI( ID_TOOLBARH_GERBER_SELECT_ACTIVE_DCODE, GERBVIEW_FRAME::OnUpdateSelectDCode )
|
||||
EVT_UPDATE_UI( ID_TOOLBARH_GERBVIEW_SELECT_ACTIVE_LAYER, GERBVIEW_FRAME::OnUpdateLayerSelectBox )
|
||||
EVT_UPDATE_UI_RANGE( ID_TB_OPTIONS_SHOW_GBR_MODE_0, ID_TB_OPTIONS_SHOW_GBR_MODE_2,
|
||||
GERBVIEW_FRAME::OnUpdateDrawMode )
|
||||
|
@ -112,7 +111,6 @@ END_EVENT_TABLE()
|
|||
void GERBVIEW_FRAME::Process_Special_Functions( wxCommandEvent& event )
|
||||
{
|
||||
int id = event.GetId();
|
||||
GERBER_IMAGE* gerber_layer = g_GERBER_List[getActiveLayer()];
|
||||
|
||||
switch( id )
|
||||
{
|
||||
|
@ -126,9 +124,9 @@ void GERBVIEW_FRAME::Process_Special_Functions( wxCommandEvent& event )
|
|||
case ID_POPUP_CANCEL_CURRENT_COMMAND:
|
||||
DrawPanel->EndMouseCapture();
|
||||
|
||||
/* Should not be executed, except bug */
|
||||
if( GetScreen()->m_BlockLocate.m_Command != BLOCK_IDLE )
|
||||
{
|
||||
/* Should not be executed, except bug */
|
||||
GetScreen()->m_BlockLocate.m_Command = BLOCK_IDLE;
|
||||
GetScreen()->m_BlockLocate.m_State = STATE_NO_BLOCK;
|
||||
GetScreen()->m_BlockLocate.ClearItemsList();
|
||||
|
@ -137,8 +135,7 @@ void GERBVIEW_FRAME::Process_Special_Functions( wxCommandEvent& event )
|
|||
if( GetToolId() == ID_NO_TOOL_SELECTED )
|
||||
SetToolID( ID_NO_TOOL_SELECTED, DrawPanel->GetDefaultCursor(), wxEmptyString );
|
||||
else
|
||||
DrawPanel->SetCursor( DrawPanel->GetDefaultCursor() );
|
||||
|
||||
DrawPanel->SetCursor( DrawPanel->GetCurrentCursor() );
|
||||
break;
|
||||
|
||||
default:
|
||||
|
@ -170,18 +167,6 @@ void GERBVIEW_FRAME::Process_Special_Functions( wxCommandEvent& event )
|
|||
case ID_POPUP_CANCEL_CURRENT_COMMAND:
|
||||
break;
|
||||
|
||||
case ID_TOOLBARH_GERBER_SELECT_TOOL:
|
||||
if( gerber_layer )
|
||||
{
|
||||
int tool = m_DCodeSelector->GetSelectedDCodeId();
|
||||
if( tool != gerber_layer->m_Selected_Tool )
|
||||
{
|
||||
gerber_layer->m_Selected_Tool = tool;
|
||||
DrawPanel->ReDraw( &dc, false );
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case ID_GERBVIEW_SHOW_LIST_DCODES:
|
||||
Liste_D_Codes();
|
||||
break;
|
||||
|
@ -195,7 +180,6 @@ void GERBVIEW_FRAME::Process_Special_Functions( wxCommandEvent& event )
|
|||
case ID_POPUP_ZOOM_BLOCK:
|
||||
GetScreen()->m_BlockLocate.m_Command = BLOCK_ZOOM;
|
||||
GetScreen()->m_BlockLocate.SetMessageBlock( this );
|
||||
GetScreen()->m_BlockLocate.SetMessageBlock( this );
|
||||
HandleBlockEnd( &dc );
|
||||
break;
|
||||
|
||||
|
@ -212,6 +196,23 @@ void GERBVIEW_FRAME::Process_Special_Functions( wxCommandEvent& event )
|
|||
}
|
||||
|
||||
|
||||
/* Selects the active DCode for the current active layer.
|
||||
* Items using this DCode are hightlighted
|
||||
*/
|
||||
void GERBVIEW_FRAME::OnSelectActiveDCode( wxCommandEvent& event )
|
||||
{
|
||||
GERBER_IMAGE* gerber_image = g_GERBER_List[getActiveLayer()];
|
||||
if( gerber_image )
|
||||
{
|
||||
int tool = m_DCodeSelector->GetSelectedDCodeId();
|
||||
if( tool != gerber_image->m_Selected_Tool )
|
||||
{
|
||||
gerber_image->m_Selected_Tool = tool;
|
||||
DrawPanel->Refresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Selects the active layer:
|
||||
* - if a file is loaded, it is loaded in this layer
|
||||
* _ this layer is displayed on top of other layers
|
||||
|
|
|
@ -279,6 +279,13 @@ public: GERBVIEW_FRAME( wxWindow* father, const wxString& title,
|
|||
void Process_Special_Functions( wxCommandEvent& event );
|
||||
void OnSelectOptionToolbar( wxCommandEvent& event );
|
||||
|
||||
/**
|
||||
* Function OnSelectActiveDCode
|
||||
* Selects the active DCode for the current active layer.
|
||||
* Items using this DCode are hightlighted
|
||||
*/
|
||||
void OnSelectActiveDCode( wxCommandEvent& event );
|
||||
|
||||
/**
|
||||
* Function OnSelectActiveLayer
|
||||
* Selects the active layer:
|
||||
|
|
|
@ -18,7 +18,7 @@ enum gerbview_ids
|
|||
ID_GERBVIEW_SHOW_LIST_DCODES = 1,
|
||||
ID_GERBVIEW_LOAD_DRILL_FILE,
|
||||
ID_GERBVIEW_LOAD_DCODE_FILE,
|
||||
ID_TOOLBARH_GERBER_SELECT_TOOL,
|
||||
ID_TOOLBARH_GERBER_SELECT_ACTIVE_DCODE,
|
||||
ID_MENU_INC_LAYER_AND_APPEND_FILE,
|
||||
ID_INC_LAYER_AND_APPEND_FILE,
|
||||
ID_GERBVIEW_SHOW_SOURCE,
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
bool GERBVIEW_FRAME::Read_GERBER_File( const wxString& GERBER_FullFileName,
|
||||
const wxString& D_Code_FullFileName )
|
||||
{
|
||||
int G_commande = 0; // command number for G commands like G04
|
||||
int G_command = 0; // command number for G commands like G04
|
||||
int D_commande = 0; // command number for D commands like D02
|
||||
|
||||
char line[GERBER_BUFZ];
|
||||
|
@ -96,8 +96,8 @@ bool GERBVIEW_FRAME::Read_GERBER_File( const wxString& GERBER_FullFileName,
|
|||
break;
|
||||
|
||||
case 'G': /* Line type Gxx : command */
|
||||
G_commande = gerber->ReturnGCodeNumber( text );
|
||||
gerber->Execute_G_Command( text, G_commande );
|
||||
G_command = gerber->ReturnGCodeNumber( text );
|
||||
gerber->Execute_G_Command( text, G_command );
|
||||
break;
|
||||
|
||||
case 'D': /* Line type Dxx : Tool selection (xx > 0) or
|
||||
|
|
|
@ -67,8 +67,6 @@
|
|||
#define GERB_STOP_DRAW 2 // Extinguish light (lift pen)
|
||||
#define GERB_FLASH 3 // Flash
|
||||
|
||||
static wxPoint LastPosition;
|
||||
|
||||
|
||||
/* Local Functions (are lower case since they are private to this source file)
|
||||
**/
|
||||
|
@ -433,11 +431,11 @@ int GERBER_IMAGE::ReturnDCodeNumber( char*& Text )
|
|||
}
|
||||
|
||||
|
||||
bool GERBER_IMAGE::Execute_G_Command( char*& text, int G_commande )
|
||||
bool GERBER_IMAGE::Execute_G_Command( char*& text, int G_command )
|
||||
{
|
||||
// D( printf( "%22s: G_CODE<%d>\n", __func__, G_commande ); )
|
||||
// D( printf( "%22s: G_CODE<%d>\n", __func__, G_command ); )
|
||||
|
||||
switch( G_commande )
|
||||
switch( G_command )
|
||||
{
|
||||
case GC_PHOTO_MODE: // can starts a D03 flash command: redundant, can
|
||||
// be safely ignored
|
||||
|
@ -534,7 +532,7 @@ bool GERBER_IMAGE::Execute_G_Command( char*& text, int G_commande )
|
|||
default:
|
||||
{
|
||||
wxString msg;
|
||||
msg.Printf( wxT( "G%0.2d command not handled" ), G_commande );
|
||||
msg.Printf( wxT( "G%0.2d command not handled" ), G_command );
|
||||
ReportMessage( msg );
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -86,9 +86,10 @@ void GERBVIEW_FRAME::ReCreateHToolbar( void )
|
|||
m_DCodesList.Add( msg );
|
||||
}
|
||||
|
||||
m_DCodeSelector = new DCODE_SELECTION_BOX( m_HToolBar, ID_TOOLBARH_GERBER_SELECT_TOOL,
|
||||
wxDefaultPosition, wxSize( 150, -1 ),
|
||||
m_DCodesList );
|
||||
m_DCodeSelector = new DCODE_SELECTION_BOX(
|
||||
m_HToolBar, ID_TOOLBARH_GERBER_SELECT_ACTIVE_DCODE,
|
||||
wxDefaultPosition, wxSize( 150, -1 ),
|
||||
m_DCodesList );
|
||||
m_HToolBar->AddControl( m_DCodeSelector );
|
||||
|
||||
m_TextInfo = new wxTextCtrl( m_HToolBar, wxID_ANY, wxEmptyString, wxDefaultPosition,
|
||||
|
|
Loading…
Reference in New Issue