Commit cd9da9dd authored by jean-pierre charras's avatar jean-pierre charras

Pcbnew: fix Bug #1255568 (relative to .pos file creation). Minor compil warnings fixes

parent 18dd5238
......@@ -203,7 +203,7 @@ void EDA_LIST_DIALOG::InsertItems( const std::vector< wxArrayString >& itemList,
for( unsigned col = 0; col < itemList[row].GetCount(); col++ )
{
long itemIndex;
long itemIndex = 0;
if( col == 0 )
{
......
......@@ -68,7 +68,7 @@ int64_t rescale( int64_t aNumerator, int64_t aValue, int64_t aDenominator )
a0 = a0 * b0 + t1a;
a1 = a1 * b1 + ( t1 >> 32 ) + ( a0 < t1a );
a0 += r;
a1 += ( (uint64_t) a0 ) < r;
a1 += a0 < (uint64_t)r;
for( i = 63; i >= 0; i-- )
{
......
......@@ -167,7 +167,7 @@ void DIALOG_NETLIST::OnReadNetlistFileClick( wxCommandEvent& event )
"sure you want to read the netlist?" ) ) )
return;
wxBusyCursor busy();
wxBusyCursor busy;
m_MessageWindow->Clear();
msg.Printf( _( "Reading netlist file \"%s\".\n" ), GetChars( netlistFileName ) );
......
......@@ -200,6 +200,15 @@ bool DIALOG_GEN_MODULE_POSITION::CreateFiles()
bool singleFile = OneFileOnly();
int fullcount = 0;
// Count the footprints to place, do not yet create a file
int fpcount = m_parent->DoGenFootprintsPositionFile( wxEmptyString, UnitsMM(),
ForceAllSmd(), 2 );
if( fpcount == 0)
{
wxMessageBox( _( "No modules for automated placement." ) );
return false;
}
fn = m_parent->GetBoard()->GetFileName();
fn.SetPath( GetOutputDirectory() );
frontLayerName = brd->GetLayerName( LAYER_N_FRONT );
......@@ -208,18 +217,19 @@ bool DIALOG_GEN_MODULE_POSITION::CreateFiles()
// Create the the Front or Top side placement file,
// or the single file
int side = 1;
if( singleFile )
{
side = 2;
fn.SetName( fn.GetName() + wxT( "-" ) + wxT("all") );
}
else
else
fn.SetName( fn.GetName() + wxT( "-" ) + frontLayerName );
fn.SetExt( FootprintPlaceFileExtension );
int fpcount = m_parent->DoGenFootprintsPositionFile( fn.GetFullPath(), UnitsMM(),
ForceAllSmd(), side );
fpcount = m_parent->DoGenFootprintsPositionFile( fn.GetFullPath(), UnitsMM(),
ForceAllSmd(), side );
if( fpcount < 0 )
{
msg.Printf( _( "Unable to create <%s>" ), GetChars( fn.GetFullPath() ) );
......@@ -228,12 +238,6 @@ bool DIALOG_GEN_MODULE_POSITION::CreateFiles()
return false;
}
if( fpcount == 0)
{
wxMessageBox( _( "No modules for automated placement." ) );
return false;
}
if( singleFile )
msg.Printf( _( "Place file: <%s>\n" ), GetChars( fn.GetFullPath() ) );
else
......@@ -339,6 +343,8 @@ void PCB_EDIT_FRAME::GenFootprintsPositionFile( wxCommandEvent& event )
* aSide = 0 -> Back (bottom) side)
* aSide = 1 -> Front (top) side)
* aSide = 2 -> both sides
* if aFullFileName is empty, the file is not crated, only the
* count of footprints to place is returned
*
* The format is:
* ### Module positions - created on 04/12/2012 15:24:24 ###
......@@ -405,6 +411,9 @@ int PCB_EDIT_FRAME::DoGenFootprintsPositionFile( const wxString& aFullFileName,
moduleCount++;
}
if( aFullFileName.IsEmpty() )
return moduleCount;
FILE * file = wxFopen( aFullFileName, wxT( "wt" ) );
if( file == NULL )
return -1;
......
......@@ -60,8 +60,8 @@ void PCB_ARC::Parse( XNODE* aNode,
XNODE* lNode;
double a = 0.0;
int r = 0;
int endX;
int endY;
int endX = 0;
int endY = 0;
m_PCadLayer = aLayer;
m_KiCadLayer = GetKiCadLayer();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment