Eng:Scratch User Interface (1.4)

In designing Scratch, the Scratch Team's main priority was to make its language and development environment intuitive and easily learned by children who have had no previous programming experience. There is a strong contrast between the powerful multimedia functions and multi-threaded programming style and the rather limited scope of the Scratch programming language. So tasks easy in high-level programming languages are sometimes tough in Scratch (e.g. multidimensional arrays) while tasks easy in Scratch are hard in many high-level programming languages (sprite-like graphics, sensing the ambient noise, etc.).

The user interface for the Scratch development environment divides the screen into several panes: on the left is the blocks palette, in the middle the current sprite info and scripts area, and on the right the stage and sprite list. The block palette has code fragments (called "blocks") that can be dragged onto the scripts area to make programs (called projects). To keep the palette from being too big, it is organized into 8 groups of blocks: Control, Motion, Looks, Sound, Pen, Sensing, Operators, and Variables. In version 1.4, Numbers was renamed to Operators. Its name was changed because of the addition of blocks that dealt with strings in that section.

Palettes and Panes
Scratch has a simple and easy to use interface. Its design allows users of all ages and experience levels to create projects. In order to do this, the program divides the different parts of Scratch into Palettes and Panes.

Block Palette
The block palette allows you to drag blocks into the Scripts Area.

Script Area
Blocks from the Block Palette are dragged into the Scripts Area.

Sprite Header Pane
The Sprite Pane includes info about the selected sprite as well as a few tools for manipulating the sprite.


 * A sprite's name can be changed by clicking the box that contains the sprite's name.
 * The selected sprite can be manipulated by pressing one of the following buttons:
 * Lock Lets you lock or unlock a sprite. Unlocking it makes the sprite draggable (no scripts necessary). [[File:Draggable Sprite Feature (1.4).png]]
 * Circular Arrow Enables full rotation in a sprite.
 * Linear Arrow Enables the sprite to only face left or right.
 * "-" Disables Rotation. The sprite will remain facing 90 degrees no matter what.
 * Pressing and dragging the blue line located over the sprite will rotate the sprite.
 * Double clicking the sprite will return it to facing 90 degrees.
 * The sprite's X/Y coordinates as well as direction are listed.
 * If the pen is down, the color is shown.

Costume Pane
The Costume Pane contains a list of frames of the selected sprite.
 * It includes the name of the sprite and a preview image.
 * Clicking on frame will switch the sprite to the selected frame.
 * New costumes can be added to the list by pressing one of the following:
 * Paint Opens the Paint Editor.
 * Import A file browser is opened, allowing you to open a sprite file.
 * Camera Opens a web cam or external device to take a picture for a new costume.
 * Costumes can be edited by pressing the "Edit" button next to a sprite. This opens up the Paint Editor.
 * A Costume can be copied by pressing the "Copy" button next to the costume. This creates an identical duplicate of the selected costume.
 * A Costume can be deleted by pressing the "X" button to the right of the costume
 * A Costume can be renamed by clicking the box in which the Costumes name is listed.
 * Right-clicking a costume opens a drop-down list with two options:
 * Turn into new Sprite Turns the selected costume into a new sprite.
 * Export this Costume Exports the selected costume to a new sprite file.
 * Costumes can be rearranged by dragging them into the appropriate order in the list.

Sounds Pane
The Sounds Pane contains a list of audio clips.
 * Includes the name of the sounds and a thumbnail of a speaker.
 * Clicking the speaker icon will play the sound.
 * A new sound can be added to the list by pressing one of the following:
 * Record Opens the Sound Recorder. Audio can then be recorded from an external device.
 * Import A file browser is opened, allowing you to open an audio file.
 * A sound can be played by pressing the "►" button next to the speaker icon.
 * A sound can be stopped by pressing the "■" button next to the speaker icon.
 * A sound can be deleted by pressing the "X" button to the right of the sound icon.
 * A sound can be renamed by clicking the box in which the sounds name is listed.
 * Right-clicking a sound icon offers a drop-down list with a single option:
 * Export this Sound Exports the selected sound to a new audio file.
 * Sounds can be rearranged by dragging them into the appropriate order in the list.

Sprites Pane
The sprites pane contains a thumbnail view of all sprites.
 * Includes the name of the sprite with a thumbnail of the sprites current costume directly above.
 * A new sprite can be added by pressing one of the following: NewSpritebuttons.png
 * Paint Brush Opens the Paint Editor. A new sprite will be derived from your painting.
 * Folder Opens a file browser allowing you to open a sprite file.
 * "?" Selects a random sprite from your files and opens it.
 * Clicking a sprite opens up either the Script Area, Costume Pane, or Sounds Pane.
 * Dragging a Costume to a different sprite will insert that Costume into that sprites Costume Pane.
 * Dragging a sound to a different sprite will copy the sound into that sprites Sounds Pane.
 * Dragging a sprite onto another sprite will swap their location in the sprite pane.
 * Right Clicking a sprite offers a drop-down list with four options:
 * Show Shows the object (if hidden) and sends it to the front
 * Export this Sprite Opens up a file browser, allowing you to save your sprite along with any scripts in the selected sprite.
 * Duplicate Creates an identical copy of a sprite that includes scripts, costumes, and sounds..
 * Delete Deletes the Sprite.
 * Hovering over a sprite will open up a tan box that includes the name of the sprite and the amount of scripts it contains. The box automatically closes when your mouse leaves the sprite.
 * Dragging a script from one sprite to another sprites thumbnail will copy the scripts to that sprite.

Stage
The Stage is a "sprite" that represents the background of its project. Because of this, it has special features that are different from other sprites. No sprites can move behind the Stage the Stage is always at the back.
 * The stage has two buttons:
 * Green Flag Broadcasts to the When Green Flag Clicked block, starting the project.
 * Stop Sign Stops all scripts in all sprites.
 * Right-clicking the Stage offers a drop-down list with two options:
 * Grab Screen Region for New Sprite Allows you to select a rectangle. The selected area is then opened in the Paint Editor and becomes a new sprite.
 * Save Picture of Stage... Takes a screenshot of the stage.
 * Sprites can be dragged on the stage.
 * All of the "action" takes place here!

Toolbar
The toolbar at the top of the program contains many very important functions in Scratch.
 * On the far left is the text "Scratch"
 * Next is an image of a gray sphere or globe. Pressing this offers a drop-down list with all of the languages that Scratch is available in.
 * Next to the Language Button is a gray-scale image of a floppy-disc. Pressing this button opens up a file browser, allowing you to save your current project.
 * Next is an icon of an arrow over a folded orange paper. This button allows you to share your current project on the Scratch website.
 * Next there are several menu options:

File menu

 * New Starts a new project from a blank template.
 * Open Opens a file browser, allowing you to open an old project.
 * Save Saves the current project in the directory from which it came from. If the project is new it opens a file browser, allowing you to save a project as a new file.
 * Save as Opens a file browser, allowing you to save a project as a new file.
 * Import Project Opens a file browser, allowing you to open a project. Opening a project this way will keep the sprites from the project you were previously working on.
 * Export Sprite... Opens up a file browser, allowing you to save your sprite along with any scripts in the selected sprite.
 * Project Notes Opens the project notes for your current projects in a basic, built in text editor.
 * When shift-clicked, the following options appear, too:
 * Write Project Summary creates a   file with the detail of the project such as scripts in text form.
 * Write multiple project summaries
 * Quit Closes Scratch.

Edit menu

 * Undelete Undeletes a sprite, costume, sound, or script that was recently deleted.
 * Start Single-Stepping Executes the blocks slowly and highlights the ones being executed.
 * Set Single-Stepping Offers a Drop-Down List with the following options:
 * Turbo-Speed Executes scripts very quickly.
 * Normal Executes scripts at a normal rate.
 * Flash Block (Fast) Executes blocks at a fast rate (However it is still slower than normal) and flashes the blocks as they are executed.
 * Flash Block (Slow) Executes blocks very slowly and flashes the blocks when they are executed.
 * Compress Sounds Offers a drop down list with the following options:
 * High (Highest Quality)
 * Normal
 * Low
 * Lowest (Lowest Quality)
 * Cancel Cancels Compression
 * Compress Images Offers an input box requiring a number from 1-100. The higher the number the higher the quality. Low numbers result in high compression.
 * Show Motor Blocks Shows Motor Blocks in the Block Palette.

Share menu

 * Share this Project Online Sends the current project to the Scratch Website.
 * Go to Scratch Website Opens the Scratch Website.

Help menu

 * Help Page Opens your Internet browser to a list of tutorials.
 * Help Screens Opens your Internet browser to a tutorial on how to use each block.
 * About Scratch Displays info on your version of Scratch.

Stage Toolbar
The Stage Toolbar, located directly above the Stage, offers a few tools for manipulating the stage, sprites, costumes and sounds: To see more about the first 4 items, go here.
 * Stamp The Stamp button changes your mouse to a stamp. Clicking a sprite will duplicate that sprite.
 * Scissors The Scissors button will change your mouse to a pair of scissors. Clicking a sprite will then delete that sprite. (Hold Shift to Delete multiple Sprites)
 * Grow Sprite Changes your mouse to 4 arrows facing outward. Clicking on a sprite will increase its size.
 * Shrink Sprite Changes your mouse to 4 arrows facing inward. Clicking on a sprite will decrease its size.
 * Small Stage Pressing the "Switch to Small Stage" button decreases the size of the stage and increases the size of the script area.
 * Full Stage Pressing the "Switch to Full Stage" button sets the stage and script area to their default size.
 * Presentation Mode Pressing the "Switch to Presentation Mode" button sets the stage to full screen and minimizes all other palettes, panes, and other programs that you have open.