39#include <wx/filedlg.h> 
   45                                              FP_3DMODEL* aModelItem, wxString& prevModelSelectDir,
 
   46                                              int& prevModelWildcard ) :
 
   50        m_resolver( aCacheManager ? aCacheManager->GetResolver() : nullptr ),
 
   62        std::list< wxString > 
const* fl = 
m_cache->GetFileFilters();
 
   63        std::list< wxString >::const_iterator sL = fl->begin();
 
   71        while( sL != fl->end() )
 
   78            if( !ext_list.IsEmpty() )
 
   79                ext_list.Append( 
";" );
 
   81            wxString ext = sL->AfterLast( 
'|' );
 
   84                ext_list.Append( ext );
 
   91            if( !ext_list.empty() )
 
   94                full_filter.Printf( 
_( 
"All supported files (%s)" ), ext_list );
 
   95                full_filter << 
'|' << ext_list << 
'|' << 
filter;
 
  105            m_FileTree->SetFilter( wxFileSelectorDefaultWildcardStr );
 
  108        if( prevModelWildcard >= 0 && prevModelWildcard < (
int)fl->size() )
 
  110            m_FileTree->SetFilterIndex( prevModelWildcard );
 
  114            prevModelWildcard = 0;
 
  120        m_FileTree->SetFilter( wxFileSelectorDefaultWildcardStr );
 
  121        prevModelWildcard = 0;
 
  128    wxChoice* filterBox = 
m_FileTree->GetFilterListCtrl();
 
 
  186    EmulateButtonClickIfPresent( wxID_OK );
 
 
  214    std::list< SEARCH_PATH > 
const* md = 
m_resolver->GetPaths();
 
  215    std::list< SEARCH_PATH >::const_iterator sL = md->begin();
 
  216    std::set< wxString > cl;
 
  220    if( sL != md->end() )
 
  222        prjDir = sL->m_Pathexp;
 
  226    while( sL != md->end() )
 
  228        if( !sL->m_Pathexp.empty() && sL->m_Pathexp.compare( prjDir ) )
 
  229            cl.insert( sL->m_Pathexp );
 
  236        unsigned int choice = 0;
 
  240        if( !prjDir.empty() )
 
  248        std::set< wxString >::const_iterator sI = cl.begin();
 
  250        while( sI != cl.end() )
 
 
defines the basic data associated with a single 3D model.
 
void OnSelectionChanged(wxCommandEvent &event) override
 
DIALOG_SELECT_3DMODEL(wxWindow *aParent, S3D_CACHE *aCacheManager, FP_3DMODEL *aModelItem, wxString &prevModelSelectDir, int &prevModelWildcard)
 
void SetRootDir(wxCommandEvent &event) override
 
FILENAME_RESOLVER * m_resolver
 
EDA_3D_MODEL_VIEWER * m_modelViewer
 
void updateDirChoiceList(void)
 
void OnFileActivated(wxCommandEvent &event) override
 
void Cfg3DPaths(wxCommandEvent &event) override
 
bool TransferDataFromWindow() override
 
wxBoxSizer * m_Sizer3Dviewer
 
DIALOG_SELECT_3D_MODEL_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Select 3D Model"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
 
wxGenericDirCtrl * m_FileTree
 
void finishDialogSettings()
In all dialogs, we must call the same functions to fix minimal dlg size, the default position and per...
 
Implement a canvas based on a wxGLCanvas.
 
static const wxGLAttributes GetAttributesList(ANTIALIASING_MODE aAntiAliasingMode, bool aAlpha=false)
Get a list of attributes to pass to wxGLCanvas.
 
Cache for storing the 3D shapes.
 
Implements a model viewer canvas.
 
Declaration of the cogl_att_list class.
 
#define FN_NORMALIZE_FLAGS
Default flags to pass to wxFileName::Normalize().