BBjInputD::isValid

Description

In BBj 4.0 and higher, this method returns whether the text in the BBjInputD control is a valid date.

Syntax

Return Value

Method

boolean

isValid()

Parameters

None.

Return Value

Returns whether the text in the BBjInputD control is a valid date (0 = No, 1 = Yes).

Remarks

None.

Example

rem 'Determine if an InputD control contains a valid date

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
myWindow! = mySysGui!.addWindow(X,Y,WIDTH,HEIGHT,TITLE$,$00010002$)

rem 'Add another control to show the effect of not being able to
rem 'move away from the INPUTD
myButton! = myWindow!.addButton(100,50,60,90,30,"Valid?",$$)

rem 'Add an InputD control that uses the current default mask, inserting
rem 'today's date when the user hits the restore key (normally ESCAPE)
myInputD! = myWindow!.addInputD(101,50,100,90,30,$080c$,"",$$,0,0)

rem 'When defining custom input rules, it may be useful to increase
rem 'to maximum input length of the control.
myInputD!.setLength(32)

rem 'Register the CALLBACK routines
CALLBACK(ON_BUTTON_PUSH,isValid,mySysGui!.getContext(),myButton!.getID())
CALLBACK(ON_LOST_FOCUS,validate,mySysGui!.getContext(),myInputD!.getID())
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

validate:
    if myInputD!.isValid() then return
    text$ = cvs(myInputD!.getText(),7)
    if text$="ME" then gosub setMonthEnd
return

setMonthEnd:
    today = jul(0,0,0)
    y = num(date(today:"%Y"))
    m = num(date(today:"%M"))
    for d = 28 to 30
        me = jul(y,m,d+1,err=*break)
    next d
    myInputD!.setValue(jul(y,m,d))
return

isValid:
    msg$ = myInputD!.getText()
    msg$ = msg$ + iff(myInputD!.isValid()," is "," is not")
    msg$ = msg$+" a valid date"
    i = msgbox(msg$)
return

See Also

BBjAPI

BBjSysGui

BBjControl

BBjWindow

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