home *** CD-ROM | disk | FTP | other *** search
/ Chip Hitware 6 A / CHIP_HITWARE6_A.iso / tools / Dana / Input.DAS < prev    next >
Text File  |  1998-02-23  |  2KB  |  78 lines

  1. '
  2. ' Quick type assistant
  3. '
  4. Const cFileName = "Input.LST"
  5. Dim hMenu%, hMenu2%
  6.  
  7. Main ()
  8.     Dim fp%, nRC%
  9.     Dim ins$,def$
  10.     Dim bBrk%
  11.     Do
  12.         LoadMenu()
  13.         nRC = DoMenu(hMenu)
  14.         Select Case nRC
  15.         Case -1
  16.             bBrk = True
  17.         Case 1000
  18.             'Register
  19.             def$ = GetSelected()
  20.             If def$ = "" Then
  21.                 def$ = GetCursorWord()
  22.             End If
  23.             ins$ = InputBox("Input a string to register", "", def$)
  24.             If Ins$ <> "" Then
  25.                 fp = FOpen(.HomePath + cFileName, "w")
  26.                 If fp <> 0 Then
  27.                     FSeek(fp, 0, 1)
  28.                     FPuts(fp, ins$ + Chr(10))
  29.                     FClose(fp)
  30.                 Else
  31.                     MsgBox("Failed to open file", "", 0)
  32.                 End If
  33.             End If
  34.         Case 1001
  35.             'Edit
  36.             FileOpen(.HomePath + cFileName, False)
  37.             bBrk = True
  38.         Case 1002
  39.             'Delete all
  40.             FKill(.HomePath + cFileName)
  41.         Case 1003
  42.             bBrk = True
  43.         Case Else
  44.             InsertString(Mid$(GetMenuItem(hMenu, nRC), 5))
  45.             bBrk = True
  46.         End Select
  47.         DiscardMenu(hMenu2)
  48.         DiscardMenu(hMenu)
  49.     Loop Until bBrk = True
  50. End
  51.  
  52. Proc LoadMenu()
  53.     Dim fp%
  54.     fp = FOpen(.HomePath + cFileName, "r")
  55.     hMenu = NewMenu()
  56.     if fp <> 0 Then
  57.         Dim ins$
  58.         Dim I%
  59.         ins$ = FGets(fp)
  60.         Do While ins$ <> ""
  61.             If ins$ <> Chr(10) Then
  62.                 I = I + 1
  63.                 AddMenuItem(hMenu, "&" + Str$(I Mod 10) + ": " + Left$(ins$, Len(ins$)-1), I)
  64.             End If
  65.             ins$ = FGets(fp)
  66.         Loop
  67.         FClose(fp)
  68.     End If
  69.     AddMenuItem(hMenu, "", -1)
  70.     Dim hMenu2%
  71.     hMenu2 = AddMenuItem(hMenu, "&Edit", 0)
  72.         AddMenuItem(hMenu2, "&Add", 1000)
  73.         AddMenuItem(hMenu2, "&Edit in Editor", 1001)
  74.         AddMenuItem(hMenu2, "&Delete All", 1002)
  75.     AddMenuItem(hMenu, "&Cancel", 1003)
  76. End Proc
  77.  
  78.