All: fix a collision name between accessor function GetTimeStamp and GetTimeStamp in common.cpp.

In common.cpp GetTimeStamp is renamed GetNewTimeStamp (a better name).
Pcbnew: prepare work to calculate connections between pads that inteserct and therefore can be connected without any track (composite pads).
This commit is contained in:
jean-pierre charras 2011-12-07 16:49:32 +01:00
parent c7fe98db2f
commit bcbde5d813
33 changed files with 260 additions and 233 deletions

View File

@ -525,18 +525,19 @@ bool ProcessExecute( const wxString& aCommandLine, int aFlags )
}
int GetTimeStamp()
unsigned long GetNewTimeStamp()
{
static int OldTimeStamp, NewTimeStamp;
static unsigned long oldTimeStamp;
unsigned long newTimeStamp;
NewTimeStamp = time( NULL );
newTimeStamp = time( NULL );
if( NewTimeStamp <= OldTimeStamp )
NewTimeStamp = OldTimeStamp + 1;
if( newTimeStamp <= oldTimeStamp )
newTimeStamp = oldTimeStamp + 1;
OldTimeStamp = NewTimeStamp;
oldTimeStamp = newTimeStamp;
return NewTimeStamp;
return newTimeStamp;
}

View File

@ -554,7 +554,7 @@ void SCH_EDIT_FRAME::PasteListOfItems( wxDC* DC )
// Clear annotation and init new time stamp for the new components:
if( Struct->Type() == SCH_COMPONENT_T )
{
( (SCH_COMPONENT*) Struct )->m_TimeStamp = GetTimeStamp();
( (SCH_COMPONENT*) Struct )->m_TimeStamp = GetNewTimeStamp();
( (SCH_COMPONENT*) Struct )->ClearAnnotation( NULL );
}

View File

@ -527,7 +527,7 @@ void SCH_EDIT_FRAME::RepeatDrawItem( wxDC* DC )
wxPoint pos = GetScreen()->GetCrossHairPosition() -
( (SCH_COMPONENT*) m_itemToRepeat )->GetPosition();
m_itemToRepeat->SetFlags( IS_NEW );
( (SCH_COMPONENT*) m_itemToRepeat )->m_TimeStamp = GetTimeStamp();
( (SCH_COMPONENT*) m_itemToRepeat )->m_TimeStamp = GetNewTimeStamp();
m_itemToRepeat->Move( pos );
m_itemToRepeat->Draw( DrawPanel, DC, wxPoint( 0, 0 ), g_XorMode );
MoveItem( m_itemToRepeat, DC );

View File

@ -673,7 +673,7 @@ bool CMP_LIBRARY::Save( OUTPUTFORMATTER& aFormatter )
{
if( isModified )
{
timeStamp = GetTimeStamp();
timeStamp = GetNewTimeStamp();
isModified = false;
}

View File

@ -204,7 +204,7 @@ int TestDuplicateSheetNames( bool aCreateMarker )
{
/* Create a new marker type ERC error*/
SCH_MARKER* marker = new SCH_MARKER();
marker->m_TimeStamp = GetTimeStamp();
marker->m_TimeStamp = GetNewTimeStamp();
marker->SetData( ERCE_DUPLICATE_SHEET_NAME,
( (SCH_SHEET*) test_item )->m_Pos,
_( "Duplicate sheet name" ),
@ -237,7 +237,7 @@ void Diagnose( NETLIST_OBJECT* aNetItemRef, NETLIST_OBJECT* aNetItemTst,
/* Create new marker for ERC error. */
marker = new SCH_MARKER();
marker->m_TimeStamp = GetTimeStamp();
marker->m_TimeStamp = GetNewTimeStamp();
marker->SetMarkerType( MARK_ERC );
marker->SetErrorLevel( WAR );

View File

@ -29,7 +29,7 @@ void SCH_EDIT_FRAME::OnCopySchematicItemRequest( wxCommandEvent& event )
{
SCH_COMPONENT* newitem;
newitem = new SCH_COMPONENT( *( (SCH_COMPONENT*) curr_item ) );
newitem->m_TimeStamp = GetTimeStamp();
newitem->m_TimeStamp = GetNewTimeStamp();
newitem->ClearAnnotation( NULL );
newitem->m_Flags = IS_NEW;
MoveItem( (SCH_ITEM*) newitem, &dc );

View File

@ -207,13 +207,13 @@ void DuplicateItemsInList( SCH_SCREEN* screen, PICKED_ITEMS_LIST& aItemsList,
case SCH_SHEET_T:
{
SCH_SHEET* sheet = (SCH_SHEET*) newitem;
sheet->m_TimeStamp = GetTimeStamp();
sheet->m_TimeStamp = GetNewTimeStamp();
sheet->SetSon( NULL );
break;
}
case SCH_COMPONENT_T:
( (SCH_COMPONENT*) newitem )->m_TimeStamp = GetTimeStamp();
( (SCH_COMPONENT*) newitem )->m_TimeStamp = GetNewTimeStamp();
( (SCH_COMPONENT*) newitem )->ClearAnnotation( NULL );
break;
}

View File

@ -130,7 +130,7 @@ SCH_COMPONENT::SCH_COMPONENT( LIB_COMPONENT& libComponent, SCH_SHEET_PATH* sheet
m_unit = unit;
m_convert = convert;
m_ChipName = libComponent.GetName();
m_TimeStamp = GetTimeStamp();
m_TimeStamp = GetNewTimeStamp();
if( setNewItemFlag )
m_Flags = IS_NEW | IS_MOVED;

View File

@ -1460,14 +1460,14 @@ int SCH_SCREENS::ReplaceDuplicateTimeStamps()
// for a component, update its Time stamp and its paths
// (m_PathsAndReferences field)
if( item->Type() == SCH_COMPONENT_T )
( (SCH_COMPONENT*) item )->SetTimeStamp( GetTimeStamp() );
( (SCH_COMPONENT*) item )->SetTimeStamp( GetNewTimeStamp() );
// for a sheet, update only its time stamp (annotation of its
// components will be lost)
// @todo: see how to change sheet paths for its cmp list (can
// be possible in most cases)
else
item->m_TimeStamp = GetTimeStamp();
item->m_TimeStamp = GetNewTimeStamp();
}
}

View File

@ -53,7 +53,7 @@ SCH_SHEET::SCH_SHEET( const wxPoint& pos ) :
m_Layer = LAYER_SHEET;
m_Pos = pos;
m_Size = wxSize( MIN_SHEET_WIDTH, MIN_SHEET_HEIGHT );
m_TimeStamp = GetTimeStamp();
m_TimeStamp = GetNewTimeStamp();
m_SheetNameSize = m_FileNameSize = 60;
m_AssociatedScreen = NULL;
m_SheetName.Printf( wxT( "Sheet%8.8lX" ), m_TimeStamp );
@ -184,7 +184,7 @@ bool SCH_SHEET::Load( LINE_READER& aLine, wxString& aErrorMsg )
SCH_SHEET_PIN* sheetPin;
char* ptcar;
m_TimeStamp = GetTimeStamp();
m_TimeStamp = GetNewTimeStamp();
// sheets are added to the GetDrawItems() like other schematic components.
// however, in order to preserve the hierarchy (through m_Parent pointers),
@ -224,7 +224,7 @@ bool SCH_SHEET::Load( LINE_READER& aLine, wxString& aErrorMsg )
{
sscanf( ((char*)aLine) + 1, "%lX", &m_TimeStamp );
if( m_TimeStamp == 0 ) // zero is not unique!
m_TimeStamp = GetTimeStamp();
m_TimeStamp = GetNewTimeStamp();
continue;
}

View File

@ -201,7 +201,7 @@ bool SCH_EDIT_FRAME::EditSheet( SCH_SHEET* aSheet, wxDC* aDC )
m_InternalUnits );
if( aSheet->m_SheetName.IsEmpty() )
aSheet->m_SheetName.Printf( wxT( "Sheet%8.8lX" ), GetTimeStamp() );
aSheet->m_SheetName.Printf( wxT( "Sheet%8.8lX" ), aSheet->GetTimeStamp() );
DrawPanel->MoveCursorToCrossHair();
DrawPanel->m_IgnoreMouseEvents = false;
@ -311,7 +311,7 @@ SCH_SHEET* SCH_EDIT_FRAME::CreateSheet( wxDC* aDC )
SCH_SHEET* sheet = new SCH_SHEET( GetScreen()->GetCrossHairPosition() );
sheet->SetFlags( IS_NEW | IS_RESIZED );
sheet->m_TimeStamp = GetTimeStamp();
sheet->m_TimeStamp = GetNewTimeStamp();
sheet->SetParent( GetScreen() );
sheet->SetScreen( NULL );

View File

@ -224,191 +224,4 @@ public:
wxString GetLayerName() const;
};
class NETCLASS;
/**
* Class BOARD_CONNECTED_ITEM
* This is a base class derived from BOARD_ITEM for items that can be connected
* and have a net, a netname, a clearance ...
* mainly: tracks, pads and zones
* Handle connection info
*/
class BOARD_CONNECTED_ITEM : public BOARD_ITEM
{
protected:
int m_NetCode; // Net number
int m_Subnet; /* In rastnest routines : for the current net, block number
* (number common to the current connected items found)
*/
int m_ZoneSubnet; // variable used in rastnest computations : for the current net,
// handle block number in zone connection
public:
BOARD_CONNECTED_ITEM( BOARD_ITEM* aParent, KICAD_T idtype );
BOARD_CONNECTED_ITEM( const BOARD_CONNECTED_ITEM& src );
/**
* Function GetNet
* @return int - the net code.
*/
int GetNet() const;
virtual void SetNet( int aNetCode );
/**
* Function GetSubNet
* @return int - the sub net code.
*/
int GetSubNet() const;
void SetSubNet( int aSubNetCode );
/**
* Function GetZoneSubNet
* @return int - the sub net code in zone connections.
*/
int GetZoneSubNet() const;
void SetZoneSubNet( int aSubNetCode );
/**
* Function GetClearance
* returns the clearance in 1/10000 inches. If \a aItem is not NULL then the
* returned clearance is the greater of this object's NETCLASS clearance and
* aItem's NETCLASS clearance. If \a aItem is NULL, then this objects clearance
* is returned.
* @param aItem is another BOARD_CONNECTED_ITEM or NULL
* @return int - the clearance in 1/10000 inches.
*/
virtual int GetClearance( BOARD_CONNECTED_ITEM* aItem = NULL ) const;
/**
* Function GetNetClass
* returns the NETCLASS for this item.
*/
NETCLASS* GetNetClass() const;
/**
* Function GetNetClassName
* @return the Net Class name of this item
*/
wxString GetNetClassName() const;
};
/*
* class BOARD_ITEM_LIST
* Handles a collection of BOARD_ITEM elements
*/
class BOARD_ITEM_LIST : public BOARD_ITEM
{
typedef boost::ptr_vector<BOARD_ITEM> ITEM_ARRAY;
ITEM_ARRAY myItems;
BOARD_ITEM_LIST( const BOARD_ITEM_LIST& other ) :
BOARD_ITEM( NULL, PCB_ITEM_LIST_T )
{
// copy constructor is not supported, is private to cause compiler error
}
public:
BOARD_ITEM_LIST( BOARD_ITEM* aParent = NULL ) :
BOARD_ITEM( aParent, PCB_ITEM_LIST_T )
{}
//-----< satisfy some virtual functions >------------------------------
const wxPoint GetPosition()
{
return wxPoint(0, 0); // dummy
}
void Draw( EDA_DRAW_PANEL* DrawPanel, wxDC* DC,
int aDrawMode, const wxPoint& offset = ZeroOffset )
{
}
void UnLink()
{
/* if it were needed:
DHEAD* list = GetList();
wxASSERT( list );
list->remove( this );
*/
}
bool Save( FILE* aFile ) const
{
return true;
}
//-----</ satisfy some virtual functions >-----------------------------
/**
* Function GetCount
* returns the number of BOARD_ITEMs.
*/
int GetCount() const
{
return myItems.size();
}
void Append( BOARD_ITEM* aItem )
{
myItems.push_back( aItem );
}
BOARD_ITEM* Replace( int aIndex, BOARD_ITEM* aItem )
{
ITEM_ARRAY::auto_type ret = myItems.replace( aIndex, aItem );
return ret.release();
}
BOARD_ITEM* Remove( int aIndex )
{
ITEM_ARRAY::auto_type ret = myItems.release( myItems.begin()+aIndex );
return ret.release();
}
void Insert( int aIndex, BOARD_ITEM* aItem )
{
myItems.insert( myItems.begin()+aIndex, aItem );
}
BOARD_ITEM* At( int aIndex ) const
{
// we have varying sized objects and are using polymorphism, so we
// must return a pointer not a reference.
return (BOARD_ITEM*) &myItems[aIndex];
}
BOARD_ITEM* operator[]( int aIndex ) const
{
return At( aIndex );
}
void Delete( int aIndex )
{
myItems.erase( myItems.begin()+aIndex );
}
void PushBack( BOARD_ITEM* aItem )
{
Append( aItem );
}
BOARD_ITEM* PopBack()
{
if( GetCount() )
return Remove( GetCount()-1 );
return NULL;
}
};
#endif /* BOARD_ITEM_STRUCT_H */

View File

@ -34,7 +34,7 @@
#include "fctsys.h"
#include "base_struct.h" // SEARCH_RESULT
#include "common.h" // GetTimeStamp()
#include "common.h" // GetNewTimeStamp()
class EDA_ITEM;
@ -201,7 +201,7 @@ public:
void SetTimeNow()
{
m_TimeAtCollection = GetTimeStamp();
m_TimeAtCollection = GetNewTimeStamp();
}
@ -234,7 +234,8 @@ public:
int dx = abs( aRefPos.x - m_RefPos.x );
int dy = abs( aRefPos.y - m_RefPos.y );
if( dx <= distMax && dy <= distMax && GetTimeStamp()-m_TimeAtCollection <= timeMax )
if( dx <= distMax && dy <= distMax &&
(int)GetNewTimeStamp() - m_TimeAtCollection <= timeMax )
return true;
else
return false;

View File

@ -294,7 +294,10 @@ void InitKiCadAbout( wxAboutDialogInfo& info );
/* common.cpp */
/**************/
int GetTimeStamp();
/**
* @return an unique time stamp that changes after each call
*/
unsigned long GetNewTimeStamp();
int DisplayColorFrame( wxWindow* parent, int OldColor );
int GetCommandOptions( const int argc, const char** argv,

View File

@ -47,6 +47,7 @@
/* Forward declarations of classes. */
class FOOTPRINT_EDIT_FRAME;
class BOARD;
class BOARD_CONNECTED_ITEM;
class MODULE;
class TRACK;
class D_PAD;

View File

@ -854,7 +854,7 @@ void PCB_EDIT_FRAME::Block_Duplicate()
module->m_Flags = 0;
newitem = new_module = new MODULE( m_Pcb );
new_module->Copy( module );
new_module->m_TimeStamp = GetTimeStamp();
new_module->m_TimeStamp = GetNewTimeStamp();
m_Pcb->m_Modules.PushFront( new_module );
}
break;
@ -877,7 +877,7 @@ void PCB_EDIT_FRAME::Block_Duplicate()
{
ZONE_CONTAINER* new_zone = new ZONE_CONTAINER( (BOARD*) item->GetParent() );
new_zone->Copy( (ZONE_CONTAINER*) item );
new_zone->m_TimeStamp = GetTimeStamp();
new_zone->m_TimeStamp = GetNewTimeStamp();
newitem = new_zone;
m_Pcb->Add( new_zone );
}

View File

@ -0,0 +1,206 @@
/**
* @file class_board_connected_item.h
* @brief Class BOARD_CONNECTED_ITEM.
*/
#ifndef BOARD_CONNECTED_ITEM_H
#define BOARD_CONNECTED_ITEM_H
#include "class_board_item.h"
class NETCLASS;
class TRACK;
class D_PAD;
/**
* Class BOARD_CONNECTED_ITEM
* This is a base class derived from BOARD_ITEM for items that can be connected
* and have a net, a netname, a clearance ...
* mainly: tracks, pads and zones
* Handle connection info
*/
class BOARD_CONNECTED_ITEM : public BOARD_ITEM
{
friend class CONNECTIONS;
private:
// These 2 members are used for temporary storage during connections calculations:
std::vector<TRACK*> m_TracksConnected; // list of other tracks connected to me
std::vector<D_PAD*> m_PadsConnected; // list of other pads connected to me
int m_NetCode; // Net number
int m_Subnet; /* In rastnest routines : for the current net, block number
* (number common to the current connected items found)
*/
int m_ZoneSubnet; // used in rastnest computations : for the current net,
// handle cluster number in zone connection
public:
BOARD_CONNECTED_ITEM( BOARD_ITEM* aParent, KICAD_T idtype );
BOARD_CONNECTED_ITEM( const BOARD_CONNECTED_ITEM& src );
/**
* Function GetNet
* @return int - the net code.
*/
int GetNet() const;
virtual void SetNet( int aNetCode );
/**
* Function GetSubNet
* @return int - the sub net code.
*/
int GetSubNet() const;
void SetSubNet( int aSubNetCode );
/**
* Function GetZoneSubNet
* @return int - the sub net code in zone connections.
*/
int GetZoneSubNet() const;
void SetZoneSubNet( int aSubNetCode );
/**
* Function GetClearance
* returns the clearance in 1/10000 inches. If \a aItem is not NULL then the
* returned clearance is the greater of this object's NETCLASS clearance and
* aItem's NETCLASS clearance. If \a aItem is NULL, then this objects clearance
* is returned.
* @param aItem is another BOARD_CONNECTED_ITEM or NULL
* @return int - the clearance in 1/10000 inches.
*/
virtual int GetClearance( BOARD_CONNECTED_ITEM* aItem = NULL ) const;
/**
* Function GetNetClass
* returns the NETCLASS for this item.
*/
NETCLASS* GetNetClass() const;
/**
* Function GetNetClassName
* @return the Net Class name of this item
*/
wxString GetNetClassName() const;
};
/*
* class BOARD_ITEM_LIST
* Handles a collection of BOARD_ITEM elements
*/
class BOARD_ITEM_LIST : public BOARD_ITEM
{
typedef boost::ptr_vector<BOARD_ITEM> ITEM_ARRAY;
ITEM_ARRAY myItems;
BOARD_ITEM_LIST( const BOARD_ITEM_LIST& other ) :
BOARD_ITEM( NULL, PCB_ITEM_LIST_T )
{
// copy constructor is not supported, is private to cause compiler error
}
public:
BOARD_ITEM_LIST( BOARD_ITEM* aParent = NULL ) :
BOARD_ITEM( aParent, PCB_ITEM_LIST_T )
{}
//-----< satisfy some virtual functions >------------------------------
const wxPoint GetPosition()
{
return wxPoint(0, 0); // dummy
}
void Draw( EDA_DRAW_PANEL* DrawPanel, wxDC* DC,
int aDrawMode, const wxPoint& offset = ZeroOffset )
{
}
void UnLink()
{
/* if it were needed:
DHEAD* list = GetList();
wxASSERT( list );
list->remove( this );
*/
}
bool Save( FILE* aFile ) const
{
return true;
}
//-----</ satisfy some virtual functions >-----------------------------
/**
* Function GetCount
* returns the number of BOARD_ITEMs.
*/
int GetCount() const
{
return myItems.size();
}
void Append( BOARD_ITEM* aItem )
{
myItems.push_back( aItem );
}
BOARD_ITEM* Replace( int aIndex, BOARD_ITEM* aItem )
{
ITEM_ARRAY::auto_type ret = myItems.replace( aIndex, aItem );
return ret.release();
}
BOARD_ITEM* Remove( int aIndex )
{
ITEM_ARRAY::auto_type ret = myItems.release( myItems.begin()+aIndex );
return ret.release();
}
void Insert( int aIndex, BOARD_ITEM* aItem )
{
myItems.insert( myItems.begin()+aIndex, aItem );
}
BOARD_ITEM* At( int aIndex ) const
{
// we have varying sized objects and are using polymorphism, so we
// must return a pointer not a reference.
return (BOARD_ITEM*) &myItems[aIndex];
}
BOARD_ITEM* operator[]( int aIndex ) const
{
return At( aIndex );
}
void Delete( int aIndex )
{
myItems.erase( myItems.begin()+aIndex );
}
void PushBack( BOARD_ITEM* aItem )
{
Append( aItem );
}
BOARD_ITEM* PopBack()
{
if( GetCount() )
return Remove( GetCount()-1 );
return NULL;
}
};
#endif /* BOARD_CONNECTED_ITEM_H */

View File

@ -71,7 +71,7 @@ void DIMENSION::Copy( DIMENSION* source )
m_Pos = source->m_Pos;
m_Shape = source->m_Shape;
m_Unit = source->m_Unit;
m_TimeStamp = GetTimeStamp();
m_TimeStamp = GetNewTimeStamp();
m_Text->Copy( source->m_Text );
m_crossBarOx = source->m_crossBarOx;

View File

@ -50,7 +50,7 @@ void PCB_TARGET::Copy( PCB_TARGET* source )
m_Pos = source->m_Pos;
m_Shape = source->m_Shape;
m_Size = source->m_Size;
m_TimeStamp = GetTimeStamp();
m_TimeStamp = GetNewTimeStamp();
}

View File

@ -125,7 +125,7 @@ void MODULE::Copy( MODULE* aModule )
m_LastEdit_Time = aModule->m_LastEdit_Time;
m_Link = aModule->m_Link;
m_Path = aModule->m_Path; //is this correct behavior?
m_TimeStamp = GetTimeStamp();
m_TimeStamp = GetNewTimeStamp();
m_LocalClearance = aModule->m_LocalClearance;
m_LocalSolderMaskMargin = aModule->m_LocalSolderMaskMargin;

View File

@ -393,7 +393,7 @@ void D_PAD::DisplayInfo( EDA_DRAW_FRAME* frame )
/* For test and debug only: display m_physical_connexion and
* m_logical_connexion */
#if 1 // Used only to debug connectivity calculations
Line.Printf( wxT( "%d-%d-%d " ), GetSubRatsnest(), GetSubNet(), m_ZoneSubnet );
Line.Printf( wxT( "%d-%d-%d " ), GetSubRatsnest(), GetSubNet(), GetZoneSubNet() );
frame->AppendMsgPanel( wxT( "L-P-Z" ), Line, DARKGREEN );
#endif

View File

@ -8,6 +8,7 @@
#include "class_board_item.h"
#include "class_board_connected_item.h"
#include "pad_shapes.h"
#include "PolyLine.h"
@ -131,7 +132,6 @@ public:
int m_LocalSolderPasteMargin; // Local solder paste margin absolute value
double m_LocalSolderPasteMarginRatio; // Local solder mask margin ratio value of pad size
// The final margin is the sum of these 2 values
std::vector<TRACK*> m_TracksConnected; // list of other tracks connected to me
private:
int m_SubRatsnest; // variable used in rats nest computations

View File

@ -8,6 +8,7 @@
#include "class_board_item.h"
#include "class_board_connected_item.h"
#include "PolyLine.h"

View File

@ -51,7 +51,7 @@
ZONE_CONTAINER::ZONE_CONTAINER( BOARD* parent ) :
BOARD_CONNECTED_ITEM( parent, PCB_ZONE_AREA_T )
{
m_NetCode = -1; // Net number for fast comparisons
SetNet( -1 ); // Net number for fast comparisons
m_CornerSelection = -1;
m_IsFilled = false; // fill status : true when the zone is filled
m_FillMode = 0; // How to fill areas: 0 = use filled polygons, != 0 fill with segments
@ -95,7 +95,7 @@ void ZONE_CONTAINER::SetPosition( const wxPoint& aPos ) {}
void ZONE_CONTAINER::SetNet( int aNetCode )
{
m_NetCode = aNetCode;
BOARD_CONNECTED_ITEM::SetNet( aNetCode );
if( aNetCode < 0 )
return;

View File

@ -10,6 +10,7 @@
#include <vector>
#include "gr_basic.h"
#include "class_board_item.h"
#include "class_board_connected_item.h"
#include "layers_id_colors_and_visibility.h"
#include "PolyLine.h"
#include "class_zone_setting.h"

View File

@ -146,7 +146,7 @@ void DIALOG_MODULE_BOARD_EDITOR::GotoModuleEditor( wxCommandEvent& event )
if( m_CurrentModule->m_TimeStamp == 0 ) // Module Editor needs a non
// null timestamp
{
m_CurrentModule->m_TimeStamp = GetTimeStamp();
m_CurrentModule->m_TimeStamp = GetNewTimeStamp();
m_Parent->OnModify();
}

View File

@ -225,7 +225,7 @@ bool ZONE_CONTAINER::Save( FILE* aFile ) const
// Save the outline main info
ret = fprintf( aFile, "ZInfo %8.8lX %d %s\n",
m_TimeStamp, m_NetCode,
m_TimeStamp, GetNet(),
EscapedUTF8( m_Netname ).c_str() );
if( ret < 3 )
@ -1739,7 +1739,7 @@ int ZONE_CONTAINER::ReadDescr( LINE_READER* aReader )
else
{
m_TimeStamp = ts;
m_NetCode = netcode;
SetNet( netcode );
ReadDelimitedText( netname_buffer, netname_buffer, 1024 );
m_Netname = FROM_UTF8( netname_buffer );
}

View File

@ -185,7 +185,7 @@ MODULE* PCB_BASE_FRAME::Load_Module_From_Library( const wxString& library, wxDC*
module->m_Flags = IS_NEW;
module->m_Link = 0;
module->m_TimeStamp = GetTimeStamp();
module->m_TimeStamp = GetNewTimeStamp();
GetBoard()->m_Status_Pcb = 0;
module->SetPosition( curspos );

View File

@ -336,7 +336,7 @@ void FOOTPRINT_EDIT_FRAME::Process_Special_Functions( wxCommandEvent& event )
pcbframe->GetScreen()->SetCrossHairPosition( wxPoint( 0, 0 ) );
pcbframe->PlaceModule( newmodule, NULL );
pcbframe->GetScreen()->SetCrossHairPosition( cursor_pos );
newmodule->m_TimeStamp = GetTimeStamp();
newmodule->m_TimeStamp = GetNewTimeStamp();
pcbframe->SaveCopyInUndoList( newmodule, UR_NEW );
}

View File

@ -532,7 +532,7 @@ MODULE* PCB_EDIT_FRAME::Create_MuWaveBasicShape( const wxString& name, int pad_c
return NULL;
#define DEFAULT_SIZE 30
Module->m_TimeStamp = GetTimeStamp();
Module->m_TimeStamp = GetNewTimeStamp();
Module->m_Value->m_Size = wxSize( DEFAULT_SIZE, DEFAULT_SIZE );
Module->m_Value->m_Pos0.y = -DEFAULT_SIZE;
Module->m_Value->m_Pos.y += Module->m_Value->m_Pos0.y;

View File

@ -1160,7 +1160,7 @@ bool NETLIST_READER::loadNewModules()
/* Update schematic links : reference "Time Stamp" and schematic
* hierarchical path */
Module->m_Reference->m_Text = cmp->m_CmpName;
Module->m_TimeStamp = GetTimeStamp();
Module->m_TimeStamp = GetNewTimeStamp();
Module->m_Path = cmp->m_TimeStampPath;
}
else
@ -1176,7 +1176,7 @@ bool NETLIST_READER::loadNewModules()
Module = newmodule;
Module->m_Reference->m_Text = cmp->m_CmpName;
Module->m_TimeStamp = GetTimeStamp();
Module->m_TimeStamp = GetNewTimeStamp();
Module->m_Path = cmp->m_TimeStampPath;
}
}

View File

@ -534,7 +534,7 @@ int PCB_EDIT_FRAME::Begin_Zone( wxDC* DC )
if( zone->GetNumCorners() == 0 )
{
zone->m_Flags = IS_NEW;
zone->m_TimeStamp = GetTimeStamp();
zone->m_TimeStamp = GetNewTimeStamp();
g_Zone_Default_Setting.ExportSetting( *zone );
zone->m_Poly->Start( g_Zone_Default_Setting.m_CurrentZone_Layer,
GetScreen()->GetCrossHairPosition().x,

View File

@ -88,7 +88,7 @@ ZONE_CONTAINER* BOARD::InsertArea( int netcode, int iarea, int layer, int x, int
new_area->SetNet( netcode );
new_area->SetLayer( layer );
new_area->m_TimeStamp = GetTimeStamp();
new_area->m_TimeStamp = GetNewTimeStamp();
if( iarea < (int) ( m_ZoneDescriptorList.size() - 1 ) )
m_ZoneDescriptorList.insert( m_ZoneDescriptorList.begin() + iarea + 1, new_area );