On Wed, Jul 28, 2004 at 11:15:53AM -0700, Ned Konz wrote:
On Wednesday 28 July 2004 6:53 am, Marcin Tustin wrote:
- Is it possible to get morphic to create a window outside of the squeak
window
Probably not the way you want to do it. At least, not easily. And not out of the box.
The snipped sections plus tasty hints by developers on this list is probably enough to keep me about, especially given the comedy errors I've had from GNU Smalltalk.
than the one on the squeak swiki, which instructs one to start using classes that no longer come with squeak?
There are a number of Morphic tutorials. Which one are you referring to, and would someone like to update it?
I was thinking of http://pbl.cc.gatech.edu/cs2390/227, which I'll happily update once I get into the swing of things. One other question: Are there any plans to allow squeak to be configured to use a native widget-set, or is that even already possible by providing a relatively simple set of bindings? (I do of course mean that the squeak side is simple - I'm well aware that the native side is likely to be nasty).
Marcin,
From what I can tell, Squeak is far from having even prototype native widget support; obviously, there are hacks using FFI as was mentioned before, but to be honest, if you use squeak, you're using the traditional Smalltalk paradigm of a self-contained environment - at least that's the way I see it.
if you're after a stable, mature and free Smalltalk with quasi-native widget support (more on that in a second), check out VisualWorks 7.2 non-commercial.
VW doesn't have native native widgets, but instead, emulated portable widgets, so you can build windows that look and feel like WinXP or MacOSX's Aqua, and use the same programme across multiple platforms - Linux, Win32, Macintosh etc. However, these look and feel pretty damned nice (there have been many advances in recent releases) and are not only usable but look good too. In the Linux world, the user is used to varying widget-sets. In the Win32 world, I think the VW apps hold their own, and you can hardly (if @ all) tell that they're 'emulated'.
In addition, VW doesn't have the same sort of closed environment as squeak - it's less "weird" to the end user; you simply rename the VM to your-app.exe, your image to your-app.img and it's almost transparent that this programme is being distributed using a fundamentally different sort of technology.
Lastly, the image stripping facilities are pretty impressive, even going as far as replacing walkbacks with dialog errors, thus shielding any problems from the user without confusing him terribly. In other words, some of the traditional 'evils' of stripping an image are lessened, and locked down distribution is improved.
All in all, it's definitely worth checking it out.
Personally, I was thinking of constructing a Native Widget class tree for Squeak, but that's still on paper at this stage. The basic idea was to have a portable tree that interfaces to platform-specific plugins, with a common API. I'm not sure how much progress Tim, John & co have made in this field themselves, but clearly we're still @ a development stage.
Don't get me wrong - the only Smalltalk I use at the moment is Squeak, and I've grown pretty fond of the Morphic environment, so I'm not advocating VW as a all-things-to-all-men alternative. But if your task is native, or near-native widget support, and you don't want a Smalltalk environment to be visible the user, then VW may well be the way to go. Besides, Morphic without the encompassing Smalltalk environment would probably lose not only its dynamism but also its sensibility - I'd venture that Squeak's strength is its interplay of objects, rather than the objects in isolation themselves.
Apologies if I've rambled @ too great a length about a different dialect!
Hope that helps, regards, Marc
On Thursday, July 29, 2004, at 11:26 am, Marcin Tustin wrote:
On Wed, Jul 28, 2004 at 11:15:53AM -0700, Ned Konz wrote:
On Wednesday 28 July 2004 6:53 am, Marcin Tustin wrote:
- Is it possible to get morphic to create a window outside of the
squeak
window
Probably not the way you want to do it. At least, not easily. And not out of the box.
The snipped sections plus tasty hints by developers on this list is probably enough to keep me about, especially given the comedy errors I've had from GNU Smalltalk.
than the one on the squeak swiki, which instructs one to start using classes that no longer come with squeak?
There are a number of Morphic tutorials. Which one are you referring to, and would someone like to update it?
I was thinking of http://pbl.cc.gatech.edu/cs2390/227, which I'll happily update once I get into the swing of things. One other question: Are there any plans to allow squeak to be configured to use a native widget-set, or is that even already possible by providing a relatively simple set of bindings? (I do of course mean that the squeak side is simple - I'm well aware that the native side is likely to be nasty).
Hi all!
mds zenporcupinegrind@breathe.com wrote:
Marcin,
From what I can tell, Squeak is far from having even prototype native widget support; obviously, there are hacks using FFI as was mentioned
Well, wxSqueak looked pretty functional to me. It has a pretty impressive demo.
And my GtkPlugin can at least be counted as a prototype. It can open any Glade-built UI and does handle button presses. :)
regards, Göran
On Thu, Jul 29, 2004 at 03:44:27PM +0200, goran.krampe@bluefish.se wrote:
Well, wxSqueak looked pretty functional to me. It has a pretty impressive demo.
And my GtkPlugin can at least be counted as a prototype. It can open any Glade-built UI and does handle button presses. :)
Where would I find these
Marcin Tustin mt500@zepler.net wrote:
On Thu, Jul 29, 2004 at 03:44:27PM +0200, goran.krampe@bluefish.se wrote:
Well, wxSqueak looked pretty functional to me. It has a pretty impressive demo.
And my GtkPlugin can at least be counted as a prototype. It can open any Glade-built UI and does handle button presses. :)
Where would I find these
Google is your friend:
http://homepage.mac.com/rgayvert/wxsqueak.html http://anakin.bluefish.se/gohu/25
regards, Göran
Hi again!
Just wanted to say that my GtkPlugin is definitely not ready for any actual *use*. wxSqueak on the other hand seemed to be pretty capable already, but I haven't used it.
regards, Göran
On Thursday 29 July 2004 4:40 am, mds wrote:
In addition, VW doesn't have the same sort of closed environment as squeak - it's less "weird" to the end user; you simply rename the VM to your-app.exe, your image to your-app.img and it's almost transparent that this programme is being distributed using a fundamentally different sort of technology.
Actually, it's hard to see how Squeak is any more "closed" than VW in this way.
You can do exactly the same thing with Squeak:
* rename Squeak.exe as your-app.exe * rename the image to your-app.image * run your-app.exe (it will automatically load your-app.image) * turn off the prefs for warning on sources and changes files * do an abandonSources * save the image * throw away the .sources and .changes files
Lastly, the image stripping facilities are pretty impressive, even going as far as replacing walkbacks with dialog errors, thus shielding any problems from the user without confusing him terribly. In other words, some of the traditional 'evils' of stripping an image are lessened, and locked down distribution is improved.
My Lockdown package helps quite a bit with this process, though it doesn't do any stripping. However, it needs to be updated for 3.7/3.8. Any volunteers?
ned,
On Thursday, July 29, 2004, at 04:54 pm, Ned Konz wrote:
On Thursday 29 July 2004 4:40 am, mds wrote:
In addition, VW doesn't have the same sort of closed environment as squeak - it's less "weird" to the end user; you simply rename the VM to your-app.exe, your image to your-app.img and it's almost transparent that this programme is being distributed using a fundamentally different sort of technology.
Actually, it's hard to see how Squeak is any more "closed" than VW in this way.
very true: i'm afraid i wasn't quite clear enough here. by 'closed' i was referring to the actual nature of the environment being self-contained, rather than generated windows running seemingly transparently upon the WM.
Lastly, the image stripping facilities are pretty impressive, even going as far as replacing walkbacks with dialog errors, thus shielding any problems from the user without confusing him terribly. In other words, some of the traditional 'evils' of stripping an image are lessened, and locked down distribution is improved.
My Lockdown package helps quite a bit with this process, though it doesn't do any stripping. However, it needs to be updated for 3.7/3.8. Any volunteers?
again, i didn't mean to say that squeak didn't have such facilities as lockdown (v. useful i might add), just to say that VW can seem overbearing (size wise) and hence image stripping can be of great use in the distribution phase.
-M
squeak-dev@lists.squeakfoundation.org