perazz / wxMaterialDesignArtProvider

Icons Art Provider for wxWidgets with Material Design and other modern icon sets
Apache License 2.0
29 stars 1 forks source link

Build errors #5

Open vadimgrn opened 2 months ago

vadimgrn commented 2 months ago
1>D:\usbip-win2\userspace\wxMaterialDesignArtProvider\MaterialDesign\wxMaterialDesignArtProvider.cpp(16,9): error C2678: binary '==': no operator found which takes a left-hand operand of type 'const wxArtClient' (or there is no acceptable conversion)
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\guiddef.h(192,15):
1>could be 'bool operator ==(const GUID &,const GUID &)'
1>  D:\usbip-win2\userspace\wxMaterialDesignArtProvider\MaterialDesign\wxMaterialDesignArtProvider.cpp(16,9):
1>  'bool operator ==(const GUID &,const GUID &)': cannot convert argument 1 from 'const wxArtClient' to 'const GUID &'
1>      D:\usbip-win2\userspace\wxMaterialDesignArtProvider\MaterialDesign\wxMaterialDesignArtProvider.cpp(16,9):
1>      Reason: cannot convert from 'const wxArtClient' to 'const GUID'
1>      D:\usbip-win2\userspace\wxMaterialDesignArtProvider\MaterialDesign\wxMaterialDesignArtProvider.cpp(16,9):
1>      No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
1>D:\usbip-win2\packages\wxWidgets.3.2.2.1\include\wx\windowid.h(138,13):
1>or       'bool operator ==(long,const wxWindowIDRef &)'

My project defines wxNO_IMPLICIT_WXSTRING_ENCODING, that's the reason. All comparisons like if (client == wxART_CLIENT_MATERIAL_FILLED) must be done as if (client == wxASCII_STR(wxART_CLIENT_MATERIAL_FILLED))

perazz commented 2 months ago

Thank you for posting this @vadimgrn