webglade

JavaScript library to dynamically create XUL GUI from Glade XML files
git clone https://logand.com/git/webglade.git/
Log | Files | Refs | README | LICENSE

README (2991B)


      1 # webglade: JavaScript library to dynamically create XUL GUI from Glade XML files
      2 
      3 webglade is a JavaScript library to dynamically
      4 create <a href="http://www.mozilla.org/projects/xul/">XUL</a> GUI from
      5 <a href="http://glade.gnome.org/">Glade</a> XML files.  It is a Rapid
      6 Application Development tool for developing Rich Internet
      7 Applications.
      8 
      9 ## Download
     10 
     11 The latest webglade tarball release can be
     12 downloaded <a href="webglade.tar.gz">here</a>.
     13 
     14 ## Examples
     15 
     16 <a href="//logand.com/sw/webglade/hw/">hw</a> is a minimal 'hello
     17 world' example.
     18 Open <a href="//logand.com/sw/webglade/hw/hw.xul">hw.xul</a> to see it
     19 in action.
     20 
     21 <a href="//logand.com/sw/webglade/hw2/">hw2</a> is another trivial
     22 example.
     23 Open <a href="//logand.com/sw/webglade/hw2/hw2.xul">hw2.xul</a> to see
     24 it in action.
     25 
     26 <a href="//logand.com/sw/webglade/htv3/">htv3</a> shows simple
     27 callback handler.
     28 Open <a href="//logand.com/sw/webglade/htv3/htv3.xul">htv3.xul</a> to
     29 see it in action.
     30 
     31 <a href="//logand.com/sw/webglade/mab/">mab</a> is an example based on
     32 the excellent <a href="http://www.faser.net/mab/">MAB</a> (Mozilla
     33 Amazon Browser).
     34 Open <a href="//logand.com/sw/webglade/mab/xul/mab.xul">mab.xul</a> to
     35 see it in action.  The XUL part of MAB is replaced by a Glade XML
     36 file.  Unfortunately, MAB has been discontinued since Amazon changed
     37 their web service so this example always shows the same data.
     38 
     39 ## Usage
     40 
     41 - Create user interface using Glade UI designer.
     42 
     43 - Write your JavaScript application and Glade/XUL initialization code.
     44 
     45 - Create a XUL file which loads all necessary JavaScript files, sets
     46   up CSS style and calls your initialization function.
     47 
     48 - Open your XUL file in a XUL enabled web browser.
     49 
     50 See <a href="//logand.com/sw/webglade/hw/">hw</a> for a simple 'hello
     51 world' application.
     52 Open <a href="http://logand.com/sw/webglade/hw/hw.xul">hw.xul</a> file
     53 to run it in your web browser.  Note that JavaScript must be enabled.
     54 
     55 ## Goals
     56 
     57 - Load Glade XML file(s) containing description of (Gtk) widgets into
     58   a XUL enabled web browser and create similar XUL widgets.
     59 
     60 - Connect callbacks specified in the Glade XML file(s) to user's
     61   JavaScript code.
     62 
     63 Allow users to implement and use their own custom widgets.
     64 
     65 ## Why XUL?
     66 
     67 Ideally, webglade would support all web browsers with DOM scripting,
     68 DHTML and AJAX.  There are many web toolkits webglade could use for
     69 backend.  However, after experimenting with HTML, XUL and XAML, I
     70 settled for XUL which works best and requires little involvement with
     71 a specific web toolkit.
     72 
     73 ## Development
     74 
     75 The code was written
     76 using <a href="http://common-lisp.net/project/parenscript/">ParenScript</a>
     77 and compiled to JavaScript using
     78 Emacs <a href="//logand.com/repo/ls-mode/">ls-mode</a>.
     79 
     80 ## License
     81 
     82 webglade is licensed under the terms of the GPL license. Details are
     83 contained within
     84 the <a href="//logand.com/sw/webglade/COPYING">COPYING</a> file,
     85 included with the distribution.
     86 
     87 ## Feedback
     88 
     89 Please send <a href="../../contact.html">me</a> an email.