Microsoft Small Basic

Program Listing: PJV759
'WINDOW
GraphicsWindow.Hide()
GraphicsWindow.Width = 600
GraphicsWindow.Height = 400
GraphicsWindow.Left = (1366 - 600) / 2
GraphicsWindow.Top = 50
GraphicsWindow.Title = "Add Rectangle"
GraphicsWindow.CanResize = "false"

'MOUSE_DOWN
GraphicsWindow.MouseDown = mousedown
Sub mousedown
x = GraphicsWindow.MouseX
y = GraphicsWindow.MouseY

GraphicsWindow.BrushColor = "blue"
GraphicsWindow.PenColor = "blue"
rec1 = Shapes.AddRectangle(5, 5)
Shapes.Move(rec1, x - 2.5, y - 2.5)
rec3 = Shapes.AddRectangle(5, 5)
EndSub

'MOUSE_MOVE
GraphicsWindow.MouseMove = mousemove
Sub mousemove
x = GraphicsWindow.MouseX
y = GraphicsWindow.MouseY

Shapes.Move(rec3, x - 2.5, y - 2.5)
EndSub

'MOUSE_UP
GraphicsWindow.MouseUp = mouseup
Sub mouseup
x = GraphicsWindow.MouseX
y = GraphicsWindow.MouseY

GraphicsWindow.BrushColor = "blue"
GraphicsWindow.PenColor = "blue"
rec2 = Shapes.AddRectangle(1, 1)
Shapes.Move(rec2, x - 2.5, y - 2.5)

getleftrec1 = Shapes.GetLeft(rec1)
gettoprec1 = Shapes.GetTop(rec1)

getleftrec2 = Shapes.GetLeft(rec2)
gettoprec2 = Shapes.GetTop(rec2)

GraphicsWindow.PenColor = "black"
Shapes.AddLine(getleftrec1, gettoprec1, getleftrec2, gettoprec1)
Shapes.AddLine(getleftrec1, gettoprec2, getleftrec2, gettoprec2)
Shapes.AddLine(getleftrec1, gettoprec1, getleftrec1, gettoprec2)
Shapes.AddLine(getleftrec2, gettoprec1, getleftrec2, gettoprec2)

Shapes.HideShape(rec1)
Shapes.HideShape(rec2)
Shapes.HideShape(rec3)
EndSub

'SHOW_WINDOW
GraphicsWindow.Show()