DECLARE SUB txtTBox.Open ()
DECLARE SUB txtTBox.GetFileName ()
DECLARE SUB txtTBox.New ()
DECLARE SUB txtTBox.Save ()
DECLARE SUB mnuTBox.Load ()
DECLARE SUB mnuTBox.Show ()
DECLARE SUB txtTBox.Load ()
DECLARE SUB txtTBox.Show ()
DECLARE SUB txtTBox.SetFocus ()
'$INCLUDE: 'dialog.bi'
'$DYNAMIC
DIM txtTBoxInfo AS TextBoxType
DIM txtTBoxPtr(0) AS INTEGER
DIM txtTBoxArr(0) AS STRING
DIM txtTBoxTxt AS STRING
' load the text
txtTBox.Load
' create objects
DIM mnuTBoxIndex(0) AS MenuIdxType
DIM mnuTBoxItem(0) AS MenuItemType
DIM mnuTBoxInfo AS MenuGroupType
' menu variables
DIM KeyHit AS STRING
DIM Choice AS INTEGER
' load menu
mnuTBox.Load
' print initial screen
scrCurtain
mnuTBox.Show
txtTBox.Show
DO
txtTBox.SetFocus
Choice = 0
IF kbALT THEN Choice = Main.Menu%(mnuTBoxInfo, mnuTBoxIndex(), mnuTBoxItem())
SELECT CASE (Choice AND &HFF)
CASE 1
txtTBox.New
CASE 2
txtTBox.Open
CASE 3
txtTBox.Save
END SELECT
LOOP UNTIL (Choice AND 255) = 6
END
REM $STATIC
SUB mnuTBox.Load
SHARED mnuTBoxIndex() AS MenuIdxType
SHARED mnuTBoxItem() AS MenuItemType
SHARED mnuTBoxInfo AS MenuGroupType
mnuTBoxInfo.FileName = "textmenu.txt"
CALL mnuMaxData(mnuTBoxInfo)
CALL mnuLoad(mnuTBoxInfo, mnuTBoxIndex(), mnuTBoxItem())
END SUB
SUB mnuTBox.Show
SHARED mnuTBoxIndex() AS MenuIdxType
SHARED mnuTBoxItem() AS MenuItemType
SHARED mnuTBoxInfo AS MenuGroupType
CALL mnuShow(mnuTBoxInfo, mnuTBoxIndex(), mnuTBoxItem())
END SUB
SUB txtTBox.GetFileName
SHARED txtTBoxInfo AS TextBoxType
DIM inpName AS InputType
inpName.Corner.T = 5
inpName.Corner.L = 15
inpName.Corner.B = 7
inpName.Corner.R = 65
inpName.Border = TRUE
inpName.Shadow = TRUE
inpName.Caption = "Save As"
inpName.Text = "Name:"
inpName.Maxlen = 12
PCOPY 0, 1
CALL inpPrintItem(inpName)
FileX$ = txtTBoxInfo.FileName
IF Null(FileX$) THEN FileX$ = ""
FileX$ = Main.InputBox(inpName, FileX$)
IF NOT Null(FileX$) THEN
txtTBoxInfo.FileName = RTRIM$(LTRIM$(FileX$))
END IF
PCOPY 1, 0
END SUB
SUB txtTBox.Load
SHARED txtTBoxInfo AS TextBoxType
SHARED txtTBoxTxt AS STRING
txtTBoxInfo.Corner.T = 3
txtTBoxInfo.Corner.L = 3
txtTBoxInfo.Corner.B = 21
txtTBoxInfo.Corner.R = 77
txtTBoxInfo.Insert = TRUE
txtTBoxInfo.Shadow = TRUE
END SUB
SUB txtTBox.New
SHARED txtTBoxInfo AS TextBoxType
SHARED txtTBoxPtr() AS INTEGER
SHARED txtTBoxArr() AS STRING
SHARED txtTBoxTxt AS STRING
txtTBoxTxt = ""
txtTBoxInfo.FileName = ""
CALL txtFill(txtTBoxInfo, txtTBoxTxt, txtTBoxPtr(), txtTBoxArr())
END SUB
SUB txtTBox.Open
SHARED txtTBoxInfo AS TextBoxType
SHARED txtTBoxPtr() AS INTEGER
SHARED txtTBoxArr() AS STRING
SHARED txtTBoxTxt AS STRING
txtTBoxTxt = ""
txtTBoxInfo.FileName = ""
txtTBox.GetFileName
IF NOT Null(txtTBoxInfo.FileName) THEN
txtTBoxTxt = txtLoad$(txtTBoxInfo.FileName)
CALL txtFill(txtTBoxInfo, txtTBoxTxt, txtTBoxPtr(), txtTBoxArr())
END IF
END SUB
SUB txtTBox.Save
SHARED txtTBoxInfo AS TextBoxType
SHARED txtTBoxTxt AS STRING
' save the file if there is already a name
IF NOT Null(txtTBoxInfo.FileName) THEN
CALL txtSave(txtTBoxInfo, txtTBoxTxt)
ELSE
' ask for a name. If none is entered, then cancel
CALL txtTBox.GetFileName
IF NOT Null(txtTBoxInfo.FileName) THEN CALL txtSave(txtTBoxInfo, txtTBoxTxt)
END IF
END SUB
SUB txtTBox.SetFocus
SHARED txtTBoxInfo AS TextBoxType
SHARED txtTBoxPtr() AS INTEGER
SHARED txtTBoxArr() AS STRING
SHARED txtTBoxTxt AS STRING
CALL Main.TextBox(txtTBoxInfo, txtTBoxPtr(), txtTBoxArr(), txtTBoxTxt)
END SUB
SUB txtTBox.Show
SHARED txtTBoxInfo AS TextBoxType
CALL scrBox(txtTBoxInfo.Corner.T, txtTBoxInfo.Corner.L, txtTBoxInfo.Corner.B, txtTBoxInfo.Corner.R, txtTBoxInfo.Shadow)
END SUB