BBjTree::setNodeEditable

Description

Specifies whether a node in the BBjTree control is to be editable.

Syntax

Return Value Method
void setNodeEditable(int ID, boolean editable)

Parameters

Parameter Description
ID Specifies the ID of the node.
editable

Sets whether or not the node is editable.

true (1) = Editable

false (0) = Not Editable

Return Value

None.

Remarks

Nodes are editable by default when BBjTree::isTreeEditable returns true (1). This method can then be used to set specific nodes to not be editable.

Example

rem 'Set a node to be non-editable in 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 'Make the tree editable
myTree!.setTreeEditable(mySysGui!.TRUE)

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 'Set the node ("Willie Nelson") not to be editable
myTree!.setNodeEditable(SONG_PARENT_ID, mySysGui!.FALSE)

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

See Also

BBjAPI

BBjSysGui

BBjControl

BBjWindow

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