25#include <wx/textdlg.h> 
   53        m_checkGridOverrideConnected->SetLabel( _( 
"Pads:" ) );
 
   54        m_checkGridOverrideWires->Show( false );
 
   55        m_gridOverrideWiresChoice->Show( false );
 
   56        m_checkGridOverrideVias->Show( false );
 
   57        m_gridOverrideViasChoice->Show( false );
 
   61        m_checkGridOverrideConnected->SetLabel( _( 
"Footprints/pads:" ) );
 
   62        m_checkGridOverrideWires->SetLabel( _( 
"Tracks:" ) );
 
   66        m_gridOverrideViasChoice->SetSelection( 0 );
 
   67        m_gridOverrideViasChoice->Show( false );
 
   68        m_checkGridOverrideVias->Show( false );
 
   70        if( m_frameType != FRAME_SCH
 
   71            && m_frameType != FRAME_SCH_SYMBOL_EDITOR
 
   72            && m_frameType != FRAME_SCH_VIEWER
 
   73            && m_frameType != FRAME_SIMULATOR )
 
   75            m_checkGridOverrideConnected->Show( false );
 
   76            m_gridOverrideConnectedChoice->Show( false );
 
   78            m_checkGridOverrideWires->Show( false );
 
   79            m_gridOverrideWiresChoice->Show( false );
 
   84            m_overridesLabel->Show( false );
 
   85            m_staticline3->Show( false );
 
   87            m_checkGridOverrideText->Show( false );
 
   88            m_gridOverrideTextChoice->Show( false );
 
   90            m_checkGridOverrideGraphics->Show( false );
 
   91            m_gridOverrideGraphicsChoice->Show( false );
 
   97    m_grid1HotKey->SetLabel( wxString::Format( wxT( 
"(%s)" ), 
KeyNameFromKeyCode( hk1 ) ) );
 
   98    m_grid2HotKey->SetLabel( wxString::Format( wxT( 
"(%s)" ), 
KeyNameFromKeyCode( hk2 ) ) );
 
 
  121    wxString savedGrid1       = 
m_grid1Ctrl->GetStringSelection();
 
  122    wxString savedGrid2       = 
m_grid2Ctrl->GetStringSelection();
 
  142        if( !
name.IsEmpty() )
 
  145        msg.Printf( 
_( 
"%s%s (%s)" ), 
name, 
grid.MessageText( 
scale, primaryUnit, 
true ),
 
  146                    grid.MessageText( 
scale, secondaryUnit, 
true ) );
 
  165    if( !
m_grid1Ctrl->SetStringSelection( savedGrid1 ) )
 
  168    if( !
m_grid2Ctrl->SetStringSelection( savedGrid2 ) )
 
 
  211    return RESETTABLE_PANEL::TransferDataFromWindow();
 
 
  221            [
this]( 
int idx ) -> 
int 
  223                if( idx < 0 || idx >= (
int) 
m_grids.size() )
 
  251    return RESETTABLE_PANEL::TransferDataToWindow();
 
 
  257    GRID                 newGrid = 
GRID{ wxEmptyString, 
"", 
"" };
 
  270            wxWindow* topLevelParent = wxGetTopLevelParent( 
this );
 
  273                          wxString::Format( 
_( 
"Grid size '%s' already exists." ),
 
 
  314            wxWindow* topLevelParent = wxGetTopLevelParent( 
this );
 
  317                          wxString::Format( 
_( 
"Grid size '%s' already exists." ),
 
 
  349    if( 
m_grids.size() <= 1 || row == 0 )
 
 
  385    int numRows = (int) 
m_grids.size();
 
  388    event.Enable( ( numRows > 1 ) && ( curRow > 0 ) );
 
 
  395    int numRows = (int) 
m_grids.size();
 
  398    event.Enable( ( numRows > 1 ) && ( curRow < ( numRows - 1 ) ) );
 
 
  405    event.Enable( 
m_grids.size() > 1 );
 
 
wxBitmapBundle KiBitmapBundle(BITMAPS aBitmap, int aMinHeight)
 
static TOOL_ACTION gridFast1
 
static TOOL_ACTION gridFast2
 
APP_SETTINGS_BASE is a settings class that should be derived for each standalone KiCad application.
 
wxCheckBox * m_checkGridOverrideConnected
 
wxCheckBox * m_checkGridOverrideText
 
wxChoice * m_gridOverrideConnectedChoice
 
wxCheckBox * m_checkGridOverrideGraphics
 
wxChoice * m_gridOverrideWiresChoice
 
wxChoice * m_gridOverrideTextChoice
 
wxCheckBox * m_checkGridOverrideVias
 
wxListBox * m_currentGridCtrl
 
wxChoice * m_gridOverrideGraphicsChoice
 
wxChoice * m_gridOverrideViasChoice
 
wxCheckBox * m_checkGridOverrideWires
 
PANEL_GRID_SETTINGS_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxTAB_TRAVERSAL, const wxString &name=wxEmptyString)
 
void ResetPanel() override
Reset the contents of this panel.
 
bool TransferDataToWindow() override
 
void OnEditGrid(wxCommandEvent &event) override
 
void OnRemoveGrid(wxCommandEvent &event) override
 
void OnMoveGridDown(wxCommandEvent &event) override
 
void OnUpdateEditGrid(wxUpdateUIEvent &event) override
 
bool TransferDataFromWindow() override
 
APP_SETTINGS_BASE * m_cfg
 
void OnUpdateMoveDown(wxUpdateUIEvent &event) override
 
void OnUpdateMoveUp(wxUpdateUIEvent &event) override
 
void OnMoveGridUp(wxCommandEvent &event) override
 
std::vector< GRID > m_grids
 
PANEL_GRID_SETTINGS(wxWindow *aParent, UNITS_PROVIDER *aUnitsProvider, wxWindow *aEventSource, APP_SETTINGS_BASE *aCfg, FRAME_T aFrameType)
This has no dependencies on calling wxFrame derivative, such as PCB_BASE_FRAME.
 
UNITS_PROVIDER * m_unitsProvider
 
void OnUpdateRemove(wxUpdateUIEvent &event) override
 
void OnAddGrid(wxCommandEvent &event) override
 
void DisplayError(wxWindow *aParent, const wxString &aText)
Display an error or warning message box with aMessage.
 
This file is part of the common library.
 
FRAME_T
The set of EDA_BASE_FRAME derivatives, typically stored in EDA_BASE_FRAME::m_Ident.
 
wxString KeyNameFromKeyCode(int aKeycode, bool *aIsFound)
Return the key name from the key code.
 
int override_connected_idx
 
std::vector< GRID > grids
 
int override_graphics_idx
 
Common grid settings, available to every frame.