Handle y-axis inversion in Symbol Editor when drag-selecting text.
Fixes https://gitlab.com/kicad/code/kicad/issues/7406
This commit is contained in:
parent
ff3441143e
commit
c220913aa1
|
@ -65,7 +65,20 @@ public:
|
|||
|
||||
bool HitTest( const EDA_RECT& aRect, bool aContained, int aAccuracy = 0 ) const override
|
||||
{
|
||||
return TextHitTest( aRect, aContained, aAccuracy );
|
||||
if( m_flags & (STRUCT_DELETED | SKIP_STRUCT ) )
|
||||
return false;
|
||||
|
||||
EDA_RECT rect = aRect;
|
||||
|
||||
rect.Inflate( aAccuracy );
|
||||
|
||||
EDA_RECT textBox = GetTextBox();
|
||||
textBox.RevertYAxis();
|
||||
|
||||
if( aContained )
|
||||
return rect.Contains( textBox );
|
||||
|
||||
return rect.Intersects( textBox, GetTextAngle() );
|
||||
}
|
||||
|
||||
int GetPenWidth() const override;
|
||||
|
|
|
@ -361,9 +361,10 @@ void SYMBOL_EDIT_FRAME::setupUIConditions()
|
|||
auto canEditLib =
|
||||
[this] ( const SELECTION& sel )
|
||||
{
|
||||
return !getTargetLibId().GetLibNickname().empty()
|
||||
&& m_libMgr->LibraryExists( getTargetLibId().GetLibNickname() )
|
||||
&& !m_libMgr->IsLibraryReadOnly( getTargetLibId().GetLibNickname() );
|
||||
const wxString libName = getTargetLibId().GetLibNickname();
|
||||
|
||||
return !libName.empty() && m_libMgr->LibraryExists( libName )
|
||||
&& !m_libMgr->IsLibraryReadOnly( libName );
|
||||
};
|
||||
|
||||
mgr->SetConditions( ACTIONS::saveAll,
|
||||
|
|
Loading…
Reference in New Issue