bharvey wrote:
jstout wrote:
Scratch then Scratch-UI-Panes class category for anything to do with the user interface,
JohnHow did you know it was Scratch-UI-Panes and not Scratch-UI-Dialogs, Scratch-UI-Watchers (okay, I guess that was unlikely), or Scratch-UI-Support? I kept looking for a global search feature that would let me search for "compile" but at best I found the Smalltalk compiler rather than the (misnamed) BYOB app compiler.
There IS a sort of global search, but it's not easy to find (in the most recent Squeak there's a search bar at the top,not sure what it does though)
Open a workspace (open...->workspace) and type your search term. Right-click it and select more...->method source with it. It will ask you to proceed, click yes and wait a few minutes while it searches. It will then pop up a window containing a list of all the methods with source that contains your search term.
On a separate note, the "Elements Inspector" I am working on is an elements-style version of Squeak's built-in Inspector tool. It allows you to look at and change the instance variables of an object as well as evaluate code for it.
Last edited by nXIII (2010-07-04 20:37:02)
Offline
wow, nXIII, you really did it? I can't wait to play with your Elements inspector!
@jstout: John, You're absolutely right, currently Elements theoretically lets you do many things, but it's lacking all the nifty tools that make text-based Squeak so singularly powerful to use. But, as I see nXIII has already started! Of course we'll need to be able to "zoom" into methods (implementors, senders) and to quickly enter blocks using the keyboard as well (always clickig through zillions of menus won't do )
@bharvey: Brian, I'm sure you'll get to appreciate all the little shortcuts that let you inspect everything and anything in Squeak, plus, you know, Morphic: You can alt-click (or middle-click) on anything that you can see - i.e. any Morph (like the Scratch window and its contents) and inspect it or browse its class etc. So, if there is something in the Scratch window's menu, and you don't happen to know that the Scratch window is an instance of ScratchFrameMorph, you can just alt-click it to bring up its halo and directly inspect/browse it to find all of its menus. So, you don't really have to know anything when diving into a Squeak system, all you do is, err, plunge into it!
Last edited by Jens (2010-07-04 21:25:07)
Offline
Jens wrote:
plus, you know, Morphic: You can alt-click (or middle-click) on anything that you can see - i.e. any Morph (like the Scratch window and its contents) and inspect it or browse its class etc. So, if there is something in the Scratch window's menu, and you don't happen to know that the Scratch window is an instance of ScratchFrameMorph, you can just alt-click it to bring up its halo and directly inspect/browse it to find all of its menus.
I tried that. But it didn't occur to me that the relevant object was the entire window! So I command-clicked the Share menu, and it told me about ScratchMenuTitleMorph, which was no help at all.
Now that I know I was supposed to look at the entire window instead of looking at the menu I was interested in, I suppose I could use Morphic to get to the browser with slightly fewer clicks. But the real problem is that I had to know this counterintuitive (anti-oop-philosophy if you don't mind my saying so) idea that I should look in the largest possible category instead of looking at the object I actually care about!
</rant>
Offline
nXIII wrote:
Open a workspace (open...->workspace) and type your search term. Right-click it and select more...->method source with it. It will ask you to proceed, click yes and wait a few minutes while it searches. It will then pop up a window containing a list of all the methods with source that contains your search term.
Ah, thank you! That'll help.
On a separate note, the "Elements Inspector" I am working on is an elements-style version of Squeak's built-in Inspector tool. It allows you to look at and change the instance variables of an object as well as evaluate code for it.
Oh, so, when you were asking about the palette before, that's the Scratch block palette? Or the Elements block palette? I'm suffering from level confusion. Tnx.
Offline
bharvey wrote:
But the real problem is that I had to know this counterintuitive (anti-oop-philosophy if you don't mind my saying so) idea that I should look in the largest possible category instead of looking at the object I actually care about!
</rant>
Umm, you really don't know exactly where to look (otherwise you wouldn't have to ) but starting with a closer look at the thing you actually handle isn't all that counterintuitive and even less anti-oop. You'd first turn the whole wristwatch over in your hand to find out how to rewind it, and not take it all apart right away! </grumble>
Last edited by Jens (2010-07-05 02:37:01)
Offline
Helloher wrote:
Do you think that it's possible to implement anti-aliasing in the Paint Editor?
Sure, anti-aliased lines and fonts are beautiful to look at. But apart from looking nice what would be the educational benefit? Also consider the downside to Scratch: Color collision detection would no longer be reliable.
Offline
nXIII wrote:
I (almost) finished the Elements Inspector. I don't like the bottom pane, though, because it has to have a palette in it, which leaves too little room for coding. Should I just not include a palette and have the user drag in blocks from somewhere else?
I vote for leaving the palette out of the inspector's evaluation pane. Maybe a "palette" should better be a separate tool not attached to other windows in Elements. You could just open any number of palettes if you want to stick your thumb into a certain class. What do you think?
EDIT: @Jens, I'm also having trouble with multiline UpdatingStringMorphs - they don't exist... do you mind if I add support for multiline strings?
By all means, go ahead and implement it!
Offline
Jens wrote:
nXIII wrote:
I (almost) finished the Elements Inspector. I don't like the bottom pane, though, because it has to have a palette in it, which leaves too little room for coding. Should I just not include a palette and have the user drag in blocks from somewhere else?
I vote for leaving the palette out of the inspector's evaluation pane. Maybe a "palette" should better be a separate tool not attached to other windows in Elements. You could just open any number of palettes if you want to stick your thumb into a certain class. What do you think?
I think that would be a good idea having multiple pallets open.
Offline
Although we have a Mac Mini I don't really do that much with it apart from browsing, playing music, looking up recipes (it's in the kitchen).
Having just put BYOB on it how do I create the equivalent of a Windows shortcut with the word dev in so that I can easily get into development mode?
John
Offline
Jens wrote:
Helloher wrote:
Do you think that it's possible to implement anti-aliasing in the Paint Editor?
Sure, anti-aliased lines and fonts are beautiful to look at. But apart from looking nice what would be the educational benefit? Also consider the downside to Scratch: Color collision detection would no longer be reliable.
That's a good point, I suppose. However, I feel that it could help Scratch be more asthetically pleasing,, and if it were to be implemented with a feature to have it on or off, it would prove to be a quite popular utility. Sorry to be so blunt, I'm in a hurry.
Offline
Helloher wrote:
Jens wrote:
Helloher wrote:
Do you think that it's possible to implement anti-aliasing in the Paint Editor?
Sure, anti-aliased lines and fonts are beautiful to look at. But apart from looking nice what would be the educational benefit? Also consider the downside to Scratch: Color collision detection would no longer be reliable.
That's a good point, I suppose. However, I feel that it could help Scratch be more asthetically pleasing,, and if it were to be implemented with a feature to have it on or off, it would prove to be a quite popular utility. Sorry to be so blunt, I'm in a hurry.
It has its cons and pros, but I geuss having it as an option then it might work.
Offline
jstout wrote:
Having just put BYOB on it how do I create the equivalent of a Windows shortcut with the word dev in so that I can easily get into development mode?
John
Use hacked BYOB, which can be downloaded from the website in my signature.
Offline
jstout wrote:
Although we have a Mac Mini I don't really do that much with it apart from browsing, playing music, looking up recipes (it's in the kitchen).
Having just put BYOB on it how do I create the equivalent of a Windows shortcut with the word dev in so that I can easily get into development mode?
John
Brian has written a shell script that launches BYOB in dev mode on Macs. It is going to be in the next distro.
Brian has also been creating another fantastic utility: He has invented Scratch2Exe for Macs! The next BYOB version will let you compile Scratch/BYOB projects not only to exe but also to stand-alone Mac apps!!!
Last edited by Jens (2010-07-06 08:09:14)
Offline
Billybob-Mario wrote:
jstout wrote:
Having just put BYOB on it how do I create the equivalent of a Windows shortcut with the word dev in so that I can easily get into development mode?
JohnUse hacked BYOB, which can be downloaded from the website in my signature.
*facepalm* STOP SPAMMING THAT!!!!
Offline
jstout wrote:
Having just put BYOB on it how do I create the equivalent of a Windows shortcut with the word dev in so that I can easily get into development mode?
Here's how I do it:
#! /bin/sh rundir=`dirname "$0"` userdir=`pwd` cd "${rundir}" if [[ "x$1" == "x" ]]; then arg="dev" ; elif [[ "${1:0:1}" == "/" || \ "${1:0:1}" == "~" ]] ; then \ arg="$1" ; else arg="${userdir}/$1" ; fi if [[ "${arg}" != "dev" && \ `basename "${arg}"` == `basename "${arg}" .ypr` && \ `basename "${arg}"` == `basename "${arg}" .sb` ]]; then \ arg="${arg}.ypr" ; fi BYOB.app/Contents/MacOS/BYOB BYOB.image "${arg}" dev "${arg}" 2> /dev/null &
This works with or without a project as argument on the command line; you can call it without an argument by double-clicking it. (Make sure it's marked executable.)
Offline
bharvey wrote:
jstout wrote:
Having just put BYOB on it how do I create the equivalent of a Windows shortcut with the word dev in so that I can easily get into development mode?
Here's how I do it:
Code:
#! /bin/sh rundir=`dirname "$0"` userdir=`pwd` cd "${rundir}" if [[ "x$1" == "x" ]]; then arg="dev" ; elif [[ "${1:0:1}" == "/" || \ "${1:0:1}" == "~" ]] ; then \ arg="$1" ; else arg="${userdir}/$1" ; fi if [[ "${arg}" != "dev" && \ `basename "${arg}"` == `basename "${arg}" .ypr` && \ `basename "${arg}"` == `basename "${arg}" .sb` ]]; then \ arg="${arg}.ypr" ; fi BYOB.app/Contents/MacOS/BYOB BYOB.image "${arg}" dev "${arg}" 2> /dev/null &This works with or without a project as argument on the command line; you can call it without an argument by double-clicking it. (Make sure it's marked executable.)
What language is that? My friend made a program which launches programs using a shell in VB, but it didn't look that compilcated.
Offline
Helloher wrote:
Do you think that it's possible to implement anti-aliasing in the Paint Editor?
It's not that this would be a bad feature, but we have a lot on our plate and this doesn't seem like a very BYOBish feature -- it doesn't increase the expressiveness of the programming language. I'd rather, if anything, give you a COLOR AT <x> <y> block and let you program your own anti-aliasing; that would be educationally valuable.
Offline
bharvey wrote:
I'd rather, if anything, give you a COLOR AT <x> <y> block and let you program your own anti-aliasing; that would be educationally valuable.
If panther and byob were merged then that could be possible, there is people wanting it to happen.
Offline
markyparky56 wrote:
What language is that? My friend made a program which launches programs using a shell in VB, but it didn't look that compilcated.
It's a Unix shell script, the equivalent of a .bat file in Windows.
I don't think the complexity of the script comes from the choice of language, but from my attempt at versatility; it works whatever directory you move BYOB into and wherever your project file is, even if the paths have spaces in their names. I started with a simple one-liner but it turned out not to be bulletproof.
Offline
markyparky56 wrote:
If panther and byob were merged then that could be possible, there is people wanting it to happen.
I'm one of them! (Although of course what I most want to merge BYOB with is Scratch 2.0. Imho Panther 1.0 is a bit too cluttered for that to be viable, but maybe 1.1 will help.)
Offline
Billybob-Mario wrote:
jstout wrote:
Having just put BYOB on it how do I create the equivalent of a Windows shortcut with the word dev in so that I can easily get into development mode?
JohnUse hacked BYOB, which can be downloaded from the website in my signature.
again, it is nice to have a different fan made version of BYOB, but this isn't really the place to put it... it's sorta like spamming because you kepp posting the same link over and over again.
Offline
bharvey wrote:
markyparky56 wrote:
If panther and byob were merged then that could be possible, there is people wanting it to happen.
I'm one of them! (Although of course what I most want to merge BYOB with is Scratch 2.0. Imho Panther 1.0 is a bit too cluttered for that to be viable, but maybe 1.1 will help.)
Well 1.1 no long will have colour variables, im sure theres more things that are being added but combining byob with panther will be complicated since it already has CYOB, ofcourse it would only require re-wording the button but it might slow BYOB/panther down a lot...
Offline
Helloher wrote:
Jens wrote:
Helloher wrote:
Do you think that it's possible to implement anti-aliasing in the Paint Editor?
Sure, anti-aliased lines and fonts are beautiful to look at. But apart from looking nice what would be the educational benefit? Also consider the downside to Scratch: Color collision detection would no longer be reliable.
That's a good point, I suppose. However, I feel that it could help Scratch be more asthetically pleasing,, and if it were to be implemented with a feature to have it on or off, it would prove to be a quite popular utility. Sorry to be so blunt, I'm in a hurry.
I was at a meeting the other day introducing Greenfoot to computing teachers and someone made the comment that Greenfoot was nicer, more technical, looking than Scratch!
John
Offline
bharvey wrote:
jstout wrote:
Having just put BYOB on it how do I create the equivalent of a Windows shortcut with the word dev in so that I can easily get into development mode?
Here's how I do it:
Code:
#! /bin/sh rundir=`dirname "$0"` userdir=`pwd` cd "${rundir}" if [[ "x$1" == "x" ]]; then arg="dev" ; elif [[ "${1:0:1}" == "/" || \ "${1:0:1}" == "~" ]] ; then \ arg="$1" ; else arg="${userdir}/$1" ; fi if [[ "${arg}" != "dev" && \ `basename "${arg}"` == `basename "${arg}" .ypr` && \ `basename "${arg}"` == `basename "${arg}" .sb` ]]; then \ arg="${arg}.ypr" ; fi BYOB.app/Contents/MacOS/BYOB BYOB.image "${arg}" dev "${arg}" 2> /dev/null &This works with or without a project as argument on the command line; you can call it without an argument by double-clicking it. (Make sure it's marked executable.)
Thanks for that Brian. Er, how do I mark it as executable? Do I have to do a ch... something via Terminal or can I point and click?
Offline