Commit d39df052 authored by jean-pierre charras's avatar jean-pierre charras
Browse files

Eeschema: fix crash when starting ERC.

Fix other issues.
parent 0132ceb3
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -572,7 +572,7 @@ void EDA_DRAW_PANEL::DrawGrid( wxDC* aDC )
    if( org.y < m_ClipBox.GetY() )
    if( org.y < m_ClipBox.GetY() )
        org.y += wxRound( gridSize.y );
        org.y += wxRound( gridSize.y );


#if ( defined( __WXMAC__ ) || 0 )
#if ( defined( __WXMAC__ ) || 1 )
    // Use a pixel based draw to display grid.  There are a lot of calls, so the cost is
    // Use a pixel based draw to display grid.  There are a lot of calls, so the cost is
    // high and grid is slowly drawn on some platforms.  Please note that this should
    // high and grid is slowly drawn on some platforms.  Please note that this should
    // always be enabled until the bitmap based solution below is fixed.
    // always be enabled until the bitmap based solution below is fixed.
+22 −25
Original line number Original line Diff line number Diff line
@@ -25,8 +25,6 @@ void LIB_EDIT_FRAME::OnLeftClick( wxDC* DC, const wxPoint& aPosition )
    if( m_component == NULL )   // No component loaded !
    if( m_component == NULL )   // No component loaded !
        return;
        return;


    if( m_ID_current_state == 0 )
    {
    if( DrawEntry && DrawEntry->m_Flags )
    if( DrawEntry && DrawEntry->m_Flags )
    {
    {
        switch( DrawEntry->Type() )
        switch( DrawEntry->Type() )
@@ -57,7 +55,6 @@ void LIB_EDIT_FRAME::OnLeftClick( wxDC* DC, const wxPoint& aPosition )
        else
        else
            DisplayCmpDoc();
            DisplayCmpDoc();
    }
    }
    }


    if( m_ID_current_state )
    if( m_ID_current_state )
    {
    {
+2 −2
Original line number Original line Diff line number Diff line
@@ -50,7 +50,7 @@ bool LIB_EDIT_FRAME::OnRightClick( const wxPoint& aPosition, wxMenu* PopMenu )
                      _( "Cancel" ), cancel_xpm );
                      _( "Cancel" ), cancel_xpm );
        PopMenu->AppendSeparator();
        PopMenu->AppendSeparator();
    }
    }
    else if( m_ID_current_state )
    else if( m_ID_current_state && m_ID_current_state != ID_LIBEDIT_NO_TOOL )
    {   // If a tool is active, put menu "end tool"
    {   // If a tool is active, put menu "end tool"
        ADD_MENUITEM( PopMenu, ID_POPUP_LIBEDIT_CANCEL_EDITING,
        ADD_MENUITEM( PopMenu, ID_POPUP_LIBEDIT_CANCEL_EDITING,
                      _( "End Tool" ), cancel_tool_xpm );
                      _( "End Tool" ), cancel_tool_xpm );
+1 −1
Original line number Original line Diff line number Diff line
@@ -79,7 +79,7 @@ bool SCH_EDIT_FRAME::OnRightClick( const wxPoint& aPosition, wxMenu* PopMenu )
    }
    }


    // If Command in progress: add "cancel" and "end tool" menu
    // If Command in progress: add "cancel" and "end tool" menu
    if(  m_ID_current_state )
    if(  m_ID_current_state && m_ID_current_state != ID_SCH_NO_TOOL)
    {
    {
        if( DrawStruct && DrawStruct->m_Flags )
        if( DrawStruct && DrawStruct->m_Flags )
        {
        {
+2 −1
Original line number Original line Diff line number Diff line
@@ -273,7 +273,6 @@ bool SCH_SCREEN::SchematicCleanUp( EDA_DRAW_PANEL* aCanvas, wxDC* aDC )
                         * segment can be flagged */
                         * segment can be flagged */
                        DrawList->m_Flags |= TstDrawList->m_Flags;
                        DrawList->m_Flags |= TstDrawList->m_Flags;
                        EraseStruct( TstDrawList, this );
                        EraseStruct( TstDrawList, this );
                        aCanvas->Refresh();
                        TstDrawList = GetDrawItems();
                        TstDrawList = GetDrawItems();
                        Modify = true;
                        Modify = true;
                    }
                    }
@@ -292,6 +291,8 @@ bool SCH_SCREEN::SchematicCleanUp( EDA_DRAW_PANEL* aCanvas, wxDC* aDC )


    TestDanglingEnds( aCanvas, aDC );
    TestDanglingEnds( aCanvas, aDC );


    if( aCanvas && Modify )
        aCanvas->Refresh();
    return Modify;
    return Modify;
}
}


Loading