FLOSS Manuals

 English |  Español |  Français |  Italiano |  Português |  Русский |  Shqip

ETOYS REFERENCE MANUAL

More Objects 

Here you will find Morphs that you can use in Etoys with scripting tiles, but that are not provided in the categories in the Object Catalog. Some are avaiable in the alphabetical list in the Object Catalog. Others are provided in other parts bins, and many occur as components of other objects. All other Morphs, described in the Morph Definitions appendix, are available through the Squeak environment, by embedding Squeak commands in scripting tiles, or using the open morph function on the world menu in Squeak.

Many objects in Etoys can be discovered by right-clicking on various objects to reveal the object Halo, then clicking again to reveal the halo for a component of the object. Note that the name of an object shown in the Object Catalog is not always the same as the name it shows in its own Halo and viewer, and both can differ from the Squeak Morph that implements the object's costume.

In general, the Squeak object corresponding to an Etoys object can be found via the Players tool. Open an object of the kind desired, and open its viewer. It will appear in the listing in Players. On the menu for that object in Players, select inspect object. In the inspector that appears, select costume, which shows both the Squeak player and costume names.

AND Gate (eToyFriendly off, no category)


This Morph has the shape of an AND logic gate symbol for use in electronics diagrams, but does not have the appropriate connection points to use in that manner.

Arrow (not in Object Catalog)

Tthere are two kinds of Morph named Arrow in Etoys. One is a simple graphic object, described in the Objects chapter. The topic of this section is a form of connector (as explained in the Connector and Connectors Flap sections below) with an arrowhead at its destination. This Arrow is produced from a Connector Button, which is itself an object in the Connectors category in the Object Catalog.

Badge (no category)


A tool for collaborating with other Squeak users. In the Sugar version of Etoys, a badge is automatically set up when an Etoys session is shared with other users (buddies).

The components of a Badge are

String for the name of the person to connect to

Image of ?, which functions as a button for inquiring whether the other person is available

String for e-mail address

String for IP address

Blue Elllipse, to show working status

Green Ellipse, to show sending status

C Button, to open a text chat with the other person

T Button, to start Telemorphic (What's that?) with the other person

! Button, to tell the other person about the current Etoys project

? Button, to see whether the other person is available

S Button, to see the other person's world, if permitted.

Balloon (not in Object Catalog)

A balloon with text used for the display of explanatory information in the balloon help system. It is not possible to right-click a balloon, which appears only when the mouse is hovering over an object. Ballon help is created and edited in Squeak, and is not directly accessible in Etoys.

Bordered (not in Object Catalog)

A rectangular Morph with a border.

CategoryViewer (not in Object Catalog)

Displays a category of tiles meant to be dragged into scripts in a StandardViewer for any object. In some cases they allow editing in place to change the values of variables or the arguments of commands.


The first line gives the name of the category in a Bordered Morph, along with a ThreePhaseButton close tool. The rest of the CategoryViewer shows scripting tiles as Tiles or PhraseTiles in ViewerLines.

CircleCurve (eToyFriendly off, no category)

A circular Morph bearing a Text.

What is this for?

Class (eToyFriendly off, no category)


A component for making UML (Unified Modeling Language) diagrams, a tool for Object-Oriented Design. The first form is available in the Object Catalog, and all three from the ClassButtonBar and the Class Diagrams flap.

 ClassButtonBar (eToyFriendly off, no category)

 

A source of components for UML diagrams.

There is a bug in the display of the text caption at the top, where the text is set to white on white, and the color values shown in its viewer are inconsistent. Reported as SQ-1123. To fix this, as shown at the right above, right-click on the caption area twice to get at the Text object's Halo, and open its viewer. Select the color category. Click on the black color block in the Text's color tile to open a color picker. Click on the black block at the top with balloon help restore original color. This fixes the RGB values for the text, so that it actually displays as black.

Class ButtonBar contains buttons to create the following UML diagram components.

  • Association connector with no arrowhead
  • Association connector with arrowhead
  • Generalization connector
  • Implements connector
  • Three Class objects, with one, two, or three panes. The top pane is for the class identifier, the second for class attributes (internal variables) and the third for behavior (methods).
  • Two Package objects, a simple one and one with scrolbars, providing areas for creating UML diagrams.
There is an error in the implementation of the second, so that the scroll bars are not around the diagram area. Resizing the diagram area fixes this.
Bug filed as SQ-1125.
  • Note
  • Note connector
  • Label

There is also a functional button, Save GIF, which is supposed to save a UML drawing as a GIF.

This button is broken.
MessageNotUnderstood: PasteUpMorph>>saveNCDrawingAsGIF
Bug filed as SQ-1124.

Class diagram Flap [sic] (eToyFriendly off, no category)

A parts bin for UML entities, labels, and connectors. Objects offered are

Label

Smart label that positions itself

Association connector with arrowhead

Association connector without arrowhead

Generalization connector

Implementation connector

Three levels of class entity

UML Package entity

Note

Clipboard (no category)


This object will always show whatever is on the text clipboard in Etoys. It fails to show the contents of the system clipboard when material is copied outside Etoys, and can sometimes crash Etoys.

Filed as a comment to SQ-158.

Halo menu options:

text auto fit Toggle whether Clipboard adjusts its size to fit its contents. If not, either Clipboard may show empty space, or may display only part of the copied text.

text wrap to bounds Toggle whether text is broken into lines that fit the current size and shape of Clipboard, or whether Clipboard is reshaped to fit the text, possibly obtruding outside the world.

translatable Toggle support for translation <b>[What kind?]

use pango Toggle use of the limited internal methods for displaying non-Latin writing systems, or the pango libraries that provide full Unicode support.

font for entire text… Bring up a menu of fonts for selection. However, the font selected has no effect on the display of text in Clipboard.

text properties… Bring up a TextProperties dialog including a color picker and controls for other text properties, including Autofit, Wrapping, size, and styles.

text margins

add predecessor Create another clipboard [What does it do?]

add successor Create another clipboard [What does it do?]

code pane menu

code pane shift menu

fill owner's shape

holder for characters

ColorPicker (not in Object Catalog)

A gui for setting color and transparency.

Column (no category)

An object that presents the things within it in a column. Drag objects into it, remove the default colored bars there if desired, edit the balloon help to indicate the intention of the list of objects. The column resizes to fit the objects, and cannot be resized with the Halo Resize tool. The usual color and border & fill options are available.

Composite State (eToyFriendly off)


A UML package element, very similar to UML Package.

What object is this?

Damage.
Presumably this is something to do with connectors bearing arrowheads. Yup. Now, which ones.
These are the possible values, derived from the Squeak expression
NCAAConnectorMorph arrowDictionary. They also turn up on tile menus for destination arrow name and source arrow name. I think this must be a new feature in v5.

Do we want images for all of these? I think so.

  • #appleWithBite->a NCLineArrowGlyph 
There is a method for this in NCCurveMorph
  • #basicArrow->a NCLineArrowGlyph
  • #basicArrow1->a NCLineArrowGlyph
  • #basicArrow2->a NCLineArrowGlyph
  • #doubleArrow->a NCLineArrowGlyph
  • #doubleBubble->a NCLineArrowGlyph
  • #epsilonFork->a NCLineArrowGlyph
  • #filledCircle->a NCLineArrowGlyph
  • #fred->a NCLineArrowGlyph
  • #heavyDoubleArrow->a NCLineArrowGlyph
  • #junctionDot->a NCLineArrowGlyph
  • #noArrow->a NCLineArrowGlyph
  • #numeroDos->a NCLineArrowGlyph
  • #numeroUno->a NCLineArrowGlyph
  • #openArrow->a NCLineArrowGlyph
  • #openCircleWithPlus->a NCLineArrowGlyph
  • #openCircleWithSquareDot->a NCLineArrowGlyph
  • #openCircleWithX->a NCLineArrowGlyph
  • #openDiamond->a NCLineArrowGlyph
  • #pi->a NCLineArrowGlyph
  • #pointingHand->a NCLineArrowGlyph
  • #quadDiamond->a NCLineArrowGlyph
  • #roundFork->a NCLineArrowGlyph
  • #roundTrident->a NCLineArrowGlyph
  • #starInCircle->a NCLineArrowGlyph
  • #test2->a NCLineArrowGlyph
  • #thinDoubleArrow->a NCLineArrowGlyph
  • #umlArrow->a NCLineArrowGlyph
  • #zap->a NCLineArrowGlyph )
We need to verify this. Also, how does one change arrowheads? Oh, I see. Just type in the name on the tile. But why no menu?

Crostic

Text missing
Sample File? Cannot find. "If you wish to make up other acrostic puzzles, follow the obvious file format in the sampleFile method."
oldStyle method? Cannot find. "If you wish to print an acrostic to work it on paper, then change the oldStyle method to return true, and it will properly cross-index all the cells."

The Crostic is composed in Etoys of

  • an area containing alignments of clues, made of Text and WordGameLetter objects
  • a CrosticQuotePanel, containing WordGameLetter objects
  • an Alignment of Buttons implementing the following functions
Functions missing

Diamond (eToyFriendly off)


A basic shape Morph.

 

DoubleClick (no category)


Help text: Double-click on me to change my color; single-click on me to change border color; hold mouse down within me and then move it to grow (if I'm red) or shrink (if I'm blue).

This is correct for double click and single click behavior. For click and drag, it is nominally true, but the growth and shrinkage is by only one pixel, which is not visible to the ordinary user. It can be detected by opening a viewer and observing the changes to DoubleClick's left and DoubleClick's bottom.

I filed a bug on this, which was rejected. http://tracker.squeakland.org/browse/SQ-1135
This is stupid.

End State (eToyFriendly off)


A component of a UML Statechart diagram, marking the destruction of the object being followed. End State is implemented as an NCEllipseMorph.

EtoysUpdatingThreePhaseButton (not in Object Catalog)

A slight variation of UpdatingThreePhaseButtonMorph wherein the actionSelector and getSelector both take argument(s). These classes are in the Morphic-Widgets category in Squeak. 

Event Theatre

Implemented in EventRecordingSpace in the Morphic-Mentoring category in Squeak. "Externally called the Event Theatre, this is a tool for authoring event-recorded sequences with possible voiceover.  Event 'tapes' created with an Event Theatre can be edited using the Event Roll."

Crashes Etoys in both Ubuntu Linux and Sugar on XO.
EventTheatre is implemented in the  class, a subclass of , in the  category in Squeak.

File Dialog

Controls in File Dialog are Buttons and ThreePhaseButtons. The directory display is a SimpleHierarchicalList, and the file display for a directory is a PluggableList.

Fish Eye (no category)

An extreme wide-angle lens, similar to Magnifier and RoundGlass, but with higher magnification, which can be modified in the viewer or a script. Halo Menu options are

track pointer Toggles display of the area around the cursor

show pointer Toggle a square mark showing the location of the cursor in the magnified display, thus.

round Convert FishEye to RoundGlass. This cannot be undone.

Flap (no category)

You can get a flap out of the supplies bin. A flap can be used to share objects and their scripts between projects.

A source of objects useful in projects, including the Object Catalog. Click the supply box icon in the toolbar to bring up this flap. Click it again to dismiss the Supplies Flap. The Supplies Flap closes automatically when an object is dragged out of it.


Click and drag any of these objects into the world. Drag objects to the Supplies Flap to make them available for further copying. The Supplies Flap expands to hold new objects if needed. Objects added to the Supplies Flap disappear at the end of the session, unless saved in a project and reloaded.

The supplies flap is a collection of IconicButtonWithLabel objects. The darker band at the bottom is supposed to allow the user to drag it to extend or shrink the Supplies Flap, but instead it moves independently.

Supplies Flap  is implemented in the PartsBin class, a subclass of PasteUpMorph, in the  category MorphicExtras-PartBin in Squeak.

Flaps newNavigatorFlap openInHand.
Flaps newObjectsFlap openInHand.
Flaps newPaintingFlap  openInHand.
Flaps newSqueakFlap  openInHand.
Flaps newStackToolsFlap  openInHand.
Flaps newSugarNavigatorFlap  openInHand.
Flaps newSuppliesFlap  openInHand.
Flaps newToolsFlap  openInHand.
Flaps newWidgetsFlap  openInHand.

Frame Rate?

 Implemented as FrameRateMorph, a subclass of StringMorph, in the Morphic-Demo category in Squeak

FreeCellBoard (not in Object Catalog)

A component of FreeCell, providing the places to play the cards.

Implemented as FreeCellBoard, a subclass of AlignmentMorph, in the Morphic-Games category in Squeak.

Implemented as EToyFridgeMorph, a subclass of EToyCommunicatorMorph, in the Nebraska-Morphic-Collaborative category in Squeak.

Fridge (no category)


A tool for sending objects to other Squeak users as part of the Nebraska collaboration system. Its only control is a check box to toggle between group mode and individuals.

Which state is which?

FSM ButtonBar (eToyFriendly off)

 

A source for UML objects for modeling Finite State Machines.

There is a bug in the appearance of FLM ButtonBar. The label at the top is supposed to be in black text on a white background, approximately as shown on the right, but it defaults to white on white. However, the color values shown in its viewer are inconsistent: RGB=100 100 100 (white), but the color tile shows as black. The background color can be set with a color picker, but not numerically, so that it is extremely difficult to set it to pure white.
Furthermore changing the numeric value of the text color in the viewer sets the background color to black.
Bug filed as SQ-1124.

Objects provided are

  • Connnector with no arrowhead
  • Connector with arrowhead
  • State
  • Start
  • End
  • CompositeState
  • ScrolledCompositeState
As with Package in Class ButtonBar, the scroll bars in ScrolledCompositeState are not correctly placed, and it is necessary to resize the work area to fix the scrollbars.
Bug filed as SQ-1125.
  • Save GIF

Bug filed as SQ-1124

FSM Flap (eToyFriendly off)

A parts bin for UML FSM components, labels, and connectors.

FSM Flap is implemented as the  in the  category in Squeak.

Gee-Mail (not in Object Catalog)

Gee-Mail is available on the Widgets Flap. It provides a place to present annotated content. Its Halo menu has options for making it a book with 1-4 columns.

GeeMail is a scrolling playfield with a text morph (typically on the left) and room on the right for other morphs to be placed. The morphs on the right can be linked to text selections on the left so that they remain positioned beside the pertinent text as the text is reflowed. Probably the best thing is and[sic] example and Alan will be making some available soon.

GlyphEditor (not in Object Catalog)

The GlyphEditor occurs as a component of the Arrow Editor. It displays a 256-character TTSampleFont in a 16 by 16 array, and has an area for showing a magnified version of a selected character, and another for showing a line with the selected character as arrowheads on the ends of the line, in a Bordered rectangle.

GlyphEditor is implemented using Flaps, FlapTabs, and NCPartsBin classes in Squeak.

This is a bizarre object, whose purpose is not explained.

Grab Patch

Grab Patch is implemented in Squeak as GrabPatchMorph in the Morphic-Widgets category.

Gradient (no category)

A rectangle with a vertical color gradient.

Can the direction of the gradient be controlled in Etoys? Apparently not.
Gradient was implemented as a GradientFillMorph, now obsolete, in the Morphic-Widgets category in Squeak.

Gradient (slanted) (no category)

A rectangle with a diagonal color gradient, top left to bottom right.

Can the direction of the gradient be controlled in Etoys? Apparently not.
Gradient (slanted) is implemented as a GradientFillMorph in the Morphic-Widgets category in Squeak. It is better to use a BorderedMorph with an appropriate fill style.

Graph (no category)

A graph of numbers, normalized so the full range of values just fits my height. I support a movable cursor that can be dragged with the mouse.

The following tiles are added to the basic category in the viewer.

play

Play the current graph as a sound

cursor

The current cursor location, wrapped back to the beginning if appropriate

sample at cursor

The sample value at the current cursor location

Graph has a special viewer category called sampling.

 

play

Play the current graph as a sound

clear

Remove all values

cursor

The current cursor location, wrapped back to the beginning if appropriate

sample at cursor

The sample value at the current cursor location

last value

The last value obtained

clear

Clear the graph of current contents

load sine wave

Load a sine wave as the current graph

load sound

Load the specified sound into the current graph

reverse

Reverse the graphGraph (no category)

Graph a sound or other input. This can be any sound on the Viewer sound menu, or any sound created in a wave editor. The Halo menu has an option for opening the WaveEditor object. The Viewer for Graph has a category called sampling.

Graph is used by Bouncing Atoms to show the progress of infections.

Graph is implemented as GraphMorph, a subclass of RectangleMorph in the Morphic-Widgets category in Squeak.

graph paper (eToyFriendly off)

Categories in the viewer for GraphPaper include collections and playfield.

Presumably there are graphing functions associated with GraphPaper, but I don't see them.

GraphPaper is implemented as a PasteUpMorph.

Halo (not in Object Catalog)

This morph provides a Halo of ThreePhaseButton handles for its target morph. Dragging, duplicating, rotating, and resizing are to be done either by clicking, or by clicking and dragging, the appropriate handle. There are also handles for help and for a menu of infrequently used operations.

In most cases it is not possible to right-click on a Halo to get its Halo. The Halo for the world is an exception, where it is possible to open a viewer on Halo or get a scripting tile for it. However, selecting the menu in this halo results in an error: MessageNotUnderstood: UndefinedObject>>isTextMorph. In some cases, one can select individual buttons in the Halo and get their Halos.

Halo is implemented in the HaloMorph (a subclass of Morph) and HaloSpec (a subclass of Object) classes, in the Morphic-Widgets category in Squeak.

Hand Magnifier (no category)

Similar to Magnifier, FishEye, and RoundGlass, Hand Magnifier displays a magnified portion of the screen, with a dot to show the cursor's location in the magnified image.

Happy face (eToyFriendly off)


A Morph. An optional text block can be added via a Halo menu selection. It displays over the face graphic.

Happy face is implemented as an NCCurveMorph.

Holder (Scripting category)

The Holder object "holds" or contains other objects. Each object contained by the Holder is assigned a cursor number. Objects inside the Holder can be re-arranged by simply moving them around in the Holder. The individual objects inside the Holder may be referenced using the object's cursor number by assigning the cursor number to the Holder's cursor property. This feature makes Holder objects useful for iterating through objects. Some potential uses are:

  • organizing animation frames or containing different "looks" for a sketch. For an example of how to do this click on "Gallery of Projects" when you first open Etoys, then look at any of the "Frame-based Animations." You can start with "BouncingBallAnimation" to get the basic scripting needed. It works by increasing the cursor of the "ball" Holder and then using the "looks like" tile from the "ball"'s Viewer in the Graphics category.
  • holding data for graphing (see: we should have an example for this, I created one buts it's too complex. Need a very simple basic one to show how you can graph)
  • holding text for creating a comic book (see: Conversation 2 in Showcase)
  • learning about iteration

A Holder is implemented in Squeak as a special case of Playfield with these "playfield options" menu items checked.

  • auto-linelayout
  • behave like holder
  • indicate cursor
  • resize to fit

Iconic Button (not in Object Catalog)

A "Simple Button" in which the appearance is provided by a Form (Graphics-Display Objects), a type of image. The Form is turned into a Thumbnail (Morphic-PartsBin), which is then painted on the button.

Iconic Button is implemented in the IconicButton class, a subclass of SimpleButtonMorph, in the Morphic-Widgets category in Squeak.

Image (no category)

A non-editable picture.

Can one substitute another picture in Etoys? It is done with #image: in Squeak. But how do I find out the Squeak name of an Etoys object such as a Sketch?

Implemented as ImageMorph, a subclass of Morph, in the Morphic-Basic category in Squeak.

Joystick

Joystick is implemented in the JoystickMorph class, a subclass of SketchMorph, in the Morphic-Widgets category in Squeak.

Key press

Key press is implemented in the KeyPressMorph class, a subclass of NCOffsetConstraintMorph, in the Connectors-Text-Base category in Squeak.

Label (eToyFriendly off)

Visually, Label is a borderless text. Its Halo menu offers a number of connection options.

The attach to... option gives the user a dot to drop on an object. The label is placed at the top of the target object. If more than one object is below the drop point, the label is not simply attached to the topmost one. Instead, a menu appears to allow the user to select among the stacked objects. Once the label is attached to an object with this method, it can be dragged anywhere in the World and still remain connected to the same target object. Dropping it on a different object breaks the association with the previous target.

The following are mutually exclusive options. Clicking the box to select one deselects the previous option. Select one and drop the label on the object you want to connect to. If you move the label with the black Halo tool, the connection is not made immediately. In this case, the user can drag the object to set the connection.

connect to center Whether or not there is an attachment point there

connect to nearest attachment point Nearest to the drop point, within the target object

connect to nearest point to center Apparently this connects to the point on the boundary of the target object nearest to the center of the label.

connect to relative point... Get a Pin to place in the target object to specify where to connect. This can override other selections, unless the pin is deleted or moved away.

no connection preference Connect anywhere

connect to nothing Do not connect to object

Label is implemented in the NCLabelMorph class, a subclass of Morph, in the Etoys-Input category in Squeak.

Lasso

Lasso is implemented in the LassoPatchMorph class, a subclass of ImageMorph, in the Morphic-Widgets category in Squeak.

Led (Not in Object Catalog)

A graphic simulation of an LED numeric display, used for showing the score in Tetris. It is made up of LedDigits. The value displayed is not accessible in Etoys, and must be set or read using Squeak.

Led is implemented in the LedMorph class, a subclass of Morph, in the Morphic-Leds category in Squeak.

LedDigit (Not in Object Catalog)

A graphic simulation of a single digit in an LED numeric display as a component of Led. The value displayed is not accessible in Etoys, and must be set or read using Squeak.

LedDigit is implemented in the LedDigitMorph class, a subclass of Morph, in the Morphic-Leds category in Squeak.

Menu (not in Object Catalog)

A vertical list of MenuItems with a toolbar at the top containing a close button and a title. There is no collections category in the viewer for accessing menu items in Etoys. Lines in a menu are implemented as MenuItemMorph objects.

Morph

Morph (not in Object Catalog)

A graphical object. Many Etoys objects wear subclasses of Morph as costumes.

Movie Player

A player for MPEG Movies, almost identical to MPEG Player (Multimedia category) except for its name and Help text. Movie Player appears in the Widgets Flap.

MVCMenu (not in Object Catalog)

in a StandardViewer, when the search in the SearchingViewer fails, the result is shown in an MVCMenu object. In Cipher, an MVCMenu presents a yes/no choice, whether to discard typing or leave it as is. Attempting to open a StandardViewer on an MVCMenu dismisses the MVCMenu, and thus the viewer.

NCCurveMorph

This class is used to implement a variety of forms.

  • AND gate
  • Apple with bite contours
  • Buffer Gate
  • Circle
  • Diamond
  • Happy face
  • Infinity in circle
  • Inverter gate
  • Or gate
  • pointing hand
  • Sad face
  • Thick rectangle
  • Xor gate

NebraskaServer (no category)

A button to start the Nebraska desktop sharing server. It puts a button marked Share in the world. Clicking the button opens a dialog box to ask the user's name. This name is then attached to the cursor.

Then what? What can you do with the name? I know of no place to put it down. The name is just stuck to the cursor, and the user can mouse normally as though it were not there.

NebraskaServer is implemented in the NebraskaServer class, a subclass of Model, in the Nebraska-Morphic-Remote category in Squeak.

New Button Flap (not in Object Catalog)

Where did my text go? 

Next Page (Multimedia category)

A control for books to go to the following page.

Note (eToyFriendly off)

A UML entity.

ObjectProperties

Preferences settings dialog for Morphs. On the Halo menu, select halo actions and then property sheet.

Objects (not in Object Catalog)

A flap containing a selection of common Etoys objects organized in the same way as the Object Catalog, that is, in an alphabetic list, in categories, and with a search function.

OR Gate (eToyFriendly off)

This Morph has the shape of an OR logic gate symbol for use in electronics diagrams, but does not have the appropriate connection points to use in that manner.

Page (not in Object Catalog)

A component used in the Book Object. Special Viewer categories:

collections


pen trails


playfield

Page Controls (not in Object Catalog)

A toolbar used in the Book Object, holding buttons and and the page number display.

Paint (no category)

That is correct. Paint is not in the Graphics category. Why not?

Opens a PaintBox, shown below, for editing graphics.

The tools shown are

  • A paintbrush for drawing dots and curves
  • A bucket for filling areas
  • An eyedropper for picking colors
  • An eraser for removing portions of the image
  • Three buttons for selecting brush sizes
  • An icon for opening a color picker, thus:
color picker missing
  • Four buttons: Undo, Keep, Clear, Toss for deciding what to do with the current image.

Undo reverts the last action.

Keep saves the image and closes the PaintBox. It can be reopened from the image's tool Halo.

Clear goes back to a blank image for starting over.

Toss destroys the image object and closes the PaintBox.

  • Eight areas for saving colors while working.
  • A tab to open up a scrollable palette of five rubber-stamp icons, of which three are visible at one time. Select a rubber stamp, then click and drag to select an image to apply to that stamp.
  • A tab to open up a menu of shapes: line, square, circle, polygon, star. These shapes come with control points, so that they can be placed and then edited in various ways until the user goes on to some other action.

Paint Flap (not in Object Catalog)

A flap that opens into a PaintBox and a sketching area, similar to Paint.

Where can this be found?

Parameters (not in Object Catalog)

A browser for the system parameters dictionary, including settings such as fonts, Halo options, and much more. It is available from the Inspect Parameters button in an extended Preferences view on the Search (?) page.

parts bin (not in Object Catalog)

A component of the Button Flap and the Connectors Flap, permitting users to add objects and retrieve copies. Contrary to the usual convention, the name of parts bin is all lower case. Special categories in the Viewer for parts bin are connections, pen trails, and playfield.

More needed.

Parts bin Halo menu.


PDA

Components of PDA include 

  • PluggableList and LazyList for data panes
  • PluggableText for displaying details of a person or event
  • PDAChoice for searching among contacts
  • Month and Week for calendar
  • PDAClock for time
  • ScrollBars for navigating in panes
  • SimpleSwitches to represent days in the calendar

PDA (no category)

Where is it?

PhonePad (no category)

A device for dialing by tone. You can create the tones by clicking the keys one at a time or enter a key sequence from the menu or from a tile in the special viewer category phonepad which has one tile.

  • PhonePad dial to abc dials the telephone number in "abc".
Then what? What does dialing a phone number in Etoys accomplish?

PhraseTile (not in Object Catalog)

Within a ViewerLine for a command tile in a StandardViewer, the name of the Object and the command appear on a PhraseTile together. The Object name is on a TilePad containing a Tile containing a String. The command name is on a Tile containing a String.

Player (not in Object Catalog)

All scriptable objects in Etoys appear as Players wearing Morphs as costumes.

Players (Scripting category)

The Players Halo menu has one special item, invigorate, which refreshes the Players list.

What could cause the Players list to get out of sync?

The fundamental user-scriptable entity.  Always represented by a user-specific subclass of Player; instance vars and methods relate to user-defined variables and scripts.

costume  is a Morph, the primary morph I am currently wearing for graphical display.

Scripts are defined in subclasses of Player.  These are UniClasses.

Messages in scripts are sent to Players.  A Player may delegate to its costume, or to an object the costume suggests.  Or, a Player may designate some other object to receive the script messages it does not understand. (see doesNotUnderstand:)

The AllPlayers tool displays all objects for which scripts are defined

Text missing
unscriptedPlayer, Player, Etoys-Scripting

Player, Model, Etoys-Scripting

Pluggable Button (not in Object Catalog)

A PluggableButtonView is a combination of an indicator for a boolean value stored in its model and an action button. The action of a button is often, but not always, to toggle the boolean value that it shows. Its pluggable selectors are:

        getStateSelector        fetch a boolean value from the model
        actionSelector        invoke this button's action on the model

Either of the above selectors can be nil, meaning that the model does not supply behavior for the given action, and the default behavior should be used. For example, if getStateSelector is nil, then this button shows the state of a read-only boolean that is always false.

A component of the file dialog in GStreamerPlayer, used for ok and cancel buttons.

Pluggable List (not in Object Catalog)

A component of file dialogs, showing the files in a selected directory.

Pointing Hand (eToyFriendly off)


A Morph of a right hand pointing straight up. It has a Text object associated with it, configured to a single column of letters in 24 pt Bitstream Vera Sans.

Pointing Hand2 (eToyFriendly off)


A Morph of a right hand pointing to the right. It has a Text object associated with it, in 18 pt Bitstream Vera Sans. 

Preferences (no category)

Allows you to control numerous options from several categories, as shown below. Details of available options and their effects are provided in the Preferences Appendix.

Clicking the ? icon brings up a search box, various options for handling sets of preference settings, and a Help! button. Clicking the Help! button brings up a window containing descriptions of all of the preference options.

Clicking on any category name shows a list of preferences with check boxes for selecting them. Clicking a preference name brings up a menu of options and commands for that preference. For example:

Clicking the selection box next to a preference toggles it on or off.

Previous Page (Multimedia category)

A control for books to go to the preceding page.

ProjectHistory (no category)

A tool showing a list of recently-visited projects that lets the user navigate back to any of them. Use the back button on the toolbar to return from any of them to the project where you have the ProjectHistory displayed.

RoundGlass (no category)

Similar to the Magnifier, except that it screens its display in a circle instead of a square.

show screen onlydisplays the RoundGlass as a Morph, thus.

show source only displays a magnified portion of the screen in a square around the location of the cursor, thus.

show screen over sourcedisplays the Morph of the screen, with portions of the magnified area around it filling a square area, thus.

show source screeneddisplays a magnified view inside the boundary of the screen, thus.

This is the most useful view.

exchange source and screenswaps the source and screen for purposes of the other options on this menu. With source and screen exchange, selectingshow source onlywill instead display the screen.

Row (no category)

An object that presents the things within it in a horizontal row. It is initially filled with a random number of egg Morphs of random colors, as in these two examples.

Drag and drop objects into it and remove the default objects if desired to create the desired display. Here is a row of Morphs.

One can also create rows of buttons and other controls.

Ruler (no category)

A rectangle which continuously reports its size in pixels, thus. Here the Ruler is being resized with a Halo handle.

Ruler is implemented in the RulerMorph class, a subclass of RectangleMorph, in the Morphic-Widgets category in Squeak.

Sad face (eToyFriendly off)


A Morph with an associated Text.

Scripting Tile Holder (not in Object Catalog)

Dragging a tile from the viewer to the world playfield opens a Script Editor containing that tile. Dragging the tile out of the Script Editor to the world opens a Scripting Tile Holder to hold the scripting tile.

Scripting Tile Holder holds tiles in viewer category panes, in Script Editors, and separately in the world.

Scrolled State (eToyFriendly off)

A UML element.

Search Pane (not in Object Catalog)

A field to type a search term in the find view of Object Catalog. The search is performed for each letter changed.

SearchingViewer (not in Object Catalog)

The Searching Viewer is a component of the StandardViewer that provides a search capability for finding scripting tiles by name rather than by category.

SearchingViewer is constructed from a ThreePhaseButton close button, a Button labeled Search, and an UpdatingString for entering the search term.

SimpleHierarchicalList (not in Object Catalog)

Occurs as a list of files in a directory within the file dialog of various objects.

SimpleSwitch (not in Object Catalog)

Used for days in the calendar in PDA. These have two states, selected and deselected, which can trigger other events such as information displays in PDA.

Sketch (not in Object Catalog)

An editable image created by Paint. Select the gray pencil icon from the tools Halo to open a PaintBox, or select Paint Box from the Object Catalog. Paint the desired form, and select Keep to make it a Sketch object.

SketchEditor (not in Object Catalog)

SketchEditor is a rectangular area for drawing with a PaintBox to create a Sketch. The Paint tool opens both a Paintbox and a SketchEditor.

Smart Label (eToyFriendly off, Connectors category)


Smart Label looks just like label, but behaves differently. it is programmed to be attached to a Morph and follow it, with the intention of keeping out of the way of other objects. However, multiple smart labels attached to the same object will sometimes overlap.

StandardViewer (not in Object Catalog)

The Viewer for Objects invoked with the light blue eye tool in the Object's Halo. Its use is described in the User Interface chapter.

The StandardViewer is constructed from CategoryViewers (ViewerLine, PhraseTile, TilePad), an optional SearchingViewer for finding tiles by name, and common toolbar components such as Buttons, ThreePhaseButtons, and UpdatingStrings.

The toolbar at the top of a StandardViewer contains a button for creating a new variable, a Menu, and a button to open an additional category pane. Clicking the bar at the top of a category pane brings up an MVCMenu of categories to display.

An MVCMenu containing the message "no matches found for" the object also appears when a search in the SearchingViewer turns up no matches. The only menu item is ok. 

Start State (eToyFriendly off, no category)


A UML FSM element, representing the initial state of a Finite State Machine, implemented using NCEllipseMorph.

State (eToyFriendly off, no category)


A UML element.

Status  (no category)

A row of three buttons to run, stop, or single-step scripts, identical to the buttons in All Scripts and to Script Controls.

How does one link scripts to an instance of Status? Unlike All Scripts, it is not automatically connected.

STClass (eToyFriendly off, no category)

A UML element.

Storyboard (no category)

A storyboard authoring tool with the same controls as Book. The difference is that each page of a Storyboard contains a Playfield.

String (not in Object Catalog)

A text string. Strings occur as Button text, Clock numerals, and other UI elements. To edit the text of a string, shift-click.

Tab Pane (not in Object Catalog)

Used in Object Catalog for the alphabet buttons.

Text (border) (no category)


A text object intended to carry user-created textual content. The default mode is to be non-wrapping, so that the only wrapping that takes place will be that imposed by explicit carriage-returns in the text. The user can manually (from the Halo menu) change the wrap setting. It is also automatically switched to wrap mode if the user manually resizes the text object (with the halo) and also if the user, by typing, makes the text object extend off the right edge of the screen.

Text chat (no category)


A tool for sending messages to other Squeak users.

How does this work? The menu buttons do nothing.
Send with Return button. What is this for?

Bug: Text Chat appears with its scroll bars misplaced. Clicking the scroll bars causes them to move to where they belong.

Text chat+ (no category)


A tool for sending messages to several Squeak users at once. Clicking the area showing the number of people connected to opens a dialog box for adding identifiers of others to chat with.

Bugs: Scroll bars appear in incorrect position, but position themselves correctly when clicked. The menu buttons at the tops of the scroll bars do nothing when clicked.

How is this supposed to work?

Text Properties (not in Object Catalog)

A dialog box for setting text properties, including color, auto-fit, wrapping, size, and various style options. The bottom row of controls are Accept, to apply the current selections, Cancel, to revert to the previous settings, and Main, to open the full preferences dialog in ObjectProperties. Text Properties is provided on the Halo menu of any text object, including Clipboard, Text, and so on.

Thread Navigator (no category)


A tool that lets you navigate through a thread of projects. When you drag out the thread navigator, it immediately attaches itself to the lower right. Clicking the orange circle at the center gives a list of commands to choose from to navigate through projects.

switch to recent projects

create a new thread

edit this thread

create thread of all projects

First project in thread

Last project in thread

Jump within this thread

Insert new project

simply close this navigator

destroy this thread

remember preferred location in this project

start keyboard navigation with this thread

Get explanations for these actions

Orange next and previous arrows appear at the right and left to allow navigation.

For example, you can create a thread of all projects and a holder appears with all the projects currently available. You can drag the projects to change the order and when you click the "okay" button, you are asked to supply a name for the thread navigator.

Three Phase Button (not in Object Catalog)

A button morph with separate images and actions for on, off, and pressed with the mouse.

Tick Indicator (not in Object Catalog)

Tick Indicator is a component of the toolbar on Script Editor. It has the appearance of a clock that changes color with the state of the program, as described in the User Interface chapter. Clicking the Tick Indicator sets the program ticking, unless it is already ticking, when it pauses the script.

Tile (not in Object Catalog)

Tile appears as a component in StandardViewer, in the following nesting of objects

StandardViewer

   CategoryViewer

    ViewerLine

      Phrase Tile

        Tile

TilePad (not in Object Catalog)

TilePad appears as a component in StandardViewer, in the following nesting of objects

StandardViewer

CategoryViewer

ViewerLine

Phrase Tile

TrueType banner (no category)


A short text in a beautiful font. Use the resize handle to change size. Menu options are

turn off smoothing resulting in more jagged rendering of the font

edit contents…Open a text editing window, which defaults to "some text", not to the original contents.

how to find more fonts… Opens a help window with information on the FontGuy.com Web site, and instructions for downloading and installing fonts.

load font from web… Opens a window for the URL of a font on the Web, downloads the font, and installs it.

How does the user change font? Unlike ordinary text objects, this does not have the font and style tools in its Halo. It seems perverse to be able to get fonts from the Web and then not be able to use them. I see how to do it in Squeak, using the font: method.

TTSampleFont (not in Object Catalog)

The TTSampleFont occurs within an enclosing GlyphEditor in the Arrow Editor. It displays a 256-character font in a 16 by 16 array. Its halo has an unusual center tool that provides one of the following font samples, according to which font is currently displayed.

UML Package (eToyFriendly off)

A UML element, very similar to the Package2 element from the Class ButtonBar, with a TextRectangle as the tab at the upper left, and a BasicShape as the rectangular body.

UpdatingString (not in Object Catalog)

A StringMorph that constantly tries to show the current data from the target object.  When sent #step, it shows what the target object has (target perform: getSelector).  When edited, it writes back to the target.

ViewerLine (not in Object Catalog)

Within a CategoryViewer in a StandardViewer, each ViewerLine offers a scripting tile for use or editing. These ViewerLines are made up of various components.

  • A command tile consists of a ThreePhaseButton for running the script, with the ! icon, and a PhraseTile holding the command.
  • A variable tile consists of an IconicButton for a menu, Tiles bearing text Strings for Object and variable names, a Rectangle containing an image of the assignment arrow, a Morph bearing an image for editing arrows, and a Readout String for the value.
  • A test tile is made of Tiles bearing Texts.
  • A Test Yes No control structure tile contains a Phrase Tile which in turn contains Test, Yes, and No tiles. 

Welcome (no category)

A sign that you accept morphs dropped directly into your world.

What does that mean? What world? Give use case with a specific sequence of actions illustrating the difference with and without this.

Workspace (eToyFriendly off, no category)

A Workspace is a simple window for editing text, executing it as Squeak, and opening various tools for getting information about terms in the text. An essential gateway to Squeak programming. You can later save the contents to a file if you desire. Bring up a workspace with the ctrl-k keyboard shortcut.

Halo menu commands for Workspace include

add title...

set target...

add item...

add line

The menu button on the Workspace toolbar his these commands:

change title...

send to back

make next-to-topmost

make unclosable

make undraggable

full screen

window color...

save contents to file...

append contents of file...

create textual references to dropped morphs

Add descriptions for the Halo menu and toolbar menu commands above.

World (not in Object Catalog)

The world is the main project page you see when you open an Etoys project. It is basically a playfield (see chapter 5.x, playfields). Because of that the world can contain individual objects within it, such as drawings, but can also contain more complicated objects such as books, which tend to be made up of many different objects.

World Buttons

If you click with the right mouse button on the world, you'll see the world's halo, which is simpler than other halos, containing only five buttons.

ThreePhaseButtonThe pink eyedropper which allows you to change the world's color by picking a color from anywhere on the screen.

ThreePhaseButtonThe gray pencil allows you to draw directly onto the world by bringing up the painting tool and using the whole screen as a canvas. Every object you draw directly on the world will be embedded in the world and will be locked (which makes it inert to all user interactions). To change that behavior, repeatedly right click on the object and use the objects menu (see chapter ... for more information about objects menus).

ThreePhaseButtonThe turquoise eye brings up the viewer for the world. Note that the world's viewer has a simpler set of tiles within it that don't give you all the options of other types of objects. (See chapter 3 for more information on tiles.)

ThreePhaseButtonOrangeThe orange icon will give you a tile representing the world. This way you can add a reference to the world in a script.

ThreePhaseButtonA click on the menu icon gives you several options.

World's options

about this system- This option shows you what version of Etoys you are running and allows you to open the license information.

redraw screen- This option will redraw your entire screen.

preferences- This entry opens the preference pane, where you can change the default preferences. You can find out more about the available preferences in chapter ...

authoring tools- This menu option allows you to view authoring tools that control the world. These include options such as "remove all viewers" and "etoy vocabulary summary" as well as "attempt misc repairs."

display mode- This menu option allows you to scale your project to fit screens other than XO laptop screens.

desktop color- This menu option lets you change how the world's background looks, and includes options such as gradient fill, and bitmap fill.

pen trails- This menu option lets you control how the pen trails from all objects (but not the objects within those objects) within the World behave. You can, for example, make all pen trails arrowheads, make all pens up, clear all pen trails, etc.

playfield options- This menu option opens the playfield menu for the world. You can find more information about playfield menu in chapter ...

XOR Gate (eToyFriendly off)


This Morph has the shape of a XOR logic gate symbol for use in electronics diagrams, but does not have the appropriate connection points to use in that manner.

Zip Tool (no category)

Right-clicking Zip Tool shows it as an Untitled Window. This name can be changed by the user.

Zip Tool has the Halo menu items

open editing What does this do?

edit label... Open a FillInThe Blank for editing the title for the Zip Tool.

A viewer and editor for Zip archive files.

There has been error in communication with Booktype server. Not sure right now where is the problem.

You should refresh this page.