BBjWindow::getDrawPanel

Description

In BBj 16.0 and higher, this method returns the BBjDrawPanel for this BBjWindow.

Syntax

Return Value

Method

BBjDrawPanel

getDrawPanel()

Parameters

None.

Return Value

In BBj 16.0 and higher, this method returns the BBjDrawPanel for this BBjWindow.

Remarks

Prior to BBj 16.0, the core functionality of the BBjDrawPanel is available through drawing mnemonics. The corresponding mnemonics, if any, are noted in the See Also section of each method.

Example

rem ' BBjWindow::getDrawPanel

sysgui = unt
open (sysgui)"X0"
sysgui! = bbjapi().getSysGui()
title$ = "BBjWindow::getDrawPanel"
window! = sysgui!.addWindow(25,25,1200,750,title$,$00090003$)
window!.setCallback(window!.ON_CLOSE,"eoj")
window!.setTrack(0)
window!.setFont(sysgui!.makeFont("Courier New",10,0))
drawpanel! = window!.getDrawPanel()
drawpanel!.setPattern(3)
drawpanel!.setPenColor(BBjColor.BLUE)
drawpanel!.setFillColor(BBjColor.GREEN)
drawpanel!.setTextColor(BBjColor.BLUE)
drawpanel!.setRound(3,3)
drawpanel!.drawText(10,25,"Shape")
drawpanel!.drawText(10,55,"drawPoint")
drawpanel!.drawText(10,100,"drawRect")
drawpanel!.drawText(10,175,"drawArc")
drawpanel!.drawText(10,225,"drawArc")
drawpanel!.drawText(10,325,"drawEllipse")
drawpanel!.drawText(10,400,"drawArrow")
drawpanel!.drawText(10,450,"drawArrow")
drawpanel!.drawText(10,500,"drawLine")
drawpanel!.drawText(10,575,"drawPolygon")
drawpanel!.drawText(10,675,"drawPolyline")
for fill = 0 to 10
    x = fill * 100 + 25
    drawpanel!.setFillType(fill)
    drawpanel!.setPattern(fill)
    drawpanel!.setPenWidth((fill+1)*0.25)
    drawpanel!.drawPoint(x+100,50)
    drawpanel!.drawText(x+85,25,"setFillType("+str(fill)+")")
    drawpanel!.drawRect(x+75,75,75,50)
    r1 = fill * Math.PI / 2
    r2 = r1 + Math.PI / 2
    drawpanel!.drawArc(x+100,175,25,1,r1,r2,1)
    drawpanel!.drawArc(x+100,225,25,1,r1,r2,0)
    drawpanel!.drawEllipse(x+75,275,75,50)
    adj = (fill-5) * 5
    drawpanel!.moveTo(x+75,400)
    drawpanel!.drawArrow(x+150,400+adj,0,1)
    drawpanel!.moveTo(x+75,450)
    drawpanel!.drawArrow(x+150,450+adj,1,0)
    drawpanel!.drawLine(x+75,500,x+150,525)
    points = fill + 3
    list! = bbjapi().makeVector()
    for point = 0 to points-1
        i = point * 2 * Math.PI / points
        px = int(40 * Math.cos(i) + 110 + x)
        py = int(40 * Math.sin(i) + 600)
        list!.add(px)
        list!.add(py)
    next point
    drawpanel!.drawPolygon(list!)
    list! = bbjapi().makeVector()
    for point = 0 to points-1
        i = point * 2 * Math.PI / points
        px = int(40 * Math.cos(i) + 110 + x)
        py = int(40 * Math.sin(i) + 700)
        list!.add(px)
        list!.add(py)
    next point
    drawpanel!.drawPolyline(list!)
next fill
process_events

eoj:
release

See Also

BBjAPI

BBjSysGui

BBjControl

BBjWindow

See the BBj Object Diagram for an illustration of the relationship between BBj Objects.