Small Basic: Shapes Editor
This article introduces a Small Basic program called "Shapes". This is a program for editing picture with Small Basic Shapes objects.
Output of "Shapes" program is a Small Basic program which shows picture you created. So you can modify the output program to move and rotate the picture. Program RQB683-3 is a sample output program.
These instructions are for Shapes 1.5b.
Import as program ID XFZ657-15, remove comment from lines with File objects and save the program as "Shapes1_5b.smallbasic".
Click Pen Width menu and change the pen width. Click Pen Color menu and select pen color. Click Brush Color menu and select brush color.
Click Rectangle, Ellipse, Triangle or Line menu and drag on the window to draw these shapes. Created shapes can be re-sized or rotated to drag one of the pinches on the shape. Click twice on the menu to add shapes consecutively.
Select a shape and click Cut menu to cut the shape, Copy menu to copy the shape. After cut or copy, click Paste menu to paste the shape. Cut and Paste will change the shape z-order also.
Click Save menu to save shapes to a Small Basic file. On the textbox on Save popup window, push Ctrl+A and Ctrl+C to copy the source code, paste it to Small Basic IDE or your text editor and save it as a Small Basic program.
Click Open menu to read shapes from saved file. On the textbox on Open popup window, enter filename of the saved shapes program.
Following tools are for Shapes.
- Converter from Shapes to PowerPoint VBA (XQD349) - This tool converts shapes created with Shapes editor to a PowerPoint VBA macro. So created shape array can be converted to shapes in PowerPoint, then the shapes can be converted to a image file using [Save as Picture] option in PowerPoint. The PowerPoint file is uploaded here.
Following list shows typical versions of Shapes editor.
Version | Released | Program ID | Description |
0.72 | 2012-09-11 | XFZ657-7 | Oldest version which is introduced in Small Basic Forum. |
0.8 | 2012-09-12 | XFZ657-8 | Supported re-sizing shapes. |
0.9 | 2012-09-14 | XFZ657-9 | Supported rotating shapes. |
1.0 | 2012-09-15 | XFZ657-10 | Supported copy and paste. [*1] |
1.12 | 2012-09-18 | XFZ657-11 | Supported file input. [*2] |
1.2 | 2012-09-20 | XFZ657-12 | Supported shortcut keys. [*2] |
1.31 | 2012-09-20 | TLW744-0 | Supported palette loading and consecutive shapes addition. [*2] |
1.42 | 2012-10-16 | TLW744-3 | Supported cursor keys and new UI for shapes menu. [*2] |
1.5b | 2013-03-30 | XFZ657-15 | Supported to run output program in remote. |
1.7b | 2014-10-12 | XFZ657-16 | Supported grid and changed window size. [*3] |
2.02b | 2015-01-09 | XFZ657-19 | Supported SVG file format. [*4] |
2.1b | 2015-02-05 | - | Supported new. [*5] |
2.2b | 2015-10-10 | - | Bug fixed for Small Basic 1.2. Source code is in CodePlex. |
[*1] A part if this program is published as GTV460. This part outputs move and rotation code. You can insert GTV460 in WriteShapes subroutine if you need.
[*2] A part if this program is published as GTV460-0. This part outputs move and rotation code. You can insert GTV460-0 in WriteShapes subroutine if you need.
[*3] A part if this program is published as GTV460-1. This part is [Open] subroutines. You can replace GTV460-1 for dummy ReadShapes subroutine if you need.
[*4] Published version doesn't have comments. Full source code and binaries are uploaded to CodePlex.
[*5] Not published to be run in browser. Full source code and binaries are uploaded to CodePlex.
Following list shows known issues of Shapes 2.02b.
- "Shapes" doesn't work properly in remote environment (in a browser with Silverlight).
- Rotated Triangle and Line become wrong places.
- [Open] is not from file. But can be pasted from clipboard.
- [Save] creates only main and Shapes_Init subroutine. Other subroutines are not created.
Following list shows known issues of Shapes 2.2b.
- N/A
- [[articles:Wiki: Small Basic Portal]]
- Shapes Editor for Small Basic (Small Basic forum)
- Shapes Editor - Small Basic Featured Program (Small Basic blog)
- Small Basic and Office Suite (Small Basic blog)
- How do you get an image for your program? (Small Basic blog)
- Shapes in Small Basic (CodePlex)