home *** CD-ROM | disk | FTP | other *** search
-
- ;**************************************************************************
- ; GoCIS User defined button bar L.Lee 6/30/93
- ;**************************************************************************
- ;
- ; You can redefine buttons to tailor GoCIS to your style and needs.
- ; This is an example of such a button definition file.
- ; up to 128 buttons can be defined in a single file. If you need
- ; more than this I suggest having one button load a separate
- ; button file..
- ;
- ;* [DEFINED.FORMAT] *******************************************************
- ;
- ; Some have expressed the need to display more than one row of buttons
- ; in this case you need to define an optional [DEFINED.FORMAT] section
- ; this the only section which is not considered a button. In this
- ; section you can only define two fields (either of which are optional)
- ;
- ; Define &MaxRows = (1 to 3 defaults as 1)
- ; This field defines the number of row of buttons when displayed
- ; horizontially across the top or bottom on the display
- ;
- ; Define &MaxColumns = (1 to 3 defaults as 1)
- ; This field defines the number of columns of buttons when displayed
- ; Vertically down the left or right side of the display
- ;
- ;
- ;
- ;* [BUTTON NAME] **********************************************************
- ;
- ; You specify a button name by placing it in braces [name]. The
- ; name is used internally by GoCIS to identify the button. You can
- ; use any name you like as long as it is unique within the file.
- ;
- ; After the button name you specify the definition of several
- ; components. Any and all of these are optional. The defined
- ; variables are used to initially display the button. At the very
- ; least you should probably define the following:
- ;
- ; DEFINE &CAPTION =caption to display on the button
- ; DEFINE &ICON =the name of an icon (.ICO) file to display on
- ; the button
- ; DEFINE &TITLE =text to display as the mouse moves across the
- ; button
- ; DEFINE &DRAGMODE =can the button be dragged to a forum?
- ; (0=no, 1=yes)
- ;
- ; Finally comes the actions you'd like carried out as the button is pressed
- ; this consists of some verb or action and any parameters as appropriate
- ;
- ; The following is a list of the commands and the actions
- ;
- ; SET &variable =value
- ; &Variable =value
- ;
- ; The varibles that you can set are as follows:
- ;
- ; &CAPTION =caption to display on the button
- ; &ICON =the name of an icon (.ICO) file to display on the button
- ; &TITLE =text to display as the mouse moves across the button
- ; &DRAGMODE =can the button be dragged to a forum (0=no, 1=yes);
- ; &CONFIG =load a new configuration file
- ; &SCOPE =Set the scope of the action buttons to "VIEW" or "FORUM"
- ; &VIEW =display this view
- ; &FORUM =Make this the current forum
- ; &BAUD =set baud rate to this value
- ; &PHONE =set phone number to this value
- ; &FIELD1..5 =user defined to do with as you please
- ;
- ;
- ; +ACTION named-action
- ; -ACTION named-action
- ;
- ; The specified action can be set "+" or removed "-". Actions that
- ; can be named include:
- ;
- ; Join.Forum
- ; Set.Defaults
- ; Update.Sections
- ; Read.Announcements
- ; Scan.New.Messages
- ; Read.Messages
- ; Send.Replies
- ; Read.New.Messages
- ; Read.Waiting.Messages
- ; Scan.Libraries
- ; Download.Files
- ; Upload.Files
- ;
- ;
- ;
- ; +PENDING named-pending-state
- ; -PENDING named-pending-state
- ;
- ; The pending states are the flags that display the fact that
- ; you have recieved messages, headers, and or catalogs. Pending
- ; states you can specify include:
- ;
- ; LBR (catalogs)
- ; MSG (messages)
- ; MQS (headers)
- ;
- ;
- ; LOAD button-filename
- ;
- ; Loads a new set of buttons from the specified file
- ;
- ; DO ScriptfileName
- ; RUNSCRIPT ScriptfileName
- ;
- ; Both of these are the same and causes GoCIS to execute the given
- ; communications script. This of course means that GoCIS will be
- ; loging on to CIS and performing some prescribed actions..
- ;
- ; RUN window-state program parameters
- ; EXECUTE window-state program parameters
- ; SHELL window-state program parameters
- ;
- ; All of these are the same and causes GoCIS to execute the given
- ; program passing it the specifed parameters. The window-state
- ; is optional and defaults to NORMAL, but can be specified as
- ; NORMAL, MAXIMIZED otr MINIMIZED.
- ;
- ; WAITAPP Seconds or .fraction-of-second
- ; WAITSTART Seconds or .fraction-of-second
- ; WAITEND
- ;
- ; Each of these commands can cause GoCIS to suspend execution
- ; until a "SHELLED" application has started or completed.
- ; WAITSTART causes the button to pause (N) seconds for the application to start
- ; WAITEND causes the button to pause until the application ends
- ; WAITAPP causes the button to pause (N) seconds for the application to start
- ; and then futher causes the button to pause until the application ends
- ;
- ;
- ;
- ; PAUSE Seconds or .fraction-of-second
- ;
- ; This causes the button to pause before continuing. You can enter
- ; decimal point to indicate a delay in fractions of a second as well.
- ; This is useful after using the RUN command since many windows
- ; programs need a few seconds before they are willing to accept commands
- ;
- ;
- ;
- ; SENDKEYS keystrokes
- ;
- ; Defines the keystrokes to be simulated by the program
- ;
- ;
- ; If you are already familiar with the VB SendKeys function you
- ; already know the format of the keystrokes that can be sent
- ; For those of you not familiar with this command the following
- ; characters have special meaning:
- ;
- ; '+' SHIFT
- ; '^' CONTROL
- ; '%' ALT
- ;
- ; So to simulate an ALT-R you code %R
- ; CONTROL-R would be ^R and so on...
- ;
- ; The following keys can be simulated by enclosing them in braces {}
- ;
- ; {ENTER} {HELP} {LEFT} {RIGHT} {UP} {DOWN} {PGDN} {PGUP} {F1 ... F12}
- ;
- ; You can repeat a keystroke by specifing the key within braces and
- ; specifing a count. Fox example you can code:
- ;
- ; {TAB}{TAB}{TAB}{TAB} ot {TAB 4}
- ;
- ;
- ; CONDITIONAL LOGIC...
- ;
- ; IF.. THEN.. ENDIF
- ; FOR.. NEXT...
- ;
- ; This was never intended to be the do all language it does support
- ; some very simple conditional commands that can be useful..
- ;
- ; IF condition THEN
- ; ...
- ; ELSE
- ; ...
- ; ENDIF
- ;
- ; if the condition is true the commands between the if and endif
- ; are executed. You can nest if's up to 20 deep.
- ;
- ; There are 5 functions that are avaiable to be used only within an
- ; "IF":
- ;
- ; FileExists(filename).. Returns true if the file exists
- ; FileData(FileName)... Returns date/time of the file
- ; Today()... Returns current date/time
- ; Pending(state)... Returns true if the state is pending
- ; Action(flag)... Returns true if the flag is set
- ;
- ;
- ; FOR EACH FORUM
- ; ...
- ; NEXT
- ;
- ; This is the only looping construct and it executes commands for between
- ; FOR..NEXT for each forum listed in the current view...
- ;
- ;
- ;
- ; <<<< ADDITIONAL NOTES >>>>>
- ;
- ; Finally you can use GoCIS variable data that will be replaced when
- ; the button is pressed with the value of a GoCIS field
- ;
- ; For example instead of hard coding a user name you can
- ; use the &UserName variable, for which GoCIS will substitute
- ; the cis user name at the time the button os pressed.
- ;
- ; The following variables can be used:
- ;
- ; &Caption Caption of the button
- ; &Icon Icon file name of the button
- ; &Title Title of the button
- ;
- ; &ExePath Path to GoCIS.EXE
- ;
- ; &ForumName
- ; &Forum Name of the currently active forum
- ;
- ; &ControlPath Path to GoCIS control file
- ; &MessagePath Path to GoCIS .MSG files
- ; &DownloadPath Path to GoCIS downloads
- ; &ScriptPath Path to GoCIS scripts
- ;
- ; &Name
- ; &UserName Name used on CIS
- ;
- ; &UserId Account number on CIS
- ;
- ; &Password Cis Password
- ;
- ;
- ; &Date
- ; &Time
- ; &DDMMMYY
- ; &YYMMDD Various date and time variables
- ;
- ; &ConfigFile Name of currently active configuration file
- ; &AddressFile Name of currently active address book file
- ; &ButtonFile Name of currently active ButtonBar file
- ;
- ; &Baud Current Baud rate
- ; &Phone Current Phone number
- ;
- ; &Field1..5 User defined fields
- ;
- ;
- ;**************************************************************************
- ;
-
- [ExitBtn]
- ;
- ; EXITBTN - QUICK Exit the program
- ;
- Define &Caption = Exit
- Define &Icon = &ExePath\Icons\exit.ICo
- Define &Title = EXIT, QUIT, or TERMINATE the program.
- SendKeys %FX
-
- [ReadMail]
- ;
- ; READMAIL - Show mail latest mail received from CIS
- ;
- Define &Caption = ReadMail
- Define &Icon = &ExePath\Icons\Mail10.ICO
- Define &Title = Review latest CompuServe Mail.
- SendKeys %EL
-
- [SendMail]
- ;
- ; SENDMAIL - Create mail to be sent to CIS
- ;
- Define &Caption = SendMail
- Define &Icon = &ExePath\Icons\Mail03.ICO
- Define &Title = Create CompuServe MAIL to send.
- SendKeys %EC
-
- [ScanMail]
- ;
- ; SCANMAIL - Specify selection criteria to review historical email
- ;
- Define &Caption = ScanMail
- Define &Icon = &ExePath\Icons\MAIL04.ICO
- Define &Title = Select CompuServe MAIL for review.
- SendKeys %ES
-
- [ReadMsgs]
- ;
- ; READMSGS - Show latest forum messages received from CIS
- ;
- Define &Caption = ReadMsgs
- Define &Icon = &ExePath\Icons\MAIL11.ICO
- Define &Title = Review latest &FORUM forum MESSAGES.
- Define &DragMode = 1
- SendKeys %RML
-
- [SendMsgs]
- ;
- ; SENDMSGS - Create a forum message to be sent
- ;
- Define &Caption = SendMsgs
- Define &Icon = &ExePath\Icons\MAIL12.ICO
- Define &Title = Create &FORUM forum MESSAGE.
- Define &DragMode = 1
- SendKeys %RMC
-
- [ScanMsgs]
- ;
- ; SCANMSGS - Specify selection criteria to review historical messages
- ;
- Define &Caption = ScanMsgs
- Define &Icon = &ExePath\Icons\MAIL13.ICO
- Define &Title = Select &FORUM forum MESSAGES for review.
- Define &DragMode = 1
- SendKeys %RMS
-
- [MarkHdrs]
- ;
- ; MARKHDRS - Mark messages headers for download
- ;
- Define &Caption = MarkHdrs
- Define &Icon = &ExePath\Icons\PEN06.ICO
- Define &Title = Mark &FORUM forum MESSAGE HEADERS for retrieval.
- Define &DragMode = 1
- SendKeys %RMM
-
- [MarkLib]
- ;
- ; MARKLIB - Mark cataloged library records for download
- ;
- Define &Caption = MarkLib
- Define &Icon = &ExePath\Icons\FILES07.ICO
- Define &Title = Mark cataloged &FORUM forum files for download.
- Define &DragMode = 1
- SendKeys %RLC
-
- [ScanLib]
- ;
- ; SCANLIB - Define criteria to perform an online library search
- ;
- Define &Caption = ScanPtn
- Define &Icon = &ExePath\Icons\CRDFLE11.ICO
- Define &Title = Specify &FORUM forum library search criteria.
- Define &DragMode = 1
- SendKeys %RLS
-
- [Change.Baud.Rate]
- ;
- ; Cycles through various baud rates
- ;
- Define &Caption = &Baud
- Define &Icon = &ExePath\Icons\Baud&Baud.ICo
- Define &Title = Baud rate currently set at &Baud, press to change rate to 1200, 2400, 9600, 14400, or 19200
-
- &Field1 = &Baud
- If &Baud = 1200 Then
- &Field1 = 2400
- Endif
- If &Baud = 2400 Then
- &Field1 = 9600
- Endif
- If &Baud = 9600 Then
- &Field1 = 14400
- Endif
- If &Baud = 14400 Then
- &Field1 = 19200
- Endif
- If &Baud = 19200 Then
- &Field1 = 1200
- Endif
-
- &Baud = &Field1
- &Icon = &ExePath\Icons\Baud&Baud.Ico
- &Caption = &Baud
- Echo Baud Rate now set to &Baud.
-
- [EditBtn]
- ;
- ; EDITBTN - Allow user to edit this file using notepad.exe
- ;
- Define &Caption = Edit.BTN
- Define &Icon = &ExePath\Icons\EditBtn.ICO
- Define &Title = EDIT the Button Bar definition.
- Run Maximized NotePad.Exe &ButtonFile
- ;
- ; we could optionally print and then exit notepad?
- ;
- ; SendKeys &FP
- ; Pause 20
- ; SendKeys %FX
-
- [EditIni]
- ;
- ; EDITINI - Allow user to edit the GoCIS.INI using notepad.exe
- ;
- Define &Caption = Edit.INI
- Define &Icon = &ExePath\Icons\Wrench.ICO
- Define &Title = EDIT the GoCIS.INI file.
- Run Maximized NotePad.Exe &ExePath\GoCIS.INI
- WaitStart .50
- SendKeys %SFPGM OPTIONS{Enter}{Tab 4}{Enter}{DOWN}{HOME}
- ;
- ; we could optionally print and then exit notepad?
- ;
- ; SendKeys &FP
- ; Pause 20
- ; SendKeys %FX
-
- [Weather]
- ;
- ; WEATHER - Go online an get the local weather report
- ;
- Define &Caption = Weather
- Define &Icon = &ExePath\Icons\Rain.ICO
- Define &Title = Go ONLINE and get local WEATHER information.
-
- ; The folloing code insures this is only run once/day
-
- If FileExists(&ScriptPath\Weather.Scr) Then
- If FileDate(&MessagePath\Weather.Txt) < Today() Then
- RunScript &ScriptPath\Weather.Scr
- Endif
- If FileExists(&MessagePath\Weather.Txt) Then
- Run Maximized NotePad.Exe &MessagePath\Weather.Txt
- &Title = Review local WEATHER information.
- Else
- Echo Cannot locate &Messagepath\Weather.Txt
- Beep
- Endif
- Else
- Echo You need to fix the path in this button to point at Weather.SCR
- Beep
- Endif
-
- ; We could add commands to print it via Notepad?
-
- ; SendKeys &FP
- ; Pause 20
- ; SendKeys %FX
-
- [WhatsNew]
- ;
- ; WHATSNEW - Go online an get the lastest "Whats New Report"
- ;
- Define &Caption = WhatsNew
- Define &Icon = &ExePath\Icons\WhatsNew.ICO
- Define &Title = Go ONLINE and get "WHAT's NEW" from CompuServe.
-
- ; The folloing code insures this is only run once/day
-
- If FileExists(&ScriptPath\WhatsNew.Scr) Then
- If FileDate(&MessagePath\WhatsNew.Txt) < Today() Then
- RunScript &ScriptPath\WhatsNew.Scr
- Endif
- If FileExists(&MessagePath\WhatsNew.Txt) Then
- Run Maximized NotePad.Exe &MessagePath\WhatsNew.Txt
- &Title = Review "WHAT's NEW" from CompuServe.
- Else
- Echo Cannot locate &Messagepath\WhatsNew.Txt
- Beep
- Endif
- Else
- Echo You need to fix the path in this button to point at WhatsNew.SCR
- Beep
- Endif
-
- ; We could add commands to print it via Notepad?
-
- ; SendKeys &FP
- ; Pause 20
- ; SendKeys %FX
-
- [Billing]
- ;
- ; BILLING - Go ONLINE and get information on your current CHARGES.
- ;
- Define &Caption = Billing
- Define &Icon = &ExePath\Icons\Billing.ICO
- Define &Title = Go ONLINE and get information on your current CHARGES.
-
- ; The folloing code insures this is only run once/day
-
- If FileDate(&MessagePath\Billing.Txt) < Today() Then
- RunScript &ScriptPath\Billing.Scr
- Endif
-
- Run Maximized NotePad.Exe &MessagePath\Billing.Txt
- &Title = Review your CURRENT CHARGES from CompuServe.
-
- ; We could add commands to print it via Notepad?
-
- ; SendKeys &FP
- ; Pause 20
- ; SendKeys %FX
-
-
- [Grammatik]
- ;
- ; Run Gramatik to spell check my .SND files
- ;
- Define &Caption = Grammatik
- Define &Icon = &ExePath\Icons\GMkw.ICO
- Define &Title = Spell check a .SND files using Grammatik
-
- If FileExists(C:\GMKW\GMKW.EXE) Then
- Run Maximized C:\GMKW\GMKW.EXE
- WaitStart 1.5
- SendKeys %FO&MessagePath\*.Snd{Enter}
- Else
- Echo You need to fix the path in this button to point at GRAMATIK.
- Beep
- Endif
-
- [Super.Button]
- ;
- ; This button scans the for all offline pending states and displays each
- ; corresponding form for you to act upon...
- ;
- Define &Caption = JustDoIt!
- Define &Icon = &ExePath\Icons\SuperMan.ICo
- Define &Title = For each FORUM, displays all forms for appropriate pending offline actions.
-
- &Field1 = &View
- &Field2 = &Forum
- &Field3 = 0
-
- &VIEW = [Forums...Pending Offline]
-
- For Each Forum
- Echo Scanning &FORUM for offline pending states.
- If PENDING(MSG) Then
- &Field3 = 1
- Echo Messages found in &FORUM.
- Beep
- Pause .15
- SendKeys %RML
- EndIF
- If PENDING(MQS) Then
- &Field3 = 1
- Echo Headers found in &FORUM.
- Beep
- Pause .15
- SendKeys %RMM
- EndIF
- If PENDING(LBR) Then
- &Field3 = 1
- Echo Catalogs found for &FORUM.
- Beep
- Pause .15
- SendKeys %RLC
- EndIF
- Next
-
- If &Field3 = 1 Then
- Echo Done! Returning to &Field2 in &Field1
- Else
- Echo No pending offline actions found. Returning to &Field2 in &Field1.
- Endif
-
- Beep
- &View = &Field1
- &Forum = &Field2
-
-