REM Description: Look up the current word in the American Heritage Electronic Dictionary
REM Filename: wswahd3.wmc
REM Created by: Robin Fried & Steve Wylie - 9/29/93
REM Windows API Declarations
DECLARE FUNCTION SendMessage LIB "user" (hwnd AS WORD, msg AS WORD, wParam AS WORD, lParam AS INTEGER) AS INTEGER
DECLARE FUNCTION FindWindow LIB "user" (classname AS INTEGER, title AS STRING) AS WORD
DECLARE FUNCTION ShowWindow LIB "user" (hwnd AS WORD, show AS WORD) AS WORD
DECLARE FUNCTION GetActiveWindow LIB "user" () AS WORD
DECLARE FUNCTION GetPrivateProfileString LIB "kernel" (lpApplicationName AS STRING, lpKeyName AS STRING, lpDefault AS STRING, lpReturnedString AS STRING, nSize As WORD, lpFileName AS STRING) As Integer
DECLARE FUNCTION WinExec LIB "kernel" (path AS STRING, show AS WORD) AS WORD
REM Store off WSWin active window
wswin% = W2I(GetActiveWindow())
REM Get the current WSWin selection if 0-Length then select the current word
sel$ = GetSelection$()
IF LEN(sel$) = 0 THEN
REM Select Current Word
CharLeft 1, 0,
CharRight 1, 0,
WordLeft 1, 0
WordRight 1, 1
endif
REM Load Ahed if not loaded already
Msg$ = ""
ahd% = W2I(FindWindow(0, "The American Heritage Dictionary"))
IF ahd% = 0 THEN
ahd% = W2I(FindWindow(0, "The Dictionary of Cultural Literacy"))
IF ahd% = 0 THEN
INIFile$ = "ahd3.ini" 'if no path, default is the Windows directory
SectionName$ = "Program" 'this will be the INI file [section name]
Keyword1$ = "Path" 'this will be the INI file keyword = value
SENDMESSAGE"user"HWNDMSGWPARAMLPARAMFINDWINDOWCLASSNAMETITLESHOWWINDOWSHOWGETACTIVEWINDOWGETPRIVATEPROFILESTRING"kernel"LPAPPLICATIONNAMELPKEYNAMELPDEFAULTLPRETURNEDSTRINGNSIZELPFILENAMEWINEXECPATHWSWIN%W2I[T2][T3]SEL$GETSELECTION$[T4][T5]LEN[L1][T6][T7][L2]CHARLEFT[T8][T9][T10][T11]CHARRIGHT[T12][T13][T14]WORDLEFT[T15][T16][T17]WORDRIGHT[T18][T19][T20]MSG$""AHD%"The American Heritage Dictionary"[T21][T22][T23][T24][L3][L4]"The Dictionary of Cultural Literacy"[T25][T26][T27][T28][L5][L6]INIFILE$"ahd3.ini"SECTIONNAME$"Program"KEYWORD1$"Path"A%PGM$I2W252[T29][T30][T31][T32][L7][L8]"Path not found in AHD3.INI."CANTLOADRIGHT$[L9]"\"[T33][T34][T35][L10][T36]DIR$"AHD3.EXE"[T37]ERR%[T38][T39][T40][T41][L11][L12][T42][L13]32[L14][T43][T44][T45][T46]"Path in AHD3.INI may be incorrect: "[T47][L15][L16][T48][T49][T50][T51][L17][L18]AHDFOUND"Can't find AHD3 window."MSGTITLE$"Macro Error""Can't load The American Heritage Dictionary. "[T52]RET%MESSAGEBOX48[T53][T54]BYEEDITCOPY[T55]GETCLIPBOARDTEXTCLIPSTR$[T56][L19][L20]2732026[T57][T58][T59][T60][T61][T62][T63][T64][T65][T66][T67][T68][T69][T70]