25#ifndef GRID_TEXT_BUTTON_HELPERS_H
26#define GRID_TEXT_BUTTON_HELPERS_H
33#include <wx/generic/gridctrl.h>
34#include <wx/generic/grideditors.h>
50 const wxString& aPreselect = wxEmptyString ) :
55 wxGridCellEditor*
Clone()
const override
60 void Create( wxWindow* aParent, wxWindowID aId, wxEvtHandler* aEventHandler )
override;
72 const wxString& aPreselect = wxEmptyString ) :
78 wxGridCellEditor*
Clone()
const override
83 void Create( wxWindow* aParent, wxWindowID aId, wxEvtHandler* aEventHandler )
override;
96 std::vector<EMBEDDED_FILES*> aFilesStack = {} ) :
98 m_searchStack( aSearchStack ),
99 m_filesStack( aFilesStack )
102 wxGridCellEditor*
Clone()
const override
107 void Create( wxWindow* aParent, wxWindowID aId, wxEvtHandler* aEventHandler )
override;
133 bool aNormalize,
const wxString& aNormalizeBasePath,
134 std::function<wxString(
WX_GRID*
grid,
int row )> aFileFilterFn,
135 std::function<wxString(
const wxString& )> aEmbedCallback =
nullptr ) :
136 m_dlg( aParentDialog ),
157 const wxString& aFileFilter,
bool aNormalize =
false,
158 const wxString& aNormalizeBasePath = wxEmptyString,
159 std::function<wxString(
const wxString& )> aEmbedCallback =
nullptr ) :
160 m_dlg( aParentDialog ),
169 wxGridCellEditor*
Clone()
const override
183 void Create( wxWindow* aParent, wxWindowID aId, wxEvtHandler* aEventHandler )
override;
208 const bool aIsNullable =
false ) :
217 wxGridCellEditor*
Clone()
const override
222 void Create( wxWindow* aParent, wxWindowID aId, wxEvtHandler* aEventHandler )
override;
223 void BeginEdit(
int aRow,
int aCol, wxGrid* aGrid )
override;
Dialog helper object to sit in the inheritance tree between wxDialog and any class written by wxFormB...
GRID_CELL_FPID_EDITOR(DIALOG_SHIM *aParent, const wxString &aSymbolNetlist, const wxString &aPreselect=wxEmptyString)
wxGridCellEditor * Clone() const override
GRID_CELL_NULLABLE_INTERFACE()
virtual bool IsNullable() const
wxGridCellEditor * Clone() const override
GRID_CELL_PATH_EDITOR(DIALOG_SHIM *aParentDialog, WX_GRID *aGrid, wxString *aCurrentDir, const wxString &aFileFilter, bool aNormalize=false, const wxString &aNormalizeBasePath=wxEmptyString, std::function< wxString(const wxString &)> aEmbedCallback=nullptr)
Constructor.
std::function< wxString(WX_GRID *aGrid, int aRow)> m_fileFilterFn
wxString m_normalizeBasePath
std::function< wxString(const wxString &)> m_embedCallback
GRID_CELL_PATH_EDITOR(DIALOG_SHIM *aParentDialog, WX_GRID *aGrid, wxString *aCurrentDir, bool aNormalize, const wxString &aNormalizeBasePath, std::function< wxString(WX_GRID *grid, int row)> aFileFilterFn, std::function< wxString(const wxString &)> aEmbedCallback=nullptr)
Constructor.
wxGridCellEditor * Clone() const override
GRID_CELL_RUN_FUNCTION_EDITOR(DIALOG_SHIM *aParent, const std::function< void(int, int)> aFunction, const bool aIsNullable=false)
std::function< void(int, int)> m_function
wxGridCellEditor * Clone() const override
GRID_CELL_SYMBOL_ID_EDITOR(DIALOG_SHIM *aParent, const wxString &aPreselect=wxEmptyString)
void BeginEdit(int aRow, int aCol, wxGrid *aGrid) override
SEARCH_STACK * m_searchStack
wxGridCellEditor * Clone() const override
std::vector< EMBEDDED_FILES * > m_filesStack
GRID_CELL_URL_EDITOR(DIALOG_SHIM *aParent, SEARCH_STACK *aSearchStack=nullptr, std::vector< EMBEDDED_FILES * > aFilesStack={})
Look for files in a number of paths.