Go back to using QuasiModal for TextBox Properties.
Also removes auto-closing of blocking dialogs when inserting symbols from the Symbol Editor or Chooser, preventing the bug that QuasiModel was removed for earlier. Also fixes a non-initialized parent pointer when the TextBox Properties dialog was called from DrawShape(). Fixes https://gitlab.com/kicad/code/kicad/-/issues/14777
This commit is contained in:
parent
ff072feeb4
commit
5a9ed66cfd
|
@ -1608,6 +1608,7 @@ int SCH_DRAWING_TOOLS::DrawShape( const TOOL_EVENT& aEvent )
|
||||||
textbox->SetHorizJustify( m_lastTextJust );
|
textbox->SetHorizJustify( m_lastTextJust );
|
||||||
textbox->SetStroke( m_lastTextboxStroke );
|
textbox->SetStroke( m_lastTextboxStroke );
|
||||||
textbox->SetFillColor( m_lastTextboxFillColor );
|
textbox->SetFillColor( m_lastTextboxFillColor );
|
||||||
|
textbox->SetParent( schematic );
|
||||||
|
|
||||||
item = textbox;
|
item = textbox;
|
||||||
}
|
}
|
||||||
|
@ -1617,6 +1618,7 @@ int SCH_DRAWING_TOOLS::DrawShape( const TOOL_EVENT& aEvent )
|
||||||
|
|
||||||
item->SetStroke( m_lastStroke );
|
item->SetStroke( m_lastStroke );
|
||||||
item->SetFillColor( m_lastFillColor );
|
item->SetFillColor( m_lastFillColor );
|
||||||
|
item->SetParent( schematic );
|
||||||
}
|
}
|
||||||
|
|
||||||
item->SetFlags( IS_NEW );
|
item->SetFlags( IS_NEW );
|
||||||
|
@ -1646,9 +1648,8 @@ int SCH_DRAWING_TOOLS::DrawShape( const TOOL_EVENT& aEvent )
|
||||||
getViewControls()->SetAutoPan( false );
|
getViewControls()->SetAutoPan( false );
|
||||||
getViewControls()->CaptureCursor( false );
|
getViewControls()->CaptureCursor( false );
|
||||||
|
|
||||||
// This is modal not quasi to protect against place symbol calls starting
|
// Must be quasi modal for syntax help
|
||||||
// TwoClickPlace wait routines in the middle
|
if( dlg.ShowQuasiModal() != wxID_OK )
|
||||||
if( dlg.ShowModal() != wxID_OK )
|
|
||||||
{
|
{
|
||||||
cleanup();
|
cleanup();
|
||||||
continue;
|
continue;
|
||||||
|
|
|
@ -664,7 +664,11 @@ int SYMBOL_EDITOR_CONTROL::AddSymbolToSchematic( const TOOL_EVENT& aEvent )
|
||||||
wxWindow* blocking_dialog = schframe->Kiway().GetBlockingDialog();
|
wxWindow* blocking_dialog = schframe->Kiway().GetBlockingDialog();
|
||||||
|
|
||||||
if( blocking_dialog )
|
if( blocking_dialog )
|
||||||
blocking_dialog->Close( true );
|
{
|
||||||
|
blocking_dialog->Raise();
|
||||||
|
wxBell();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
wxCHECK( libSymbol->GetLibId().IsValid(), 0 );
|
wxCHECK( libSymbol->GetLibId().IsValid(), 0 );
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue