LXRAD GUI designer
May 23, 2008 —
BarryK
This is great! LXRAD was discovered by forum member muggins, reported in this forum thread where various IDEs are being discussed:
http://murga-linux.com/puppy/viewtopic.php?t=28629
LXRAD is a GUI designer for developing GTK2 C++ applications, but with an Object Oriented layer. It is very simple to use. There is a runtime library, liblxrad.so, but it is quite small, 232KB uncompressed. Applications can optionally be compiled statically with this library, but if we end up using this a lot then the shared library is a better choice.
This could even be used to create a GUI for a Bash script,as the default code generated outputs mouse/keyboard events to stdout. I whipped up a simple GUI so quickly, and it was so easy to choose what events I wanted the widgets to respond to.
It seems that LXRAD started life as a GUI designer for the raw Xlib library, but with version 0.5 the author has moved to GTK2. Yippee!
The author is a minimalist, including the documentation! I can't even find the author's name anywhere. Even the home page is minimalist:
http://lxrad.sourceforge.net/
Anyway, I have created two PET packages:
http://distro.ibiblio.org/pub/linux/distributions/puppylinux/pet_packages-4/lxrad-0.5.pet
http://distro.ibiblio.org/pub/linux/distributions/puppylinux/pet_packages-4/lxrad_DEV-0.5.pet
The GUI designer executable is 'layout' and after installing the packages there will be an entry in the JWM menu, under Utilities. You will need to setup the Preferences, or alternatively just create a file /root/.lxrad with this in it:
defaulthtmlviewer
geany
ddd
...I'll put that into the PET package later.
The lxrad-0.5 package has the runtime library and that will be in 4.1alpha1 (actually 401). The lxrad_DEV-0.5 has the GUI designer and that wil be in the 'devx-401.sfs' file.
UPDATE:
Comments
LXRAD problemUsername: BarryK
The docs have this: |-- CEdit ------+ | `-- CText(Unusable) Yes indeed. I created an edit box, enabled some signals, but it wouldn't compile. For example: g++ -c -Wall -O5 `pkg-config gtk+-2.0 --cflags` ptest1.cc g++ -c -Wall -O5 `pkg-config gtk+-2.0 --cflags` test11.cc In file included from test11.cc:3: test11_d.cc: In constructor 'CWindow1::CWindow1()': test11_d.cc:32: error: 'class CEdit' has no member named 'EvPointerIn' make: *** [test11.o] Error 1 So, that widget is immature. I hope Luis can develop it some more. Note, there was no error message, I only knew it had failed to compile as I had run 'layout' from a terminal window.
LXRAD
Username: pupmate
"I just downloaded LXRAD. Layout couldn't find the liblxrad.so.0 Had to change name of lib from liblxrad.so.0.5 to liblxrad.so.0 to get it to run. Just to let you know. Terry
LXRAD, reply from author
Username: BarryK
"I sent an email to Luis and this is his reply: Thanks for using LXRAD and the blog report. [i]I start LXRAD using xlib, but make all components consuming much time, I'm a busy teacher and no have much time to work in my personal projects (homepage and documentation of projects run in background), for no reinventing the wheel I decide to use GTK. (qt is more complicated in my opinion). I make the porting of components encapsulating GTK components in LXRAD, but when I found pango, utf8, iterators and friends the porting freeze, theses are a nightmare! Actually I work in a new porting using wxwidgets (more easy), the components are ready, but layout need some work to finalize the release. Now LXRAD encapsulating wxwidgets who encapsulating GTK. If puppylinux support wxwidgets the new release of LXRAD will work without problems.[/i]
wxwidgets
Username: kirk
"I just compiled wxwidgets 2.8 for gtk, it's about 8.6MB. Ecere SDK: The binaries are 1.1MB The libraries are 2.7MB The Docs/Samples are 8MB Ecere can be found here: http://www.murga-linux.com/puppy/viewtopic.php?t=27684 Quote from docs: "The Ecere SDK offers a well-rounded suite of tools, which consist of an Integrated Development Environment, a set of compiling tools for the eC language, as well as a cross-platform runtime library featuring among other things a GUI toolkit, a networking library and a 3D engine. It is also backed by the GNU GCC compiling tools suite, which can also be used to program in the C and C++ languages. This version of the Ecere SDK included with this book is cross platform software capable of running on Windows, Linux and Mac OS X." And web page: "Licensing Information: The Ecere SDK is completely free, and applications built with it can be distributed both commercially and non commercially, along with the supporting Ecere runtime library." The binaries are 1.1MB The libraries are 2.7MB The Docs/Samples are 8MB Looks nice, though my C is quite bad, not sure how useful it would be to someone experienced in c++. Hope to find the time to go though Ecere's detailed tutorial.
Tags: puppy