ports/math/saga/files/patch-git_6e14443b30ce
Jan Beich 0b52e68840 math/saga: unbreak build with wxWidgets 3.0.3
wksp_tool.cpp: In member function 'virtual wxString CWKSP_Tool::Get_Description()':
wksp_tool.cpp:159:61: error: no matching function for call to 'CSG_File::Open(const wxScopedWCharBuffer, ESG_File_Flags_Open)'
   if( Stream.Open(FileName.GetFullPath().wc_str(), SG_FILE_R) && Stream.Read(Description, Stream.Length()) )
                                                             ^
In file included from ../saga_api/geo_tools.h:77:0,
                 from ../saga_api/mat_tools.h:77,
                 from ../saga_api/dataobject.h:84,
                 from ../saga_api/table.h:77,
                 from ../saga_api/grid.h:77,
                 from ../saga_api/parameters.h:77,
                 from ../saga_api/tool.h:76,
                 from ../saga_api/tool_library.h:77,
                 from ../saga_api/saga_api.h:118,
                 from res_commands.h:78,
                 from wksp_tool.cpp:67:
../saga_api/api_core.h:955:13: note: candidate: bool CSG_File::Open(const CSG_String&, int, bool, int)
  bool       Open    (const CSG_String &File_Name, int Mode = SG_FILE_R, bool bBinary = true, int Encoding = SG_FILE_ENCODING_CHAR);
             ^~~~
../saga_api/api_core.h:955:13: note:   no known conversion for argument 1 from 'const wxScopedWCharBuffer {aka const wxScopedCharTypeBuffer<wchar_t>}' to 'const CSG_String&'
wksp_tool.cpp:166:61: error: no matching function for call to 'CSG_File::Open(const wxScopedWCharBuffer, ESG_File_Flags_Open)'
   if( Stream.Open(FileName.GetFullPath().wc_str(), SG_FILE_R) && Stream.Read(Description, Stream.Length()) )
                                                             ^
In file included from ../saga_api/geo_tools.h:77:0,
                 from ../saga_api/mat_tools.h:77,
                 from ../saga_api/dataobject.h:84,
                 from ../saga_api/table.h:77,
                 from ../saga_api/grid.h:77,
                 from ../saga_api/parameters.h:77,
                 from ../saga_api/tool.h:76,
                 from ../saga_api/tool_library.h:77,
                 from ../saga_api/saga_api.h:118,
                 from res_commands.h:78,
                 from wksp_tool.cpp:67:
../saga_api/api_core.h:955:13: note: candidate: bool CSG_File::Open(const CSG_String&, int, bool, int)
  bool       Open    (const CSG_String &File_Name, int Mode = SG_FILE_R, bool bBinary = true, int Encoding = SG_FILE_ENCODING_CHAR);
             ^~~~
../saga_api/api_core.h:955:13: note:   no known conversion for argument 1 from 'const wxScopedWCharBuffer {aka const wxScopedCharTypeBuffer<wchar_t>}' to 'const CSG_String&'

PR:		223758
Submitted by:	rozhuk.im@gmail.com
Obtained from:	upstream
Approved by:	Rainer Hurling (maintainer)
2018-01-21 02:22:17 +00:00

66 lines
2.6 KiB
Text

commit 6e14443b30ce2c8e284617840bc49e249c63afc1
Author: oconrad <conrad@geowiss.uni-hamburg.de>
Date: Fri Dec 8 10:16:47 2017 +0100
saga_gui, loading tool description from file: wxgtk issue reported in [saga-gis-developer] SAGA GIS on FreeBSD: fails to build with wxgtk30 - 3.0.3.1
---
saga-gis/src/saga_core/saga_gui/wksp_tool.cpp | 25 ++++++++-----------------
saga-gis/src/saga_core/saga_gui/wksp_tool.h | 2 --
2 files changed, 8 insertions(+), 19 deletions(-)
--- src/saga_core/saga_gui/wksp_tool.cpp.orig 2017-09-01 15:57:36 UTC
+++ src/saga_core/saga_gui/wksp_tool.cpp
@@ -135,34 +135,25 @@ wxString CWKSP_Tool::Get_Name(void)
}
//---------------------------------------------------------
-wxString CWKSP_Tool::Get_File_Name(void)
-{
- return( m_pTool->Get_File_Name().c_str() );
-}
-
-//---------------------------------------------------------
wxString CWKSP_Tool::Get_Description(void)
{
//-----------------------------------------------------
- if( !Get_File_Name().IsEmpty() )
+ if( !m_pTool->Get_File_Name().is_Empty() )
{
+ CSG_String Lib_Name = SG_File_Get_Name(m_pTool->Get_File_Name(), false);
+ CSG_String File_Path = SG_File_Make_Path(SG_File_Get_Path(m_pTool->Get_File_Name()), Lib_Name, "");
+
+ File_Path = SG_File_Make_Path(File_Path, CSG_String::Format("%s_%02d", Lib_Name.c_str(), Get_Index()));
+
CSG_String Description;
CSG_File Stream;
- wxFileName FileName(Get_File_Name());
- FileName.AppendDir (FileName.GetName());
- FileName.SetName (wxString::Format("%s_%02d", FileName.GetName().c_str(), Get_Index()));
-
- FileName.SetExt ("html");
-
- if( Stream.Open(FileName.GetFullPath().wc_str(), SG_FILE_R) && Stream.Read(Description, Stream.Length()) )
+ if( SG_File_Set_Extension(File_Path, "html") && Stream.Open(File_Path, SG_FILE_R) && Stream.Read(Description, Stream.Length()) )
{
return( Description.c_str() );
}
- FileName.SetExt ("htm");
-
- if( Stream.Open(FileName.GetFullPath().wc_str(), SG_FILE_R) && Stream.Read(Description, Stream.Length()) )
+ if( SG_File_Set_Extension(File_Path, "htm" ) && Stream.Open(File_Path, SG_FILE_R) && Stream.Read(Description, Stream.Length()) )
{
return( Description.c_str() );
}
--- src/saga_core/saga_gui/wksp_tool.h.orig 2017-05-24 13:15:53 UTC
+++ src/saga_core/saga_gui/wksp_tool.h
@@ -103,8 +103,6 @@ class CWKSP_Tool : public CWKSP_Base_Item (public)
void Set_Menu_ID (int Menu_ID);
int Get_Menu_ID (void) { return( m_Menu_ID ); }
- wxString Get_File_Name (void);
-
bool is_Interactive (void);
bool is_Executing (void);