KiCad PCB EDA Suite
wx_stl_compat.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) 2021 KiCad Developers, see AUTHORS.txt for contributors.
5  *
6  * This program is free software: you can redistribute it and/or modify it
7  * under the terms of the GNU General Public License as published by the
8  * Free Software Foundation, either version 3 of the License, or (at your
9  * option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful, but
12  * WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License along
17  * with this program. If not, see <http://www.gnu.org/licenses/>.
18  */
19 
20 #ifndef KICAD_WX_STL_COMPAT_H
21 #define KICAD_WX_STL_COMPAT_H
22 
23 #include <wx/gdicmn.h>
24 #include <wx/string.h>
25 
26 // Some wxWidgets versions (for instance before 3.1.0) do not include
27 // this function, so add it if missing
28 #if !wxCHECK_VERSION( 3, 1, 0 )
29 #define USE_KICAD_WXSTRING_HASH // for common.cpp
30 namespace std
32 {
33  template<> struct hash<wxString>
34  {
35  size_t operator()( const wxString& s ) const;
36  };
37 }
38 #endif
39 
41 #define USE_KICAD_WXPOINT_LESS_AND_HASH // for common.cpp
42 namespace std
43 {
44  template <> struct hash<wxPoint>
45  {
46  size_t operator() ( const wxPoint& k ) const;
47  };
48 }
49 
50 namespace std
51 {
52  template<> struct less<wxPoint>
53  {
54  bool operator()( const wxPoint& aA, const wxPoint& aB ) const;
55  };
56 }
57 
63 std::ostream& operator<<( std::ostream& out, const wxSize& size );
64 
70 std::ostream& operator<<( std::ostream& out, const wxPoint& pt );
71 
72 #endif // KICAD_WX_STL_COMPAT_H
Definition: bitmap.cpp:63
std::ostream & operator<<(std::ostream &out, const wxSize &size)
Helper function to print the given wxSize to a stream.