home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BUG 2
/
BUGCD1997_01.iso
/
aplikac
/
winedit
/
wwwedit.dl_
< prev
Wrap
Text File
|
1995-01-30
|
6KB
|
170 lines
; This is a common WIL script file for the editor. It is used by both the
; utility menu in the Professional version and also for some internal
; editor functions...like looking up keyword help on a mouse click.
CancelCmd="exit"
W9876A=WinExeName("")
W9876A=FileRoot(W9876A)
goto %param1%
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
:BUTTONMACRO
; we get here via a line like
; Call("WWWEDIT.DLL", "BUTTONMACRO 1") Add a goto label to jump to
; a specific section
; e.g.
; goto butmac%param2%
; :butmac1
; code here
; return
; :butmac2
; code here
; return
Message("Sample Macro","You called user macro number %param2%")
exit
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
:KEYWORDHELP
;First do some initialization and grab the word help is desired for.
CancelCmd="goto KWHDONE" ; Setup cancel processing - clear variables
HelpWord = wEdGetWord() ; Get Selected word
if HelpWord=="" then Message("%W9876A% Help Error","Cursor must be on a word to use this function.")
then Goto KWHDONE
; Locate our WEHELP.INI file and determine help file list to process
WEDir = DirHome()
inifile = StrCat(WEDir, "HELP\WEHELP.INI")
if FileExist(inifile)==@FALSE then inifile=FileLocate("WEHELP.INI")
filext = FileExtension(wGetFileName())
If filext == "" Then filext = "NONE" ; section for files w/no extension
helpsec = IniReadPvt("EXTENSIONS", filext, "DEFAULT", inifile)
HFnum = 0
; Get the next help file from the list,
:KWHNEXTFILE
HFnum = HFnum + 1
wehinfo = StrUpper(IniReadPvt(helpsec, "HF%HFnum%", "NONE", inifile))
If wehinfo == "NONE" Then Message("%W9876A% Help Error - %helpword%", "No applicable help files found.")
Then Goto KWHDONE
if wehinfo == "" then goto KWHNEXTFILE ; Empty HFx setting, skip
; Extract and build information from the HFx setting
;debug(1)
HelpFileI=ItemExtract(1,wehinfo," ")
wehfile = StrCat(WEDir, "HELP\",FileRoot(HelpFileI), ".WEH")
if FileExist(wehfile)==@FALSE then wehfile=FileLocate(StrCat(FileRoot(HelpFileI),".WEH"))
wehtype=strtrim(strsub(wehinfo,strlen(HelpFileI)+2,strlen(wehinfo)-strlen(HelpFileI)-1))
; Make sure we have a WEH file in the editor Help directory
If !(FileExist(wehfile)) Then Message("WEHELP.INI Error", "%wehfile% not found")
Then Goto KWHDONE
; Read Keyword data from WEH file
wehdata=IniReadPvt("KEYWORDS",helpword,"",wehfile)
If wehdata == "" Then Goto KWHNEXTFILE ; No keyword defined, try next file.
;debug(0)
; First of all, completely ignore path to help file specified and
; look in %W9876A% help directory FIRST!
HelpFile=strcat(FileRoot(HelpFileI),'.',FileExtension(HelpFileI))
HelpFile2="%WEDir%HELP\%HelpFile%" ;look in HELP dir first
if FileExist(HelpFile2) then goto KWHDOIT
; Secondly, if that fails, try (suprise) actual INI file setting.
HelpFile2=HelpFileI ; then test actual ini setting
if FileExist(HelpFile2) then goto KWHDOIT
; Remove directory, and let Windows search path
HelpFile2=HelpFile ; try local dir and path
if FileExist(HelpFile2) then goto KWHDOIT
; See where !%$@# user installed editor and try there. (With \Help)
HelpFile2=IniReadPvt("WWWSetup","%W9876A%","","WWW-PROD.INI")
HelpFile2="%HelpFile2%\HELP\%HelpFile%" ; check setup help dir
if FileExist(HelpFile2) then goto KWHDOIT
; See where !%$@# user installed editor and try there. (WithOut \Help)
HelpFile2=IniReadPvt("WWWSetup","%W9876A%","","WWW-PROD.INI")
HelpFile2="%HelpFile2%\%HelpFile%" ; check setup main dir
if FileExist(HelpFile2) then goto KWHDOIT
; Check editor home dir just in case path search bypassed it
HelpFile2="%WEDir%%HelpFile%" ; check editor dir
if FileExist(HelpFile2) then goto KWHDOIT
; Give up and ask user....what a concept...
:KWHHELPASK
HelpFile2=HelpFile ; ask user
CancelCmd="goto HELPCAN23"
HelpFile2=AskFileName("Please locate %HelpFile%","","Help Files (*.HLP)|*.HLP|",HelpFile2,1)
CancelCmd="exit"
goto HELPCAN24
; HelpFile2=AskLine("Cannot locate %HelpFile2%","Please enter full path to %HelpFile% or empty line to ignore this file.",HelpFile2)
; If cancelled, remove reference to help file from WEHELP.INI
:HELPCAN23
a=AskYesNo(HelpFile2,"Do you wish to remove %HelpFile% from the help file search?")
if a==@YES then IniWritePvt(helpsec,"HF%HFnum%","",inifile)
then goto KWHNEXTFILE
:HELPCAN24
; Verify we can access help file user entered
if !FileExist(HelpFile2) then goto KWHHELPASK
; Hey its there!. Save info in WEHELP.INI file
IniWritePvt(helpsec,"HF%HFnum%",strcat(HelpFile2," ",wehtype),inifile)
; Look a case statement!!!
:KWHDOIT
goto KWHTYPE%wehtype%
:KWHTYPE1
wehdata=strreplace(wehdata,"~",strcat(num2char(13),num2char(10)))
Message(helpword,wehdata)
goto KWHDONE
:KWHTYPE2
WinHelp(HelpFile2,"PARTIALKEY",helpword)
goto KWHDONE
:KWHTYPE3
ErrorMode(@OFF)
RunZoom(HelpFile2,helpword)
ErrorMode(@CANCEL)
if LastError()==1902 then Message("%W9876A% Help Error","Help for >%helpword%< not available.")
goto KWHDONE
:KWHTYPE100
; Put your HelpFileType 100 stuff here
Message("%W9876A% User Help - %HelpFile2%","Help for %helpword% goes here")
goto KWHDONE
:KWHDONE
; Drop variables to save memory space
Drop(HelpWord,WEDir,inifile,filext,helpsec,HFnum)
Drop(wehinfo,HelpFileI,wehfile,wehtype,wehdata,HelpFile,HelpFile2)
Exit
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Exit ; Put an exit here in case anyone ever drops through to cancel
; Not that we would ever do anything like that ourselves...
:CANCEL
%CancelCmd%