Commit 1343d9fd authored by charras's avatar charras

pcbnew: fixed: bug 2738052 (Delete tool does not delete zones outlines)

eeschema: fixed: void history file list in menu
parent 70707523
...@@ -4,6 +4,13 @@ KiCad ChangeLog 2009 ...@@ -4,6 +4,13 @@ KiCad ChangeLog 2009
Please add newer entries at the top, list the date and your name with Please add newer entries at the top, list the date and your name with
email address. email address.
2009-apr-07 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
================================================================================
++pcbnew:
fixed: bug 2738052 (Delete tool does not delete zones outlines)
++eeschema:
fixed: void history file list in menu
2009-apr-06 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr> 2009-apr-06 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
================================================================================ ================================================================================
++common: ++common:
......
...@@ -86,7 +86,7 @@ bool GetAssociatedDocument( wxFrame* frame, const wxString& LibPath, ...@@ -86,7 +86,7 @@ bool GetAssociatedDocument( wxFrame* frame, const wxString& LibPath,
*/ */
{ {
wxString docpath, fullfilename, file_ext; wxString docpath, fullfilename, file_ext;
wxString Line; wxString msg;
wxString command; wxString command;
bool success = FALSE; bool success = FALSE;
...@@ -143,8 +143,9 @@ bool GetAssociatedDocument( wxFrame* frame, const wxString& LibPath, ...@@ -143,8 +143,9 @@ bool GetAssociatedDocument( wxFrame* frame, const wxString& LibPath,
if( !wxFileExists( fullfilename ) ) if( !wxFileExists( fullfilename ) )
{ {
Line = _( "Doc File " ) + fullfilename + _( " not found" ); msg = _( "Doc File " );
DisplayError( frame, Line ); msg << wxT("\"") << fullfilename << wxT("\"") << _( " not found" );
DisplayError( frame, msg );
return FALSE; return FALSE;
} }
...@@ -183,9 +184,9 @@ bool GetAssociatedDocument( wxFrame* frame, const wxString& LibPath, ...@@ -183,9 +184,9 @@ bool GetAssociatedDocument( wxFrame* frame, const wxString& LibPath,
if( !success ) if( !success )
{ {
Line.Printf( _( "Unknown MIME type for doc file <%s>" ), msg.Printf( _( "Unknown MIME type for doc file <%s>" ),
fullfilename.GetData() ); fullfilename.GetData() );
DisplayError( frame, Line ); DisplayError( frame, msg );
} }
return success; return success;
......
...@@ -585,7 +585,7 @@ void WinEDA_App::GetSettings() ...@@ -585,7 +585,7 @@ void WinEDA_App::GetSettings()
{ {
wxASSERT( m_EDA_Config != NULL && m_EDA_CommonConfig != NULL ); wxASSERT( m_EDA_Config != NULL && m_EDA_CommonConfig != NULL );
wxString Line, entry; wxString Line;
unsigned ii; unsigned ii;
m_HelpSize.x = 500; m_HelpSize.x = 500;
...@@ -599,27 +599,6 @@ void WinEDA_App::GetSettings() ...@@ -599,27 +599,6 @@ void WinEDA_App::GetSettings()
m_fileHistory.Load( *m_EDA_Config ); m_fileHistory.Load( *m_EDA_Config );
/* Load the last file history settings from legacy version if this is the
* first time wxFileHistory was used to manage the file history. */
if( m_fileHistory.GetCount() == (size_t) 0 )
{
for( ii = 0; ii < (unsigned) m_fileHistory.GetMaxFiles(); ii++ )
{
entry = wxT( "LastProject" );
if( ii != 0 )
entry << ii;
if( m_EDA_Config->Read( entry, &Line ) )
{
if( Line != wxEmptyString && wxFileName::FileExists( Line ) )
m_fileHistory.AddFileToHistory( Line );
else
m_EDA_Config->Write( entry, wxEmptyString );
Line = wxEmptyString;
}
}
}
/* Set default font sizes */ /* Set default font sizes */
g_StdFontPointSize = m_EDA_Config->Read( wxT( "SdtFontSize" ), g_StdFontPointSize = m_EDA_Config->Read( wxT( "SdtFontSize" ),
FONT_DEFAULT_SIZE ); FONT_DEFAULT_SIZE );
......
...@@ -161,6 +161,7 @@ bool WinEDA_App::OnInit() ...@@ -161,6 +161,7 @@ bool WinEDA_App::OnInit()
/* init EESCHEMA */ /* init EESCHEMA */
SeedLayers(); SeedLayers();
GetSettings();
extern PARAM_CFG_BASE* ParamCfgList[]; extern PARAM_CFG_BASE* ParamCfgList[];
wxGetApp().ReadCurrentSetupValues( ParamCfgList ); wxGetApp().ReadCurrentSetupValues( ParamCfgList );
Read_Hotkey_Config( frame, false ); /* Must be called before creating Read_Hotkey_Config( frame, false ); /* Must be called before creating
......
...@@ -616,13 +616,15 @@ void WinEDA_SchematicFrame::Process_Special_Functions( wxCommandEvent& event ) ...@@ -616,13 +616,15 @@ void WinEDA_SchematicFrame::Process_Special_Functions( wxCommandEvent& event )
EDA_LibComponentStruct* LibEntry; EDA_LibComponentStruct* LibEntry;
LibEntry = FindLibPart( LibEntry = FindLibPart(
( (SCH_COMPONENT*) screen->GetCurItem() )->m_ChipName.GetData(), ( (SCH_COMPONENT*) screen->GetCurItem() )->m_ChipName.GetData(),
wxEmptyString, wxEmptyString, FIND_ALIAS );
FIND_ALIAS );
if( LibEntry && LibEntry->m_DocFile != wxEmptyString ) if( LibEntry && LibEntry->m_DocFile != wxEmptyString )
{
wxMessageBox(g_RealLibDirBuffer, LibEntry->m_DocFile);
GetAssociatedDocument( this, GetAssociatedDocument( this,
g_RealLibDirBuffer, g_RealLibDirBuffer,
LibEntry->m_DocFile ); LibEntry->m_DocFile );
} }
}
break; break;
case ID_POPUP_SCH_ENTER_SHEET: case ID_POPUP_SCH_ENTER_SHEET:
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
//C++ guarantees that operator delete checks its argument for null-ness //C++ guarantees that operator delete checks its argument for null-ness
#ifndef SAFE_DELETE #ifndef SAFE_DELETE
#define SAFE_DELETE(p) delete (p); (p) = NULL; #define SAFE_DELETE( p ) delete (p); (p) = NULL;
#endif #endif
#define INTERNAL_UNIT_TYPE 0 // Internal unit = inch #define INTERNAL_UNIT_TYPE 0 // Internal unit = inch
...@@ -76,9 +76,9 @@ enum id_toolbar { ...@@ -76,9 +76,9 @@ enum id_toolbar {
}; };
/**********************/ /***********************************************/
/* Classes pour WXWIN */ /* Classes for basic main frames used in kicad */
/**********************/ /***********************************************/
#define MSG_PANEL_DEFAULT_HEIGHT ( 28 ) // height of the infos display window #define MSG_PANEL_DEFAULT_HEIGHT ( 28 ) // height of the infos display window
...@@ -108,7 +108,7 @@ public: ...@@ -108,7 +108,7 @@ public:
WinEDA_BasicFrame( wxWindow* father, int idtype, WinEDA_BasicFrame( wxWindow* father, int idtype,
const wxString& title, const wxString& title,
const wxPoint& pos, const wxSize& size, const wxPoint& pos, const wxSize& size,
long style = KICAD_DEFAULT_DRAWFRAME_STYLE); long style = KICAD_DEFAULT_DRAWFRAME_STYLE );
#ifdef KICAD_PYTHON #ifdef KICAD_PYTHON
WinEDA_BasicFrame( const WinEDA_BasicFrame& ) { } // Should throw!! WinEDA_BasicFrame( const WinEDA_BasicFrame& ) { } // Should throw!!
WinEDA_BasicFrame() { } // Should throw!! WinEDA_BasicFrame() { } // Should throw!!
...@@ -146,7 +146,7 @@ class WinEDA_DrawFrame : public WinEDA_BasicFrame ...@@ -146,7 +146,7 @@ class WinEDA_DrawFrame : public WinEDA_BasicFrame
{ {
public: public:
WinEDA_DrawPanel* DrawPanel; // Draw area WinEDA_DrawPanel* DrawPanel; // Draw area
WinEDA_MsgPanel* MsgPanel; // Zone d'affichage de caracteristiques WinEDA_MsgPanel* MsgPanel; // Panel used to display some info (bottom of the screen)
WinEDA_Toolbar* m_VToolBar; // Vertical (right side) Toolbar WinEDA_Toolbar* m_VToolBar; // Vertical (right side) Toolbar
WinEDA_Toolbar* m_AuxVToolBar; // Auxiliary Vertical (right side) Toolbar WinEDA_Toolbar* m_AuxVToolBar; // Auxiliary Vertical (right side) Toolbar
WinEDA_Toolbar* m_OptionsToolBar; // Options Toolbar (left side) WinEDA_Toolbar* m_OptionsToolBar; // Options Toolbar (left side)
...@@ -159,19 +159,19 @@ public: ...@@ -159,19 +159,19 @@ public:
int m_ID_current_state; // Id of active button on the vertical toolbar int m_ID_current_state; // Id of active button on the vertical toolbar
int m_HTOOL_current_state; // Id of active button on horizontal toolbar int m_HTOOL_current_state; // Id of active button on horizontal toolbar
int m_InternalUnits; // nombre d'unites internes pour 1 pouce int m_InternalUnits; // Internal units count in 1 inch
// = 1000 pour schema, = 10000 pour PCB // = 1000 for eeschema, = 10000 for PCBnew and Gerbview
int m_UnitType; // Internal Unit type (0 = inch) int m_UnitType; // Internal Unit type (0 = inch)
bool m_Draw_Axis; // TRUE pour avoir les axes dessines bool m_Draw_Axis; // TRUE to show X and Y axis
bool m_Draw_Grid; // TRUE pour avoir la grille dessinee bool m_Draw_Grid; // TRUE to show the grid
bool m_Draw_Sheet_Ref; // TRUE pour avoir le cartouche dessin� bool m_Draw_Sheet_Ref; // TRUE to show frame references
bool m_Print_Sheet_Ref; // TRUE pour avoir le cartouche imprim� bool m_Print_Sheet_Ref; // TRUE to print frame references
bool m_Draw_Auxiliary_Axis; // TRUE pour avoir les axes auxiliaires dessines bool m_Draw_Auxiliary_Axis; /* TRUE to show auxiliary axis. Used in pcbnew:
wxPoint m_Auxiliary_Axis_Position; /* origine de l'axe auxiliaire (app: * the auxiliary axis is the origin of coordinates for drill, gerber and component position files
* dans la generation les fichiers de positionnement */
* des composants) */ wxPoint m_Auxiliary_Axis_Position; /* position of the auxiliary axis */
private: private:
BASE_SCREEN* m_CurrentScreen; ///< current used SCREEN BASE_SCREEN* m_CurrentScreen; ///< current used SCREEN
...@@ -221,7 +221,7 @@ public: ...@@ -221,7 +221,7 @@ public:
virtual void OnSelectGrid( wxCommandEvent& event ); virtual void OnSelectGrid( wxCommandEvent& event );
virtual void OnSelectZoom( wxCommandEvent& event ); virtual void OnSelectZoom( wxCommandEvent& event );
virtual void GeneralControle( wxDC* DC, wxPoint Mouse ){ /* dummy */ } virtual void GeneralControle( wxDC* DC, wxPoint Mouse ) { /* dummy */ }
virtual void OnSize( wxSizeEvent& event ); virtual void OnSize( wxSizeEvent& event );
void OnEraseBackground( wxEraseEvent& SizeEvent ); void OnEraseBackground( wxEraseEvent& SizeEvent );
...@@ -240,7 +240,7 @@ public: ...@@ -240,7 +240,7 @@ public:
virtual int BestZoom() = 0; virtual int BestZoom() = 0;
/* Return the current zoom level */ /* Return the current zoom level */
int GetZoom(void); int GetZoom( void );
void ToPrinter( wxCommandEvent& event ); void ToPrinter( wxCommandEvent& event );
void SVG_Print( wxCommandEvent& event ); void SVG_Print( wxCommandEvent& event );
...@@ -296,8 +296,8 @@ public: ...@@ -296,8 +296,8 @@ public:
/****************************************************/ /****************************************************/
/********************************************************* /*********************************************************
class WinEDA_MsgPanel : this is a panel to display various infos * class WinEDA_MsgPanel : this is a panel to display various infos
and messages on items in eeschema an pcbnew * and messages on items in eeschema an pcbnew
*********************************************************/ *********************************************************/
/** /**
...@@ -328,7 +328,8 @@ struct MsgItem ...@@ -328,7 +328,8 @@ struct MsgItem
m_UpperText = rv.m_UpperText; // overloaded operator=() m_UpperText = rv.m_UpperText; // overloaded operator=()
m_LowerText = rv.m_LowerText; // overloaded operator=() m_LowerText = rv.m_LowerText; // overloaded operator=()
m_Color = rv.m_Color; m_Color = rv.m_Color;
return *this;
return * this;
} }
}; };
...@@ -474,9 +475,9 @@ public: ...@@ -474,9 +475,9 @@ public:
}; };
/************************************************************* /*************************************************************
Class to edit/enter a size (pair of values for X and Y size) * Class to edit/enter a size (pair of values for X and Y size)
( INCHES or MM ) in dialog boxes * ( INCHES or MM ) in dialog boxes
***************************************************************/ ***************************************************************/
class WinEDA_SizeCtrl : public WinEDA_PositionCtrl class WinEDA_SizeCtrl : public WinEDA_PositionCtrl
{ {
public: public:
...@@ -592,7 +593,7 @@ public: ...@@ -592,7 +593,7 @@ public:
const wxChar** m_ItemList; const wxChar** m_ItemList;
private: private:
void (*m_MoveFct)( wxString & Text ); void (*m_MoveFct)( wxString& Text );
public: public:
WinEDAListBox( WinEDA_DrawFrame* parent, const wxString& title, WinEDAListBox( WinEDA_DrawFrame* parent, const wxString& title,
......
...@@ -1124,6 +1124,20 @@ void WinEDA_PcbFrame::RemoveStruct( BOARD_ITEM* Item, wxDC* DC ) ...@@ -1124,6 +1124,20 @@ void WinEDA_PcbFrame::RemoveStruct( BOARD_ITEM* Item, wxDC* DC )
Delete_Zone_Fill( DC, (SEGZONE*) Item ); Delete_Zone_Fill( DC, (SEGZONE*) Item );
break; break;
case TYPE_ZONE_EDGE_CORNER:
Remove_Zone_Corner( DC, (ZONE_CONTAINER*) Item );
SetCurItem( NULL );
break;
case TYPE_ZONE_CONTAINER:
{
SetCurItem( NULL );
int netcode = ((ZONE_CONTAINER*) Item)->GetNet();
Delete_Zone_Contour( DC, (ZONE_CONTAINER*) Item );
test_1_net_connexion( NULL, netcode );
}
break;
case TYPE_MARKER: case TYPE_MARKER:
if( Item == GetCurItem() ) if( Item == GetCurItem() )
SetCurItem( NULL ); SetCurItem( NULL );
......
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