Developer forums (C::B DEVELOPMENT STRICTLY!) > Development
Patches to compile and link C::B against wxWidgets 2.8.0
SharkCZ:
The wxPropertyGrid need this one-liner :-)
--- Code: ------ src/sdk/propgrid/src/propgrid/propgrid.cpp.orig 2006-12-25 17:41:15.000000000 +0100
+++ src/sdk/propgrid/src/propgrid/propgrid.cpp 2006-12-25 17:41:26.000000000 +0100
@@ -50,6 +50,7 @@
#include "wx/filedlg.h"
#include "wx/statusbr.h"
#include "wx/intl.h"
+ #include "wx/frame.h"
#endif
#include <wx/filename.h>
--- End code ---
Another problem is in sdk/globals.cpp (it is platform dependent) - CentreOnScreen() doesn't exist for wxWindow, patch is here:
--- Code: ------ src/sdk/globals.cpp.orig 2006-12-25 17:54:36.000000000 +0100
+++ src/sdk/globals.cpp 2006-12-25 17:55:41.000000000 +0100
@@ -759,12 +759,16 @@
if(the_mode == pdlCentre || the_mode == pdlHead)
{
+#if wxCHECK_VERSION(2, 8, 0)
+ w->CentreOnParent();
+#else
if(w->GetParent())
w->CentreOnParent(); // poo!
else
w->CentreOnScreen();
return;
+#endif
}
else
{
--- End code ---
And now I am stuck on wxSmith
--- Code: --- g++ -DHAVE_CONFIG_H -I. -I../../../../../src/sdk -I/usr/lib/wx/include/gtk2-unicode-release-2.8 -I/usr/include/wx-2.8 -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXGTK__ -pthread -I../../../../../src/sdk -I../../../../../src/sdk/wxscintilla/include -I../../../../../src/sdk/propgrid/include -O2 -ffast-math -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -DCB_PRECOMP -Winvalid-pch -fPIC -DPIC -MT wxsstdmanager.lo -MD -MP -MF .deps/wxsstdmanager.Tpo -c wxsstdmanager.cpp -fPIC -DPIC -o .libs/wxsstdmanager.o
../properties/wxsstringlistcheckproperty.h: In member function 'void wxsArrayBool::resize(size_t, _wxArraywxsArrayBool)':
../properties/wxsstringlistcheckproperty.h:13: error: no matching function for call to 'wxsArrayBool::resize(size_t&, _wxArraywxsArrayBool&)'
/usr/include/wx-2.8/wx/dynarray.h:809: note: candidates are: void wxBaseArrayPtrVoid::resize(size_t, const void*)
--- End code ---
stahta01:
--- Quote from: SharkCZ on December 25, 2006, 06:32:47 pm ---
And now I am stuck on wxSmith
--- Code: --- g++ -DHAVE_CONFIG_H -I. -I../../../../../src/sdk -I/usr/lib/wx/include/gtk2-unicode-release-2.8 -I/usr/include/wx-2.8 -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXGTK__ -pthread -I../../../../../src/sdk -I../../../../../src/sdk/wxscintilla/include -I../../../../../src/sdk/propgrid/include -O2 -ffast-math -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -DCB_PRECOMP -Winvalid-pch -fPIC -DPIC -MT wxsstdmanager.lo -MD -MP -MF .deps/wxsstdmanager.Tpo -c wxsstdmanager.cpp -fPIC -DPIC -o .libs/wxsstdmanager.o
../properties/wxsstringlistcheckproperty.h: In member function 'void wxsArrayBool::resize(size_t, _wxArraywxsArrayBool)':
../properties/wxsstringlistcheckproperty.h:13: error: no matching function for call to 'wxsArrayBool::resize(size_t&, _wxArraywxsArrayBool&)'
/usr/include/wx-2.8/wx/dynarray.h:809: note: candidates are: void wxBaseArrayPtrVoid::resize(size_t, const void*)
--- End code ---
--- End quote ---
The error looks easy but I could NOT figure it out in two hours, so I gave up. I have the New wxSmith working under wxW 2.8, I don't use wxSmith so it could have issues.
Tim S
stahta01:
--- Quote from: SharkCZ on December 25, 2006, 06:32:47 pm ---The wxPropertyGrid need this one-liner :-)
--- Code: ------ src/sdk/propgrid/src/propgrid/propgrid.cpp.orig 2006-12-25 17:41:15.000000000 +0100
+++ src/sdk/propgrid/src/propgrid/propgrid.cpp 2006-12-25 17:41:26.000000000 +0100
@@ -50,6 +50,7 @@
#include "wx/filedlg.h"
#include "wx/statusbr.h"
#include "wx/intl.h"
+ #include "wx/frame.h"
#endif
#include <wx/filename.h>
--- End code ---
--- End quote ---
I updated by patch [ Patch #1739 ] wxPropertyGrid patch for wxWidgets 2.8 for this issue, needs tested.
https://developer.berlios.de/patch/index.php?func=detailpatch&patch_id=1739&group_id=5358
--- Quote from: SharkCZ on December 25, 2006, 06:32:47 pm ---Another problem is in sdk/globals.cpp (it is platform dependent) - CentreOnScreen() doesn't exist for wxWindow, patch is here:
--- Code: ------ src/sdk/globals.cpp.orig 2006-12-25 17:54:36.000000000 +0100
+++ src/sdk/globals.cpp 2006-12-25 17:55:41.000000000 +0100
@@ -759,12 +759,16 @@
if(the_mode == pdlCentre || the_mode == pdlHead)
{
+#if wxCHECK_VERSION(2, 8, 0)
+ w->CentreOnParent();
+#else
if(w->GetParent())
w->CentreOnParent(); // poo!
else
w->CentreOnScreen();
return;
+#endif
}
else
{
--- End code ---
--- End quote ---
Created new patch for this using different solution, needs tested.
[ Patch #1762 ] CentreOnScreen patch for wxWidgets 2.8 Submitted By: stahta01
https://developer.berlios.de/patch/?func=detailpatch&patch_id=1762&group_id=5358
Tim S
SharkCZ:
I have disabled building of wxSmith plugin and now I am able to successfully compile C::B svn3406 (nightly build from 20/12/2006) on Fedora Development with WX 2.8. Now other patches were required.
killerbot:
I applied most of the patches in svn, some I did local on my machine [the scripting one and the cbp's and for selecttarget I have disabled the event handler mapping to the old OnOK for the moment ] => I can build except wxSmith. Any news on that one ?
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version