Eeschema: DIALOG_FIELDS_EDITOR_GLOBAL: fix missing clearing old highlight when highlighting a new symbol or exiting the dialog

This commit is contained in:
jean-pierre charras 2019-01-09 14:38:44 +01:00
parent d1b53028a1
commit 1ca3b2c768
2 changed files with 544 additions and 536 deletions

View File

@ -33,6 +33,7 @@
#include <kicad_string.h> #include <kicad_string.h>
#include <build_version.h> #include <build_version.h>
#include <general.h> #include <general.h>
#include <sch_view.h>
#include <class_library.h> #include <class_library.h>
#include <sch_edit_frame.h> #include <sch_edit_frame.h>
#include <sch_reference_list.h> #include <sch_reference_list.h>
@ -770,6 +771,10 @@ DIALOG_FIELDS_EDITOR_GLOBAL::~DIALOG_FIELDS_EDITOR_GLOBAL()
m_grid->PopEventHandler( true ); m_grid->PopEventHandler( true );
// we gave ownership of m_dataModel to the wxGrid... // we gave ownership of m_dataModel to the wxGrid...
// Clear highligted symbols, if any
m_parent->GetCanvas()->GetView()->HighlightItem( nullptr, nullptr );
m_parent->GetCanvas()->Refresh();
} }
@ -972,6 +977,9 @@ void DIALOG_FIELDS_EDITOR_GLOBAL::OnTableCellClick( wxGridEvent& event )
{ {
if( event.GetCol() == REFERENCE ) if( event.GetCol() == REFERENCE )
{ {
// Clear highligted symbols, if any
m_parent->GetCanvas()->GetView()->HighlightItem( nullptr, nullptr );
m_dataModel->ExpandCollapseRow( event.GetRow() ); m_dataModel->ExpandCollapseRow( event.GetRow() );
std::vector<SCH_REFERENCE> refs = m_dataModel->GetRowReferences( event.GetRow() ); std::vector<SCH_REFERENCE> refs = m_dataModel->GetRowReferences( event.GetRow() );

File diff suppressed because it is too large Load Diff