#556 wxt fixes for wx 2.9 & OSX Lion

closed-accepted
nobody
None
5
2011-10-09
2011-09-26
No

This is followup for:
https://sourceforge.net/tracker/?func=detail&atid=302055&aid=3358726&group_id=2055

Since Lion does not come with wxWidgets 2.8, I have received number of requests to check & provide means for compiling gnuplot wxt for Lion and wxWidgets 2.9 that uses 64-bit Cocoa, instead of 32-bit only depreciated Carbon.

Attaching here patch that solves number of issues compiling and running wxt with wx 2.9 using 64-bit Cocoa on Lion:

(1) using wxToolbar AddSeparator causes crash on Realize because Lion depreciated separators see: http://trac.wxwidgets.org/ticket/13363
(2) wx Cocoa does not support logical operators such as wxDC inverse
(3) wx Cocoa toolbar icons are blurry unless they are 24x24
(4) wx Cocoa does not define _Bool even it says it does, which is causing compilation errors

NOTE: wxWidgets 2.9 are still considered unstable and Cocoa port is not yet finished, however this patch should have no influence on other platforms since it uses #ifdef __WXOSX_COCOA__

gnuplot may be built just with "./configure" no extra params are necessary

Installed via macports:
pango @1.28.4_0+no_x11+quartz+universal
cairo @1.10.2_3+no_x11+quartz+universal

My wxWidgets 2.9 Coca were built with:

../../configure --with-osx_cocoa --disable-shared --enable-monolithic --with-macosx-sdk=/Developer/SDKs/MacOSX10.6.sdk --with-macosx-version-min=10.6 --with-libiconv-prefix=/opt/local

Discussion

  • Mojca Miklavec

    Mojca Miklavec - 2011-09-27

    Thank you, this seems to work for me.

     
  • Ethan Merritt

    Ethan Merritt - 2011-09-29

    Can someone confirm whether or not this patch is compatible with installation on 32-bit systems using wxWidgets 2.8? It's nice to support the newer systems, but we don't want to break support for the older ones.

     
  • Mojca Miklavec

    Mojca Miklavec - 2011-09-30

    When I think a bit about it: wxt never worked on any Mac until a month or two ago, so you can hardly break anything :)

     
  • Mojca Miklavec

    Mojca Miklavec - 2011-09-30

    After some more thinking. 2.8 in theory indeed supports Cocoa, but MacPorts which might be the easiest way to install wxWidgets only builds 2.8 with Carbon. I also don't find any traces of Cocoa in Homebrew (https://github.com/mxcl/homebrew/blob/master/Library/Formula/wxmac.rb) which requires building 32-bit. Fink only contains wxGtk if I'm not mistaken. At least I cannot find any other wx package with their search.

    So even if you rule out somebody with this patch, this would only be people who are skilled enough to compile wxwidgets 2.8 manually, passing the non-default flag --with-cocoa during configuration step, compiling CVS version of gnuplot exactly in August or September 2011, not reporting any compilation success to anyone (actually, I'm not aware of anyone testing either 32-bit or 64-bit Cocoa flavour of wxWidgets 2.8 with gnuplot) etc.

    I'm unable to test Cocoa build of 2.8. Or rather: I would have to configure and compile a deprecated version manually, without any support from package management tools. Carbon builds are not affected by this patch at all.

    I would suggest to include the patch. It cannot be any worse. Version 2.9 consistently keeps crashing.

     
  • Ethan Merritt

    Ethan Merritt - 2011-10-09
    • status: open --> closed-accepted
     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks