KiCad PCB EDA Suite
Loading...
Searching...
No Matches
wildcards_and_files_ext.h
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) 2018 Jean-Pierre Charras, jp.charras at wanadoo.fr
5 * Copyright (C) 2007-2012 SoftPLC Corporation, Dick Hollenbeck <[email protected]>
6 * Copyright (C) 2008 Wayne Stambaugh <[email protected]>
7 * Copyright The KiCad Developers, see AUTHORS.txt for contributors.
8 *
9 * This program is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public License
11 * as published by the Free Software Foundation; either version 2
12 * of the License, or (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, you may find one here:
21 * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
22 * or you may search the http://www.gnu.org website for the version 2 license,
23 * or you may write to the Free Software Foundation, Inc.,
24 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
25 */
26
31
32#ifndef INCLUDE_WILDCARDS_AND_FILES_EXT_H_
33#define INCLUDE_WILDCARDS_AND_FILES_EXT_H_
34
35#include <kicommon.h>
36#include <string>
37#include <vector>
38#include <wx/string.h>
39
56KICOMMON_API bool compareFileExtensions( const std::string& aExtension,
57 const std::vector<std::string>& aReference, bool aCaseSensitive = false );
58
76
77KICOMMON_API wxString AddFileExtListToFilter( const std::vector<std::string>& aExts );
78
97KICOMMON_API wxString formatWildcardExt( const wxString& aWildcard );
98
99
101{
102public:
103 FILEEXT() = delete;
104
116 static const std::string BackupFileSuffix;
117 static const std::string LockFilePrefix;
118 static const std::string LockFileExtension;
119
120 static const std::string SchematicSymbolFileExtension;
121 static const std::string LegacySymbolLibFileExtension;
122 static const std::string LegacySymbolDocumentFileExtension;
123 static const std::string SchematicBackupFileExtension;
124
125 static const std::string VrmlFileExtension;
126 static const std::string ProjectFileExtension;
127 static const std::string LegacyProjectFileExtension;
128 static const std::string ProjectLocalSettingsFileExtension;
129 static const std::string LegacySchematicFileExtension;
130 static const std::string CadstarSchematicFileExtension;
131 static const std::string CadstarPartsLibraryFileExtension;
132 static const std::string KiCadSchematicFileExtension;
133 static const std::string IbisFileExtension;
134 static const std::string SpiceFileExtension;
135 static const std::string SpiceModelFileExtension;
136 static const std::string SpiceSubcircuitFileExtension;
137 static const std::string CadstarNetlistFileExtension;
138 static const std::string OrCadPcb2NetlistFileExtension;
139 static const std::string NetlistFileExtension;
140 static const std::string AllegroNetlistFileExtension;
141 static const std::string PADSNetlistFileExtension;
142 static const std::string GerberFileExtension;
143 static const std::string GerberJobFileExtension;
144 static const std::string HtmlFileExtension;
145 static const std::string EquFileExtension;
146 static const std::string HotkeyFileExtension;
147 static const std::string DatabaseLibraryFileExtension;
148 static const std::string HTTPLibraryFileExtension;
149
150 static const std::string ArchiveFileExtension;
151
152 static const std::string LegacyPcbFileExtension;
153 static const std::string EaglePcbFileExtension;
154 static const std::string CadstarPcbFileExtension;
155 static const std::string KiCadPcbFileExtension;
156 #define PcbFileExtension KiCadPcbFileExtension // symlink choice
157 static const std::string KiCadSymbolLibFileExtension;
158 static const std::string DrawingSheetFileExtension;
159 static const std::string DesignRulesFileExtension;
160
161 static const std::string LegacyFootprintLibPathExtension;
162 static const std::string PdfFileExtension;
163 static const std::string MacrosFileExtension;
164 static const std::string FootprintAssignmentFileExtension;
165 static const std::string DrillFileExtension;
166 static const std::string SVGFileExtension;
167 static const std::string ReportFileExtension;
168 static const std::string FootprintPlaceFileExtension;
169 static const std::string KiCadFootprintFileExtension;
170 static const std::string KiCadFootprintLibPathExtension;
171 static const std::string AltiumFootprintLibPathExtension;
172 static const std::string CadstarFootprintLibPathExtension;
173 static const std::string GedaPcbFootprintLibFileExtension;
174 static const std::string EagleFootprintLibPathExtension;
175 static const std::string SpecctraDsnFileExtension;
176 static const std::string SpecctraSessionFileExtension;
177 static const std::string IpcD356FileExtension;
178 static const std::string Ipc2581FileExtension;
179 static const std::string WorkbookFileExtension;
180
181 static const std::string KiCadDesignBlockLibPathExtension;
182 static const std::string KiCadDesignBlockPathExtension;
183
184 static const std::string PngFileExtension;
185 static const std::string JpegFileExtension;
186 static const std::string TextFileExtension;
187 static const std::string MarkdownFileExtension;
188 static const std::string CsvFileExtension;
189 static const std::string TsvFileExtension;
190 static const std::string XmlFileExtension;
191 static const std::string JsonFileExtension;
192 static const std::string PythonFileExtension;
193
194 static const std::string StepFileExtension;
195 static const std::string StepZFileAbrvExtension;
196 static const std::string StepFileAbrvExtension;
197 static const std::string GltfBinaryFileExtension;
198 static const std::string BrepFileExtension;
199 static const std::string XaoFileExtension;
200 static const std::string PlyFileExtension;
201 static const std::string StlFileExtension;
202 static const std::string U3DFileExtension;
203
204 static const std::string GencadFileExtension;
205
206 static const std::string KiCadJobSetFileExtension;
207
208 static const wxString GerberFileExtensionsRegex;
209
210 static const std::string FootprintLibraryTableFileName;
211 static const std::string SymbolLibraryTableFileName;
212 static const std::string DesignBlockLibraryTableFileName;
213
214 static const std::string KiCadUriPrefix;
215
219
229
230
231 static bool IsGerberFileExtension( const wxString& ext );
232 static wxString AllFilesWildcard();
233
234 static wxString FootprintAssignmentFileWildcard();
235 static wxString DrawingSheetFileWildcard();
236 static wxString KiCadSymbolLibFileWildcard();
237 static wxString ProjectFileWildcard();
238 static wxString LegacyProjectFileWildcard();
239 static wxString AllProjectFilesWildcard();
240 static wxString AllSchematicFilesWildcard();
241 static wxString KiCadSchematicFileWildcard();
242 static wxString LegacySchematicFileWildcard();
243 static wxString BoardFileWildcard();
244 static wxString OrCadPcb2NetlistFileWildcard();
245 static wxString NetlistFileWildcard();
246 static wxString AllegroNetlistFileWildcard();
247 static wxString PADSNetlistFileWildcard();
248 static wxString HtmlFileWildcard();
249 static wxString CsvFileWildcard();
250 static wxString CsvTsvFileWildcard();
251 static wxString PcbFileWildcard();
252 static wxString CadstarArchiveFilesWildcard();
253 static wxString AltiumProjectFilesWildcard();
254 static wxString EagleFilesWildcard();
255 static wxString EasyEdaArchiveWildcard();
256 static wxString EasyEdaProFileWildcard();
257 static wxString PdfFileWildcard();
258 static wxString PSFileWildcard();
259 static wxString MacrosFileWildcard();
260 static wxString DrillFileWildcard();
261 static wxString SVGFileWildcard();
262 static wxString JsonFileWildcard();
263 static wxString ReportFileWildcard();
264 static wxString FootprintPlaceFileWildcard();
265 static wxString Shapes3DFileWildcard();
266 static wxString IDF3DFileWildcard();
267 static wxString DocModulesFileName();
268 static wxString KiCadFootprintLibFileWildcard();
269 static wxString KiCadFootprintLibPathWildcard();
270 static wxString KiCadDesignBlockLibPathWildcard();
271 static wxString KiCadDesignBlockPathWildcard();
272 static wxString TextFileWildcard();
273 static wxString ModLegacyExportFileWildcard();
274 static wxString ErcFileWildcard();
275 static wxString SpiceLibraryFileWildcard();
276 static wxString SpiceNetlistFileWildcard();
277 static wxString CadstarNetlistFileWildcard();
278 static wxString EquFileWildcard();
279 static wxString ZipFileWildcard();
280 static wxString GencadFileWildcard();
281 static wxString DxfFileWildcard();
282 static wxString GerberJobFileWildcard();
283 static wxString SpecctraDsnFileWildcard();
284 static wxString SpecctraSessionFileWildcard();
285 static wxString IpcD356FileWildcard();
286 static wxString WorkbookFileWildcard();
287 static wxString PngFileWildcard();
288 static wxString JpegFileWildcard();
289 static wxString HotkeyFileWildcard();
290 static wxString JobsetFileWildcard();
291
295};
296
297
298#endif // INCLUDE_WILDCARDS_AND_FILES_EXT_H_
FILEEXT()=delete
static const std::string CadstarNetlistFileExtension
static const std::string LegacySchematicFileExtension
static const std::string KiCadDesignBlockLibPathExtension
static const std::string HtmlFileExtension
static const wxString GerberFileExtensionsRegex
static const std::string BrepFileExtension
static const std::string CadstarPartsLibraryFileExtension
static const std::string NetlistFileExtension
static const std::string KiCadDesignBlockPathExtension
static const std::string SymbolLibraryTableFileName
static const std::string JpegFileExtension
static const std::string GerberJobFileExtension
static const std::string StepFileAbrvExtension
static const std::string GerberFileExtension
static const std::string XaoFileExtension
static const std::string WorkbookFileExtension
static const std::string ReportFileExtension
static const std::string GltfBinaryFileExtension
static const std::string EquFileExtension
static const std::string LockFileExtension
static const std::string ProjectFileExtension
static const std::string PngFileExtension
static const std::string FootprintPlaceFileExtension
static const std::string JsonFileExtension
static const std::string AltiumFootprintLibPathExtension
static const std::string LegacyPcbFileExtension
static const std::string SchematicSymbolFileExtension
static const std::string XmlFileExtension
static const std::string LegacyProjectFileExtension
static const std::string ProjectLocalSettingsFileExtension
static const std::string EagleFootprintLibPathExtension
static const std::string KiCadSchematicFileExtension
static const std::string OrCadPcb2NetlistFileExtension
static const std::string LegacySymbolLibFileExtension
static const std::string KiCadUriPrefix
static const std::string DesignBlockLibraryTableFileName
static const std::string SchematicBackupFileExtension
static const std::string LockFilePrefix
static const std::string CsvFileExtension
static const std::string KiCadSymbolLibFileExtension
static const std::string U3DFileExtension
static const std::string TsvFileExtension
static const std::string SpiceFileExtension
static const std::string PdfFileExtension
static const std::string TextFileExtension
static const std::string Ipc2581FileExtension
static const std::string FootprintLibraryTableFileName
static const std::string PADSNetlistFileExtension
static const std::string GencadFileExtension
static const std::string StlFileExtension
static const std::string DrawingSheetFileExtension
static const std::string BackupFileSuffix
static const std::string IbisFileExtension
static const std::string IpcD356FileExtension
static const std::string KiCadJobSetFileExtension
static const std::string CadstarFootprintLibPathExtension
static const std::string GedaPcbFootprintLibFileExtension
static const std::string DatabaseLibraryFileExtension
static const std::string LegacyFootprintLibPathExtension
static const std::string CadstarSchematicFileExtension
static const std::string PlyFileExtension
static const std::string PythonFileExtension
static const std::string SpecctraDsnFileExtension
static const std::string StepFileExtension
static const std::string LegacySymbolDocumentFileExtension
static const std::string KiCadFootprintLibPathExtension
static const std::string FootprintAssignmentFileExtension
static const std::string SVGFileExtension
static const std::string EaglePcbFileExtension
static const std::string StepZFileAbrvExtension
static const std::string SpecctraSessionFileExtension
static const std::string HTTPLibraryFileExtension
static const std::string DrillFileExtension
static const std::string SpiceSubcircuitFileExtension
static const std::string MacrosFileExtension
static const std::string HotkeyFileExtension
static const std::string CadstarPcbFileExtension
static const std::string SpiceModelFileExtension
static const std::string DesignRulesFileExtension
static const std::string VrmlFileExtension
static const std::string MarkdownFileExtension
static const std::string KiCadFootprintFileExtension
static const std::string ArchiveFileExtension
static const std::string AllegroNetlistFileExtension
static const std::string KiCadPcbFileExtension
static wxString ProjectFileWildcard()
static wxString SpiceNetlistFileWildcard()
static wxString PngFileWildcard()
static wxString HotkeyFileWildcard()
static wxString EasyEdaArchiveWildcard()
static wxString ModLegacyExportFileWildcard()
static wxString FootprintPlaceFileWildcard()
static wxString ErcFileWildcard()
static wxString JpegFileWildcard()
static wxString OrCadPcb2NetlistFileWildcard()
static wxString AllFilesWildcard()
static wxString AllegroNetlistFileWildcard()
static wxString CadstarArchiveFilesWildcard()
static wxString SpecctraSessionFileWildcard()
static wxString TextFileWildcard()
static wxString CadstarNetlistFileWildcard()
static wxString MacrosFileWildcard()
static wxString KiCadDesignBlockLibPathWildcard()
static wxString EasyEdaProFileWildcard()
static wxString LegacySchematicFileWildcard()
static wxString DxfFileWildcard()
static wxString PdfFileWildcard()
static wxString KiCadDesignBlockPathWildcard()
static wxString SVGFileWildcard()
static wxString PADSNetlistFileWildcard()
static bool IsGerberFileExtension(const wxString &ext)
static wxString SpiceLibraryFileWildcard()
static wxString GerberJobFileWildcard()
static wxString JsonFileWildcard()
static wxString PcbFileWildcard()
static wxString KiCadSymbolLibFileWildcard()
static wxString KiCadFootprintLibFileWildcard()
static wxString KiCadFootprintLibPathWildcard()
static wxString NetlistFileWildcard()
static wxString PSFileWildcard()
static wxString EquFileWildcard()
static wxString AllSchematicFilesWildcard()
static wxString DocModulesFileName()
static wxString IDF3DFileWildcard()
static wxString HtmlFileWildcard()
static wxString SpecctraDsnFileWildcard()
static wxString DrawingSheetFileWildcard()
static wxString DrillFileWildcard()
static wxString FootprintAssignmentFileWildcard()
static wxString BoardFileWildcard()
static wxString AltiumProjectFilesWildcard()
static wxString CsvTsvFileWildcard()
static wxString Shapes3DFileWildcard()
static wxString EagleFilesWildcard()
static wxString JobsetFileWildcard()
static wxString LegacyProjectFileWildcard()
static wxString IpcD356FileWildcard()
static wxString CsvFileWildcard()
static wxString AllProjectFilesWildcard()
static wxString KiCadSchematicFileWildcard()
static wxString GencadFileWildcard()
static wxString ReportFileWildcard()
static wxString ZipFileWildcard()
static wxString WorkbookFileWildcard()
#define KICOMMON_API
Definition kicommon.h:28
KICOMMON_API wxString formatWildcardExt(const wxString &aWildcard)
Format wildcard extension to support case sensitive file dialogs.
KICOMMON_API wxString AddFileExtListToFilter(const std::vector< std::string > &aExts)
Build the wildcard extension file dialog wildcard filter to add to the base message dialog.
KICOMMON_API bool compareFileExtensions(const std::string &aExtension, const std::vector< std::string > &aReference, bool aCaseSensitive=false)
Compare the given extension against the reference extensions to see if it matches any of the referenc...