Fix a bunch of Coverity scan "unhandled exception" errors.
This commit is contained in:
parent
39497b109e
commit
f4d5e349bf
|
@ -391,7 +391,7 @@ void FP_LIB_TABLE::Format( OUTPUTFORMATTER* out, int nestLevel ) const
|
|||
|
||||
|
||||
void FP_LIB_TABLE::ROW::Format( OUTPUTFORMATTER* out, int nestLevel ) const
|
||||
throw( IO_ERROR )
|
||||
throw( IO_ERROR, boost::interprocess::lock_exception )
|
||||
{
|
||||
out->Print( nestLevel, "(lib (name %s)(type %s)(uri %s)(options %s)(descr %s))\n",
|
||||
out->Quotew( GetNickName() ).c_str(),
|
||||
|
@ -665,7 +665,7 @@ bool FP_LIB_TABLE::IsEmpty( bool aIncludeFallback )
|
|||
|
||||
|
||||
MODULE* FP_LIB_TABLE::FootprintLoadWithOptionalNickname( const FPID& aFootprintId )
|
||||
throw( IO_ERROR, PARSE_ERROR )
|
||||
throw( IO_ERROR, PARSE_ERROR, boost::interprocess::lock_exception )
|
||||
{
|
||||
wxString nickname = aFootprintId.GetLibNickname();
|
||||
wxString fpname = aFootprintId.GetFootprintName();
|
||||
|
|
|
@ -179,7 +179,6 @@ class COMPONENTS_LISTBOX : public ITEMS_LISTBOX_BASE
|
|||
{
|
||||
public:
|
||||
wxArrayString m_ComponentList;
|
||||
CVPCB_MAINFRAME* m_Parent;
|
||||
|
||||
public:
|
||||
|
||||
|
|
|
@ -756,7 +756,7 @@ bool PART_LIB::SaveHeader( OUTPUTFORMATTER& aFormatter )
|
|||
}
|
||||
|
||||
|
||||
PART_LIB* PART_LIB::LoadLibrary( const wxString& aFileName ) throw( IO_ERROR )
|
||||
PART_LIB* PART_LIB::LoadLibrary( const wxString& aFileName ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
std::auto_ptr<PART_LIB> lib( new PART_LIB( LIBRARY_TYPE_EESCHEMA, aFileName ) );
|
||||
|
||||
|
@ -784,7 +784,7 @@ PART_LIB* PART_LIB::LoadLibrary( const wxString& aFileName ) throw( IO_ERROR )
|
|||
}
|
||||
|
||||
|
||||
PART_LIB* PART_LIBS::AddLibrary( const wxString& aFileName ) throw( IO_ERROR )
|
||||
PART_LIB* PART_LIBS::AddLibrary( const wxString& aFileName ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
PART_LIB* lib;
|
||||
|
||||
|
@ -979,7 +979,8 @@ void PART_LIBS::RemoveCacheLibrary()
|
|||
|
||||
|
||||
void PART_LIBS::LibNamesAndPaths( PROJECT* aProject, bool doSave,
|
||||
wxString* aPaths, wxArrayString* aNames ) throw( IO_ERROR )
|
||||
wxString* aPaths, wxArrayString* aNames )
|
||||
throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
wxString pro = aProject->GetProjectFullName();
|
||||
|
||||
|
|
|
@ -123,7 +123,7 @@ public:
|
|||
* @param aFileName - File name object of part library.
|
||||
* @throw IO_ERROR if there's any problem loading.
|
||||
*/
|
||||
PART_LIB* AddLibrary( const wxString& aFileName ) throw( IO_ERROR );
|
||||
PART_LIB* AddLibrary( const wxString& aFileName ) throw( IO_ERROR, boost::bad_pointer );
|
||||
|
||||
/**
|
||||
* Function AddLibrary
|
||||
|
@ -160,7 +160,8 @@ public:
|
|||
* (without paths).
|
||||
*/
|
||||
static void LibNamesAndPaths( PROJECT* aProject, bool doSave,
|
||||
wxString* aPaths, wxArrayString* aNames=NULL ) throw( IO_ERROR );
|
||||
wxString* aPaths, wxArrayString* aNames=NULL )
|
||||
throw( IO_ERROR, boost::bad_pointer );
|
||||
|
||||
/**
|
||||
* Function cacheName
|
||||
|
@ -545,7 +546,7 @@ public:
|
|||
* the caller.
|
||||
* @throw IO_ERROR if there's any problem loading the library.
|
||||
*/
|
||||
static PART_LIB* LoadLibrary( const wxString& aFileName ) throw( IO_ERROR );
|
||||
static PART_LIB* LoadLibrary( const wxString& aFileName ) throw( IO_ERROR, boost::bad_pointer );
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -70,7 +70,7 @@ private:
|
|||
friend class SCH_EDIT_FRAME;
|
||||
|
||||
SCH_EDIT_FRAME* m_Parent;
|
||||
SCH_COMPONENT* m_Cmp;
|
||||
SCH_COMPONENT* m_cmp;
|
||||
LIB_PART* m_part;
|
||||
bool m_skipCopyFromPanel;
|
||||
|
||||
|
@ -169,6 +169,7 @@ DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::DIALOG_EDIT_COMPONENT_IN_SCHEMATIC( wxWindow
|
|||
{
|
||||
m_Parent = (SCH_EDIT_FRAME*) parent;
|
||||
|
||||
m_cmp = NULL;
|
||||
m_part = NULL;
|
||||
m_skipCopyFromPanel = false;
|
||||
|
||||
|
@ -301,7 +302,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copyPanelToOptions()
|
|||
wxString newname = chipnameTextCtrl->GetValue();
|
||||
|
||||
// Save current flags which could be modified by next change settings
|
||||
STATUS_FLAGS flags = m_Cmp->GetFlags();
|
||||
STATUS_FLAGS flags = m_cmp->GetFlags();
|
||||
|
||||
newname.Replace( wxT( " " ), wxT( "_" ) );
|
||||
|
||||
|
@ -309,7 +310,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copyPanelToOptions()
|
|||
{
|
||||
DisplayError( NULL, _( "No Component Name!" ) );
|
||||
}
|
||||
else if( Cmp_KEEPCASE( newname, m_Cmp->m_part_name ) )
|
||||
else if( Cmp_KEEPCASE( newname, m_cmp->m_part_name ) )
|
||||
{
|
||||
PART_LIBS* libs = Prj().SchLibs();
|
||||
|
||||
|
@ -321,41 +322,41 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copyPanelToOptions()
|
|||
}
|
||||
else // Change component from lib!
|
||||
{
|
||||
m_Cmp->SetPartName( newname, libs );
|
||||
m_cmp->SetPartName( newname, libs );
|
||||
}
|
||||
}
|
||||
|
||||
// For components with multiple shapes (De Morgan representation) Set the selected shape:
|
||||
if( convertCheckBox->IsEnabled() )
|
||||
{
|
||||
m_Cmp->SetConvert( convertCheckBox->GetValue() ? 2 : 1 );
|
||||
m_cmp->SetConvert( convertCheckBox->GetValue() ? 2 : 1 );
|
||||
}
|
||||
|
||||
//Set the part selection in multiple part per package
|
||||
if( m_Cmp->GetUnit() )
|
||||
if( m_cmp->GetUnit() )
|
||||
{
|
||||
int unit_selection = unitChoice->GetCurrentSelection() + 1;
|
||||
|
||||
m_Cmp->SetUnitSelection( &m_Parent->GetCurrentSheet(), unit_selection );
|
||||
m_Cmp->SetUnit( unit_selection );
|
||||
m_cmp->SetUnitSelection( &m_Parent->GetCurrentSheet(), unit_selection );
|
||||
m_cmp->SetUnit( unit_selection );
|
||||
}
|
||||
|
||||
switch( orientationRadioBox->GetSelection() )
|
||||
{
|
||||
case 0:
|
||||
m_Cmp->SetOrientation( CMP_ORIENT_0 );
|
||||
m_cmp->SetOrientation( CMP_ORIENT_0 );
|
||||
break;
|
||||
|
||||
case 1:
|
||||
m_Cmp->SetOrientation( CMP_ORIENT_90 );
|
||||
m_cmp->SetOrientation( CMP_ORIENT_90 );
|
||||
break;
|
||||
|
||||
case 2:
|
||||
m_Cmp->SetOrientation( CMP_ORIENT_180 );
|
||||
m_cmp->SetOrientation( CMP_ORIENT_180 );
|
||||
break;
|
||||
|
||||
case 3:
|
||||
m_Cmp->SetOrientation( CMP_ORIENT_270 );
|
||||
m_cmp->SetOrientation( CMP_ORIENT_270 );
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -367,17 +368,17 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copyPanelToOptions()
|
|||
break;
|
||||
|
||||
case 1:
|
||||
m_Cmp->SetOrientation( CMP_MIRROR_X );
|
||||
m_cmp->SetOrientation( CMP_MIRROR_X );
|
||||
break;
|
||||
|
||||
case 2:
|
||||
m_Cmp->SetOrientation( CMP_MIRROR_Y );
|
||||
m_cmp->SetOrientation( CMP_MIRROR_Y );
|
||||
break;
|
||||
}
|
||||
|
||||
// Restore m_Flag modified by SetUnit() and other change settings
|
||||
m_Cmp->ClearFlags();
|
||||
m_Cmp->SetFlags( flags );
|
||||
m_cmp->ClearFlags();
|
||||
m_cmp->SetFlags( flags );
|
||||
}
|
||||
|
||||
|
||||
|
@ -396,9 +397,9 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnOKButtonClick( wxCommandEvent& event
|
|||
|
||||
// save old cmp in undo list if not already in edit, or moving ...
|
||||
// or the component to be edited is part of a block
|
||||
if( m_Cmp->m_Flags == 0 ||
|
||||
m_Parent->GetScreen()->m_BlockLocate.GetState() != STATE_NO_BLOCK )
|
||||
m_Parent->SaveCopyInUndoList( m_Cmp, UR_CHANGED );
|
||||
if( m_cmp->m_Flags == 0
|
||||
|| m_Parent->GetScreen()->m_BlockLocate.GetState() != STATE_NO_BLOCK )
|
||||
m_Parent->SaveCopyInUndoList( m_cmp, UR_CHANGED );
|
||||
|
||||
copyPanelToOptions();
|
||||
|
||||
|
@ -441,21 +442,21 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnOKButtonClick( wxCommandEvent& event
|
|||
// change all field positions from relative to absolute
|
||||
for( unsigned i = 0; i<m_FieldsBuf.size(); ++i )
|
||||
{
|
||||
m_FieldsBuf[i].SetTextPosition( m_FieldsBuf[i].GetTextPosition() + m_Cmp->m_Pos );
|
||||
m_FieldsBuf[i].SetTextPosition( m_FieldsBuf[i].GetTextPosition() + m_cmp->m_Pos );
|
||||
}
|
||||
|
||||
LIB_PART* entry = Prj().SchLibs()->FindLibPart( m_Cmp->m_part_name );
|
||||
LIB_PART* entry = Prj().SchLibs()->FindLibPart( m_cmp->m_part_name );
|
||||
|
||||
if( entry && entry->IsPower() )
|
||||
m_FieldsBuf[VALUE].SetText( m_Cmp->m_part_name );
|
||||
m_FieldsBuf[VALUE].SetText( m_cmp->m_part_name );
|
||||
|
||||
// copy all the fields back, and change the length of m_Fields.
|
||||
m_Cmp->SetFields( m_FieldsBuf );
|
||||
m_cmp->SetFields( m_FieldsBuf );
|
||||
|
||||
// Reference has a specific initialization, depending on the current active sheet
|
||||
// because for a given component, in a complex hierarchy, there are more than one
|
||||
// reference.
|
||||
m_Cmp->SetRef( &m_Parent->GetCurrentSheet(), m_FieldsBuf[REFERENCE].GetText() );
|
||||
m_cmp->SetRef( &m_Parent->GetCurrentSheet(), m_FieldsBuf[REFERENCE].GetText() );
|
||||
|
||||
m_Parent->OnModify();
|
||||
m_Parent->GetScreen()->TestDanglingEnds();
|
||||
|
@ -474,7 +475,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::addFieldButtonHandler( wxCommandEvent&
|
|||
|
||||
unsigned fieldNdx = m_FieldsBuf.size();
|
||||
|
||||
SCH_FIELD blank( wxPoint(), fieldNdx, m_Cmp );
|
||||
SCH_FIELD blank( wxPoint(), fieldNdx, m_cmp );
|
||||
|
||||
blank.SetOrientation( m_FieldsBuf[REFERENCE].GetOrientation() );
|
||||
|
||||
|
@ -621,7 +622,7 @@ SCH_FIELD* DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::findField( const wxString& aField
|
|||
|
||||
void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::InitBuffers( SCH_COMPONENT* aComponent )
|
||||
{
|
||||
m_Cmp = aComponent;
|
||||
m_cmp = aComponent;
|
||||
|
||||
/* We have 3 component related field lists to be aware of: 1) UI
|
||||
presentation, 2) fields in component ram copy, and 3) fields recorded
|
||||
|
@ -635,7 +636,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::InitBuffers( SCH_COMPONENT* aComponent
|
|||
which came from the component.
|
||||
*/
|
||||
|
||||
m_part = Prj().SchLibs()->FindLibPart( m_Cmp->m_part_name );
|
||||
m_part = Prj().SchLibs()->FindLibPart( m_cmp->m_part_name );
|
||||
|
||||
#if 0 && defined(DEBUG)
|
||||
for( int i = 0; i<aComponent->GetFieldCount(); ++i )
|
||||
|
@ -658,7 +659,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::InitBuffers( SCH_COMPONENT* aComponent
|
|||
m_FieldsBuf.push_back( aComponent->m_Fields[i] );
|
||||
|
||||
// make the editable field position relative to the component
|
||||
m_FieldsBuf[i].SetTextPosition( m_FieldsBuf[i].GetTextPosition() - m_Cmp->m_Pos );
|
||||
m_FieldsBuf[i].SetTextPosition( m_FieldsBuf[i].GetTextPosition() - m_cmp->m_Pos );
|
||||
}
|
||||
|
||||
// Add template fieldnames:
|
||||
|
@ -669,7 +670,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::InitBuffers( SCH_COMPONENT* aComponent
|
|||
for( TEMPLATE_FIELDNAMES::const_iterator it = tfnames.begin(); it!=tfnames.end(); ++it )
|
||||
{
|
||||
// add a new field unconditionally to the UI only
|
||||
SCH_FIELD fld( wxPoint(0,0), -1 /* id is a relic */, m_Cmp, it->m_Name );
|
||||
SCH_FIELD fld( wxPoint(0,0), -1 /* id is a relic */, m_cmp, it->m_Name );
|
||||
|
||||
// See if field by same name already exists in component.
|
||||
SCH_FIELD* schField = aComponent->FindField( it->m_Name );
|
||||
|
@ -691,7 +692,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::InitBuffers( SCH_COMPONENT* aComponent
|
|||
fld = *schField;
|
||||
|
||||
// make the editable field position relative to the component
|
||||
fld.SetTextPosition( fld.GetTextPosition() - m_Cmp->m_Pos );
|
||||
fld.SetTextPosition( fld.GetTextPosition() - m_cmp->m_Pos );
|
||||
}
|
||||
|
||||
m_FieldsBuf.push_back( fld );
|
||||
|
@ -711,7 +712,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::InitBuffers( SCH_COMPONENT* aComponent
|
|||
|
||||
// make the editable field position relative to the component
|
||||
m_FieldsBuf[newNdx].SetTextPosition( m_FieldsBuf[newNdx].GetTextPosition() -
|
||||
m_Cmp->m_Pos );
|
||||
m_cmp->m_Pos );
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -724,7 +725,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::InitBuffers( SCH_COMPONENT* aComponent
|
|||
}
|
||||
#endif
|
||||
|
||||
m_FieldsBuf[REFERENCE].SetText( m_Cmp->GetRef( &m_Parent->GetCurrentSheet() ) );
|
||||
m_FieldsBuf[REFERENCE].SetText( m_cmp->GetRef( &m_Parent->GetCurrentSheet() ) );
|
||||
|
||||
for( unsigned i = 0; i<m_FieldsBuf.size(); ++i )
|
||||
{
|
||||
|
@ -744,7 +745,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::InitBuffers( SCH_COMPONENT* aComponent
|
|||
|
||||
// disable some options inside the edit dialog
|
||||
// which can cause problems while dragging
|
||||
if( m_Cmp->IsDragging() )
|
||||
if( m_cmp->IsDragging() )
|
||||
{
|
||||
orientationRadioBox->Disable();
|
||||
mirrorRadioBox->Disable();
|
||||
|
@ -855,7 +856,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copySelectedFieldToPanel()
|
|||
textSizeTextCtrl->SetValue( EDA_GRAPHIC_TEXT_CTRL::FormatSize( g_UserUnit, field.GetSize().x ) );
|
||||
|
||||
wxPoint coord = field.GetTextPosition();
|
||||
wxPoint zero = -m_Cmp->m_Pos; // relative zero
|
||||
wxPoint zero = -m_cmp->m_Pos; // relative zero
|
||||
|
||||
// If the field value is empty and the position is at relative zero, we
|
||||
// set the initial position as a small offset from the ref field, and
|
||||
|
@ -965,11 +966,11 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copyOptionsToPanel()
|
|||
}
|
||||
|
||||
// For components with multiple parts per package, set the unit selection
|
||||
if( m_Cmp->GetUnit() <= (int)unitChoice->GetCount() )
|
||||
unitChoice->SetSelection( m_Cmp->GetUnit() - 1 );
|
||||
if( m_cmp->GetUnit() <= (int)unitChoice->GetCount() )
|
||||
unitChoice->SetSelection( m_cmp->GetUnit() - 1 );
|
||||
|
||||
// Disable unit selection if only one unit exists:
|
||||
if( m_Cmp->GetUnit() <= 1 )
|
||||
if( m_cmp->GetUnit() <= 1 )
|
||||
{
|
||||
unitChoice->Enable( false );
|
||||
unitsInterchageableLabel->Show( false );
|
||||
|
@ -984,7 +985,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copyOptionsToPanel()
|
|||
unitsInterchageableLabel->SetLabel( _( "No" ) );
|
||||
}
|
||||
|
||||
int orientation = m_Cmp->GetOrientation() & ~( CMP_MIRROR_X | CMP_MIRROR_Y );
|
||||
int orientation = m_cmp->GetOrientation() & ~( CMP_MIRROR_X | CMP_MIRROR_Y );
|
||||
|
||||
if( orientation == CMP_ORIENT_90 )
|
||||
orientationRadioBox->SetSelection( 1 );
|
||||
|
@ -995,7 +996,7 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copyOptionsToPanel()
|
|||
else
|
||||
orientationRadioBox->SetSelection( 0 );
|
||||
|
||||
int mirror = m_Cmp->GetOrientation() & ( CMP_MIRROR_X | CMP_MIRROR_Y );
|
||||
int mirror = m_cmp->GetOrientation() & ( CMP_MIRROR_X | CMP_MIRROR_Y );
|
||||
|
||||
if( mirror == CMP_MIRROR_X )
|
||||
{
|
||||
|
@ -1012,38 +1013,37 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copyOptionsToPanel()
|
|||
|
||||
// Activate/Desactivate the normal/convert option ? (activated only if
|
||||
// the component has more than one shape)
|
||||
if( m_Cmp->GetConvert() > 1 )
|
||||
if( m_cmp->GetConvert() > 1 )
|
||||
convertCheckBox->SetValue( true );
|
||||
|
||||
if( m_part == NULL || !m_part->HasConversion() )
|
||||
convertCheckBox->Enable( false );
|
||||
|
||||
// Set the component's library name.
|
||||
chipnameTextCtrl->SetValue( m_Cmp->m_part_name );
|
||||
chipnameTextCtrl->SetValue( m_cmp->m_part_name );
|
||||
|
||||
// Set the component's unique ID time stamp.
|
||||
m_textCtrlTimeStamp->SetValue( wxString::Format( wxT( "%8.8lX" ),
|
||||
(unsigned long) m_Cmp->GetTimeStamp() ) );
|
||||
(unsigned long) m_cmp->GetTimeStamp() ) );
|
||||
}
|
||||
|
||||
|
||||
#include <kicad_device_context.h>
|
||||
|
||||
/* reinitialize components parameters to default values found in lib
|
||||
*/
|
||||
|
||||
void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::SetInitCmp( wxCommandEvent& event )
|
||||
{
|
||||
if( !m_Cmp )
|
||||
if( !m_cmp )
|
||||
return;
|
||||
|
||||
if( LIB_PART* part = Prj().SchLibs()->FindLibPart( m_Cmp->m_part_name ) )
|
||||
if( LIB_PART* part = Prj().SchLibs()->FindLibPart( m_cmp->m_part_name ) )
|
||||
{
|
||||
// save old cmp in undo list if not already in edit, or moving ...
|
||||
if( m_Cmp->m_Flags == 0 )
|
||||
m_Parent->SaveCopyInUndoList( m_Cmp, UR_CHANGED );
|
||||
if( m_cmp->m_Flags == 0 )
|
||||
m_Parent->SaveCopyInUndoList( m_cmp, UR_CHANGED );
|
||||
|
||||
INSTALL_UNBUFFERED_DC( dc, m_Parent->GetCanvas() );
|
||||
m_Cmp->Draw( m_Parent->GetCanvas(), &dc, wxPoint( 0, 0 ), g_XorMode );
|
||||
m_cmp->Draw( m_Parent->GetCanvas(), &dc, wxPoint( 0, 0 ), g_XorMode );
|
||||
|
||||
// Initialize fixed field values to default values found in library
|
||||
// Note: the field texts are not modified because they are set in schematic,
|
||||
|
@ -1051,35 +1051,35 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::SetInitCmp( wxCommandEvent& event )
|
|||
// Only VALUE, REFERENCE , FOOTPRINT and DATASHEET are re-initialized
|
||||
LIB_FIELD& refField = part->GetReferenceField();
|
||||
|
||||
m_Cmp->GetField( REFERENCE )->SetTextPosition( refField.GetTextPosition() + m_Cmp->m_Pos );
|
||||
m_Cmp->GetField( REFERENCE )->ImportValues( refField );
|
||||
m_cmp->GetField( REFERENCE )->SetTextPosition( refField.GetTextPosition() + m_cmp->m_Pos );
|
||||
m_cmp->GetField( REFERENCE )->ImportValues( refField );
|
||||
|
||||
LIB_FIELD& valField = part->GetValueField();
|
||||
|
||||
m_Cmp->GetField( VALUE )->SetTextPosition( valField.GetTextPosition() + m_Cmp->m_Pos );
|
||||
m_Cmp->GetField( VALUE )->ImportValues( valField );
|
||||
m_cmp->GetField( VALUE )->SetTextPosition( valField.GetTextPosition() + m_cmp->m_Pos );
|
||||
m_cmp->GetField( VALUE )->ImportValues( valField );
|
||||
|
||||
LIB_FIELD* field = part->GetField(FOOTPRINT);
|
||||
|
||||
if( field && m_Cmp->GetField( FOOTPRINT ) )
|
||||
if( field && m_cmp->GetField( FOOTPRINT ) )
|
||||
{
|
||||
m_Cmp->GetField( FOOTPRINT )->SetTextPosition( field->GetTextPosition() + m_Cmp->m_Pos );
|
||||
m_Cmp->GetField( FOOTPRINT )->ImportValues( *field );
|
||||
m_cmp->GetField( FOOTPRINT )->SetTextPosition( field->GetTextPosition() + m_cmp->m_Pos );
|
||||
m_cmp->GetField( FOOTPRINT )->ImportValues( *field );
|
||||
}
|
||||
|
||||
field = part->GetField(DATASHEET);
|
||||
|
||||
if( field && m_Cmp->GetField( DATASHEET ) )
|
||||
if( field && m_cmp->GetField( DATASHEET ) )
|
||||
{
|
||||
m_Cmp->GetField( DATASHEET )->SetTextPosition( field->GetTextPosition() + m_Cmp->m_Pos );
|
||||
m_Cmp->GetField( DATASHEET )->ImportValues( *field );
|
||||
m_cmp->GetField( DATASHEET )->SetTextPosition( field->GetTextPosition() + m_cmp->m_Pos );
|
||||
m_cmp->GetField( DATASHEET )->ImportValues( *field );
|
||||
}
|
||||
|
||||
m_Cmp->SetOrientation( CMP_NORMAL );
|
||||
m_cmp->SetOrientation( CMP_NORMAL );
|
||||
|
||||
m_Parent->OnModify();
|
||||
|
||||
m_Cmp->Draw( m_Parent->GetCanvas(), &dc, wxPoint( 0, 0 ), GR_DEFAULT_DRAWMODE );
|
||||
m_cmp->Draw( m_Parent->GetCanvas(), &dc, wxPoint( 0, 0 ), GR_DEFAULT_DRAWMODE );
|
||||
|
||||
EndQuasiModal( wxID_OK );
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@
|
|||
#include <map>
|
||||
#include <io_mgr.h>
|
||||
#include <project.h>
|
||||
#include <boost/interprocess/exceptions.hpp>
|
||||
|
||||
#define FP_LATE_ENVVAR 1 ///< late=1/early=0 environment variable expansion
|
||||
|
||||
|
@ -221,7 +222,7 @@ public:
|
|||
* Actual indentation will be 2 spaces for each nestLevel.
|
||||
*/
|
||||
void Format( OUTPUTFORMATTER* out, int nestLevel ) const
|
||||
throw( IO_ERROR );
|
||||
throw( IO_ERROR, boost::interprocess::lock_exception );
|
||||
|
||||
private:
|
||||
|
||||
|
@ -468,7 +469,7 @@ public:
|
|||
* @throw PARSE_ERROR if @a aFootprintId is not parsed OK.
|
||||
*/
|
||||
MODULE* FootprintLoadWithOptionalNickname( const FPID& aFootprintId )
|
||||
throw( IO_ERROR, PARSE_ERROR );
|
||||
throw( IO_ERROR, PARSE_ERROR, boost::interprocess::lock_exception );
|
||||
|
||||
/**
|
||||
* Function GetDescription
|
||||
|
|
|
@ -170,6 +170,7 @@ void PL_EDITOR_FRAME::Process_Special_Functions( wxCommandEvent& event )
|
|||
SaveCopyInUndoList();
|
||||
idx = m_treePagelayout->GetSelectedItemIndex();
|
||||
item = AddPageLayoutItem( WORKSHEET_DATAITEM::WS_SEGMENT, idx );
|
||||
|
||||
if( InvokeDialogNewItem( this, item ) == wxID_CANCEL )
|
||||
{
|
||||
RemoveLastCommandInUndoList();
|
||||
|
@ -199,6 +200,7 @@ void PL_EDITOR_FRAME::Process_Special_Functions( wxCommandEvent& event )
|
|||
SaveCopyInUndoList();
|
||||
idx = m_treePagelayout->GetSelectedItemIndex();
|
||||
item = AddPageLayoutItem( WORKSHEET_DATAITEM::WS_RECT, idx );
|
||||
|
||||
if( InvokeDialogNewItem( this, item ) == wxID_CANCEL )
|
||||
{
|
||||
RemoveLastCommandInUndoList();
|
||||
|
@ -353,10 +355,11 @@ static void moveItem( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aPositio
|
|||
// (does not happen each time the mouse is moved, because the
|
||||
// item is placed on grid)
|
||||
// to avoid useless computation time.
|
||||
if( aPanel && ( previous_position != position ) )
|
||||
if( previous_position != position )
|
||||
aPanel->Refresh();
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Function abortMoveItem: called when an item is currently moving,
|
||||
* and when the user aborts the move command.
|
||||
|
@ -367,7 +370,7 @@ static void abortMoveItem( EDA_DRAW_PANEL* aPanel, wxDC* aDC )
|
|||
PL_EDITOR_SCREEN* screen = (PL_EDITOR_SCREEN*) aPanel->GetScreen();
|
||||
WORKSHEET_DATAITEM *item = screen->GetCurItem();
|
||||
|
||||
if( (item->GetFlags() & NEW_ITEM ) )
|
||||
if( item->GetFlags() & NEW_ITEM )
|
||||
{
|
||||
PL_EDITOR_FRAME* plframe = (PL_EDITOR_FRAME*) aPanel->GetParent();
|
||||
plframe->RemoveLastCommandInUndoList();
|
||||
|
@ -394,6 +397,7 @@ static void abortMoveItem( EDA_DRAW_PANEL* aPanel, wxDC* aDC )
|
|||
aPanel->Refresh();
|
||||
}
|
||||
|
||||
|
||||
void PL_EDITOR_FRAME::MoveItem( WORKSHEET_DATAITEM* aItem )
|
||||
{
|
||||
wxCHECK_RET( aItem != NULL, wxT( "Cannot move NULL item" ) );
|
||||
|
@ -411,6 +415,7 @@ void PL_EDITOR_FRAME::MoveItem( WORKSHEET_DATAITEM* aItem )
|
|||
{
|
||||
SetCrossHairPosition( initialPositionUi, false );
|
||||
initialCursorPosition = GetCrossHairPosition();
|
||||
|
||||
if( m_canvas->IsPointOnDisplay( initialCursorPosition ) )
|
||||
{
|
||||
m_canvas->MoveCursorToCrossHair();
|
||||
|
@ -443,7 +448,7 @@ void PL_EDITOR_FRAME::PlaceItem( WORKSHEET_DATAITEM* aItem )
|
|||
{
|
||||
aItem->MoveStartPointTo( initialPosition );
|
||||
}
|
||||
else if( (aItem->GetFlags() & LOCATE_ENDPOINT) )
|
||||
else if( aItem->GetFlags() & LOCATE_ENDPOINT )
|
||||
{
|
||||
aItem->MoveEndPointTo( initialPosition );
|
||||
}
|
||||
|
@ -471,12 +476,14 @@ void PL_EDITOR_FRAME::OnSelectCoordOriginCorner( wxCommandEvent& event )
|
|||
m_canvas->Refresh();
|
||||
}
|
||||
|
||||
|
||||
void PL_EDITOR_FRAME::OnSelectTitleBlockDisplayMode( wxCommandEvent& event )
|
||||
{
|
||||
WORKSHEET_DATAITEM::m_SpecialMode = (event.GetId() == ID_SHOW_PL_EDITOR_MODE);
|
||||
m_canvas->Refresh();
|
||||
}
|
||||
|
||||
|
||||
void PL_EDITOR_FRAME::OnQuit( wxCommandEvent& event )
|
||||
{
|
||||
Close( true );
|
||||
|
@ -533,6 +540,7 @@ void PL_EDITOR_FRAME::ToPrinter(wxCommandEvent& event)
|
|||
InvokeDialogPrint( this, s_PrintData, s_pageSetupData );
|
||||
}
|
||||
|
||||
|
||||
void PL_EDITOR_FRAME::OnTreeSelection( wxTreeEvent& event )
|
||||
{
|
||||
WORKSHEET_DATAITEM* item = GetSelectedItem();
|
||||
|
@ -543,11 +551,15 @@ void PL_EDITOR_FRAME::OnTreeSelection( wxTreeEvent& event )
|
|||
m_canvas->Refresh();
|
||||
}
|
||||
|
||||
|
||||
void PL_EDITOR_FRAME::OnTreeMiddleClick( wxTreeEvent& event )
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
extern void AddNewItemsCommand( wxMenu* aMainMenu );
|
||||
|
||||
|
||||
void PL_EDITOR_FRAME::OnTreeRightClick( wxTreeEvent& event )
|
||||
{
|
||||
m_treePagelayout->SelectCell( event.GetItem() );
|
||||
|
@ -568,6 +580,7 @@ void PL_EDITOR_FRAME::OnUpdateTitleBlockDisplayNormalMode( wxUpdateUIEvent& even
|
|||
event.Check( WORKSHEET_DATAITEM::m_SpecialMode == false );
|
||||
}
|
||||
|
||||
|
||||
void PL_EDITOR_FRAME::OnUpdateTitleBlockDisplaySpecialMode( wxUpdateUIEvent& event )
|
||||
{
|
||||
event.Check( WORKSHEET_DATAITEM::m_SpecialMode == true );
|
||||
|
|
|
@ -88,7 +88,6 @@ void filterNetClass( const BOARD& aBoard, NETCLASS& aNetClass )
|
|||
class FP_CACHE_ITEM
|
||||
{
|
||||
wxFileName m_file_name; ///< The the full file name and path of the footprint to cache.
|
||||
bool m_writable; ///< Writability status of the footprint file.
|
||||
wxDateTime m_mod_time; ///< The last file modified time stamp.
|
||||
std::auto_ptr<MODULE> m_module;
|
||||
|
||||
|
|
|
@ -98,7 +98,8 @@ void LEGACY_NETLIST_READER::LoadNetlist() throw ( IO_ERROR, PARSE_ERROR )
|
|||
}
|
||||
|
||||
|
||||
COMPONENT* LEGACY_NETLIST_READER::loadComponent( char* aText ) throw( PARSE_ERROR )
|
||||
COMPONENT* LEGACY_NETLIST_READER::loadComponent( char* aText )
|
||||
throw( PARSE_ERROR, boost::bad_pointer )
|
||||
{
|
||||
char* text;
|
||||
wxString msg;
|
||||
|
|
|
@ -214,7 +214,7 @@ class LEGACY_NETLIST_READER : public NETLIST_READER
|
|||
* @return the new component created by parsing \a aLine
|
||||
* @throw PARSE_ERROR when \a aLine is not a valid component description.
|
||||
*/
|
||||
COMPONENT* loadComponent( char* aText ) throw( PARSE_ERROR );
|
||||
COMPONENT* loadComponent( char* aText ) throw( PARSE_ERROR, boost::bad_pointer );
|
||||
|
||||
/**
|
||||
* Function loadFootprintFilters
|
||||
|
|
|
@ -300,7 +300,7 @@ void PCB_PARSER::parseEDA_TEXT( EDA_TEXT* aText ) throw( PARSE_ERROR )
|
|||
}
|
||||
|
||||
|
||||
S3D_MASTER* PCB_PARSER::parse3DModel() throw( PARSE_ERROR )
|
||||
S3D_MASTER* PCB_PARSER::parse3DModel() throw( PARSE_ERROR, IO_ERROR )
|
||||
{
|
||||
wxCHECK_MSG( CurTok() == T_model, NULL,
|
||||
wxT( "Cannot parse " ) + GetTokenString( CurTok() ) + wxT( " as S3D_MASTER." ) );
|
||||
|
|
|
@ -185,7 +185,7 @@ class PCB_PARSER : public PCB_LEXER
|
|||
*/
|
||||
void parseEDA_TEXT( EDA_TEXT* aText ) throw( PARSE_ERROR );
|
||||
|
||||
S3D_MASTER* parse3DModel() throw( PARSE_ERROR );
|
||||
S3D_MASTER* parse3DModel() throw( PARSE_ERROR, IO_ERROR );
|
||||
|
||||
/**
|
||||
* Function parseDouble
|
||||
|
@ -219,7 +219,7 @@ class PCB_PARSER : public PCB_LEXER
|
|||
return KiROUND( parseDouble() * IU_PER_MM );
|
||||
}
|
||||
|
||||
inline int parseBoardUnits( const char* aExpected ) throw( PARSE_ERROR )
|
||||
inline int parseBoardUnits( const char* aExpected ) throw( PARSE_ERROR, IO_ERROR )
|
||||
{
|
||||
// Use here KiROUND, not KIROUND (see comments about them)
|
||||
// when having a function as argument, because it will be called twice
|
||||
|
|
|
@ -294,7 +294,7 @@ void SPECCTRA_DB::LoadSESSION( const wxString& filename ) throw( IO_ERROR )
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doPCB( PCB* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doPCB( PCB* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok;
|
||||
|
||||
|
@ -799,7 +799,7 @@ void SPECCTRA_DB::doSTRUCTURE_OUT( STRUCTURE_OUT* growth ) throw( IO_ERROR, boos
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doKEEPOUT( KEEPOUT* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doKEEPOUT( KEEPOUT* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok = NextTok();
|
||||
|
||||
|
@ -975,7 +975,7 @@ void SPECCTRA_DB::doWINDOW( WINDOW* growth ) throw( IO_ERROR )
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doBOUNDARY( BOUNDARY* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doBOUNDARY( BOUNDARY* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok = NextTok();
|
||||
|
||||
|
@ -1197,7 +1197,7 @@ void SPECCTRA_DB::doVIA( VIA* growth ) throw( IO_ERROR )
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doCONTROL( CONTROL* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doCONTROL( CONTROL* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok;
|
||||
|
||||
|
@ -1521,7 +1521,7 @@ void SPECCTRA_DB::doPLACE_RULE( PLACE_RULE* growth, bool expect_object_type ) th
|
|||
#endif
|
||||
|
||||
|
||||
void SPECCTRA_DB::doREGION( REGION* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doREGION( REGION* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok = NextTok();
|
||||
|
||||
|
@ -1590,7 +1590,7 @@ void SPECCTRA_DB::doREGION( REGION* growth ) throw( IO_ERROR )
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doCLASS_CLASS( CLASS_CLASS* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doCLASS_CLASS( CLASS_CLASS* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok = NextTok();
|
||||
|
||||
|
@ -1893,7 +1893,7 @@ void SPECCTRA_DB::doCOMPONENT( COMPONENT* growth ) throw( IO_ERROR, boost::bad_p
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doPLACEMENT( PLACEMENT* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doPLACEMENT( PLACEMENT* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok;
|
||||
|
||||
|
@ -1948,7 +1948,7 @@ void SPECCTRA_DB::doPLACEMENT( PLACEMENT* growth ) throw( IO_ERROR )
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doPADSTACK( PADSTACK* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doPADSTACK( PADSTACK* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok = NextTok();
|
||||
|
||||
|
@ -2048,7 +2048,7 @@ void SPECCTRA_DB::doPADSTACK( PADSTACK* growth ) throw( IO_ERROR )
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doSHAPE( SHAPE* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doSHAPE( SHAPE* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok;
|
||||
|
||||
|
@ -2274,7 +2274,7 @@ void SPECCTRA_DB::doPIN( PIN* growth ) throw( IO_ERROR )
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doLIBRARY( LIBRARY* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doLIBRARY( LIBRARY* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok;
|
||||
|
||||
|
@ -2468,7 +2468,7 @@ L_pins:
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doTOPOLOGY( TOPOLOGY* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doTOPOLOGY( TOPOLOGY* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok;
|
||||
|
||||
|
@ -2506,7 +2506,7 @@ void SPECCTRA_DB::doTOPOLOGY( TOPOLOGY* growth ) throw( IO_ERROR )
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doCLASS( CLASS* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doCLASS( CLASS* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok;
|
||||
|
||||
|
@ -2679,7 +2679,7 @@ void SPECCTRA_DB::doCOMP_ORDER( COMP_ORDER* growth ) throw( IO_ERROR )
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doFROMTO( FROMTO* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doFROMTO( FROMTO* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok;
|
||||
|
||||
|
@ -2990,7 +2990,7 @@ void SPECCTRA_DB::doWIRE_VIA( WIRE_VIA* growth ) throw( IO_ERROR )
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doWIRING( WIRING* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doWIRING( WIRING* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok;
|
||||
|
||||
|
@ -3140,7 +3140,7 @@ void SPECCTRA_DB::doHISTORY( HISTORY* growth ) throw( IO_ERROR, boost::bad_point
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::doSESSION( SESSION* growth ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::doSESSION( SESSION* growth ) throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
T tok;
|
||||
|
||||
|
|
|
@ -3690,7 +3690,7 @@ class SPECCTRA_DB : public SPECCTRA_LEXER
|
|||
*/
|
||||
void readTIME( time_t* time_stamp ) throw( IO_ERROR );
|
||||
|
||||
void doPCB( PCB* growth ) throw( IO_ERROR );
|
||||
void doPCB( PCB* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doPARSER( PARSER* growth ) throw( IO_ERROR );
|
||||
void doRESOLUTION( UNIT_RES* growth ) throw( IO_ERROR );
|
||||
void doUNIT( UNIT_RES* growth ) throw( IO_ERROR );
|
||||
|
@ -3698,44 +3698,44 @@ class SPECCTRA_DB : public SPECCTRA_LEXER
|
|||
void doSTRUCTURE_OUT( STRUCTURE_OUT* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doLAYER_NOISE_WEIGHT( LAYER_NOISE_WEIGHT* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doLAYER_PAIR( LAYER_PAIR* growth ) throw( IO_ERROR );
|
||||
void doBOUNDARY( BOUNDARY* growth ) throw( IO_ERROR );
|
||||
void doBOUNDARY( BOUNDARY* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doRECTANGLE( RECTANGLE* growth ) throw( IO_ERROR );
|
||||
void doPATH( PATH* growth ) throw( IO_ERROR );
|
||||
void doSTRINGPROP( STRINGPROP* growth ) throw( IO_ERROR );
|
||||
void doTOKPROP( TOKPROP* growth ) throw( IO_ERROR );
|
||||
void doVIA( VIA* growth ) throw( IO_ERROR );
|
||||
void doCONTROL( CONTROL* growth ) throw( IO_ERROR );
|
||||
void doCONTROL( CONTROL* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doLAYER( LAYER* growth ) throw( IO_ERROR );
|
||||
void doRULE( RULE* growth ) throw( IO_ERROR );
|
||||
void doKEEPOUT( KEEPOUT* growth ) throw( IO_ERROR );
|
||||
void doKEEPOUT( KEEPOUT* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doCIRCLE( CIRCLE* growth ) throw( IO_ERROR );
|
||||
void doQARC( QARC* growth ) throw( IO_ERROR );
|
||||
void doWINDOW( WINDOW* growth ) throw( IO_ERROR );
|
||||
void doCONNECT( CONNECT* growth ) throw( IO_ERROR );
|
||||
void doREGION( REGION* growth ) throw( IO_ERROR );
|
||||
void doCLASS_CLASS( CLASS_CLASS* growth ) throw( IO_ERROR );
|
||||
void doREGION( REGION* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doCLASS_CLASS( CLASS_CLASS* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doLAYER_RULE( LAYER_RULE* growth ) throw( IO_ERROR );
|
||||
void doCLASSES( CLASSES* growth ) throw( IO_ERROR );
|
||||
void doGRID( GRID* growth ) throw( IO_ERROR );
|
||||
void doPLACE( PLACE* growth ) throw( IO_ERROR );
|
||||
void doCOMPONENT( COMPONENT* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doPLACEMENT( PLACEMENT* growth ) throw( IO_ERROR );
|
||||
void doPLACEMENT( PLACEMENT* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doPROPERTIES( PROPERTIES* growth ) throw( IO_ERROR );
|
||||
void doPADSTACK( PADSTACK* growth ) throw( IO_ERROR );
|
||||
void doSHAPE( SHAPE* growth ) throw( IO_ERROR );
|
||||
void doPADSTACK( PADSTACK* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doSHAPE( SHAPE* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doIMAGE( IMAGE* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doLIBRARY( LIBRARY* growth ) throw( IO_ERROR );
|
||||
void doLIBRARY( LIBRARY* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doPIN( PIN* growth ) throw( IO_ERROR );
|
||||
void doNET( NET* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doNETWORK( NETWORK* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doCLASS( CLASS* growth ) throw( IO_ERROR );
|
||||
void doTOPOLOGY( TOPOLOGY* growth ) throw( IO_ERROR );
|
||||
void doFROMTO( FROMTO* growth ) throw( IO_ERROR );
|
||||
void doCLASS( CLASS* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doTOPOLOGY( TOPOLOGY* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doFROMTO( FROMTO* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doCOMP_ORDER( COMP_ORDER* growth ) throw( IO_ERROR );
|
||||
void doWIRE( WIRE* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doWIRE_VIA( WIRE_VIA* growth ) throw( IO_ERROR );
|
||||
void doWIRING( WIRING* growth ) throw( IO_ERROR );
|
||||
void doSESSION( SESSION* growth ) throw( IO_ERROR );
|
||||
void doWIRING( WIRING* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doSESSION( SESSION* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doANCESTOR( ANCESTOR* growth ) throw( IO_ERROR );
|
||||
void doHISTORY( HISTORY* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
void doROUTE( ROUTE* growth ) throw( IO_ERROR, boost::bad_pointer );
|
||||
|
@ -3752,7 +3752,7 @@ class SPECCTRA_DB : public SPECCTRA_LEXER
|
|||
* @param aBoard The BOARD to get information from in order to make the BOUNDARY.
|
||||
* @param aBoundary The empty BOUNDARY to fill in.
|
||||
*/
|
||||
void fillBOUNDARY( BOARD* aBoard, BOUNDARY* aBoundary ) throw( IO_ERROR );
|
||||
void fillBOUNDARY( BOARD* aBoard, BOUNDARY* aBoundary ) throw( IO_ERROR, boost::bad_pointer );
|
||||
|
||||
/**
|
||||
* Function makeIMAGE
|
||||
|
@ -3933,7 +3933,7 @@ public:
|
|||
*
|
||||
* @param aBoard The BOARD to convert to a PCB.
|
||||
*/
|
||||
void FromBOARD( BOARD* aBoard ) throw( IO_ERROR );
|
||||
void FromBOARD( BOARD* aBoard ) throw( IO_ERROR, boost::bad_ptr_container_operation );
|
||||
|
||||
/**
|
||||
* Function FromSESSION
|
||||
|
|
|
@ -889,7 +889,8 @@ static void makeCircle( PATH* aPath, DRAWSEGMENT* aGraphic )
|
|||
}
|
||||
|
||||
|
||||
void SPECCTRA_DB::fillBOUNDARY( BOARD* aBoard, BOUNDARY* boundary ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::fillBOUNDARY( BOARD* aBoard, BOUNDARY* boundary )
|
||||
throw( IO_ERROR, boost::bad_pointer )
|
||||
{
|
||||
PCB_TYPE_COLLECTOR items;
|
||||
|
||||
|
@ -1369,7 +1370,8 @@ typedef std::set<std::string> STRINGSET;
|
|||
typedef std::pair<STRINGSET::iterator, bool> STRINGSET_PAIR;
|
||||
|
||||
|
||||
void SPECCTRA_DB::FromBOARD( BOARD* aBoard ) throw( IO_ERROR )
|
||||
void SPECCTRA_DB::FromBOARD( BOARD* aBoard )
|
||||
throw( IO_ERROR, boost::bad_ptr_container_operation )
|
||||
{
|
||||
PCB_TYPE_COLLECTOR items;
|
||||
|
||||
|
|
Loading…
Reference in New Issue