20#ifndef DESIGN_BLOCK_INFO_IMPL_H
21#define DESIGN_BLOCK_INFO_IMPL_H
37 const wxString& aDesignBlockName )
39 m_nickname = aNickname;
40 m_dbname = aDesignBlockName;
50 const wxString& aDescription,
const wxString& aKeywords,
int aOrderNum )
52 m_nickname = aNickname;
53 m_dbname = aDesignBlockName;
56 m_keywords = aKeywords;
66 m_nickname = aNickname;
67 m_dbname = aDesignBlockName;
74 virtual void load()
override;
88 void loadDesignBlocks();
96 bool CatchErrors(
const std::function<
void()>& aFunc );
DESIGN_BLOCK_INFO_IMPL(const wxString &aNickname, const wxString &aDesignBlockName, const wxString &aDescription, const wxString &aKeywords, int aOrderNum)
DESIGN_BLOCK_INFO_IMPL(DESIGN_BLOCK_LIST *aOwner, const wxString &aNickname, const wxString &aDesignBlockName)
DESIGN_BLOCK_INFO_IMPL(const wxString &aNickname, const wxString &aDesignBlockName)
Helper class to handle the list of design blocks available in libraries.
virtual void load()
lazily load stuff not filled in by constructor. This may throw IO_ERRORS.
std::atomic_bool m_cancelled
PROGRESS_REPORTER * m_progress_reporter
virtual ~DESIGN_BLOCK_LIST_IMPL()
long long m_list_timestamp
SYNC_QUEUE< wxString > m_queue
Holds a list of DESIGN_BLOCK_INFO objects, along with a list of IO_ERRORs or PARSE_ERRORs that were t...
A progress reporter interface for use in multi-threaded environments.
Synchronized, locking queue.