wxnode

0.1.0 • Public • Published

wxNode

node.js wrapper for wxWidgets.

Installation Linux

  • Download and install wxWidgets 2.9.3.
$ npm install wxnode

Installation Windows

  • Download wxWidgets 2.9.3.
  • Download and install node from source (release, 64-bit) "vcbuild.bat release"
cd d:\dev\wxWidgets-2.9.3\build\msw
nmake -f makefile.vc BUILD=release UNICODE=1 RUNTIME_LIBS=static DEBUG_FLAG=0
set WXWIN=d:\dev\wxWidgets-2.9.3
set WXCFG=vc_lib\mswu
cd d:\dev\wxNode
node mnm.js build

Try an example

node examples/helloWorld.js
node examples/...

Quick Examples

var wx = require("wxnode");
 
var MyApp = wx.App.extend({
  onInit: function() {
    var location = new wx.Point(50, 50);
    var size = new wx.Size(450, 340);
    var frame = new MyFrame("Hello World", location, size);
    frame.show(true);
    this.setTopWindow(frame);
    return true;
  }
});
 
var MyFrame = wx.Frame.extend({
  init: function(title, pos, size) {
    this._super(null, -1, title, pos, size);
 
    this.EVT_CLOSE(this.onClose);
  },
 
  onClose: function(event) {
    process.exit();
  }
});
 
var app = new MyApp();
app.run();

Building wxWidgets linux

$ sudo apt-get install libwebkitgtk-dev
$ sudo ldconfig
$ ./configure --enable-webview --enable-webview-webkit && make
$ sudo make install
## Creating wxapi.xml from wxWidgets
$ sudo apt-get install libwebkitgtk-dev
cd wxWidgets-2.9.3/docs/doxygen
$ ./regen.sh xml
cd ../..
$ ./configure --enable-webview --enable-webview-webkit
$ patch -p0 -i ~/wxNode/rungccxml.sh.patch
$ patch -p0 -i ~/wxNode/strvararg.h.patch
cd utils/ifacecheck/
$ ./rungccxml.sh
$ cp wxapi.xml ~/wxNode/wxapi.xml
cd ~/wxNode
$ rm wxapi.json
$ rm -rf build
$ ./render-templates.js && ./mnm.js build

Readme

Keywords

none

Package Sidebar

Install

npm i wxnode

Weekly Downloads

0

Version

0.1.0

License

MIT

Last publish

Collaborators

  • joeferner