Re: llama
- Posted by David Cuny <dcuny at LANSET.COM> Aug 16, 2000
- 481 views
=A9koda wrote: > David, why did you drop the Llama project? > I think having more files is good thing. The goal of Llama was to have a cross-platform toolkit. I ran into troubl= e trying to make GTK+ work, and finally gave up. I had written a program th= at parsed the GTK include files, and built Euphoria wrappers. But the data structures that it was building were not entirely correct, and I ran into trouble with some of the functions. Looking back, I should have done what SWIG does - generate C code to build the wrappers. Another problem I ran into was reconciling how Windows and GTK+ behaved, especially toward drawables. My options were to either break Win32Lib cod= e, or write code at the X Window level to trap events to GTK+ drawables. I threw up my hands at this point. OOP was also a bit problematic - things can get *really* hairy. The underlying event systems of Windows and GTK+ are different. With Windows, you need to trap events in an event loop; for GTK+, you set callbacks directly at a control's events, and skip the event loop altogether. Finally, the prospect of maintaining the GTK+ wrappers was a bit overwhelming. GTK+ has a *lot* of files, and even with the automated tool= s I had written, the generated code still needed a lot of hand-tweaking. Ever= y time GTK+ came out with a new release, I would have to rebuild the wrappe= rs. It was just too much work for me to take on. Since the main point of the project was to create a cross-platform toolki= t, and getting the GTK+ side of it working was turning into a real struggle,= I decided to drop the project. Since the library would then only run on Windows, the cost and complexity of using OOP didn't seem worth the effor= t, so I dropped it. Feel free to take up the library if you like. Personally, I've decided th= at there's little point in writing a cross-platform library by hand when the= re are so many toolkits that already exist. I'm in the process of trying to = get wxWindows working with Euphoria. Well, actually Peuphoria at this point, since wxWindows does some "magical" things that make it difficult for me (with my limited C++ skills) to wrap in a DLL. -- David Cuny