25#ifndef _CVPCB_MAINFRAME_H_ 
   26#define _CVPCB_MAINFRAME_H_ 
   60    bool OpenProjectFiles( 
const std::vector<wxString>& aFileSet, 
int aCtl=0 ) 
override;
 
  187        return wxEmptyString;
 
 
  192        return wxEmptyString;
 
 
  207                             bool aAddUndoItem = 
true );
 
  306    void SetStatusText( 
const wxString& aText, 
int aNumber = 0 ) 
override;
 
  339    wxString 
formatSymbolDesc( 
int idx, 
const wxString& aReference, 
const wxString& aValue,
 
  340                               const wxString& aFootprint );
 
  367                              wxString* aErrorMessages = 
nullptr );
 
 
boost::ptr_vector< FOOTPRINT_EQUIVALENCE > FOOTPRINT_EQUIVALENCE_LIST
 
APP_SETTINGS_BASE is a settings class that should be derived for each standalone KiCad application.
 
Store all of the related component information found in a netlist.
 
A class to define a footprint association to be made in cvpcb.
 
ITEM_DIR
Directions to move when selecting items.
 
@ ITEM_NEXT
The next item.
 
@ ITEM_PREV
The previous item.
 
bool readNetListAndFpFiles(const std::string &aNetlist)
Load the netlist file built on the fly by Eeschema and loads footprint libraries from fp lib tables.
 
void SaveSettings(APP_SETTINGS_BASE *aCfg) override
Save common frame parameters to a configuration data file.
 
void ShowChangedLanguage() override
 
void SendComponentSelectionToSch(bool aClearSelectionOnly=false)
Send a remote command to Eeschema via a socket,.
 
bool OpenProjectFiles(const std::vector< wxString > &aFileSet, int aCtl=0) override
Open a project or set of files given by aFileList.
 
void doCloseWindow() override
 
CVPCB_UNDO_REDO_LIST m_redoList
 
ACTION_MENU * m_symbolsContextMenu
 
wxString GetUndoActionDescription() const override
 
wxStaticText * m_statusLine3
 
int GetUndoCommandCount() const override
 
CVPCB_MAINFRAME::CONTROL_TYPE GetFocusedControl() const
Find out which control currently has focus.
 
CVPCB_FILTER_ACTION
The action to apply to a footprint filter when it is modified.
 
@ FILTER_DISABLE
Turn off the filter.
 
@ FILTER_ENABLE
Turn on the filter.
 
@ FILTER_TOGGLE
Toggle the filter state.
 
void onTextFilterChangedTimer(wxTimerEvent &aEvent)
 
void onTextFilterChanged(wxCommandEvent &event)
 
LIBRARY_LISTBOX * m_librariesListBox
 
void setupTools()
Setup the tool system for the CVPCB main frame.
 
DISPLAY_FOOTPRINTS_FRAME * GetFootprintViewerFrame() const
 
wxButton * m_saveAndContinue
 
void RedoAssociation()
Redo the most recently undone association.
 
void BuildFootprintsList()
 
bool LoadFootprintFiles()
Read the list of footprint (*.mod files) and generate the list of footprints.
 
void SetStatusText(const wxString &aText, int aNumber=0) override
 
wxString GetSelectedFootprint()
 
void LoadSettings(APP_SETTINGS_BASE *aCfg) override
Load common frame parameters from a configuration file.
 
CVPCB_MAINFRAME(KIWAY *aKiway, wxWindow *aParent)
 
void SetFootprintFilter(FOOTPRINTS_LISTBOX::FP_FILTER_T aFilter, CVPCB_MAINFRAME::CVPCB_FILTER_ACTION aAction)
Set a filter criteria to either on/off or toggle the criteria.
 
wxStaticText * m_statusLine1
 
void setupEventHandlers()
Setup event handlers.
 
void setupUIConditions() override
Setup the UI conditions for the various actions and their controls in this frame.
 
void SetSelectedComponent(int aIndex, bool aSkipUpdate=false)
Set the currently selected component in the components listbox.
 
ACTION_MENU * m_footprintContextMenu
 
int GetRedoCommandCount() const override
 
CONTROL_TYPE
The type of the controls present in the application.
 
@ CONTROL_NONE
No controls have focus.
 
@ CONTROL_LIBRARY
Library listbox.
 
@ CONTROL_FOOTPRINT
Footprint listbox.
 
@ CONTROL_COMPONENT
Component listbox.
 
bool m_skipComponentSelect
 
wxString formatSymbolDesc(int idx, const wxString &aReference, const wxString &aValue, const wxString &aFootprint)
 
void SetFocusedControl(CVPCB_MAINFRAME::CONTROL_TYPE aControl)
Set the focus to a specific control.
 
void KiwayMailIn(KIWAY_EXPRESS &aEvent) override
Receive KIWAY_EXPRESS messages from other players.
 
int buildEquivalenceList(FOOTPRINT_EQUIVALENCE_LIST &aList, wxString *aErrorMessages=nullptr)
Read the .equ files and populate the list of equivalents.
 
void OnSelectComponent(wxListEvent &event)
Called when clicking on a component in component list window:
 
void UndoAssociation()
Undo the most recent associations that were performed.
 
void BuildLibrariesList()
 
wxString GetRedoActionDescription() const override
 
void DisplayStatus()
Update the information displayed on the status bar at bottom of the main frame.
 
void doReCreateMenuBar() override
 
void RefreshFootprintViewer()
 
CVPCB_UNDO_REDO_LIST m_undoList
 
bool canCloseWindow(wxCloseEvent &aCloseEvent) override
 
FOOTPRINT_LIST * m_FootprintsList
 
wxWindow * GetToolCanvas() const override
Canvas access.
 
std::vector< unsigned int > GetComponentIndices(CVPCB_MAINFRAME::CRITERIA aCriteria=CVPCB_MAINFRAME::ALL_COMPONENTS)
Get the indices for all the components meeting the specified criteria in the components listbox.
 
void AssociateFootprint(const CVPCB_ASSOCIATION &aAssociation, bool aNewEntry=true, bool aAddUndoItem=true)
Associate a footprint with a specific component in the list.
 
void configureToolbars() override
 
bool IsContentModified() const override
Get if the current associations have been modified but not saved.
 
bool m_viewerPendingUpdate
 
void updateFootprintViewerOnIdle(wxIdleEvent &aEvent)
 
void refreshAfterSymbolSearch(COMPONENT *aSymbol)
 
wxStaticText * m_statusLine2
 
FOOTPRINTS_LISTBOX * m_footprintListBox
 
CRITERIA
Criteria to use to identify sets of components.
 
@ ALL_COMPONENTS
All components.
 
@ NA_COMPONENTS
Not associated components.
 
@ SEL_COMPONENTS
Selected components.
 
@ ASSOC_COMPONENTS
Associated components.
 
SYMBOLS_LISTBOX * m_symbolsListBox
 
TOOL_DISPATCHER * m_toolDispatcher
 
int readSchematicNetlist(const std::string &aNetlist)
Read the netlist (.net) file built on the fly by Eeschema.
 
bool SaveFootprintAssociation(bool doSaveSchematic)
Save the edits that the user has done by sending them back to Eeschema via the kiway.
 
wxTextCtrl * m_tcFilterString
 
COMPONENT * GetSelectedComponent()
Get the selected component from the component listbox.
 
FOCUS_DIR
Directions to rotate the focus through the listboxes is.
 
void AutomaticFootprintMatching()
Called by the automatic association button Read *.equ files to try to find corresponding footprint fo...
 
Carry a payload from one KIWAY_PLAYER to another within a PROJECT.
 
KIWAY_PLAYER(KIWAY *aKiway, wxWindow *aParent, FRAME_T aFrameType, const wxString &aTitle, const wxPoint &aPos, const wxSize &aSize, long aStyle, const wxString &aFrameName, const EDA_IU_SCALE &aIuScale)
 
A minimalistic software bus for communications between various DLLs/DSOs (DSOs) within the same KiCad...
 
Store information read from a netlist along with the flags used to update the NETLIST in the BOARD.
 
std::vector< CVPCB_UNDO_REDO_ENTRIES > CVPCB_UNDO_REDO_LIST
 
std::vector< CVPCB_ASSOCIATION > CVPCB_UNDO_REDO_ENTRIES