KiCad PCB EDA Suite
events_called_functions.cpp
Go to the documentation of this file.
1 /*
2  * This program source code file is part of KiCad, a free EDA CAD application.
3  *
4  * Copyright (C) 2011-2014 Jean-Pierre Charras jp.charras at wanadoo.fr
5  * Copyright (C) 1992-2016 KiCad Developers, see AUTHORS.txt for contributors.
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License
9  * as published by the Free Software Foundation; either version 2
10  * of the License, or (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, you may find one here:
19  * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
20  * or you may search the http://www.gnu.org website for the version 2 license,
21  * or you may write to the Free Software Foundation, Inc.,
22  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
23  */
24 
30 #include <fctsys.h>
31 #include <pgm_base.h>
32 #include <class_drawpanel.h>
33 #include <gestfich.h>
34 
35 #include <gerbview.h>
36 #include <gerbview_frame.h>
37 #include <kicad_device_context.h>
38 #include <gerbview_id.h>
41 #include <dialog_helpers.h>
45 
46 
47 // Event table:
48 
49 BEGIN_EVENT_TABLE( GERBVIEW_FRAME, EDA_DRAW_FRAME )
50  EVT_CLOSE( GERBVIEW_FRAME::OnCloseWindow )
51  EVT_SIZE( GERBVIEW_FRAME::OnSize )
52 
53  EVT_TOOL( wxID_FILE, GERBVIEW_FRAME::Files_io )
58  EVT_TOOL( ID_GERBVIEW_SET_PAGE_BORDER, GERBVIEW_FRAME::Process_Special_Functions )
59 
60  // Menu Files:
61  EVT_MENU( wxID_FILE, GERBVIEW_FRAME::Files_io )
62  EVT_MENU( ID_NEW_BOARD, GERBVIEW_FRAME::Files_io )
63  EVT_MENU( ID_GERBVIEW_EXPORT_TO_PCBNEW, GERBVIEW_FRAME::ExportDataInPcbnewFormat )
64 
65  EVT_MENU_RANGE( wxID_FILE1, wxID_FILE9, GERBVIEW_FRAME::OnGbrFileHistory )
66 
68  GERBVIEW_FRAME::OnDrlFileHistory )
69 
71  GERBVIEW_FRAME::OnZipFileHistory )
72 
73  EVT_MENU( wxID_EXIT, GERBVIEW_FRAME::OnQuit )
74 
75  // menu Preferences
77  GERBVIEW_FRAME::Process_Config )
78 
80  GERBVIEW_FRAME::OnSelectOptionToolbar )
81  EVT_MENU( wxID_PREFERENCES, GERBVIEW_FRAME::InstallGerberOptionsDialog )
82 
83  // menu Postprocess
84  EVT_MENU( ID_GERBVIEW_SHOW_LIST_DCODES, GERBVIEW_FRAME::Process_Special_Functions )
85  EVT_MENU( ID_GERBVIEW_SHOW_SOURCE, GERBVIEW_FRAME::OnShowGerberSourceFile )
87  EDA_BASE_FRAME::OnSelectPreferredEditor )
88 
89  // menu Miscellaneous
90  EVT_MENU( ID_GERBVIEW_ERASE_CURR_LAYER, GERBVIEW_FRAME::Process_Special_Functions )
91 
92  // Menu Help
93  EVT_MENU( wxID_HELP, EDA_DRAW_FRAME::GetKicadHelp )
94  EVT_MENU( wxID_INDEX, EDA_DRAW_FRAME::GetKicadHelp )
95  EVT_MENU( ID_HELP_GET_INVOLVED, EDA_DRAW_FRAME::GetKicadContribute )
96  EVT_MENU( wxID_ABOUT, EDA_DRAW_FRAME::GetKicadAbout )
97 
98  EVT_TOOL( wxID_UNDO, GERBVIEW_FRAME::Process_Special_Functions )
99  EVT_TOOL( wxID_PRINT, GERBVIEW_FRAME::ToPrinter )
101  GERBVIEW_FRAME::OnSelectActiveLayer )
102 
104 
105  // Vertical toolbar:
106  EVT_TOOL( ID_NO_TOOL_SELECTED, GERBVIEW_FRAME::Process_Special_Functions )
107 
109  GERBVIEW_FRAME::Process_Special_Functions )
110 
111  // Option toolbar
112  //EVT_TOOL( ID_NO_TOOL_SELECTED, GERBVIEW_FRAME::Process_Special_Functions ) // mentioned below
113  EVT_TOOL( ID_ZOOM_SELECTION, GERBVIEW_FRAME::Process_Special_Functions )
114  EVT_TOOL( ID_TB_OPTIONS_SHOW_POLAR_COORD, GERBVIEW_FRAME::OnSelectOptionToolbar )
117  EVT_TOOL( ID_TB_OPTIONS_SHOW_LINES_SKETCH, GERBVIEW_FRAME::OnSelectOptionToolbar )
119  GERBVIEW_FRAME::OnSelectOptionToolbar )
120  EVT_TOOL( ID_TB_OPTIONS_SHOW_DCODES, GERBVIEW_FRAME::OnSelectOptionToolbar )
123  GERBVIEW_FRAME::OnSelectDisplayMode )
124 
125  // Auxiliary horizontal toolbar
126  EVT_CHOICE( ID_GBR_AUX_TOOLBAR_PCB_CMP_CHOICE, GERBVIEW_FRAME::Process_Special_Functions )
127  EVT_CHOICE( ID_GBR_AUX_TOOLBAR_PCB_NET_CHOICE, GERBVIEW_FRAME::Process_Special_Functions )
128  EVT_CHOICE( ID_GBR_AUX_TOOLBAR_PCB_APERATTRIBUTES_CHOICE, GERBVIEW_FRAME::Process_Special_Functions )
129 
130  // Right click context menu
131  EVT_MENU( ID_HIGHLIGHT_CMP_ITEMS, GERBVIEW_FRAME::Process_Special_Functions )
132  EVT_MENU( ID_HIGHLIGHT_NET_ITEMS, GERBVIEW_FRAME::Process_Special_Functions )
133  EVT_MENU( ID_HIGHLIGHT_APER_ATTRIBUTE_ITEMS, GERBVIEW_FRAME::Process_Special_Functions )
134  EVT_MENU( ID_HIGHLIGHT_REMOVE_ALL, GERBVIEW_FRAME::Process_Special_Functions )
135 
136  EVT_UPDATE_UI( ID_NO_TOOL_SELECTED, GERBVIEW_FRAME::OnUpdateSelectTool )
137  EVT_UPDATE_UI( ID_ZOOM_SELECTION, GERBVIEW_FRAME::OnUpdateSelectTool )
138  EVT_UPDATE_UI( ID_TB_OPTIONS_SHOW_POLAR_COORD, GERBVIEW_FRAME::OnUpdateCoordType )
139  EVT_UPDATE_UI( ID_TB_OPTIONS_SHOW_FLASHED_ITEMS_SKETCH,
140  GERBVIEW_FRAME::OnUpdateFlashedItemsDrawMode )
141  EVT_UPDATE_UI( ID_TB_OPTIONS_SHOW_LINES_SKETCH, GERBVIEW_FRAME::OnUpdateLinesDrawMode )
142  EVT_UPDATE_UI( ID_TB_OPTIONS_SHOW_POLYGONS_SKETCH, GERBVIEW_FRAME::OnUpdatePolygonsDrawMode )
143  EVT_UPDATE_UI( ID_TB_OPTIONS_SHOW_DCODES, GERBVIEW_FRAME::OnUpdateShowDCodes )
144  EVT_UPDATE_UI( ID_TB_OPTIONS_SHOW_NEGATIVE_ITEMS, GERBVIEW_FRAME::OnUpdateShowNegativeItems )
145  EVT_UPDATE_UI( ID_TB_OPTIONS_SHOW_LAYERS_MANAGER_VERTICAL_TOOLBAR,
146  GERBVIEW_FRAME::OnUpdateShowLayerManager )
147 
148  EVT_UPDATE_UI( ID_TOOLBARH_GERBER_SELECT_ACTIVE_DCODE, GERBVIEW_FRAME::OnUpdateSelectDCode )
149  EVT_UPDATE_UI( ID_TOOLBARH_GERBVIEW_SELECT_ACTIVE_LAYER,
150  GERBVIEW_FRAME::OnUpdateLayerSelectBox )
151  EVT_UPDATE_UI_RANGE( ID_TB_OPTIONS_SHOW_GBR_MODE_0, ID_TB_OPTIONS_SHOW_GBR_MODE_2,
152  GERBVIEW_FRAME::OnUpdateDrawMode )
153 
154 END_EVENT_TABLE()
155 
156 
157 /* Handles the selection of tools, menu, and popup menu commands.
158  */
159 void GERBVIEW_FRAME::Process_Special_Functions( wxCommandEvent& event )
160 {
161  int id = event.GetId();
162 
163  switch( id )
164  {
166  case ID_POPUP_ZOOM_BLOCK:
167  break;
168 
170  m_canvas->EndMouseCapture();
171 
172  if( GetScreen()->m_BlockLocate.GetCommand() != BLOCK_IDLE )
173  {
174  /* Should not be executed, except bug */
175  GetScreen()->m_BlockLocate.SetCommand( BLOCK_IDLE );
176  GetScreen()->m_BlockLocate.SetState( STATE_NO_BLOCK );
177  GetScreen()->m_BlockLocate.ClearItemsList();
178  }
179 
180  if( GetToolId() == ID_NO_TOOL_SELECTED )
181  SetNoToolSelected();
182  else
183  m_canvas->SetCursor( (wxStockCursor) m_canvas->GetCurrentCursor() );
184  break;
185 
186  default:
187  m_canvas->EndMouseCapture();
188  break;
189  }
190 
191  INSTALL_UNBUFFERED_DC( dc, m_canvas );
192  GERBER_DRAW_ITEM* currItem = (GERBER_DRAW_ITEM*) GetScreen()->GetCurItem();
193 
194  switch( id )
195  {
196  case ID_GERBVIEW_SET_PAGE_BORDER:
197  {
198  DIALOG_PAGE_SHOW_PAGE_BORDERS dlg( this );
199 
200  if( dlg.ShowModal() == wxID_OK )
201  m_canvas->Refresh();
202  }
203  break;
204 
205  case ID_GERBVIEW_ERASE_CURR_LAYER:
206  Erase_Current_DrawLayer( true );
207  ClearMsgPanel();
208  break;
209 
210  case ID_NO_TOOL_SELECTED:
211  SetNoToolSelected();
212  break;
213 
214  case ID_ZOOM_SELECTION:
215  // This tool is located on the main toolbar: switch it on or off on click
216  if( GetToolId() != ID_ZOOM_SELECTION )
217  SetToolID( ID_ZOOM_SELECTION, wxCURSOR_MAGNIFIER, _( "Zoom to selection" ) );
218  else
219  SetNoToolSelected();
220  break;
221 
223  SetToolID( ID_NO_TOOL_SELECTED, m_canvas->GetDefaultCursor(), wxEmptyString );
224  break;
225 
227  break;
228 
229  case ID_GERBVIEW_SHOW_LIST_DCODES:
230  Liste_D_Codes();
231  break;
232 
234  GetScreen()->m_BlockLocate.SetCommand( BLOCK_MOVE );
235  m_canvas->SetAutoPanRequest( false );
236  HandleBlockPlace( &dc );
237  break;
238 
239  case ID_POPUP_ZOOM_BLOCK:
240  GetScreen()->m_BlockLocate.SetCommand( BLOCK_ZOOM );
241  GetScreen()->m_BlockLocate.SetMessageBlock( this );
242  HandleBlockEnd( &dc );
243  break;
244 
245  case ID_GBR_AUX_TOOLBAR_PCB_CMP_CHOICE:
246  case ID_GBR_AUX_TOOLBAR_PCB_NET_CHOICE:
247  case ID_GBR_AUX_TOOLBAR_PCB_APERATTRIBUTES_CHOICE:
248  m_canvas->Refresh();
249  break;
250 
251  case ID_HIGHLIGHT_CMP_ITEMS:
252  if( m_SelComponentBox->SetStringSelection( currItem->GetNetAttributes().m_Cmpref ) )
253  m_canvas->Refresh();
254  break;
255 
256  case ID_HIGHLIGHT_NET_ITEMS:
257  if( m_SelNetnameBox->SetStringSelection( currItem->GetNetAttributes().m_Netname ) )
258  m_canvas->Refresh();
259  break;
260 
261  case ID_HIGHLIGHT_APER_ATTRIBUTE_ITEMS:
262  {
263  D_CODE* apertDescr = currItem->GetDcodeDescr();
264  if( m_SelAperAttributesBox->SetStringSelection( apertDescr->m_AperFunction ) )
265  m_canvas->Refresh();
266  }
267  break;
268 
269  case ID_HIGHLIGHT_REMOVE_ALL:
270  m_SelComponentBox->SetSelection( 0 );
271  m_SelNetnameBox->SetSelection( 0 );
272  m_SelAperAttributesBox->SetSelection( 0 );
273 
274  if( GetGbrImage( getActiveLayer() ) )
275  GetGbrImage( getActiveLayer() )->m_Selected_Tool = 0;
276 
277  m_canvas->Refresh();
278  break;
279 
280  default:
281  wxFAIL_MSG( wxT( "GERBVIEW_FRAME::Process_Special_Functions error" ) );
282  break;
283  }
284 }
285 
286 
287 void GERBVIEW_FRAME::OnSelectActiveDCode( wxCommandEvent& event )
288 {
289  GERBER_FILE_IMAGE* gerber_image = GetGbrImage( getActiveLayer() );
290 
291  if( gerber_image )
292  {
293  int tool = m_DCodeSelector->GetSelectedDCodeId();
294 
295  if( tool != gerber_image->m_Selected_Tool )
296  {
297  gerber_image->m_Selected_Tool = tool;
298  m_canvas->Refresh();
299  }
300  }
301 }
302 
303 
304 void GERBVIEW_FRAME::OnSelectActiveLayer( wxCommandEvent& event )
305 {
306  int layer = getActiveLayer();
307 
308  setActiveLayer( event.GetSelection() );
309 
310  if( layer != getActiveLayer() )
311  {
313  m_canvas->Refresh();
314  }
315 }
316 
317 
318 void GERBVIEW_FRAME::OnShowGerberSourceFile( wxCommandEvent& event )
319 {
320  int layer = getActiveLayer();
321  GERBER_FILE_IMAGE* gerber_layer = GetGbrImage( layer );
322 
323  if( gerber_layer )
324  {
325  wxString editorname = Pgm().GetEditorName();
326  if( !editorname.IsEmpty() )
327  {
328  wxFileName fn( gerber_layer->m_FileName );
329 
330  // Call the editor only if the Gerber/drill source file is available.
331  // This is not always the case, because it can be a temporary file
332  // if it comes from a zip archive.
333  if( !fn.FileExists() )
334  {
335  wxString msg;
336  msg.Printf( _( "Source file '%s' is not available" ),
337  GetChars( fn.GetFullPath() ) );
338  wxMessageBox( msg );
339  }
340  else
341  ExecuteFile( this, editorname, QuoteFullPath( fn ) );
342  }
343  else
344  wxMessageBox( _( "No editor defined. Please select one" ) );
345  }
346 
347  else
348  {
349  wxString msg;
350  msg.Printf( _( "No file loaded on the active layer %d" ), layer + 1 );
351  wxMessageBox( msg );
352  }
353 }
354 
355 
356 void GERBVIEW_FRAME::OnSelectDisplayMode( wxCommandEvent& event )
357 {
358  int oldMode = GetDisplayMode();
359 
360  switch( event.GetId() )
361  {
363  SetDisplayMode( 0 );
364  break;
365 
367  SetDisplayMode( 1 );
368  break;
369 
371  SetDisplayMode( 2 );
372  break;
373  }
374 
375  if( GetDisplayMode() != oldMode )
376  m_canvas->Refresh();
377 }
378 
379 
380 void GERBVIEW_FRAME::OnQuit( wxCommandEvent& event )
381 {
382  Close( true );
383 }
384 
385 
387 {
388  // call my base class
390 
392 
393  wxAuiPaneInfo& pane_info = m_auimgr.GetPane( m_LayersManager );
394  pane_info.Caption( _( "Visibles" ) );
395  m_auimgr.Update();
396 
398 }
399 
400 
401 void GERBVIEW_FRAME::OnSelectOptionToolbar( wxCommandEvent& event )
402 {
403  int id = event.GetId();
404  bool state;
405 
406  switch( id )
407  {
409  state = ! m_show_layer_manager_tools;
411  break;
412 
413  default:
414  state = m_optionsToolBar->GetToolToggled( id );
415  break;
416  }
417 
418  switch( id )
419  {
422  break;
423 
426  m_canvas->Refresh( true );
427  break;
428 
431  m_canvas->Refresh( true );
432  break;
433 
436  m_canvas->Refresh( true );
437  break;
438 
441  m_canvas->Refresh( true );
442  break;
443 
446  m_canvas->Refresh( true );
447  break;
448 
450 
451  // show/hide auxiliary Vertical layers and visibility manager toolbar
453  m_auimgr.GetPane( wxT( "m_LayersManagerToolBar" ) ).Show( m_show_layer_manager_tools );
454  m_auimgr.Update();
455  GetMenuBar()->SetLabel( ID_MENU_GERBVIEW_SHOW_HIDE_LAYERS_MANAGER_DIALOG,
457  _("Hide &Layers Manager" ) : _("Show &Layers Manager" ));
458  break;
459 
460  default:
461  wxMessageBox( wxT( "GERBVIEW_FRAME::OnSelectOptionToolbar error" ) );
462  break;
463  }
464 }
465 
466 
467 void GERBVIEW_FRAME::OnUpdateSelectTool( wxUpdateUIEvent& aEvent )
468 {
469  aEvent.Check( GetToolId() == aEvent.GetId() );
470 }
bool m_DisplayPolygonsFill
Option to draw polygons (filled/sketch)
This file is part of the common library TODO brief description.
GERBVIEW_FRAME::OnZipFileHistory GERBVIEW_FRAME::OnSelectOptionToolbar GERBVIEW_FRAME::OnSelectActiveLayer GERBVIEW_FRAME::OnSelectOptionToolbar GERBVIEW_FRAME::OnUpdateFlashedItemsDrawMode GERBVIEW_FRAME::OnUpdateLayerSelectBox EVT_UPDATE_UI_RANGE(ID_TB_OPTIONS_SHOW_GBR_MODE_0, ID_TB_OPTIONS_SHOW_GBR_MODE_2, GERBVIEW_FRAME::OnUpdateDrawMode) void GERBVIEW_FRAME
virtual void Refresh(bool eraseBackground=true, const wxRect *rect=NULL) override
Definition: draw_panel.cpp:326
void OnUpdateSelectTool(wxUpdateUIEvent &aEvent)
int GetDisplayMode()
Function GetDisplayMode.
D_CODE * GetDcodeDescr()
Function GetDcodeDescr returns the GetDcodeDescr of this object, or NULL.
void OnQuit(wxCommandEvent &event)
Function OnQuit called on request of application quit.
GERBER_LAYER_WIDGET * m_LayersManager
Class GERBER_FILE_IMAGE holds the Image data and parameters for one gerber file and layer parameters ...
wxString m_Cmpref
the component reference parent of the data
PGM_BASE & Pgm()
The global Program "get" accessor.
Definition: kicad.cpp:65
wxAuiManager m_auimgr
Definition: wxstruct.h:140
Class EDA_DRAW_FRAME is the base class for create windows for drawing purpose.
Definition: draw_frame.h:53
void OnSelectActiveDCode(wxCommandEvent &event)
Function OnSelectActiveDCode Selects the active DCode for the current active layer.
bool m_DisplayLinesFill
Option to draw line items (filled/sketch)
void OnSelectDisplayMode(wxCommandEvent &event)
Function OnSelectDisplayMode called on a display mode selection Mode selection can be fast display...
void SetLayersManagerTabsText()
Function SetLayersManagerTabsText Update the layer manager tabs labels Useful when changing Language ...
a helper to handle the real device context used in KiCad
wxAuiToolBar * m_optionsToolBar
The options tool bar typcially located on the left edge of the main window.
Definition: draw_frame.h:125
GBR_DISPLAY_OPTIONS m_DisplayOptions
bool m_DisplayFlashedItemsFill
Option to draw flashed items (filled/sketch)
int GetSelectedDCodeId()
Function GetSelectedDCodeId.
void ShowChangedLanguage() override
Function ShowChangedLanguage redraws the menus and what not in current language.
EVT_MENU_RANGE(ID_GERBVIEW_DRILL_FILE1, ID_GERBVIEW_DRILL_FILE9, GERBVIEW_FRAME::OnDrlFileHistory) EVT_MENU_RANGE(ID_GERBVIEW_ZIP_FILE1
ID_PREFERENCES_HOTKEY_END
Helper dialog and control classes.
wxString m_Netname
for items associated to a net: the netname
#define EVT_SELECT_DCODE
bool m_DisplayPolarCood
Option to display coordinates in status bar in X,Y or Polar coords.
EVT_TOOL(ID_FOOTPRINT_WIZARD_SELECT_WIZARD, FOOTPRINT_WIZARD_FRAME::SelectCurrentWizard) EVT_TOOL(ID_FOOTPRINT_WIZARD_RESET_TO_DEFAULT
void OnShowGerberSourceFile(wxCommandEvent &event)
Function OnShowGerberSourceFile Call the preferred editor to show (and edit) the gerber source file l...
void OnSelectOptionToolbar(wxCommandEvent &event)
wxString m_AperFunction
the aperture attribute (created by a TA.AperFunction command) attached to the D_CODE ...
Definition: dcode.h:109
void setActiveLayer(int aLayer, bool doLayerWidgetUpdate=true)
Function setActiveLayer will change the currently active layer to aLayer and also update the GERBER_L...
DCODE_SELECTION_BOX * m_DCodeSelector
EDA_DRAW_PANEL * m_canvas
The area to draw on.
Definition: draw_frame.h:92
static const wxChar * GetChars(const wxString &s)
Function GetChars returns a wxChar* to the actual wxChar* data within a wxString, and is helpful for ...
Definition: macros.h:92
see class PGM_BASE
Class D_CODE holds a gerber DCODE (also called Aperture) definition.
Definition: dcode.h:81
GERBVIEW_FRAME::OnZipFileHistory GERBVIEW_FRAME::OnSelectOptionToolbar EVT_MENU(ID_MENU_GERBVIEW_SELECT_PREFERED_EDITOR, EDA_BASE_FRAME::OnSelectPreferredEditor) EVT_COMBOBOX(ID_TOOLBARH_GERBVIEW_SELECT_ACTIVE_LAYER
Dialog to show/hide frame reference and select paper size for printing.
wxString QuoteFullPath(wxFileName &fn, wxPathFormat format)
Quote return value of wxFileName::GetFullPath().
Definition: gestfich.cpp:417
void SetElementVisibility(GERBVIEW_LAYER_ID aItemIdVisible, bool aNewState)
Function SetElementVisibility changes the visibility of an element category.
#define INSTALL_UNBUFFERED_DC(name, parent)
int GetToolId() const
Definition: draw_frame.h:419
Class EDA_BASE_FRAME is the base frame for deriving all KiCad main window classes.
Definition: wxstruct.h:113
int getActiveLayer()
Function getActiveLayer returns the active layer.
GERBVIEW_FRAME::OnZipFileHistory GERBVIEW_FRAME::OnSelectOptionToolbar GERBVIEW_FRAME::OnSelectActiveLayer GERBVIEW_FRAME::OnSelectOptionToolbar GERBVIEW_FRAME::OnUpdateFlashedItemsDrawMode EVT_UPDATE_UI(ID_TB_OPTIONS_SHOW_LAYERS_MANAGER_VERTICAL_TOOLBAR, GERBVIEW_FRAME::OnUpdateShowLayerManager) EVT_UPDATE_UI(ID_TOOLBARH_GERBVIEW_SELECT_ACTIVE_LAYER
GERBVIEW_FRAME::OnZipFileHistory GERBVIEW_FRAME::OnSelectOptionToolbar GERBVIEW_FRAME::OnSelectActiveLayer GERBVIEW_FRAME::OnSelectOptionToolbar EVT_TOOL_RANGE(ID_TB_OPTIONS_SHOW_GBR_MODE_0, ID_TB_OPTIONS_SHOW_GBR_MODE_2, GERBVIEW_FRAME::OnSelectDisplayMode) EVT_UPDATE_UI(ID_TB_OPTIONS_SHOW_FLASHED_ITEMS_SKETCH
VTBL_ENTRY const wxString & GetEditorName(bool aCanShowFileChooser=true)
Return the preferred editor name.
Definition: pgm_base.cpp:338
PCB_EDIT_FRAME::OnResetModuleTextSizes PCB_EDIT_FRAME::OnSelectOptionToolbar PCB_EDIT_FRAME::OnSelectOptionToolbar PCB_EDIT_FRAME::OnSelectOptionToolbar PCB_EDIT_FRAME::OnSelectOptionToolbar PCB_EDIT_FRAME::OnSelectTool PCB_EDIT_FRAME::Process_Special_Functions ID_POPUP_GENERAL_END_RANGE
Definition: pcbframe.cpp:278
GERBER_FILE_IMAGE * GetGbrImage(int aIdx) const
bool m_show_layer_manager_tools
int ExecuteFile(wxWindow *frame, const wxString &ExecFile, const wxString &param, wxProcess *callback)
Function ExecuteFile calls the executable file ExecFile with the command line parameters param...
Definition: gestfich.cpp:208
bool OnLayerSelected()
Function OnLayerSelected ensure the active layer is visible, and other layers not visible when m_alwa...
virtual void ShowChangedLanguage()
Function ShowChangedLanguage redraws the menus and what not in current language.
Definition: basicframe.cpp:242
void ReFillLayerWidget()
Function ReFillLayerWidget changes out all the layers in m_Layers and may be called upon loading new ...
void OnSelectActiveLayer(wxCommandEvent &event)
Function OnSelectActiveLayer Selects the active layer:
void SetDisplayMode(int aMode)
Function SetDisplayMode.
const GBR_NETLIST_METADATA & GetNetAttributes()