From: Bob H. <cat...@ya...> - 2007-03-01 22:29:26
|
Hello John, thank you for your notes. >As for coding the interface, no, it's nowhere near as simple as Perl/Tk. I was afraid of it. >The payoff is that it doesn't look anywhere near as bad, and you have a lot more control over the results and the "inner workings" of your program. I played with Apple's Interface Builder for about 30 minutes, knowing nothing about this tool I was able to rebuild the interface of the application that I want to port. This tool is great, but I do not know what to do with the code it generates. If I find a perl/wx extension to Xcode, I might solve that way, because Xcode takes care of the coding interface between the GUI and the routines. The hard work of designing the GUI and dealing with it's API would be gone for good. My core interest, however, is to keep the cross-platform approach; Tk runs everywhere, Wx has its known advantages, but Apple's Interface Builder does not seem to generate perl/wx code, and I am not into the business of porting perl into java... I tried wxGlade, but it did not respond, and then it crashed. I tried wxDesigner, but I do not understand it; by comparison with Apple's Interface Builder, wxDesigner is a shoot on one's foot, with all due respect to the effort of its developers. So I am stuck. I am committed to use Wx, not Apple's local library. On the GUI itself, what results from Apple's Interface Builder looks great. The only one thing I do not like is the notebook, because it does not look like one. > You can either create the interface by hand with code, use an interface design tool to do it for you (though only wxGlade emits perl), write definition files in XML for the XRC subsystem (definitely not recommended!), or use an interface design tool to do *that* for you. I do the last; many folks do the first. I understand you use wxGlade, or some other tool? > Once you have the visual interface created, you have to write code to make it do things and to move data between the interface and the working parts of your program. This need not be interlaced with the display code: Unlike Tk, wxWidgets is thoroughly object oriented, so it's pretty easy to use a design which keeps everything nicely separated. My greatest worry about GUIs has always been their life cycle; an update to the old library comes out and brakes something, or a new useful library that requires porting. So this functional separation is very welcome, provided one has the right tool to change the GUI and interface it with the existing routines. The harder problem is how to achieve it by hand, lacking the tools. Despite my many years of profession, I still find myself like a schoolboy. I do not mind learning new things, but sometimes I just do not have the time. I do not understand what refrains people from making a unified (open source) Interface Builder, that has all the possible graphical libraries, generates code into all possible languages, and runs on all platforms. It is not unrealistic, as many parts of it are already available. Can you recommend a good reference on how to separate the GUI from the routines? Bob ____________________________________________________________________________________ The fish are biting. Get more visitors on your site using Yahoo! Search Marketing. http://searchmarketing.yahoo.com/arp/sponsoredsearch_v2.php |