News

From resources to zend_object

On previous wxphp code a property resource was added to each wxWidgets wrapper php object in order to store the native wxWidgets object. This property was named wxResource and you could do things like $object->wxResource or unset($object->wxResource) leading to application errors. Johannes (a php developer) told me about extending the zend_object in order to add custom data to it, so now the custom zend object includes the pointer to the native object, a flag that indicates if user initialized and the type of object, for code that needs to check the object is of appropriate type on methods parameter check. Elizabeth (php-gtk mantainer) told me resources are slow and gave me some example code to retrieve the custom zend object by using ...

wxPHP IRC Channel at Freenode

Yesterday I was influenced by RedTide (wxGUIDesigner developer) to create an IRC channel on freenode and use cia.vc as a tool to monitor every push made to the repo. So the channel has a bot that shouts a message everytime something new is added on the github repo. So if anyone wants to pass and say hello is welcome to do it :) IRC Info Server: irc.freenode.net Port: 6667 Channel: #wxphp

Ubuntu 12.04 i386 package

Today I installed a virtual machine with ubuntu 12.04 i386 in order to build packages for that platform. So theres now an i386 version as the prior amd64 one. I marked the i386 build as 2.9.4.0 but I could actually say it should be something like 2.9.4.1 since I used latest code on github repo that includes some fixes to wxWebView as addition of new constants for wxStyledTextCtrl and fixed memory leaks, but I forgot those details and just created the package. Well, when more features are added I will release the official 2.9.4.1 pacakges as windows installer. As always links on the download section.

Windows Dependencies

Today some one contacted me on IRC because it was having crashes with the php executables distributed with the wxphp-2.9.4.0.exe installer. So I decided to give the installer a try on a clean installation of Windows. To my surprise I forgot that PHP has visual c++ libraries dependency. So if someone is having problems running the installer or wxphp executables distributed with it, uninstall wxphp, install Visual C++ 2008 SP1 Redistributable and reinstall wxphp. After installing the redistributable everything should work normally, maybe we should include that redistributable as part of the installer. In any case I added a note on the downloads section. Other News While I was testing wxWebView I discovered that most of the methods are declared as pure virtual, so ...

Some Debianization

Finally I took the time to check how a deb package was done, thanks God the apt-get application now has the flag source so doing something like apt-get source php5-xcache helped me a lot and served as the skeleton to debianize wxphp. I created a deb package for Ubuntu 12.04 amd64 and you can find it on the download section.

Windows Installer Released

We have put up a windows installer bundled with PHP 5.3.13, latest wxPHP, documentation, examples as other goodies. The installer has the option of associating .wxphp and .wxphpd extensions to open with the php interpreter. The .wxphp extensions open with wxphp-win.exe like stand alone desktop applications, while the .wxphpd extensions open with wxphp.exe (cli version of php) as console application in order to help you debug a script. Check the downloads section for the new windows setup file. New version Scheme Started using a new version scheme (same used by wxPython) which indicates on which version is based wxPHP. The new version is 2.9.4.0 where the first 3 digits 2.9.4 refer to the wxWidgets version and the last digit, in this case 0, ...

Mac Version Working!

Today I took another try on building on mac and all went smoothly. The only issue was the windows not receiving keyboard input. So I started searching on internet for ways to solve the issue and found an article on stackoverflow that pointed how to solve the issue. After integrating the code to fix and compiling all worked as it should, it made my day :D By the way, I added some screenshots I have included some brief instructions on how to build on mac osx lion on the README file. The most recent changes are at http://github.com/wxphp/wxphp Lordgnu discovered a bug on windows causing the class selector to crash and it seems to happen the same on mac. It works as it ...

wxPHP using github

We are now using GIT to commit new code since it's much faster than SVN. Even when I'm working with a 3kb uploads connection git push is fast :)Thanks to RedTide from the wxFormBuilder team we have a new tree structure much cleaner than before. The new github repository is located at: http://github.com/wxphp I have enabled wxWebView and it's working as it should, the only difference from original wxWidgets implementation is that the static method New was renamed to NewObject since PHP complained about T_NEW (seems new is reserved even when using it as a static method name). Some other changes include improvements to config files. The config.w32 was improved so that you can indicate the path where wxWidgets is installed as --with-wxwidgets=c:/wxWidgetsPath.

Fixed MSW Linking Errors

Finally the code links correctly on MSW, after trying a lot of different configuration on the config.w32 I was so exhausted that I decided that it couldn't be a problem with that file. Then I decided to take a better look to the linker error messages and redirected the output to a text file. For my surprise almost all errors came from virtual methods, after taking a look at the classes.json I noted that all those methods were pure virtual and the code generator was trying to call the original method in the case the php user didn't provided one. This works well on virtual methods but not on pure virtual methods since it's mandatory to provide one, because a default ...

Windows Compilation Errors Fixed

Finally fixed all windows compilation errors, now the process goes as smooth as it should.I included a README_MSW for some small changes needed in order to correctly compile since the typedef mode_t is defined in both wxWidgets and PHP. Also wxPostScriptDC is not enabled by default on wxMSW. Almost forgot this patch is also needed http://trac.wxwidgets.org/ticket/14245 I submitted it after having an error with the wxNotificationMessage class. So as I said the code compiles fine the only problem now is the linking process resulting in unreferenced symbols, it happened to me before, using visual studio 2010 express and again I'm using it. IIRC using an older version worked well but I'm not sure, maybe I modified the config.w32 in the wrong ...