BBjTree::removeDescendants

Description

Removes all descendants of a node in the BBjTree control.

Syntax

Return Value

Method

void

removeDescendants(int ID)

Parameters

Variable

Description

ID

Specifies the ID of the node in which its descendants will be removed.

Return Value

None.

Remarks

This method will not remove the node itself.

Example

REM Remove all the descendant nodes from a node from a tree control

REM Obtain the instance of the BBjAPI object

LET myAPI!=BBjAPI()

REM Open the SysGui device

SYSGUI=UNT

OPEN (SYSGUI) "X0"

REM Obtain the instance of the BBjSysGui object

LET mySysGui!=myAPI!.getSysGui()

REM Set addWindow param values

X=10

Y=10

WIDTH=200

HEIGHT=200

TITLE$="BBj Window"

REM Set the current context

mySysGui!.setContext(0)

REM Create a window that is initially invisible

myWindow! = mySysGui!.addWindow(X,Y,WIDTH,HEIGHT,TITLE$,$00000012$)

REM Create the tree control on the window

myTree!=myWindow!.addTree(101,0,0,WIDTH,HEIGHT)

REM Create root node of tree

PARENT_ID=0

myTree!.setRoot(PARENT_ID,"Musical Tree")

REM Create array to hold ARTIST and songs

DIM MUSIC$[2,4]

MUSIC$[0,0]="The Beatles"

MUSIC$[0,1]="Hey Jude",MUSIC$[0,2]="Let It Be",MUSIC$[0,3]="Twist and Shout",MUSIC$[0,4]="Yesterday"

MUSIC$[1,0]="Paul Simon"

MUSIC$[1,1]="Bridge Over Troubled Waters",MUSIC$[1,2]="Hearts and Bones",MUSIC$[1,3]="Kathy's Song",MUSIC$[1,4]="The Sound of Silence"

MUSIC$[2,0]="Willie Nelson"

MUSIC$[2,1]="Always On My Mind",MUSIC$[2,2]="Getting Over You",MUSIC$[2,3]="Old Fords and Natural Stone",MUSIC$[2,4]="This Morning"

REM Add nodes to tree

FOR ARTIST=0 TO 2

    NODE_ID=NODE_ID+1

    REM Add the artists as expandable nodes on the tree control

    myTree!.addExpandableNode(NODE_ID,PARENT_ID,MUSIC$[ARTIST,0])

    SONG_PARENT_ID=NODE_ID

    FOR SONG=1 TO 4

NODE_ID=NODE_ID+1

        REM Add the songs as child nodes of the Artists on the tree control

myTree!.addNode(NODE_ID,SONG_PARENT_ID,MUSIC$[ARTIST,SONG])

    NEXT SONG

NEXT ARTIST

REM Remove all the descendant nodes from a node from a tree control, this

REM will remove all of the descendants (songs) of the parent node (Wille Nelson)

myTree!.removeDescendants(SONG_PARENT_ID)

REM Show the window

myWindow!.setVisible(mySysGui!.TRUE)

REM Register the CALLBACK routines

CALLBACK(ON_CLOSE,APP_CLOSE,mySysGui!.getContext())

REM Process Events

PROCESS_EVENTS

REM Callback routine called when the user closes the application window

APP_CLOSE:

RELEASE

RETURN

See Also

BBjAPI

BBjSysGui

BBjControl

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