home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 5 Edit
/
05-Edit.zip
/
khtepm14.zip
/
kenHTepm.e
< prev
Wrap
Text File
|
1996-10-20
|
126KB
|
3,050 lines
/*************************************************/
/* */
/* */
/* kenHTepm */
/* Portions copyright c. Ken Arway 1996 */
/* */
/* See kenHTepm.doc for instructions. */
/* */
/* DISCLAIMER: I make no claims, expressed */
/* or implied, as to the fitness of this */
/* code or its suitability for any purpose */
/* whatsoever. I will not be liable for any */
/* damages of any kind resulting from the */
/* use of this code by anybody at all. Use */
/* of this code is entirely at your own */
/* risk. */
/* */
/* */
/*************************************************/
compile if not defined(SMALL) -- If SMALL not defined, then being separately compiled
define INCLUDING_FILE = 'kenHTepm.e'
const
tryinclude 'MYCNF.E' -- the user's configuration customizations.
; MY_HTML_ADDRESS = '' -- Can include something like one of:
; MY_HTML_ADDRESS = 'Your Name<br>name@location.com'
; MY_HTML_ADDRESS = '<a href="ME.html">Your Name Here</a><br><a href="mailto:yourid@yournode.site.org">yourid@yournode.site.org</a>'
-- This will be added at the end of each document created.
-- It will be after a <hr> and inside an <address>.
const
MY_HTML_ADDRESS = ''
MY_TIMEZONE = 'CDT'
WANT_HTML_MONOFONT = '1' -- 1 enables, 0 disables
MY_HTML_MARGINS = '1 80 1'
MY_HTML_TABS = '3'
MY_HTML_STRIP = 'e:\os2apps\HTMLutil\unh.exe'
MY_HTML_CHECK = 'e:\os2apps\HTMLutil\WebLint\weblint.cmd -f kenlint.rc'
MY_COM_PROG = 'd:\telecom\term2.exe'
MY_TELNET = 'telnetpm.exe'
MY_FTP = 'ftppm.exe'
MY_BROWSER = 'd:\tcpip\bin\explore.exe -t 8 -q'
MY_COLOR_REF = '/WIN /F e:\winapps\HTMlib\colwiz.exe'
MY_HTML_REF = '/WIN /F winhelp.exe e:\winapps\HTMlib\html.hlp'
compile if not defined(SITE_CONFIG)
const SITE_CONFIG = 'SITECNF.E'
compile endif
compile if SITE_CONFIG
tryinclude SITE_CONFIG
compile endif
const
compile if not defined(WANT_DYNAMIC_PROMPTS)
WANT_DYNAMIC_PROMPTS = 1
compile endif
compile if not defined(NLS_LANGUAGE)
NLS_LANGUAGE = 'ENGLISH'
compile endif
include NLS_LANGUAGE'.E'
include 'STDCONST.E'
const
MUST_BE_LINKED_MSG = 'For proper operation, this .ex file must be linked, not executed.'
defmain
universal HTML_tags_menu_flag
universal defaultmenu, activemenu
call winmessagebox('kenHTepm ', MUST_BE_LINKED_MSG, MB_CANCEL + MB_CUAWARNING + MB_MOVEABLE)
if HTML_tags_menu_flag = '1' then
deletemenu defaultmenu, 62, 0, 0
call maybe_show_menu()
HTML_tags_menu_flag = '0'
endif
compile endif -- (SMALL)
const
HTMLVERSION= '1.4'
HTMLTAGS_BAR_MSG= '~kHTML'
FORMAT_MENU_MSG= 'Formatting St~yles'
PHYSICAL_MENU_MSG= '~Physical'
BOLD_MENU_MSG= '~Bold'
ITALIC_MENU_MSG= '~Italic'
TTYPE_MENU_MSG= '~Typewriter'
UNDER_MENU_MSG= '~Underline'
PRE_MENU_MSG= '~Preformatted'
STRIKE_MENU_MSG= '~Struckthrough'
SUBSCR_MENU_MSG= 'Subs~cript'
SUPERSCR_MENU_MSG= 'Supe~rscript'
BIG_MENU_MSG= 'Bi~g text'
SMALL_MENU_MSG= 'Smal~l text'
BLINK_MENU_MSG= 'Blin~king'
LOGICAL_MENU_MSG= '~Logical'
EMPH_MENU_MSG= '~Emphasized'
STRONG_MENU_MSG= '~Strong emph.'
ADDRESS_MENU_MSG= '~Address'
CITE_MENU_MSG= '~Citation'
BLOCK_MENU_MSG= '~Blockquote'
DFN_MENU_MSG= '~Def. instance'
CODE_MENU_MSG= 'C~ode'
KEYB_MENU_MSG= '~Keyboard'
SAMP_MENU_MSG= 'Sa~mple'
VAR_MENU_MSG= '~Variable'
FONT_MENU_MSG= '~Fonts'
FONTSIZE_MENU_MSG= '~Size'
FONTCLR_MENU_MSG= '~Color'
FONTFACE_MENU_MSG= '~Face'
BASEFONT_MENU_MSG= '~Basefont'
HEAD_MENU_MSG= '~Headings'
H1_MENU_MSG= 'Head ~1'
H2_MENU_MSG= 'Head ~2'
H3_MENU_MSG= 'Head ~3'
H4_MENU_MSG= 'Head ~4'
H5_MENU_MSG= 'Head ~5'
H6_MENU_MSG= 'Head ~6'
CENTER_MENU_MSG= '~Center'
CMNT_MENU_MSG= 'Co~mment'
MCOL_MENU_MSG= 'M~ulti-col'
SEP_MENU_MSG= '~Separators'
PARA_MENU_MSG= '~Paragraph'
BREAK_MENU_MSG= 'Line ~break'
RULE_MENU_MSG= 'Horiz. ~rule'
DIV_MENU_MSG= '~Divisions'
LISTS_MENU_MSG= '~Lists'
TABLE_MENU_MSG= 'Ta~ble'
OLIST_MENU_MSG= '~Ordered list'
ULIST_MENU_MSG= '~Unordered list'
LITEM_MENU_MSG= 'List ~item'
LHEAD_MENU_MSG= 'List ~header'
DEFLIST_MENU_MSG= '~Definition list'
DEFLISTTERM_MENU_MSG= 'Def. list ~term'
DEFLISTDEF_MENU_MSG= 'Def. list de~finition'
DIRLIST_MENU_MSG= 'Di~rectory list'
MENULIST_MENU_MSG= '~Menu list'
ANCHOR_MENU_MSG= 'Lin~ks & objects'
IMAGE_MENU_MSG= '~Image inline'
IMAP_MENU_MSG= '~Map'
AREA_MENU_MSG= 'A~rea'
TARGET_MENU_MSG= 'Create ~anchor'
INTLINK_MENU_MSG= 'I~nternal link'
EXTLINK_MENU_MSG= 'E~xternal link'
EMBED_MENU_MSG= '~Embed'
EMBGEN_MENU_MSG = '~General'
LVID_MENU_MSG = 'Live~Video'
LAUD_MENU_MSG = 'Live~Audio'
L3D_MENU_MSG = 'Live~3D'
QT_MENU_MSG = '~QuickTime'
EMBPARAM_MENU_MSG= '~Parameters'
OBJ_MENU_MSG= '~Objects'
FORMS_MENU_MSG= '~Forms'
DEFFORMS_MENU_MSG= '~Define Form'
FLBL_MENU_MSG= '~Label'
FFLDSET_MENU_MSG= '~Fieldset'
INPUTTYPE_MENU_MSG= '~Input types'
FSUBMIT_MENU_MSG= '~Submit'
FRESET_MENU_MSG= '~Reset'
FTEXT_MENU_MSG= '~Text'
FTAREA_MENU_MSG= 'Text ~area'
FPASS_MENU_MSG= '~Password'
FCHK_MENU_MSG= '~Checkbox'
FRAD_MENU_MSG= '~Radio button'
FSEL_MENU_MSG= '~Selection'
FSOPT_MENU_MSG= 'Sel. ~options'
FBTN_MENU_MSG= '~Button'
FFILE_MENU_MSG= '~File'
FHID_MENU_MSG= '~Hidden'
FIMG_MENU_MSG= '~Image'
FRAMES_MENU_MSG= 'Fra~mes'
FRAMES_DOC_MENU_MSG = '~New document'
FRAMESET_MENU_MSG = 'Frame~set'
FRAME_MENU_MSG = '~Frame'
FR_TARGET_MENU_MSG = 'Choose ~target'
FR_BTRGT_MENU_MSG = '~Base target'
NOFRAME_MENU_MSG = 'N~o frames'
FR_SUBDOC_MENU_MSG = 'S~ub document'
JAVA_MENU_MSG= '~Java applets'
JAPP_MENU_MSG= '~Applet'
JPARAM_MENU_MSG= '~Parameters'
SPEC_MENU_MSG= 'S~pecial characters'
ACCENTS_MENU_MSG= 'Accen~ts'
QUOTES_MENU_MSG= '~" "'
AMPSND_MENU_MSG= '~&'
LESS_MENU_MSG= '~<'
GRTR_MENU_MSG= '~>'
SPACES_MENU_MSG= 'S~paces & dashes'
SPACER_MENU_MSG= 'S~pacer'
NBRSPACE_MENU_MSG= 'Non-~brk space'
EMSP_MENU_MSG= 'e~m space'
ENSP_MENU_MSG= 'e~n space'
THSP_MENU_MSG= '~thin space'
EMD_MENU_MSG= 'em ~dash'
END_MENU_MSG= 'en d~ash'
SHY_MENU_MSG= 'soft h~yphen'
UPDTD_MENU_MSG= 'Last ~updated...'
COPYRT_MENU_MSG= '╕ ~Copyright symbol'
TM_MENU_MSG= '~Trademark symbol'
REG_MENU_MSG= '⌐ ~Registered symbol'
CENTS_MENU_MSG= '¢ c~ents'
FRACMATH_MENU_MSG= '~Fractions, math'
OFOURTH_MENU_MSG= '¼ one-~fourth'
HALF_MENU_MSG= '½ one-~half'
TFOURTHS_MENU_MSG= '≤ ~three-fourths'
SUPER1_MENU_MSG= '√ superscript ~1'
SUPER2_MENU_MSG= '² superscript ~2'
SUPER3_MENU_MSG= 'ⁿ superscript ~3'
MULT_MENU_MSG= '₧ ~multiplication'
DIVIDE_MENU_MSG= '÷ ~division'
PLUSMINUS_MENU_MSG= '± ~plus or minus'
DEGREE_MENU_MSG= '° de~gree'
SYMBOLS_MENU_MSG= 'S~ymbols'
LMOT_MENU_MSG= '« ~left guillemot'
RMOT_MENU_MSG= '» ~right guillemot'
MIDDOT_MENU_MSG= '· middle do~t'
MICRO_MENU_MSG= 'µ ~micro'
PARSYM_MENU_MSG= '⌠ ~paragraph symbol'
SECT_MENU_MSG= '⌡ ~section symbol'
PSTER_MENU_MSG= '£ Pound st~erling'
YEN_MENU_MSG= '¥ ~Yen'
GENCURR_MENU_MSG= '╧ General ~currency'
ACCENTC_MENU_MSG= '~Accented characters'
CSTMTAG_MENU_MSG= 'C~ustom tags'
DOC_MENU_MSG= '~Documents'
HTMLDOC_MENU_MSG= 'Create ~New'
BHREF_MENU_MSG= '~Base HREF'
HLINK_MENU_MSG= '~Link tag'
META_MENU_MSG= '~Meta tag'
HSCRIPT_MENU_MSG= 'S~cript tag'
HSPAN_MENU_MSG= 'S~pan tag'
HSTYLE_MENU_MSG= 'St~yle tag'
CONN_MENU_MSG= '~Connections'
FTP_MENU_MSG= '~FTP'
TEL_MENU_MSG= '~Telnet'
TERM2_MENU_MSG= 'Co~mm program'
WEBEX_MENU_MSG= '~Browser'
PREVIEW_MENU_MSG= 'Pre~view'
REF_MENU_MSG= '~References/utilities'
WEBLINT_MENU_MSG= 'Check synta~x'
STRIPHTM_MENU_MSG= '~Strip tags'
HTMLCOL_MENU_MSG= 'HTML ~Colors'
HTMLLIB_MENU_MSG= 'HTML ~Library'
ABOUT_MENU_MSG= 'Ab~out'
compile if WANT_DYNAMIC_PROMPTS
HTMLTAGS_BARP_MSG= \1'Create HTML tags'
FORMAT_MENUP_MSG= \1'Formatting styles'
PHYSICAL_MENUP_MSG= \1'Add physical styles'
BOLD_MENUP_MSG= \1'Apply as bold type'
ITALIC_MENUP_MSG= \1'Apply as italic type'
TTYPE_MENUP_MSG= \1'Apply as typewriter (monospaced) type'
UNDER_MENUP_MSG= \1'Apply as underlined type'
PRE_MENUP_MSG= \1'Tag lines as preformatted text'
STRIKE_MENUP_MSG= \1'Apply as struckthrough text'
SUBSCR_MENUP_MSG= \1'Apply as subscript text'
SUPERSCR_MENUP_MSG= \1'Apply as superscript text'
BIG_MENUP_MSG= \1'Apply as big text'
SMALL_MENUP_MSG= \1'Apply as small text'
BLINK_MENUP_MSG= \1'Apply as blinking text'
LOGICAL_MENUP_MSG= \1'Add logical styles'
EMPH_MENUP_MSG= \1'Apply as emphasized text (typically, italic)'
STRONG_MENUP_MSG= \1'Apply as strongly emphasized text (typically, bold)'
ADDRESS_MENUP_MSG= \1'Tag as an address (typically, italic & may be indented)'
CITE_MENUP_MSG= \1'For a citation (typically, italic)'
BLOCK_MENUP_MSG= \1'Blockquoted text (usually, wider indents, may be italic)'
DFN_MENUP_MSG= \1'For the defining instance of a term (typically, italic)'
CODE_MENUP_MSG= \1'For an example of code (typically, monospaced)'
KEYB_MENUP_MSG= \1'For text typed by user (typically, monospaced)'
SAMP_MENUP_MSG= \1'For a sequence of literal characters (typically, monospaced)'
VAR_MENUP_MSG= \1'For a variable name (typically, italic)'
FONT_MENUP_MSG= \1'Specify font attributes'
FONTSIZE_MENUP_MSG= \1'Specify font size'
FONTCLR_MENUP_MSG= \1'Specify font color'
FONTFACE_MENUP_MSG= \1'Specify font face'
BASEFONT_MENUP_MSG= \1'Specify the base font size for FONT elements'
HEAD_MENUP_MSG= \1'Apply heading levels'
H1_MENUP_MSG= \1'Heading level 1 (largest size)'
H2_MENUP_MSG= \1'Heading level 2'
H3_MENUP_MSG= \1'Heading level 3'
H4_MENUP_MSG= \1'Heading level 4'
H5_MENUP_MSG= \1'Heading level 5'
H6_MENUP_MSG= \1'Heading level 6 (smallest size)'
CENTER_MENUP_MSG= \1'Center the element(s) within the width of the window'
CMNT_MENUP_MSG= \1'Insert a comment'
MCOL_MENUP_MSG= \1'Create multi-column layouts'
SEP_MENUP_MSG= \1'Add separation elements'
PARA_MENUP_MSG= \1'Apply opening & closing paragraph tags'
BREAK_MENUP_MSG= \1'Insert a forced line break'
RULE_MENUP_MSG= \1'Insert a horizontal rule'
DIV_MENUP_MSG= \1'Create a document division'
LISTS_MENUP_MSG= \1'Create tables and lists & add list items'
TABLE_MENUP_MSG= \1'Create a table from the marked lines'
OLIST_MENUP_MSG= \1'Create an ordered list (numbered items)'
ULIST_MENUP_MSG= \1'Create an unordered list (bulletted items)'
LITEM_MENUP_MSG= \1'Add a list item'
LHEAD_MENUP_MSG= \1'Add a list header'
DEFLIST_MENUP_MSG= \1'Create a definition (or glossary) list'
DEFLISTTERM_MENUP_MSG= \1'Add a definition list term'
DEFLISTDEF_MENUP_MSG= \1'Add a definition list definition (typically, indented)'
DIRLIST_MENUP_MSG= \1'Create directory list (short elements, < 20 chars each)'
MENULIST_MENUP_MSG= \1'Create menu list (typically one line per item)'
ANCHOR_MENUP_MSG= \1'Add anchors & links, and images'
IMAGE_MENUP_MSG= \1'Add an inline image'
IMAP_MENUP_MSG= \1'Define a client-side imagemap'
AREA_MENUP_MSG= \1'Specify shape co-ordinates for client-side imagemap'
TARGET_MENUP_MSG= \1'Create a named anchor here'
INTLINK_MENUP_MSG= \1'Link to a target in this document'
EXTLINK_MENUP_MSG= \1'Link to an external source'
EMBED_MENUP_MSG= \1'Embed an object'
EMBGEN_MENUP_MSG = \1'Basic, generalized embedding code'
LVID_MENUP_MSG = \1'Insert a LiveVideo object'
LAUD_MENUP_MSG = \1'Insert a LiveAudio object'
L3D_MENUP_MSG = \1'Insert a Live3D object'
QT_MENUP_MSG = \1'Insert a QuickTime movie object'
EMBPARAM_MENUP_MSG = \1'Object parameters'
OBJ_MENUP_MSG= \1'Create an inline object'
FORMS_MENUP_MSG= \1'Create input forms'
DEFFORMS_MENUP_MSG= \1'Define a form'
FLBL_MENUP_MSG= \1'Add a form label'
FFLDSET_MENUP_MSG= \1'Set a field attribute'
INPUTTYPE_MENUP_MSG= \1'Define input fields & types'
FSUBMIT_MENUP_MSG= \1'Create a "submit" button'
FRESET_MENUP_MSG= \1'Create a "reset" button'
FTEXT_MENUP_MSG= \1'Create a text input field'
FTAREA_MENUP_MSG= \1'Create a textarea input field'
FPASS_MENUP_MSG= \1'Create a password input field'
FCHK_MENUP_MSG= \1'Create checkboxes'
FRAD_MENUP_MSG= \1'Create radio buttons'
FSEL_MENUP_MSG= \1'Create selection fields'
FSOPT_MENUP_MSG= \1'Set selection field options'
FBTN_MENUP_MSG= \1'Create button inputs'
FFILE_MENUP_MSG= \1'Create a file submission field'
FHID_MENUP_MSG= \1'Create a hidden input field'
FIMG_MENUP_MSG= \1'Create an image input area'
FRAMES_MENUP_MSG= \1'Create framed window areas'
FRAMES_DOC_MENUP_MSG = \1'Create a new basic frames document'
FRAMESET_MENUP_MSG = \1'Add a frameset element'
FRAME_MENUP_MSG = \1'Add a frame item'
FR_TARGET_MENUP_MSG = \1'Choose an existing target frame'
FR_BTRGT_MENUP_MSG = \1'Set a base target window for all links'
NOFRAME_MENUP_MSG = \1'Add an element displayed in non-frames browsers'
FR_SUBDOC_MENUP_MSG = \1'Insert a sub-document for non-frames browsers'
JAVA_MENUP_MSG= \1'Insert tags to display Java applets'
JAPP_MENUP_MSG= \1'General applet tag'
JPARAM_MENUP_MSG= \1'Applet parameters'
SPEC_MENUP_MSG= \1'Insert special characters'
SPECx_MENUP_MSG= \1'Insert the code for the indicated character'
ACCENTS_MENUP_MSG= \1'Insert individual accents'
QUOTES_MENUP_MSG= \1'Insert the code to render a pair of double quotes'
AMPSND_MENUP_MSG= \1'Insert the code to render an ampersand'
LESS_MENUP_MSG= \1'Insert the code to render the "<" symbol'
GRTR_MENUP_MSG= \1'Insert the code to render the ">" symbol'
SPACES_MENUP_MSG= \1'Code for spaces, dashes & soft hyphen'
EMSP_MENUP_MSG= \1'Insert the code for an em space'
ENSP_MENUP_MSG= \1'Insert the code for an en space (1/2 em)'
THSP_MENUP_MSG= \1'Insert the code for a thin space (1/6 em)'
EMD_MENUP_MSG= \1'Insert the code for an em dash'
END_MENUP_MSG= \1'Insert the code for an en dash (1/2 em)'
SHY_MENUP_MSG= \1'Insert the code for a soft hyphen'
NBRSPACE_MENUP_MSG= \1'Insert the code to render a non-breaking space'
SPACER_MENUP_MSG= \1'Create spacer elements'
UPDTD_MENUP_MSG= \1'Insert the current date and time as the last update'
COPYRT_MENUP_MSG= \1'Insert the code to render the "copyright" symbol'
TM_MENUP_MSG= \1'Insert the code to render the "trademark" symbol'
REG_MENUP_MSG= \1'Insert the code to render the "registered" symbol'
CENTS_MENUP_MSG= \1'Insert the code to render the "cents" symbol'
FRACMATH_MENUP_MSG= \1'Insert the code for fractions and math symbols'
OFOURTH_MENUP_MSG= \1'Insert the code to render the "one-fourth" symbol'
HALF_MENUP_MSG= \1'Insert the code to render the "one-half" symbol'
TFOURTHS_MENUP_MSG= \1'Insert the code to render the "three-fourths" symbol'
SUPER1_MENUP_MSG= \1'Insert the code to render a superscript "one"'
SUPER2_MENUP_MSG= \1'Insert the code to render a superscript "two"'
SUPER3_MENUP_MSG= \1'Insert the code to render a superscript "three"'
MULT_MENUP_MSG= \1'Insert the code to render the "multiplication" symbol'
DIVIDE_MENUP_MSG= \1'Insert the code to render the "division" symbol'
PLUSMINUS_MENUP_MSG= \1'Insert the code to render the "plus or minus" symbol'
DEGREE_MENUP_MSG= \1'Insert the code to render the "degree" symbol'
SYMBOLS_MENUP_MSG= \1'Insert the code for various other symbols'
LMOT_MENUP_MSG= \1'Insert the code to render the "left guillemot" symbol'
RMOT_MENUP_MSG= \1'Insert the code to render the "right guillemot" symbol'
MIDDOT_MENUP_MSG= \1'Insert the code to render a "middle dot"'
MICRO_MENUP_MSG= \1'Insert the code to render the "micro" symbol'
PARSYM_MENUP_MSG= \1'Insert the code to render the "paragraph" symbol'
SECT_MENUP_MSG= \1'Insert the code to render the "section" symbol'
PSTER_MENUP_MSG= \1'Insert the code to render the "Pound sterling" symbol'
YEN_MENUP_MSG= \1'Insert the code to render the "Yen" symbol'
GENCURR_MENUP_MSG= \1'Insert the code to render the "general currency" symbol'
ACCENTC_MENUP_MSG= \1'Insert the code to render various accented characters'
ACCENTCx_MENUP_MSG= \1'Insert the code to render the indicated accented character'
CSTMTAG_MENUP_MSG= \1'Insert a user-defined tag'
DOC_MENUP_MSG= \1'General document tags'
HTMLDOC_MENUP_MSG = \1'Create a basic HTML document'
BHREF_MENUP_MSG= \1'Add a BASE HREF tag'
HLINK_MENUP_MSG= \1'Add a LINK tag'
META_MENUP_MSG = \1'Add a META tag'
HSCRIPT_MENUP_MSG= \1'Add a SCRIPT tag'
HSPAN_MENUP_MSG= \1'Add a SPAN tag'
HSTYLE_MENUP_MSG= \1'Add a STYLE tag'
CONN_MENUP_MSG= \1'Establish an Internet connection'
FTP_MENUP_MSG= \1'Start an FTP session'
TEL_MENUP_MSG= \1'Start a Telnet session'
TERM2_MENUP_MSG= \1'Start a communications session'
WEBEX_MENUP_MSG= \1'Start a Web browser session'
PREVIEW_MENUP_MSG= \1'View this document in browser'
REF_MENUP_MSG= \1'HTML references & utilities'
WEBLINT_MENUP_MSG = \1'Check HTML syntax'
STRIPHTM_MENUP_MSG = \1'Remove HTML tags from the document'
HTMLCOL_MENUP_MSG= \1'Color Wizard'
HTMLLIB_MENUP_MSG= \1'HTML Library'
ABOUT_MENUP_MSG= \1'Copyright notice'
compile else
HTMLTAGS_BAR_MSG= ''
FORMAT_MENUP_MSG= ''
PHYSICAL_MENUP_MSG= ''
BOLD_MENUP_MSG= ''
ITALIC_MENUP_MSG= ''
TTYPE_MENUP_MSG= ''
UNDER_MENUP_MSG= ''
PRE_MENUP_MSG= ''
STRIKE_MENUP_MSG= ''
SUBSCR_MENUP_MSG= ''
SUPERSCR_MENUP_MSG= ''
BIG_MENUP_MSG= ''
SMALL_MENUP_MSG= ''
BLINK_MENUP_MSG= ''
LOGICAL_MENUP_MSG= ''
EMPH_MENUP_MSG= ''
STRONG_MENUP_MSG= ''
ADDRESS_MENUP_MSG= ''
CITE_MENUP_MSG= ''
BLOCK_MENUP_MSG= ''
DFN_MENUP_MSG= ''
CODE_MENUP_MSG= ''
KEYB_MENUP_MSG= ''
SAMP_MENUP_MSG= ''
VAR_MENUP_MSG= ''
FONT_MENUP_MSG= ''
FONTSIZE_MENUP_MSG= ''
FONTCLR_MENUP_MSG= ''
FONTFACE_MENUP_MSG= ''
BASEFONT_MENUP_MSG= ''
HEAD_MENUP_MSG= ''
H1_MENUP_MSG= ''
H2_MENUP_MSG= ''
H3_MENUP_MSG= ''
H4_MENUP_MSG= ''
H5_MENUP_MSG= ''
H6_MENUP_MSG= ''
CENTER_MENUP_MSG= ''
CMNT_MENUP_MSG= ''
MCOL_MENUP_MSG= ''
SEP_MENUP_MSG= ''
PARA_MENUP_MSG= ''
BREAK_MENUP_MSG= ''
RULE_MENUP_MSG= ''
DIV_MENUP_MSG= ''
LISTS_MENUP_MSG= ''
TABLE_MENUP_MSG= ''
OLIST_MENUP_MSG= ''
ULIST_MENUP_MSG= ''
LITEM_MENUP_MSG= ''
LHEAD_MENUP_MSG= ''
DEFLIST_MENUP_MSG= ''
DEFLISTTERM_MENUP_MSG= ''
DEFLISTDEF_MENUP_MSG= ''
DIRLIST_MENUP_MSG= ''
MENULIST_MENUP_MSG= ''
ANCHOR_MENUP_MSG= ''
IMAGE_MENUP_MSG= ''
IMAP_MENUP_MSG= ''
AREA_MENUP_MSG= ''
TARGET_MENUP_MSG= ''
INTLINK_MENUP_MSG= ''
EXTLINK_MENUP_MSG= ''
EMBED_MENUP_MSG= ''
EMBGEN_MENUP_MSG = ''
LVID_MENUP_MSG = ''
LAUD_MENUP_MSG = ''
L3D_MENUP_MSG = ''
QT_MENUP_MSG = ''
EMBPARAM_MENUP_MSG = ''
OBJ_MENUP_MSG= ''
FORMS_MENUP_MSG= ''
DEFFORMS_MENUP_MSG= ''
FLBL_MENUP_MSG= ''
FFLDSET_MENUP_MSG= ''
INPUTTYPE_MENUP_MSG= ''
FSUBMIT_MENUP_MSG= ''
FRESET_MENUP_MSG= ''
FTEXT_MENUP_MSG= ''
FTAREA_MENUP_MSG= ''
FPASS_MENUP_MSG= ''
FCHK_MENUP_MSG= ''
FRAD_MENUP_MSG= ''
FSEL_MENUP_MSG= ''
FSOPT_MENUP_MSG= ''
FBTN_MENUP_MSG= ''
FFILE_MENUP_MSG= ''
FHID_MENUP_MSG= ''
FIMG_MENUP_MSG= ''
FRAMES_MENUP_MSG= ''
FRAMES_DOC_MENUP_MSG = ''
FRAMESET_MENUP_MSG = ''
FRAME_MENUP_MSG = ''
FR_TARGET_MENUP_MSG = ''
FR_BTRGT_MENUP_MSG = ''
NOFRAME_MENUP_MSG = ''
FR_SUBDOC_MENUP_MSG = ''
JAVA_MENUP_MSG= ''
JAPP_MENUP_MSG= ''
JPARAM_MENUP_MSG= ''
SPEC_MENUP_MSG= ''
ACCENTS_MENUP_MSG= ''
QUOTES_MENUP_MSG= ''
AMPSND_MENUP_MSG= ''
LESS_MENUP_MSG= ''
GRTR_MENUP_MSG= ''
SPACES_MENUP_MSG= ''
EMSP_MENUP_MSG= ''
ENSP_MENUP_MSG= ''
THSP_MENUP_MSG= ''
EMD_MENUP_MSG= ''
END_MENUP_MSG= ''
SHY_MENUP_MSG= ''
NBRSPACE_MENUP_MSG= ''
SPACER_MENUP_MSG= ''
UPDTD_MENUP_MSG= ''
COPYRT_MENUP_MSG= ''
TM_MENUP_MSG= ''
REG_MENUP_MSG= ''
CENTS_MENUP_MSG= ''
FRACMATH_MENUP_MSG= ''
OFOURTH_MENUP_MSG= ''
HALF_MENUP_MSG= ''
TFOURTHS_MENUP_MSG= ''
SUPER1_MENUP_MSG= ''
SUPER2_MENUP_MSG= ''
SUPER3_MENUP_MSG= ''
MULT_MENUP_MSG= ''
DIVIDE_MENUP_MSG= ''
PLUSMINUS_MENUP_MSG= ''
DEGREE_MENUP_MSG= ''
SYMBOLS_MENUP_MSG= ''
LMOT_MENUP_MSG= ''
RMOT_MENUP_MSG= ''
MIDDOT_MENUP_MSG= ''
MICRO_MENUP_MSG= ''
PARSYM_MENUP_MSG= ''
SECT_MENUP_MSG= ''
PSTER_MENUP_MSG= ''
YEN_MENUP_MSG= ''
GENCURR_MENUP_MSG= ''
ACCENTC_MENUP_MSG= ''
ACCENTCx_MENUP_MSG= ''
CSTMTAG_MENUP_MSG= ''
DOC_MENUP_MSG= ''
HTMLDOC_MENUP_MSG = ''
BHREF_MENUP_MSG= ''
HLINK_MENUP_MSG= ''
META_MENUP_MSG = ''
HSCRIPT_MENUP_MSG= ''
HSPAN_MENUP_MSG= ''
HSTYLE_MENUP_MSG= ''
CONN_MENUP_MSG= ''
FTP_MENUP_MSG= ''
TEL_MENUP_MSG= ''
TERM2_MENUP_MSG= ''
WEBEX_MENUP_MSG= ''
PREVIEW_MENUP_MSG= ''
REF_MENUP_MSG= ''
WEBLINT_MENUP_MSG = ''
STRIPHTM_MENUP_MSG = ''
HTMLCOL_MENUP_MSG= ''
HTMLLIB_MENUP_MSG= ''
ABOUT_MENUP_MSG= ''
compile endif -- WANT_DYNAMIC_PROMPTS
ANCHOR_TITLE_MSG = 'Anchor - Create here'
ANCHOR_PROMPT_MSG = 'Enter the name for this anchor'
EXTLINK_TITLE_MSG = 'Anchor - External link'
EXTLINK_PROMPT_MSG = 'Enter the URL for this anchor'
EXTLINK_LIST_MSG = 'Select the external link'
DRAGDROP_TITLE_MSG = 'Dropped file'
DRAGDROP_PROMPT_MSG = 'Enter optional alternate text'
NO_ANCHORS_MSG = 'No anchors defined in this file.'
INTLINK_TITLE_MSG = 'Anchor - Internal link'
INTLINK_PROMPT_MSG = 'Select the anchor to link to'
URL_LIST_PROMPT_MSG = 'Select the URL to link to'
MODIFIED_PROMPT_MSG = 'Document has been modified. Save changes?'
IMAGE_TITLE_MSG = 'Image'
IMAGE_PROMPT_MSG = 'Enter the URL for this image'
IMAGE_LIST_MSG = 'Select the URL for this image'
HTML_EXTENSIONS= 'HTM HTML'
CSTMTAG_TITLE_MSG = 'Custom tag '
CSTMTAG_PROMPT_MSG = 'Enter the custom tag to use'
CSTMTAG_LIST_MSG= 'Select the custom tag to use'
HLINK_TITLE_MSG = 'Referenced document'
HLINK_PROMPT_MSG = 'Enter the URL for this reference'
HLINK_LIST_MSG = 'Select the URL for this reference'
FORM_TITLE_MSG = 'Define form'
FORM_PROMPT_MSG = 'URL of program that will process the form'
FORM_LIST_MSG = 'Select the URL for form processing'
BHREF_TITLE_MSG= 'Base HREF'
BHREF_PROMPT_MSG= 'Enter the base HREF URL for this document'
BHREF_LIST_MSG= 'Select the base HREF URL'
FRSET_TITLE_MSG = 'Frameset sizes'
FRSET_PROMPT_MSG = 'Sizes'
FRAMELINK_TITLE_MSG = 'Frame -- name '
FRAMELINK_PROMPT_MSG = 'Enter the name for this frame'
FRAMELINK_LIST_MSG = 'Select the frame name'
FRTARGET_TITLE_MSG = 'Target frame'
FRTARGET_PROMPT_MSG = 'Choose the target frame'
OBJ_TITLE_MSG = 'Object'
OBJ_PROMPT_MSG = 'Enter the URL for this object'
OBJ_LIST_MSG = 'Select the URL for the object'
RECT_TITLE_MSG = 'Co-ordinates of rectangle: '
RECT_PROMPT_MSG = 'left-x, top-y, right-x, bottom-y'
CIRC_TITLE_MSG = 'Co-ordinates of circle: '
CIRC_PROMPT_MSG = 'center-x, center-y, radius'
POLY_TITLE_MSG = 'Co-ordinates of polygon: '
POLY_PROMPT_MSG = 'x1, y1, x2, y2, x3, y3, ...'
DEFSHAPE_TITLE_MSG = 'Default shape '
DEFSHAPE_PROMPT_MSG = 'Co-ordinates are optional.'
OK_MSG = '~OK'
CANCEL_MSG = 'Cancel' -- This is also in ENGLISH.E
TOP_MSG = '~Top'
MID_MSG = '~Middle'
BOT_MSG = '~Bottom'
LIST_MSG = '~List...'
EDITLIST_MSG = '~Edit list...'
SELECT_MSG = '~Select'
NONE_MSG = '~None'
definit
universal defaultmenu, activemenu
universal activeaccel
universal HTML_tags_menu_flag
deletemenu defaultmenu, 6, 0, 0 -- delete the existing Help menu (we want it to stay at the right)
; Last number used: 62294
buildsubmenu defaultmenu, 62, HTMLTAGS_BAR_MSG, HTMLTAGS_BARP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62000, FORMAT_MENU_MSG, FORMAT_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62001, PHYSICAL_MENU_MSG, PHYSICAL_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62002, BOLD_MENU_MSG, 'HTML_insert2 B'BOLD_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62003, ITALIC_MENU_MSG, 'HTML_insert2 I'ITALIC_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62004, TTYPE_MENU_MSG, 'HTML_insert2 TT'TTYPE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62005, UNDER_MENU_MSG, 'HTML_insert2 U'UNDER_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62006, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62007, PRE_MENU_MSG, 'HTML_lineinsert2 PRE'PRE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62008, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62009, STRIKE_MENU_MSG, 'HTML_insert2 STRIKE'STRIKE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62010, SUBSCR_MENU_MSG, 'HTML_insert2 SUB'SUBSCR_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62011, SUPERSCR_MENU_MSG, 'HTML_insert2 SUP'SUPERSCR_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62012, BIG_MENU_MSG, 'HTML_insert2 BIG'BIG_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62013, SMALL_MENU_MSG, 'HTML_insert2 SMALL'SMALL_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62014, BLINK_MENU_MSG, 'HTML_insert2 BLINK'BLINK_MENUP_MSG, 32769,0
buildmenuitem defaultmenu, 62, 62015, LOGICAL_MENU_MSG, LOGICAL_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62016, EMPH_MENU_MSG, 'HTML_insert2 EM'EMPH_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62017, STRONG_MENU_MSG, 'HTML_insert2 STRONG'STRONG_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62018, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62019, ADDRESS_MENU_MSG, 'HTML_lineinsert2 ADDRESS'ADDRESS_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62020, CITE_MENU_MSG, 'HTML_insert2 CITE'CITE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62021, BLOCK_MENU_MSG, 'HTML_lineinsert2 BLOCKQUOTE'BLOCK_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62022, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62023, DFN_MENU_MSG, 'HTML_insert2 DFN'DFN_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62024, CODE_MENU_MSG, 'HTML_lineinsert2 CODE'CODE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62025, KEYB_MENU_MSG, 'HTML_insert2 KBD'KEYB_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62026, SAMP_MENU_MSG, 'HTML_insert2 SAMP'SAMP_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62027, VAR_MENU_MSG, 'HTML_insert2 VAR'VAR_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62028, FONT_MENU_MSG, FONT_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62206, FONTSIZE_MENU_MSG, 'HTML_font SIZE=""'FONTSIZE_MENUP_MSG, 0,0
buildmenuitem defaultmenu, 62, 62207, FONTCLR_MENU_MSG, 'HTML_font COLOR="#"'FONTCLR_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62236, FONTFACE_MENU_MSG, 'HTML_font FACE=""'FONTFACE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62237, BASEFONT_MENU_MSG, 'HTML_basefont'BASEFONT_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62029, HEAD_MENU_MSG, HEAD_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62030, H1_MENU_MSG, 'HTML_insert2 H1'H1_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62031, H2_MENU_MSG, 'HTML_insert2 H2'H2_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62032, H3_MENU_MSG, 'HTML_insert2 H3'H3_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62033, H4_MENU_MSG, 'HTML_insert2 H4'H4_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62034, H5_MENU_MSG, 'HTML_insert2 H5'H5_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62035, H6_MENU_MSG, 'HTML_insert2 H6'H6_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62036, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62037, CENTER_MENU_MSG, 'HTML_insert2 CENTER'CENTER_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62208, CMNT_MENU_MSG, 'HTML_comment'CMNT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62278, MCOL_MENU_MSG, 'HTML_mcol'MCOL_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62038, SEP_MENU_MSG, SEP_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62039, PARA_MENU_MSG, 'HTML_PARA'PARA_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62040, BREAK_MENU_MSG, 'HTML_keyin <BR>'BREAK_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62041, RULE_MENU_MSG, 'HTML_IL <HR>'RULE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62277, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62235, DIV_MENU_MSG, 'HTML_DIV'DIV_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62042, LISTS_MENU_MSG, LISTS_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62043, TABLE_MENU_MSG, 'HTML_table'TABLE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62044, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62045, OLIST_MENU_MSG, 'HTML_LIST OL'OLIST_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62046, ULIST_MENU_MSG, 'HTML_LIST UL'ULIST_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62047, LITEM_MENU_MSG, 'HTML_keyin <LI>'LITEM_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62048, LHEAD_MENU_MSG, 'HTML_insert2 LH'LHEAD_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62049, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62050, DEFLIST_MENU_MSG, 'HTML_LIST DL'DEFLIST_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62051, DEFLISTTERM_MENU_MSG, 'HTML_keyin <DT>'DEFLISTTERM_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62052, DEFLISTDEF_MENU_MSG, 'HTML_keyin <DD>'DEFLISTDEF_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62053, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62054, DIRLIST_MENU_MSG, 'HTML_LIST DIR'DIRLIST_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62055, MENULIST_MENU_MSG, 'HTML_LIST MENU'MENULIST_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62056, ANCHOR_MENU_MSG, ANCHOR_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62057, IMAGE_MENU_MSG, 'HTML_IMAGE'IMAGE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62238, IMAP_MENU_MSG, 'HTML_IMAP'IMAP_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62239, AREA_MENU_MSG, 'HTML_AREA'AREA_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62240, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62058, TARGET_MENU_MSG, 'HTML_TARGET'TARGET_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62241, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62059, INTLINK_MENU_MSG, 'HTML_INT_LINK'INTLINK_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62060, EXTLINK_MENU_MSG, 'HTML_EXT_LINK'EXTLINK_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62242, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62279, EMBED_MENU_MSG, EMBED_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62283, EMBGEN_MENU_MSG, 'HTML_embed gen'EMBGEN_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62284, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62285, LAUD_MENU_MSG, 'HTML_embed laud'LAUD_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62286, LVID_MENU_MSG, 'HTML_embed lvid'LVID_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62287, L3D_MENU_MSG, 'HTML_embed l3d'L3D_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62288, QT_MENU_MSG, 'HTML_qt'QT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62289, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62290, EMBPARAM_MENU_MSG, 'HTML_embparam'EMBPARAM_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62243, OBJ_MENU_MSG, 'HTML_OBJ'OBJ_MENUP_MSG, 32769, 16384
buildmenuitem defaultmenu, 62, 62061, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62169, DOC_MENU_MSG, DOC_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62172, HTMLDOC_MENU_MSG, 'HTML_DOC'HTMLDOC_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62230, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62231, BHREF_MENU_MSG, 'HTML_BHREF'BHREF_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62232, HLINK_MENU_MSG, 'HTML_HLINK'HLINK_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62210, META_MENU_MSG, 'HTML_META'META_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62233, HSCRIPT_MENU_MSG, 'HTML_HSCRIPT'HSCRIPT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62259, HSPAN_MENU_MSG, 'HTML_HSPAN'HSPAN_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62234, HSTYLE_MENU_MSG, 'HTML_HSTYLE'HSTYLE_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62069, FRAMES_MENU_MSG, FRAMES_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62266, FRAMES_DOC_MENU_MSG, 'FR_DOC'FRAMES_DOC_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62267, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62268, FRAMESET_MENU_MSG, 'FRAMESET'FRAMESET_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62269, FRAME_MENU_MSG, 'FRAME'FRAME_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62274, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62273, FR_TARGET_MENU_MSG, 'FR_TARGET'FR_TARGET_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62275, FR_BTRGT_MENU_MSG, 'FR_TARGET BASE'FR_BTRGT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62270, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62271, NOFRAME_MENU_MSG, 'HTML_lineinsert2 NOFRAMES'NOFRAME_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62272, FR_SUBDOC_MENU_MSG, 'FR_SUB_DOC'FR_SUBDOC_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62276, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62062, FORMS_MENU_MSG, FORMS_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62063, DEFFORMS_MENU_MSG, 'HTML_FORM'DEFFORMS_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62257, FLBL_MENU_MSG, 'HTML_flbl'FLBL_MENUP_MSG, 0, 16384
buildmenuitem defaultmenu, 62, 62258, FFLDSET_MENU_MSG, 'HTML_ffldset'FFLDSET_MENUP_MSG, 0, 16384
buildmenuitem defaultmenu, 62, 62212, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62064, INPUTTYPE_MENU_MSG, INPUTTYPE_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62065, FTEXT_MENU_MSG, 'HTML_ftxtpwd TEXT'FTEXT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62066, FTAREA_MENU_MSG, 'HTML_ftarea'FTAREA_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62067, FPASS_MENU_MSG, 'HTML_ftxtpwd PASSWORD'FPASS_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62068, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62244, FCHK_MENU_MSG, 'HTML_fchk'FCHK_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62245, FRAD_MENU_MSG, 'HTML_frad'FRAD_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62246, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62247, FSEL_MENU_MSG, 'HTML_fsel'FSEL_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62248, FSOPT_MENU_MSG, 'HTML_fsopt'FSOPT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62249, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62250, FBTN_MENU_MSG, 'HTML_fbtn'FBTN_MENUP_MSG, 0, 16384
buildmenuitem defaultmenu, 62, 62251, FFILE_MENU_MSG, 'HTML_ffile'FFILE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62252, FHID_MENU_MSG, 'HTML_fhid'FHID_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62253, FIMG_MENU_MSG, 'HTML_fimg'FIMG_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62256, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62254, FSUBMIT_MENU_MSG, 'HTML_fsubres Submit'FSUBMIT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62255, FRESET_MENU_MSG, 'HTML_fsubres Reset'FRESET_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62216, JAVA_MENU_MSG, JAVA_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62217, JAPP_MENU_MSG, 'HTML_JAPP'JAPP_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62218, JPARAM_MENU_MSG, 'HTML_JPARAM'JPARAM_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62070, SPEC_MENU_MSG, SPEC_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62071, QUOTES_MENU_MSG, 'HTML_same2 "'QUOTES_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62072, AMPSND_MENU_MSG, 'HTML_keyin &'AMPSND_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62073, LESS_MENU_MSG, 'HTML_keyin <'LESS_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62074, GRTR_MENU_MSG, 'HTML_keyin >'GRTR_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62076, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62077, UPDTD_MENU_MSG, 'HTML_UPDATED'UPDTD_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62078, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62079, COPYRT_MENU_MSG, 'HTML_keyin ©'COPYRT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62219, TM_MENU_MSG, 'sayerror "Not implemented yet."'/*'HTML_keyin ™'*/TM_MENUP_MSG, 0, 16384
buildmenuitem defaultmenu, 62, 62080, REG_MENU_MSG, 'HTML_keyin ®'REG_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62082, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62083, FRACMATH_MENU_MSG, FRACMATH_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62084, OFOURTH_MENU_MSG, 'HTML_keyin ¼'OFOURTH_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62085, HALF_MENU_MSG, 'HTML_keyin ½'HALF_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62086, TFOURTHS_MENU_MSG, 'HTML_keyin ¾'TFOURTHS_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62087, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62088, SUPER1_MENU_MSG, 'HTML_keyin ¹'SUPER1_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62089, SUPER2_MENU_MSG, 'HTML_keyin ²'SUPER2_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62090, SUPER3_MENU_MSG, 'HTML_keyin ³'SUPER3_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62091, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62092, MULT_MENU_MSG, 'HTML_keyin ×'MULT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62093, DIVIDE_MENU_MSG, 'HTML_keyin ÷'DIVIDE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62094, PLUSMINUS_MENU_MSG, 'HTML_keyin ±'PLUSMINUS_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62095, DEGREE_MENU_MSG, 'HTML_keyin °'DEGREE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62203, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62204, 'º (mas~c. ord.)', 'HTML_keyin º'SPECx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62205, 'ª (f~em. ord.)', 'HTML_keyin ª'SPECx_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62096, SYMBOLS_MENU_MSG, SYMBOLS_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62097, LMOT_MENU_MSG, 'HTML_keyin «'LMOT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62098, RMOT_MENU_MSG, 'HTML_keyin »'RMOT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62099, MIDDOT_MENU_MSG, 'HTML_keyin ·'MIDDOT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62100, MICRO_MENU_MSG, 'HTML_keyin µ'MICRO_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62101, PARSYM_MENU_MSG, 'HTML_keyin ¶'PARSYM_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62102, SECT_MENU_MSG, 'HTML_keyin §'SECT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62103, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62104, PSTER_MENU_MSG, 'HTML_keyin £'PSTER_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62105, YEN_MENU_MSG, 'HTML_keyin ¥'YEN_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62106, GENCURR_MENU_MSG, 'HTML_keyin ¤'GENCURR_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62200, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62201, '¬ (~not)', 'HTML_keyin ¬'SPECx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62202, '▌ (bro~ken vbar)', 'HTML_keyin ¦'SPECx_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62107, ACCENTC_MENU_MSG, ACCENTC_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62213, ACCENTS_MENU_MSG, ACCENTS_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62194, '∩ (~acute)', 'HTML_keyin ´'SPECx_MENUP_MSG, 0, 0
buILdmenuitem defaultmenu, 62, 62195, '∙ (~umlaut)', 'HTML_keyin ¨'SPECx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62214, 'ε (~macron)', 'HTML_keyin ¯'SPECx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62215, '≈ (~cedilla)', 'HTML_keyin ¸'SPECx_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62196, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62108, '~A, a', ACCENTCx_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62109, '╖ (A + `)', 'HTML_keyin À'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62110, "╡ (A + ')", 'HTML_keyin Á'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62111, '╢ (A + ^)', 'HTML_keyin Â'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62112, '╟ (A + ~~)', 'HTML_keyin Ã'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62113, 'Ä (A + ∙)', 'HTML_keyin Ä'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62114, 'Å (A + °)', 'HTML_keyin Å'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62115, 'Æ (A + E)', 'HTML_keyin Æ'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62260, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62116, 'à (a + `)', 'HTML_keyin à'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62117, "á (a + ')", 'HTML_keyin á'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62118, 'â (a + ^)', 'HTML_keyin â'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62119, '╞ (a + ~~)', 'HTML_keyin ã'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62120, 'ä (a + ∙)', 'HTML_keyin ä'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62121, 'å (a + °)', 'HTML_keyin å'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62122, 'æ (a + e)', 'HTML_keyin æ'ACCENTCx_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62123, 'Ç', 'HTML_keyin Ç'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62124, 'ç', 'HTML_keyin ç'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62125, '~E, e', ACCENTCx_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62126, '╘ (E + `)', 'HTML_keyin È'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62127, "É (E + ')", 'HTML_keyin É'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62128, '╥ (E + ^)', 'HTML_keyin Ê'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62129, '╙ (E + ∙)', 'HTML_keyin Ë'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62261, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62130, 'è (e + `)', 'HTML_keyin è'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62131, "é (e + ')", 'HTML_keyin é'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62132, 'ê (e + ^)', 'HTML_keyin ê'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62133, 'ë (e + ∙)', 'HTML_keyin ë'ACCENTCx_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62134, '~I, i', ACCENTCx_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62135, '▐ (I + `)', 'HTML_keyin Ì'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62136, "╓ (I + ')", 'HTML_keyin Í'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62137, '╫ (I + ^)', 'HTML_keyin Î'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62138, '╪ (I + ∙)', 'HTML_keyin Ï'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62262, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62139, 'ì (i + `)', 'HTML_keyin ì'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62140, "í (i + ')", 'HTML_keyin í'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62141, 'î (i + ^)', 'HTML_keyin î'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62142, 'ï (i + ∙)', 'HTML_keyin ï'ACCENTCx_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62187, '╤ (ETH)', 'HTML_keyin Ð'SPECx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62188, '╨ (eth)', 'HTML_keyin ð'SPECx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62143, 'Ñ', 'HTML_keyin Ñ'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62144, 'ñ', 'HTML_keyin ñ'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62145, '~O, o', ACCENTCx_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62146, 'π (O + `)', 'HTML_keyin Ò'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62147, "α (O + ')", 'HTML_keyin Ó'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62148, 'Γ (O + ^)', 'HTML_keyin Ô'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62149, 'σ (O + ~~)', 'HTML_keyin Õ'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62150, 'Ö (O + ∙)', 'HTML_keyin Ö'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62191, '¥ (O + /)', 'HTML_keyin Ø'ACCENTCx_MENUP_MSG, 0,0
buildmenuitem defaultmenu, 62, 62263, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62151, 'ò (o + `)', 'HTML_keyin ò'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62152, "ó (o + ')", 'HTML_keyin ó'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62153, 'ô (o + ^)', 'HTML_keyin ô'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62154, 'Σ (o + ~~)', 'HTML_keyin õ'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62155, 'ö (o + ∙)', 'HTML_keyin ö'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62192, '¢ (o + /)', 'HTML_keyin ø'ACCENTCx_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62156, '~U, u', ACCENTCx_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62157, 'δ (U + `)', 'HTML_keyin Ù'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62158, "Θ (U + ')", 'HTML_keyin Ú'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62159, 'Ω (U + ^)', 'HTML_keyin Û'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62160, 'Ü (U + ∙)', 'HTML_keyin Ü'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62264, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62161, 'ù (u + `)', 'HTML_keyin ù'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62162, "ú (u + ')", 'HTML_keyin ú'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62163, 'û (u + ^)', 'HTML_keyin û'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62164, 'ü (u + ∙)', 'HTML_keyin ü'ACCENTCx_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62165, '~Y, y', ACCENTCx_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62166, "φ (Y + ')", 'HTML_keyin Ý'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62265, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62167, "∞ (y + ')", 'HTML_keyin ý'ACCENTCx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62168, 'ÿ (y + ∙)', 'HTML_keyin ÿ'ACCENTCx_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62193, 'ß (~s + z)', 'HTML_keyin ß'SPECx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62189, 'Φ (THORN)', 'HTML_keyin Þ'SPECx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62190, 'τ (thorn)', 'HTML_keyin þ'SPECx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62197, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62198, '¿ inv. ~ques.', 'HTML_keyin ¿'SPECx_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62199, '¡ inv. e~xcl.', 'HTML_keyin ¡'SPECx_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62186, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62221, SPACES_MENU_MSG, SPACES_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62280, SPACER_MENU_MSG, 'HTML_spacer'SPACER_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62281, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62075, NBRSPACE_MENU_MSG, 'HTML_keyin 'NBRSPACE_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62222, EMSP_MENU_MSG, 'sayerror "Not implemented yet."'/*'HTML_keyin '*/EMSP_MENUP_MSG, 0, 16384
buildmenuitem defaultmenu, 62, 62223, ENSP_MENU_MSG, 'sayerror "Not implemented yet."'/*'HTML_keyin '*/ENSP_MENUP_MSG, 0, 16384
buildmenuitem defaultmenu, 62, 62224, THSP_MENU_MSG, 'sayerror "Not implemented yet."'/*'HTML_keyin '*/THSP_MENUP_MSG, 0, 16384
buildmenuitem defaultmenu, 62, 62225, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62226, EMD_MENU_MSG, 'sayerror "Not implemented yet."'/*'HTML_keyin —'*/EMD_MENUP_MSG, 0, 16384
buildmenuitem defaultmenu, 62, 62227, END_MENU_MSG, 'sayerror "Not implemented yet."'/*'HTML_keyin –'*/END_MENUP_MSG, 0, 16384
buildmenuitem defaultmenu, 62, 62228, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62229, SHY_MENU_MSG, 'HTML_keyin 'SHY_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62220, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62081, CENTS_MENU_MSG, 'HTML_keyin ¢'CENTS_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62211, CSTMTAG_MENU_MSG, 'CSTM_TAG'CSTMTAG_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62173, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62174, CONN_MENU_MSG, CONN_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62175, FTP_MENU_MSG, 'HTML_CONNECT '||MY_FTP FTP_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62176, TEL_MENU_MSG, 'HTML_CONNECT '||MY_TELNET TEL_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62177, TERM2_MENU_MSG, 'HTML_CONNECT '||MY_COM_PROG TERM2_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62178, WEBEX_MENU_MSG, 'HTML_CONNECT '||MY_BROWSER WEBEX_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62179, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62180, PREVIEW_MENU_MSG, 'HTML_BROWSE '||MY_BROWSER PREVIEW_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62181, REF_MENU_MSG, REF_MENUP_MSG, 17, 0
buildmenuitem defaultmenu, 62, 62170, WEBLINT_MENU_MSG, 'HTML_SYNTAX '||MY_HTML_CHECK WEBLINT_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62171, STRIPHTM_MENU_MSG, 'HTML_STRIP '||MY_HTML_STRIP STRIPHTM_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62209, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62182, HTMLCOL_MENU_MSG, 'start '||MY_COLOR_REF HTMLCOL_MENUP_MSG, 0, 0
buildmenuitem defaultmenu, 62, 62183, HTMLLIB_MENU_MSG, 'start '||MY_HTML_REF HTMLLIB_MENUP_MSG, 32769, 0
buildmenuitem defaultmenu, 62, 62184, \0, '', 4, 0
buildmenuitem defaultmenu, 62, 62185, ABOUT_MENU_MSG, 'HTML_ABOUT'ABOUT_MENUP_MSG, 0, 0
call readd_help_menu()
call maybe_show_menu()
HTML_tags_menu_flag = '1'
compile if WANT_HTML_MONOFONT = '1'
'monofont'
compile endif
'mc /ma '||MY_HTML_MARGINS' /tabs '||MY_HTML_TABS
'postme HTML_MOUSE_INIT'
defexit
universal defaultmenu, activemenu
universal HTML_tags_menu_flag
deletemenu defaultmenu,62,0,0
call maybe_show_menu()
HTML_tags_menu_flag = '0'
defc HTML_MOUSE_INIT
call register_mousehandler(1,'2 CLICK 6','HTML_POPUP_MENU')
defc HTML_keyin -- aka HTML_I
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin arg(1)
if not i_s then insert_toggle; endif
defc HTML_suf = -- Suffix line with arg
replaceline textline(.line)arg(1), .line
call einsert_line()
defc HTML_IL = -- InsertLine
i_s = insert_state()
if not i_s then insert_toggle; endif
insertline arg(1), .line+1
'+1'
end_line
defc HTML_break -- Insert tag & break line
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin arg(1)
split
'+1'
.col = 0
defc HTML_IML = -- Insert Many Lines
i_s = insert_state()
if not i_s then insert_toggle; endif
parse value strip(arg(1),'L') with delim 2 rest
do while rest <> ''
parse value rest with line (delim) rest
keyin line
call einsert_line()
enddo
end_line
defc HTML_same2
tag = arg(1)
if marktype() then
getmark firstline,lastline,firstcol,lastcol,fileid
call HTML_insert_tags(tag,tag)
else
keyin (tag)(tag)
.col=.col - length(tag)
endif
defc HTML_insert2 -- Insert opening & closing tags
s_tag = '<'||arg(1)'>'
e_tag = '</'||arg(1)'>'
call HTML_insert_tags(s_tag, e_tag)
defc HTML_lineinsert2 -- Insert opening & closing tags on multiple lines
s_tag = '<'||arg(1)'>'
e_tag = '</'||arg(1)'>'
call HTML_insert_linetags(s_tag, e_tag)
defproc HTML_insert_tags(start_tag, end_tag)
mt = marktype()
if marktype() then -- Block, Line or Character mark
getfileid fid
getmark firstline,lastline,firstcol,lastcol,fileid
if fid<>fileid then
sayerror 'Wrong file - check mark'
return
endif
if lastline = .last then
.line = lastline
insert
endif
if pos(leftstr(mt, 1), 'L') then -- Line mark
.line = firstline
call einsert_line()
savecol = .col
i_s = insert_state()
if not i_s then insert_toggle; endif
deleteline
'-2'
call einsert_line()
.col = savecol
keyin start_tag
.line = lastline+1
call einsert_line()
keyin end_tag
call pset_mark(firstline+1, lastline+1, firstcol, lastcol, mt, fileid)
if not i_s then insert_toggle; endif
return
elseif pos(leftstr(mt, 1), 'BC') then -- Block or Character mark
call pset_mark(firstline+1, lastline+1, firstcol, lastcol, mt, fileid)
.col = lastcol+1
endif
else -- no mark
firstline = .line; lastline = .line
lastcol = .col
firstcol = .col
endif -- marktypes
lastline
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin end_tag
firstline
.col=firstcol
keyin start_tag
if arg(3) <> '' & not pos(' ', arg(3)) then -- Set an optional bookmark
'bm' arg(3) 4 firstline firstcol
endif
if pos(leftstr(mt,1), 'BC') then -- Block or Character mark
l = length(start_tag)
call pset_mark(firstline, lastline, firstcol+l, lastcol+(l*(lastline=firstline)), mt, fileid)
.line = lastline
.col = lastcol+length(start_tag)+length(end_tag)+1
if firstline <> lastline then
unmark
endif
endif
if not i_s then insert_toggle; endif
defproc HTML_insert_linetags(start_tag, end_tag)
mt = marktype()
if marktype() then -- Block, Line or Character mark
getfileid fid
getmark firstline,lastline,firstcol,lastcol,fileid
if fid<>fileid then
sayerror 'Wrong file - check mark'
return
endif
if lastline = .last then
.line = lastline
insert
endif
if pos(leftstr(mt, 1), 'BC') then -- Block or Character mark
.col=lastcol+1
lastline
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin end_tag
firstline
.col=firstcol
keyin start_tag
l = length(start_tag)
call pset_mark(firstline, lastline, firstcol+l, lastcol+(l*(lastline=firstline)), mt, fileid)
.line = lastline
if firstline = lastline then
.col = lastcol+length(start_tag)+length(end_tag)+1
else
.col = lastcol+length(end_tag)+1
unmark
endif
if not i_s then insert_toggle; endif
elseif pos(leftstr(mt, 1), 'L') then -- Line mark
.line = firstline
call einsert_line()
savecol = .col
deleteline
'-2'
call einsert_line()
.col = savecol
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin start_tag
.line = lastline+1
call einsert_line()
keyin end_tag
call pset_mark(firstline+1, lastline+1, firstcol, lastcol, mt, fileid)
if not i_s then insert_toggle; endif
endif -- Block, Line or Character marks
else -- no mark
savecol = .col
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin start_tag
call einsert_line()
keyin end_tag
insertline ' '
'-1'
.col = savecol+3
if not i_s then insert_toggle; endif
endif -- marktypes
defc HTML_META
name = listbox("HTTP-EQUIV",
"/Author/Owner/Reply-to/Expires/Keywords/Description/<empty>",,6,50,7,15)
if name == '' then
return
endif
if name = '<empty>' then
name = ''
endif
content = entrybox("Contents of META tag ")
if content == '' then
return; endif
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin '<META HTTP-EQUIV="'name'" CONTENT="'content'">'
if name = '' then
.col = 19
endif
defc HTML_BHREF
res = HTML_geturl(BHREF_TITLE_MSG, BHREF_PROMPT_MSG, BHREF_LIST_MSG, url)
if res > 1 | url='' then return; endif
if not res then
call HTML_logurl(url)
endif
baseurl = url
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin '<BASE HREF="'||html_path(baseurl)'">'
defc HTML_HLINK
relrev = listbox("Relationship ","/REL/REV/",,6,50)
if relrev = '' then
return
endif
relrevstr = entrybox('Value for REL or REV ')
if relrevstr = '' then
return
endif
relrev = relrev'="'||relrevstr'"'
res = HTML_geturl(HLINK_TITLE_MSG, HLINK_PROMPT_MSG, HLINK_LIST_MSG, url)
if res > 1 | url='' then return; endif
if not res then
call HTML_logurl(url)
endif
linkurl = url
linktitle = entrybox("Title for referenced URL ",,"<none>")
if linktitle = '' then
return
elseif linktitle = '<none>' then
linktitle = ''
else linktitle = ' TITLE="'||linktitle'"'
endif
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin '<LINK '||relrev' HREF="'html_path(linkurl)'"'||linktitle'>'
defc HTML_HSCRIPT
lang = entrybox("Script language? ",,'<none>')
if lang = '' then
return
endif
if lang = '<none>' then
lang = ''
elseif lang then
lang = ' LANGUAGE="'||lang'"'
endif
s_tag = '<SCRIPT'||lang'>'
e_tag = '</SCRIPT>'
call HTML_insert_linetags(s_tag, e_tag)
defc HTML_HSPAN
s_tag= '<SPAN>'
e_tag= '</SPAN>'
call HTML_insert_linetags(s_tag, e_tag)
defc HTML_HSTYLE
s_tag = '<STYLE>'
e_tag = '</STYLE>'
call HTML_insert_linetags(s_tag, e_tag)
defc HTML_DIV
divalign = listbox("Alignment","/Left/Center/Right",, 6, 50,,15)
if divalign = '' then
return
endif
s_tag = '<DIV ALIGN="'||upcase(divalign)'">'
e_tag = '</DIV>'
call HTML_insert_linetags(s_tag, e_tag)
defc HTML_PARA
i_s = insert_state()
if not i_s then insert_toggle; endif
if not marktype() then -- no mark
'HTML_lineinsert2 P'
else -- Block, Line or Character mark
mt = marktype()
getfileid fid
getmark firstline,lastline,firstcol,lastcol,fileid
if fid<>fileid then
sayerror 'ERROR: Wrong file -- check mark!'
return
endif
if not pos(leftstr(mt, 1), 'L') then -- not a Line mark
sayerror 'ERROR: Mark must be a line mark!'
return
endif
if lastline = .last then
.line = .last
insert
endif
.line = firstline
insertline '<P>'
numtags = '1'
i=firstline+2
do forever
if i >= lastline+numtags+1 then
.line = lastline+numtags+1
insertline '</P>'
unmark
leave
endif
.line = i
getline parline
if word(parline, 1) then -- line contains text
if substr(parline, 1, 1) = ' ' | substr(parline, 1, 1) = ' ' then -- line begins with space or tab
insertline '</P>'
insertline ' '
insertline '<P>'
numtags = numtags+3
i = i+numtags+1
else i = i+1 -- line is interior of a paragraph
endif
else -- line is empty
insertline '</P>'
'+1'
insertline '<P>'
numtags = numtags+2
i = i+numtags+1
endif -- word
enddo
unmark
endif -- marktype
defc HTML_DOC
oldmod = .modify
start_line = .line
'HTML_IML |<!DOCTYPE HTML PUBLIC "-//W3C//DTD W3 HTML 3.2//EN">|<HTML>|<HEAD>|<TITLE></TITLE>|</HEAD>||<BODY>||<H1></H1>||</BODY>|</HTML>'
compile if MY_HTML_ADDRESS <> ''
getsearch save_search
'xcom l |</BODY>|-'
insertline '<HR>'
insertline ''
insertline '<ADDRESS>'
setsearch save_search
my_upper_address = upcase(MY_HTML_ADDRESS)
p0 = 1
do forever
p1 = pos('<BR>', my_upper_address, p0)
if not p1 then
insertline ' '||substr(MY_HTML_ADDRESS, p0)
leave
endif
insertline ' '||substr(MY_HTML_ADDRESS, p0, p1+4-p0)
p0 = p1+4
enddo
insertline '</ADDRESS>'
insertline ''
compile endif -- defined(MY_HTML_ADDRESS)
.line = start_line+3; end_line; .col=.col-8
.modify = oldmod
defc HTML_embed
embedflag = arg(1)
defW = '<none>'
defH = '<none>'
controls = ''
master = ''
res = HTML_geturl(OBJ_TITLE_MSG, OBJ_PROMPT_MSG, OBJ_LIST_MSG, url)
if res > 1 | url='' then return; endif
if not res then
call HTML_logurl(url)
endif
source = ' SRC="'||html_path(url)'"'
if embedflag = 'l3d' then -- Live3D object
'HTML_keyin <EMBED'||source'>'
return
endif -- Live3D object
if embedflag = 'laud' then -- LiveAudio object
hidden = listbox("Hidden? ", "/No/Yes/", "/OK/Cancel/",3,25,2)
if hidden = '' then return; endif
if hidden = 'Yes' then
'HTML_keyin <EMBED'||source' HIDDEN="TRUE">'
return
else
controls = listbox("Controls ", "/Console (default) 144W x 60H /Small console 144W x 15H/"||
"Play button 37W x 22H/Pause button 37W x 22H/Stop button 37W x 22H/Volume lever 74W x 20H/",
"/OK/Cancel/",3,25,6)
if controls = '' then return
elseif controls = 'Console (default) 144W x 60H' then
controls = ''
defW = '144'
defH = '60'
else parse value controls with c1 c2 defW . defH
defW = strip(defW, 'T', 'W')
defH = strip(defH, 'T', 'H')
controls = ' CONTROLS="'||upcase(c1||c2)'"'
endif
master = listbox("Master control? ", "/Yes/No/","/OK/Cancel",3,25,2)
if master = '' then
return
elseif master = 'Yes' then
master = ' MASTERSOUND'
else master = ''
endif
endif -- hidden
endif -- Live Audio object
if embedflag = 'lvid' then -- LiveVideo object
size = listbox("Size of object ", "/120W x 90H/160W x 120H/240W x 180H/"||
"320W x 240H/Other", "/OK/Cancel/",3,25,5)
if size = '' then
return
elseif size = 'Other' then
width = entrybox("Width ")
if width = '' then return; endif
size = ' WIDTH="'||width'"'
height = entrybox("Height ")
if height = '' then return; endif
size = size' HEIGHT="'||height'"'
else parse value size with width . height
width = ' WIDTH="'||strip(width, 'T', 'W')'"'
height = ' HEIGHT="'||strip(height, 'T', 'H')'"'
endif
else
endif -- LiveVideo
alttext = ''
if embedflag <> 'lvid' then -- not LiveVideo
name = entrybox('Name of the object ')
if name = '' then
return
else name = ' NAME="'||name'"'
endif
width = entrybox('Width of object ','/OK/Cancel/',defW)
if width = '' then return; endif
if width = '<none>' then
width = ''
else width = ' WIDTH="'||width'"'
endif
height = entrybox('Height of object ','/OK/Cancel/',defH)
if height = '' then return; endif
if height = '<none>' then
height = ''
else height = ' HEIGHT="'||height'"'
endif
endif -- not LiveVideo
size = width||height
align = listbox("Applet alignment ",
"/Bottom (default)/Left/Center/Right/Top/Middle"||
"/TextTop/AbsMiddle/Baseline/AbsBottom/","/OK/Cancel/",3,25,10)
if align = '' then
return
elseif align = 'Bottom (default)' then
align = ' ALIGN="BOTTOM"'
else align = ' ALIGN="'upcase(align)'"'
endif
if embedflag = 'gen' then -- general embedded object
alttext = entrybox('Alternate text ',,'<none>')
if alttext = '' then return; endif
if alttext = '<none>' then
alttext = ''
else alttext = ' ALT="'||alttext'"'
endif
endif -- general embedded object
'HTML_keyin <EMBED'||source||size||align||alttext||controls||master'>'
defc HTML_qt
res = HTML_geturl(OBJ_TITLE_MSG, OBJ_PROMPT_MSG, OBJ_LIST_MSG, url)
if res > 1 | url='' then return; endif
if not res then
call HTML_logurl(url)
endif
source = ' SRC="'||html_path(url)'" PLUGINSPAGE="http://quicktime.apple.com"'
width = entrybox('Width of object ')
if width = '' then return; endif
width = ' WIDTH="'||width'"'
height = entrybox('Height of object ', ,'(add 24 for console)')
if height = '' then return; endif
height = ' HEIGHT="'||height'"'
'HTML_keyin <EMBED'||source||width||height'>'
defc HTML_embparam
paramname = entrybox("Parameter name: ")
if paramname = '' then
return
endif
paramvalue = entrybox("Value of parameter: ",,'<none>')
if paramvalue = '' then return; endif
if paramvalue = '<none>' then
paramvalue = ''
else paramvalue = '="'||paramvalue'"'
endif
embparam = paramname||paramvalue
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin embparam
defc HTML_OBJ
sayerror 'Not implemented yet.'
defc HTML_spacer
type = listbox("Type of spacer ", "/Horizontal/Vertical/Block/", , 3, 25)
if type = '' then return; endif
type = ' TYPE="'||upcase(type)'"'
if type = ' TYPE="HORIZONTAL"' | type = ' TYPE="VERTICAL"' then
size = entrybox("Spacer size ")
if size = '' then return; endif
size = ' SIZE="'||size'"'
align = ''
else -- Block
sizeW = entrybox("Width ")
if sizeW = '' then return; endif
sizeH = entrybox("Height ")
if sizeH = '' then return; endif
align = listbox("Spacer alignment ",
"/Left (default)/Right/Top/Middle/Bottom"||
"/TextTop/AbsMiddle/Baseline/AbsBottom/",,3,25,9)
if align == '' then
return
elseif align = 'Left (default)' then
align = ' ALIGN="LEFT"'
else align = ' ALIGN="'||upcase(align)
endif
size = ' WIDTH="'||sizeW'" HEIGHT="'||sizeH'"'||align'"' -- Block
endif
'HTML_keyin <SPACER'||type||size'>'
defc FR_DOC
oldmod = .modify
start_line = .line
buttons = '/~Rows/~Cols/Cancel/'
parse value entrybox(FRSET_TITLE_MSG, buttons, , '',200,
atoi(1) || atoi(0) || gethwndc(APP_HANDLE) ||
FRSET_PROMPT_MSG) with button 2 sizes \0
if button = \3 | sizes = '' then
return 3
elseif button = \1 then
fr_sizes = 'ROWS="'||sizes'"'
else
fr_sizes = 'COLS="'||sizes'"'
endif
'HTML_IML |<HTML>|<HEAD>|<TITLE></TITLE>|</HEAD>'||
'||<FRAMESET '||fr_sizes'>||||<NOFRAMES>||</NOFRAMES>||</FRAMESET>|</HTML>'
.line = start_line+2; end_line; .col=.col-8
.modify = oldmod
defc FR_SUB_DOC
oldmod = .modify
start_line = .line
'HTML_IML |<HEAD>||</HEAD>'||
'||<BODY>||<H1></H1>||</BODY>'
delete
.line = start_line+6; end_line; .col=.col-5
.modify = oldmod
defc FRAMESET
start_line = .line
buttons = '/~Rows/~Cols/Cancel/'
parse value entrybox(FRSET_TITLE_MSG, buttons, , '',200,
atoi(1) || atoi(0) || gethwndc(APP_HANDLE) ||
FRSET_PROMPT_MSG) with button 2 sizes \0
if button = \3 | sizes = '' then
return 3
elseif button = \1 then
fr_sizes = 'ROWS="'||sizes'"'
else
fr_sizes = 'COLS="'||sizes'"'
endif
s_tag = '<FRAMESET '||fr_sizes'>'
e_tag = '</FRAMESET>'
call HTML_insert_linetags(s_tag, e_tag)
defc FRAME
universal linktype, frameflag
frameflag = '0'
linktype = ''
res = HTML_geturl(EXTLINK_TITLE_MSG, EXTLINK_PROMPT_MSG, EXTLINK_LIST_MSG, url)
if res > 1 | url='' then
return; endif
if not res then
call HTML_logurl(url)
endif
frame_src = 'SRC="'||url'"'
frameflag = '1'
res = HTML_geturl(FRAMELINK_TITLE_MSG, FRAMELINK_PROMPT_MSG, FRAMELINK_LIST_MSG, url)
if res > 1 | url='' then
frameflag = '0'
return; endif
if not res then
call HTML_logurl(url)
endif
frame_name = ' NAME="'||url'"'
frame_scroll = listbox("Scrollable? ", "/Auto (default)/Yes/No/",,3,25)
if frame_scroll = '' then
frameflag = '0'
return; endif
if frame_scroll = 'Auto (default)' then
frame_scroll = ''
else frame_scroll = ' SCROLLING="'||upcase(frame_scroll)'"'
endif
frame_resize = listbox("Resizable? ", "/Yes/No/",,3,25)
if frame_resize = '' then
frameflag = '0'
return; endif
if frame_resize = 'Yes' then
frame_resize = ''
else frame_resize = ' NORESIZE'
endif
i_s = insert_state()
if not i_s then insert_toggle; endif
frameflag = '0'
keyin '<FRAME '||frame_src||frame_name||frame_scroll||frame_resize'>'
defc FR_TARGET
universal linktype, frameflag
frameflag = '1'
linktype = ''
res = HTML_geturl(FRTARGET_TITLE_MSG, FRTARGET_PROMPT_MSG, FRTARGET_LIST_MSG, url)
if res > 1 | url='' then
frameflag = '0'
return; endif
if not res then
call HTML_logurl(url)
endif
i_s = insert_state()
if not i_s then insert_toggle; endif
frameflag = '0'
if arg(1) = 'BASE' then
keyin '<BASE TARGET="'||url'">'
else
keyin 'TARGET="'||url'" '
endif
defc HTML_font
type = arg(1)
mt = marktype()
if marktype() then
getmark firstline,lastline,firstcol,lastcol,fileid
if pos(leftstr(mt, 1), 'L') then -- line mark
.line = firstline
call einsert_line()
savecol = .col
deleteline
'-1'
call HTML_insert_linetags('<FONT '||type'>','</FONT>')
.line = firstline
if type = 'COLOR="#"' then
.col = savecol+14
else
.col = savecol+12
endif
else
call HTML_insert_tags('<FONT '||type'>','</FONT>')
.line = firstline
if type = 'COLOR="#"' then
.col = firstcol+14
else
.col = firstcol+12
endif
endif
else
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin '<FONT '||type'></FONT>'
.col=.col - 9
endif
defc HTML_basefont
basefont = entrybox("Base font size ")
if basefont = '' then
return
else
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin '<BASEFONT SIZE="'||basefont'">'
endif
defc HTML_LIST
mt = marktype()
if not marktype() then -- no mark
if arg(1)=='DL' then
param ='|<'||arg(1)'>| <DT>|</'||arg(1)'>|'
else
param ='|<'||arg(1)'>| <LI>|</'||arg(1)'>|'
endif
'HTML_IML 'param
getline nextline, .line+1
listclosetags = '</OL> </UL> </DL> </DIR> </MENU>'
closetag = strip(nextline)
if pos(closetag, listclosetags) then
deleteline
endif
'-1'
begin_line
deletechar
deletechar
deletechar
'-1'
end_line
else -- Block, Line or Character mark
i_s = insert_state()
if not i_s then insert_toggle; endif
getfileid fid
getmark firstline,lastline,firstcol,lastcol,fileid
if fid<>fileid then
sayerror 'ERROR: Wrong file -- check mark!'
return
endif
if not pos(leftstr(mt, 1), 'L') then -- not a Line mark
sayerror 'ERROR: Mark must be a line mark!'
return
endif
if lastline = .last then
.line = .last
insert
endif
.line = firstline
insertline '<'||arg(1)'>'
do i=firstline+1 to lastline+1
.line = i
getline listline
if arg(1) = 'DL' then
replaceline ' <DT>'||strip(listline, 'L')
else
replaceline ' <LI>'||strip(listline, 'L')
endif
enddo
'+1'
insertline '</'||arg(1)'>'
unmark
endif
defc HTML_FORM
res = HTML_geturl(FORM_TITLE_MSG, FORM_PROMPT_MSG, FORM_LIST_MSG, url)
if res > 1 | url='' then
return; endif
if not res then
call HTML_logurl(url)
endif
action = url
method = listbox("Request Method ",
"/GET/POST/",,6,40)
if method=='' then
return
endif
s_tag = '<FORM ACTION="'||html_path(action)'" METHOD="'||method'">'
e_tag = '</FORM>'
call HTML_insert_linetags(s_tag, e_tag)
defc HTML_flbl
sayerror 'Not implemented yet'
defc HTML_ffldset
sayerror 'Not implemented yet'
defc HTML_fsubres
type = arg(1)
valor = entrybox("Text of the Button ",,type)
if valor = '' then
return; endif
tag ='<INPUT TYPE="'||upcase(type)'" VALUE="'||valor'">'
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin tag
defc HTML_ftxtpwd
type = arg(1)
name = entrybox('Name of Variable? ')
if name == '' then return; endif
valor = entrybox("Text visible in field ",,"<none>")
if valor = '' then
return
elseif valor = '<none>' then
valor = ''
endif
size = entrybox("Size of entry field ",,"<default>")
if size = '' then
return
elseif size = '<default>' then
size = ''
endif
maxlen = entrybox("Maximum length of entry ",,"<default>")
if maxlen = '' then
return
elseif maxlen = '<default>' then
maxlen = ''
endif
tag='<INPUT TYPE="'||type'" NAME="'||name'"'
if valor<>"" then
tag=tag' VALUE="'||valor'"'
endif
if size <> '' then
tag = tag' SIZE="'||size'"'
endif
if maxlen <> '' then
tag = tag' MAXLENGTH="'||maxlen'"'
endif
tag = tag'>'
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin tag
defc HTML_ftarea
name = entrybox("Name of variable ")
if name = '' then
return; endif
rows = entrybox("Number of rows ")
if rows = '' then
return; endif
if not isnum(rows) then
beep()
sayerror 'ERROR: value must be a number!'
return
endif
cols = entrybox("Number of columns ")
if cols = '' then
return; endif
if not isnum(cols) then
beep()
sayerror 'ERROR: value must be a number!'
return
endif
default = listbox("Default Text? ","/No/Yes/",,6,50)
if default = '' then
return; endif
if default == "Yes" then
defText = entrybox("Enter the Default Text ")
else
defText = ""
endif
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin '<TEXTAREA NAME="'||name'" ROWS='||rows' COLS='||cols'>'||defText'</TEXTAREA>'
defc HTML_fchk
name = entrybox("Name of input variable? ")
if name = '' then return; endif
valor = entrybox("Value returned when checked ")
if valor = '' then return; endif
chktxt = entrybox("Text with checkbox ")
if chktxt = '' then return; endif
tag = '<INPUT TYPE="CHECKBOX" NAME="'||name'" VALUE="'||valor'"'
defchk = listbox("Checked by default? ","/No/Yes/",,6,20)
if defchk = '' then return; endif
if defchk = 'Yes' then
tag = tag' CHECKED>'
else
tag =tag'>'
endif
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin tag||chktxt
defc HTML_frad
universal option_Array, radline, radchkflag
radchkflag = '0'
i_s = insert_state()
if not i_s then insert_toggle; endif
options=''
rad_name = entrybox('Name of Radio Variable? ')
if rad_name == '' then return; endif
rad_num = listbox('How many buttons? ',"/1/2/3/4/5/More",,6,20,6)
if rad_num ='' then return; endif
if rad_num == 'More' then
rad_num = entrybox('Enter number of buttons ')
endif
if not isnum(rad_num) then
beep()
sayerror 'ERROR: value must be a number!'
return
endif
dispo = listbox("Button arrangement ","/Column/Row/",,6,20)
if dispo = '' then return; endif
if dispo = "Row" then
separator = " "
else
separator = "<BR>"
endif
do_array 1, opt_id, option_array
for i =1 to rad_num
opt = entrybox('Text with Button 'i' ')
if opt = '' then return; endif
rad_value = entrybox('Value returned when checked ')
if rad_value = '' then return; endif
if radchkflag <> '1' then
rad_chk = listbox("Checked by default? ","/No/Yes/",,6,20)
if rad_chk = '' then
return
elseif rad_chk = 'Yes' then
radchkflag = '1'
rad_chk = ' CHECKED'
else rad_chk = ''
endif
else rad_chk = ''
endif
option_str = '<INPUT TYPE="RADIO" NAME="'||rad_name'" VALUE="'||rad_value'"'||rad_chk'>'opt||separator
do_array 2, opt_id, i, option_Str
endfor
for i = 1 to rad_num
do_array 3, opt_id, i, radline
keyin radline
call einsert_line()
endfor
radchkflag = '0'
defc HTML_fsel
i_s = insert_state()
if not i_s then insert_toggle; endif
multiselect = 0
NotMoreChecks = 0
savecol = .col
name = entrybox('Name of select variable ')
if name == "" then
return
endif
sel_num = entrybox("Number of options? ")
if sel_num = '' then return; endif
if not isnum(sel_num) then
beep()
sayerror 'ERROR: value must be a number!'
return
endif
size = entrybox('Number of visible options? ')
if size == "" then
return
endif
if not isnum(size) then
beep()
sayerror 'ERROR: value must be a number!'
return
endif
multi = listbox('Multiple selections? ',"/No/Yes/",,6,40,2,30)
if multi=='' then
return
else
if multi=="Yes" then
multiselect=1
multi = ' MULTIPLE'
else
multi=""
endif
endif
s_tag= '<SELECT NAME="'||name'" SIZE='||size || multi'>'
e_tag = '</SELECT>'
'HTML_keyin' s_tag
for i = 1 to sel_num
valor = entrybox('Value of option 'i' ')
if valor = '' then return; endif
text = entrybox('Text of option 'i' ')
if text = '' then return; endif
if NotMoreChecks then
select = ""
else
select = listbox('Selected by default? ',"/No/Yes/",,6,40)
if select = '' then return; endif
endif
tag_1 = '<OPTION VALUE="'||valor'"'
if select=='Yes' then
tag_1 = tag_1' SELECTED'
if not multiselect then
NotMoreChecks=1
endif
endif
tag_1 = tag_1'>'
insert
.col = savecol+3
'HTML_keyin' tag_1 text
endfor
insert
.col = savecol
'HTML_keyin' e_tag
defc HTML_fsopt
valor = entrybox('Value of option ')
if valor = '' then return; endif
text = entrybox('Text of option ')
if text = '' then return; endif
select = listbox('Selected by default? ',"/No/Yes/",,6,20)
if select = '' then return; endif
tag_1 = '<OPTION VALUE="'||valor'"'
if select=='Yes' then
tag_1 = tag_1' SELECTED'
endif
tag_1 = tag_1'>'
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin tag_1 text
defc HTML_fbtn
sayerror 'Not implemented yet'
defc HTML_ffile
name = entrybox('Name for field ')
if name = '' then return; endif
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin '<INPUT TYPE="FILE" NAME="'||name'">'
defc HTML_fhid
name = entrybox('Name for hidden field ')
if name = '' then return; endif
valor = entrybox('Value for hidden field ')
if valor = '' then return; endif
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin '<INPUT TYPE="HIDDEN" NAME="'||name'" VALUE="'||valor'">'
defc HTML_fimg
name = entrybox('Name for image item ')
if name = '' then return; endif
res = HTML_geturl(IMAGE_TITLE_MSG, IMAGE_PROMPT_MSG, IMAGE_LIST_MSG, url)
if res > 1 | url='' then
return; endif
if not res then
call HTML_logurl(url)
endif
source = url
align = listbox('Image alignment ',
"/Bottom (default)/Left/Right/Top/Middle"||
"/TextTop/AbsMiddle/Baseline/AbsBottom/",,6,20,9)
if align = '' then return; endif
if align = 'Bottom (default)' then
align = 'BOTTOM'
else
align = upcase(align)
endif
imgval = entrybox('Alternate text ',,'<none>')
if imgval = '' then return; endif
if imgval = '<none>' then
imgval = ''
else
imgval = ' VALUE="'||imgval'"'
endif
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin '<INPUT TYPE="IMAGE" NAME="'||name'" SRC="'||html_path(source)'" ALIGN="'||align'"'||imgval'>'
defc HTML_TABLE
i_s = insert_state()
if not i_s then insert_toggle; endif
mt = marktype()
if marktype() =='' then
table_info="-----Table Option-----"||chr(10)||
"requires line-marked data in the form:"||chr(10)||chr(10)||
"Table caption"||chr(10)||
" * | ColName2 | ColName3 | ColName4"||chr(10)||
"RowName2 | data | data | data"||chr(10)||
"RowName3 | data | data | data"||chr(10)||
" ...."||chr(10)||
"(use a lone asterisk as a placeholder"||chr(10)||
"for empty cells/data)"
beep()
call WinMessageBox('kenHTepm macro for EPM ',table_info,16384)
return
elseif pos(leftstr(mt, 1), 'BC') then
linemarkmsg = "Data must be line-marked"
beep()
call WinMessageBox('kenHTepm macro for EPM ',linemarkmsg, 16384)
return
endif
hdr_opts = listbox("Header cells? ","/Both/Top row/Left column/none/",, 6, 50)
if hdr_opts = '' then return; endif
call pend_mark()
my_end_line = .line
if my_end_line = .last then
insert
endif
call pbegin_mark()
my_init_line = .line
nrows=my_end_line-my_init_line-1
getline caption,my_init_line
.line=my_end_line+1
; remove font attributes
insertline '<TABLE BORDER=3>'
if caption <> '*'
then captionline= '<CAPTION><B>'caption'</B></CAPTION>'
insertline captionline
endif
rowstarttag='<TR>'
rowendtag='</TR>'
for linea = my_init_line + 1 to my_end_line
hdrflag = '0'
getline linea_actual,linea
insertline substr('',1,3)rowstarttag
parse value linea_actual with data '|' linea_actual
while data <> ' ' do
if data='*'
then data='<BR>'
endif
if hdr_opts = 'Both' | hdr_opts = 'Top row' then
if linea = my_init_line + 1 then
dataitem='<TH>'data'</TH>'
insertline substr('',1,6)dataitem
parse value linea_actual with data '|' linea_actual
else
if hdr_opts = 'Both' then
if hdrflag = '0' then
dataitem='<TH>'data'</TH>'
insertline substr('',1,6)dataitem
parse value linea_actual with data '|' linea_actual
hdrflag = '1'
else
dataitem='<TD>'data'</TD>'
insertline substr('',1,6)dataitem
parse value linea_actual with data '|' linea_actual
endif
else
dataitem='<TD>'data'</TD>'
insertline substr('',1,6)dataitem
parse value linea_actual with data '|' linea_actual
endif
endif
elseif hdr_opts = 'Left column' then
if hdrflag = '0' then
dataitem='<TH>'data'</TH>'
insertline substr('',1,6)dataitem
parse value linea_actual with data '|' linea_actual
hdrflag = '1'
else
dataitem='<TD>'data'</TD>'
insertline substr('',1,6)dataitem
parse value linea_actual with data '|' linea_actual
endif
else -- no headers
dataitem='<TD>'data'</TD>'
insertline substr('',1,6)dataitem
parse value linea_actual with data '|' linea_actual
endif
endwhile
insertline substr('',1,3)rowendtag
endfor
insertline '</TABLE>'
call pbegin_mark()
aclin=.line-1
for i = 1 to nrows +2
getline linea,aclin+i
newlinea='<!-- 'linea' -->'
replaceline newlinea,aclin+i
endfor
insertline"",aclin+i
insert
unmark
.line=my_end_line+6
defc HTML_comment
i_s = insert_state()
if not i_s then insert_toggle; endif
if marktype() then
call HTML_insert_linetags('<!-- ',' -->')
else
keyin('<!-- -->')
.col=.col - 4
endif
defc HTML_mcol
cols = listbox("Number of columns ", "/2/3/4/more/", , 6, 20, 4)
if cols = '' then return; endif
if cols = 'more' then
cols = entrybox("Number of columns ")
if not isnum(cols) then
beep()
sayerror 'ERROR: value must be a number!'
return
endif
endif -- "more"
cols = 'COLS="'||cols'"'
gutter = entrybox("Gutter width ", ,"10 (default)")
if gutter = '' then return; endif
if gutter = '10 (default)' then
gutter = 'GUTTER="10"'
else
gutter = 'GUTTER="'||gutter'"'
endif
width = entrybox("Total column width ", ,"100%")
if width = '' then return; endif
width = 'WIDTH="'||width'"'
s_tag = '<MULTICOL '||cols gutter width'>'
e_tag = '</MULTICOL>'
call HTML_insert_linetags(s_tag, e_tag)
defc CSTM_TAG
universal linktype, tagflag
tagflag = '1'
linktype = ''
res = HTML_geturl(CSTMTAG_TITLE_MSG, CSTMTAG_PROMPT_MSG, CSTMTAG_LIST_MSG, url)
if res > 1 | url='' then
tagflag = '0'
return; endif
if not res then
call HTML_logurl(url)
endif
i_s = insert_state()
if not i_s then insert_toggle; endif
tagflag = '0'
keyin html_path(url)
defc HTML_TARGET
universal name, imapflag
parse value entrybox(ANCHOR_TITLE_MSG,'/'OK_MSG'/'Cancel_MSG'/',\0,'',200,
atoi(1) || atoi(0) || gethwndc(APP_HANDLE) ||
ANCHOR_PROMPT_MSG) with button 2 name \0
if button<>\1 then return; endif
if name='' then return; endif
if imapflag = '1' then
name = name
else
call HTML_insert_tags('<A NAME="'||name'">', '</A>', name)
endif
defc HTML_INT_LINK
universal EPM_utility_array_ID, anchor, usemapflag
do_array 3, EPM_utility_array_ID, 'bmi.0', bmcount -- Index says how many bookmarks there are
if bmcount = 0 then sayerror NO_ANCHORS_MSG; return; endif
getfileid startfid
'xcom e /c bookmark'
if rc<>-282 then -- -282 = sayerror("New file")
sayerror ERROR__MSG rc BAD_TMP_FILE__MSG sayerrortext(rc)
return
endif
browse_mode = browse() -- query current state
if browse_mode then call browse(0); endif
.autosave = 0
getfileid bmfid
display -2
do i=1 to bmcount
do_array 3, EPM_utility_array_ID, 'bmi.'i, markname -- Get name number i
if markname='' then iterate; endif -- has been deleted
-- Find that bookmark name
if get_array_value(EPM_utility_array_ID, 'bmn.'markname, bmindex) then -- Unexpected; ignore it & continue
iterate
endif
parse value bmindex with bmindex fid .
if fid<>startfid then
iterate
endif
insertline markname, bmfid.last+1, bmfid
enddo
activatefile bmfid
if .last>2 then
call sort(2, .last, 1, 40, bmfid, 'I')
endif
if browse_mode then call browse(1); endif -- restore browse state
display 2
if not .modify then -- Nothing added?
sayerror NO_ANCHORS_MSG
'xcom quit'
return
endif
buflen = filesize() + .last + 1
bufhndl = buffer(CREATEBUF, 'LISTBOX', buflen, 1 ) -- create a private buffe
if not bufhndl then sayerror 'CREATEBUF' ERROR_NUMBER__MSG RC; return; endif
noflines = buffer(PUTBUF, bufhndl, 1, 0, APPENDCR)
.modify = 0
'xcom quit'
; display 1
if not noflines then sayerror 'PUTBUF' ERROR_NUMBER__MSG RC; return; endif
usedsize = buffer(USEDSIZEBUF,bufhndl)
parse value listbox(INTLINK_TITLE_MSG,
compile if EPM32
\0 || atol(usedsize) || atoi(32) || atoi(bufhndl),
compile else
\0 || atoi(usedsize) || atoi(bufhndl) || atoi(32),
compile endif -- EPM32
'/'OK_MSG'/'Cancel_MSG'/',1,5,min(noflines,12),30,
compile if EVERSION >= 5.60
gethwndc(APP_HANDLE) || atoi(1) || atoi(1) || atoi(0) || INTLINK_PROMPT_MSG) with button 2 anchor \0
compile else
atoi(1) || atoi(1) || atoi(0) || gethwndc(APP_HANDLE) || INTLINK_PROMPT_MSG) with button 2 anchor \0
compile endif
call buffer(FREEBUF, bufhndl)
if button <> \1 then
anchor = ''
return; endif
if usemapflag = '1' then
if button <> \1 then
anchor = ''
return
else
anchor = '#'||anchor
endif
else
call HTML_insert_tags('<A HREF="#'||anchor'">', '</A>')
endif
defc HTML_EXT_LINK
universal linktype
linktype = listbox("Select type of link: ",
"/http/Local file/FTP"||
"/mail/gopher/news/telnet/WAIS/",
"/Enter/Cancel", 8, 36, 8, 25)
if linktype == '' then
return
elseif linktype == 'Local file' then
linktype = 'file:///'
elseif linktype == 'mail' then
linktype = 'mailto:'
else
linktype = linktype'://'
endif
res = HTML_geturl(EXTLINK_TITLE_MSG, EXTLINK_PROMPT_MSG, EXTLINK_LIST_MSG, url)
if res > 1 | url='' then return; endif
if not res then
call HTML_logurl(url)
endif
linktype = ''
call HTML_insert_tags('<A HREF="'||html_path(url)'">', '</A>')
defproc HTML_logurl(url)
logfile = url_list_filename()\0
url = url\13\10\0
call windowmessage(1, getpminfo(EPMINFO_EDITCLIENT),
compile if EVERSION >= 5.60
5496, -- EPM_EDIT_LOGAPPEND
compile else
5453, -- EPM_EDIT_LOGAPPEND
compile endif
ltoa(offset(logfile) || selector(logfile), 10),
ltoa(offset(url) || selector(url), 10) )
defproc get_progdir(param)
universal prog_name, prog_dir, prog_param
prog_name = ''
prog_dir = ''
prog_param = ''
parse value param with prog_name prog_param
slash = lastpos('\', prog_name)
if slash then
prog_dir = leftstr(prog_name, (slash-1))
prog_name = substr(prog_name, (slash+1))
endif
if prog_dir then
'cd '||prog_dir
endif
return
; This routine puts up an entry box to request a URL. If a logfile exists,
; the entrybox will have a "List" button, which if selected will bring up a
; listbox containing previously-entered URLs.
; Return codes:
; 0 - All OK, URL entered; log it.
; 1 - All OK, URL selected from list; do not log it.
; 2 - All OK, user asked to edit log file; do not continue
; 3 - User cancelled a dialog
; 4 - An unexpected error occurred
defproc HTML_geturl(title_msg, prompt_msg, list_prompt_msg, var url)
universal linktype, tagflag, javaflag, frameflag
logfile = url_list_filename()
if exist(logfile) then
buttons = '/'OK_MSG'/'LIST_MSG'/'Cancel_MSG'/'
list_button = \2
else
buttons = '/'OK_MSG'/'Cancel_MSG'/'
list_button = \9 -- Never gonna happen
endif
parse value entrybox(title_msg, buttons, linktype, '', 200,
atoi(1) || atoi(0) || gethwndc(APP_HANDLE) ||
prompt_msg) with button 2 url \0
if button=list_button then
getfileid startfid
'xcom e /d' logfile
if rc then
sayerror ERROR__MSG rc '"'logfile'" -' sayerrortext(rc)
return 4
endif
browse_mode = browse() -- query current state
if browse_mode then call browse(0); endif
if .last>2 then
getfileid urlfid
call sort(2, .last, 1, 40, urlfid, 'I')
endif
replaceline \13 || textline(1), 1
if browse_mode then call browse(1); endif -- restore browse state
call listbox_buffer_from_file(startfid, bufhndl, noflines, usedsize)
parse value listbox(title_msg,
compile if EPM32
\0 || atol(usedsize) || atoi(32) || atoi(bufhndl),
compile else
\0 || atoi(usedsize) || atoi(bufhndl) || atoi(32),
compile endif -- EPM32
'/'OK_MSG'/'EDITLIST_MSG'/'Cancel_MSG,1,5,min(noflines,12),0,
compile if EVERSION >= 5.60
gethwndc(APP_HANDLE) || atoi(1) || atoi(1) || atoi(0) || list_prompt_msg) with button 2 url \0
compile else
atoi(1) || atoi(1) || atoi(0) || gethwndc(APP_HANDLE) || list_prompt_msg) with button 2 url \0
compile endif
call buffer(FREEBUF, bufhndl)
if button=\2 then
'e' logfile
return 2
elseif button<>\1 then
return 3
endif
return 1
elseif button<>\1 then
return 3
endif
return 0
; Add HTM, HTML to create an anchor. (Lisa)
defc DRAGDROP_HTM, DRAGDROP_HTML
if wordpos(filetype(), HTML_EXTENSIONS) then
'HTML_keyin <a href="'html_path(arg(1))'"></a>'
.col = .col-4
else
'e "'arg(1)'"'
endif
defc DRGDRPTYP_WEBEXPLORER_URL
if wordpos(filetype(), HTML_EXTENSIONS) then
'e "'arg(1)'"'
if rc then return; endif
url = textline(1)
'quit'
if pos('<', url) then
parse value url with '<' url '>'
endif
url = word(url, 1)
if pos('://', url) then
'HTML_keyin <A HREF="'html_path(url)'"></A>'
.col = .col-4
else
sayerror "Doesn't appear to be a URL: <"url'>'
endif
else
'e "'arg(1)'"'
endif
defc DRAGDROP_GIF, DRAGDROP_JPG, DRAGDROP_JPEG, DRAGDROP_PNG =
universal anchor, usemapflag
dot=lastpos('.', arg(1))
if pos('/', arg(1)) then
slash = lastpos('/', arg(1))
elseif pos('\', arg(1)) then
slash = lastpos('\', arg(1))
endif
if slash then
alttext=substr(arg(1), slash+1, dot-slash-1)
else
alttext=substr(arg(1), 1, dot-1)
endif
alttext = entrybox("Alternate text for non-graphics display ",,alttext)
if alttext = '' then
return
else alttext = ' ALT="'alttext'"'
endif
ialign = listbox("Image alignment ",
"/Bottom (default)/Left/Right/Top/Middle"||
"/TextTop/AbsMiddle/Baseline/AbsBottom/",,3,25,9)
if ialign == '' then
return
elseif ialign = 'Bottom (default)' then
ialign = ' ALIGN="BOTTOM"'
else ialign = ' ALIGN="'||upcase(ialign)'"'
endif
ismap = listbox("Image Map? ","/No/ISMAP/USEMAP/",,3,25,3)
if ismap = '' then
return
endif
if ismap=='ISMAP' then
ismap=' ISMAP'
elseif ismap = 'No' then
ismap=''
else
maploc = listbox("Imagemap location ","/Internal/External/",,3,25,2)
if maploc = '' then
return
elseif maploc = 'Internal' then
usemapflag = '1'
'HTML_INT_LINK'
if anchor = '' then
usemapflag = '0'
return
endif
ismap = ' USEMAP="'||anchor'"'
usemapflag = '0'
else
res = HTML_geturl(EXTLINK_TITLE_MSG, EXTLINK_PROMPT_MSG, EXTLINK_LIST_MSG, url)
if res > 1 | url='' then return; endif
if not res then
call HTML_logurl(url)
endif
if ismap = '' then
return
else
ismap = ' USEMAP="'||html_path(url)'"'
endif
endif
endif
'HTML_keyin <IMG SRC="'html_path(arg(1))'"'|| ialign || alttext || ismap ||'>'
; Possible enhancement: Read first 10 bytes of image; if first 3 = 'GIF' then
; W = atoi(substr(image,7,2)); H = atoi(substr(image,9,2));
; add to <img "height="H "width="W
defc HTML_IMAGE
universal anchor, usemapflag, javaflag
usemapflag = '0'
res = HTML_geturl(IMAGE_TITLE_MSG, IMAGE_PROMPT_MSG, IMAGE_LIST_MSG, url)
if res > 1 | url='' then return; endif
if not res then
call HTML_logurl(url)
endif
dot=lastpos('.', url)
if pos('/', url) then
slash = lastpos('/', url)
elseif pos('\', url) then
slash = lastpos('\', url)
endif
if slash then
alttext=substr(url, slash+1, dot-slash-1)
else
alttext=substr(url, 1, dot-1)
endif
alttext = entrybox("Alternate text for non-graphics display ",,alttext)
if alttext = '' then
return
else alttext = ' ALT="'alttext'"'
endif
ialign = listbox("Image alignment ",
"/Bottom (default)/Left/Right/Top/Middle"||
"/TextTop/AbsMiddle/Baseline/AbsBottom/",,3,25,9)
if ialign == '' then
return
elseif ialign = 'Bottom (default)' then
ialign = ' ALIGN="BOTTOM"'
else ialign = ' ALIGN="'||upcase(ialign)'"'
endif
ismap = listbox("Image Map? ","/No/ISMAP/USEMAP/",,3,25,3)
if ismap = '' then
return
endif
if ismap=='ISMAP' then
ismap=' ISMAP'
elseif ismap = 'No' then
ismap=''
else
maploc = listbox("Imagemap location ","/Internal/External/",,3,25,2)
if maploc = '' then
return
elseif maploc = 'Internal' then
usemapflag = '1'
'HTML_INT_LINK'
if anchor = '' then
usemapflag = '0'
return
endif
ismap = ' USEMAP="'||anchor'"'
usemapflag = '0'
else
res = HTML_geturl(EXTLINK_TITLE_MSG, EXTLINK_PROMPT_MSG, EXTLINK_LIST_MSG, url)
if res > 1 | url='' then return; endif
if not res then
call HTML_logurl(url)
endif
if ismap = '' then
return
else
ismap = ' USEMAP="'||html_path(url)'"'
endif
endif
endif
if javaflag <> '1' then
'HTML_keyin <IMG SRC="'html_path(url)'"'|| ialign || alttext || ismap ||'>'
else
return html_path(url)
endif
defc HTML_IMAP
universal name, imapflag
imapflag = '0'
mt = marktype()
if marktype() then -- Block, Line or Character mark
getfileid fid
getmark firstline,lastline,firstcol,lastcol,fileid
if fid<>fileid then
sayerror 'Wrong file - check mark'
return
endif
else
firstline = .line
firstcol=.col
endif
imapflag = '1'
'HTML_TARGET'
if name <> '' & not pos(' ', name) then -- Set an optional bookmark
'bm' name 4 firstline firstcol
endif
imapflag = '0'
if name = '' then
return
endif
s_tag = '<MAP NAME="'||name'">'
e_tag = '</MAP>'
call HTML_insert_linetags(s_tag, e_tag)
defc HTML_AREA
universal anchor, usemapflag
usemapflag = '0'
buttons = '/OK/Cancel/'
deftext = ''
shape = listbox("Type of shape ","/Rectangle/Polygon/Circle/Default/",,3,25,4)
if shape = '' then
return
elseif shape = 'Default' then
shape = ' SHAPE="DEFAULT"'
shapes_TITLE_MSG = DEFSHAPE_TITLE_MSG
shapes_PROMPT_MSG = DEFSHAPE_PROMPT_MSG
deftext = '<none>'
elseif shape = 'Rectangle' then
shape = ' SHAPE="RECT"'
shapes_TITLE_MSG = RECT_TITLE_MSG
shapes_PROMPT_MSG = RECT_PROMPT_MSG
elseif shape = 'Polygon' then
shape = ' SHAPE="POLY"'
shapes_TITLE_MSG = POLY_TITLE_MSG
shapes_PROMPT_MSG = POLY_PROMPT_MSG
elseif shape = 'Circle' then
shape = ' SHAPE="CIRCLE"'
shapes_TITLE_MSG = CIRC_TITLE_MSG
shapes_PROMPT_MSG = CIRC_PROMPT_MSG
endif
parse value entrybox(shapes_TITLE_MSG, buttons, deftext, '',200,
atoi(1) || atoi(0) || gethwndc(APP_HANDLE) ||
shapes_PROMPT_MSG) with button 2 coords \0
if button = \2 | coords = '' then
return 3
elseif button = \1 then
if coords = '<none>' then
coords = ''
else
coords = ' COORDS="'||coords'"'
endif
endif
areaalt = entrybox("Alternate text ")
if areaalt = '' then
return
endif
areaalt = ' ALT="'||areaalt'"'
areahref = listbox("Destination? ","/NOHREF/HREF/",,3,25,2)
if areahref = '' then
return
elseif areahref = 'NOHREF' then
areaurl = ' NOHREF'
else
loc = listbox("Destination location? ","/External/Internal/",,3,25,2)
if loc = '' then
return
elseif loc = 'External' then
res = HTML_geturl(EXTLINK_TITLE_MSG, EXTLINK_PROMPT_MSG, EXTLINK_LIST_MSG, url)
if res > 1 | url='' then return; endif
if not res then
call HTML_logurl(url)
endif
if url = '' then
return
else
areaurl = ' HREF="'||html_path(url)'"'
endif
else -- loc='Internal'
usemapflag = '1'
'HTML_INT_LINK'
if anchor = '' then
usemapflag = '0'
return
else
areaurl = ' HREF="'||anchor'"'
usemapflag = '0'
endif
endif
endif
'HTML_keyin <AREA'||shape||coords||areaurl||areaalt'>'
defproc html_path(pathname)
ls = lastpos('\', .filename)
if ls then
thispath = upcase(leftstr(.filename, ls))
if upcase(leftstr(pathname, ls)) = thispath then -- We can use a relative path.
pathname = substr(pathname, ls+1)
endif
endif
return translate(pathname, '/', '\')
defproc url_list_filename()
universal appname, tagflag, frameflag
inifile = queryprofile(0, appname, 'EPMIniPath')
if tagflag <> '1' & frameflag <> '1' then
url_file = leftstr(inifile, lastpos('\', inifile)) || 'url.lst'
elseif tagflag = '1' then
url_file = leftstr(inifile, lastpos('\', inifile)) || 'cstmtag.lst'
elseif frameflag = '1' then
url_file = leftstr(inifile, lastpos('\', inifile)) || 'targetfr.lst'
endif
if leftstr(url_file,1)='\' then -- relative to boot drive
compile if EVERSION >= 6
drivenum = 1234
call dynalink32('DOSCALLS', -- dynamic link library name
'#348', -- ordinal for DOS32QuerySysInfo
atol(5) || -- Start index (QSV_BOOT_DRIVE)
atol(5) || -- End index (QSV_BOOT_DRIVE)
address(drivenum)|| -- buffer
atol(4),2) -- Buffer length
url_file = chr(96+ltoa(drivenum, 10))':'url_file
compile else
globalseg = 12
localseg = 12
call dynalink('DOSCALLS', -- dynamic link library name
'#8', -- ordinal value for DosGetInfoSeg
selector(globalseg) || -- string selector
offset(globalseg) || -- string offset
selector(localseg) || -- string selector
offset(localseg) ) -- string offset
globalseg=itoa(globalseg,10)
url_file = chr(96+itoa(peek(globalseg,36,2), 10))':'url_file
compile endif
endif
return url_file
defc HTML_ABOUT
aboutinfo="--Version "||HTMLVERSION'-----'||chr(10)||
" Portions copyright c. Ken Arway 1996."||chr(10)||chr(10)||
" Special thanks to Larry Margolis"||chr(10)||
" and also to Eduardo Areitio"||chr(10)||
" for their kind permission to use"||chr(10)||
" some of their source code."||chr(10)||
" Without their prior work, this "||chr(10)||
" macro would not have been possible."
call WinMessageBox('kenHTepm -- HTML macro for EPM ',aboutinfo,16384)
return
defc HTML_POPUP_MENU
tagtype = listbox("Select Tag Type ",
"/Table/Font Size/Paragraph/"||
"Target/Internal Link/External Link/Image/"||
"Ordered list/Unordered list/Font Color/"||
"Define Form/Select/Option/Text Area/",
"/OK/Cancel",0,0,9,30)
if tagtype="" then return
elseif tagtype='Table' then 'HTML_TABLE'
elseif tagtype='Font Size' then 'HTML_font SIZE=""'
elseif tagtype='Paragraph' then 'HTML_PARA'
elseif tagtype='Target' then 'HTML_TARGET'
elseif tagtype='Internal Link' then 'HTML_INT_LINK'
elseif tagtype='External Link' then 'HTML_EXT_LINK'
elseif tagtype='Image' then 'HTML_IMAGE'
elseif tagtype='Ordered list' then 'HTML_LIST OL'
elseif tagtype='Unordered list' then 'HTML_LIST UL'
elseif tagtype='Font Color' then 'HTML_font COLOR=""'
elseif tagtype='Define Form' then 'HTML_FORM'
elseif tagtype='Select' then 'HTML_fsel'
elseif tagtype='Option' then 'HTML_fsopt'
elseif tagtype='Text Area' then 'HTML_ftarea'
endif
defc HTML_JAPP
universal javaflag
javaflag = '1'
savecol = .col
code = entrybox("Java class ")
if code = '' then
javaflag = '0'
return
endif
code = ' CODE="'code'"'
height = entrybox("Height ")
if height = '' then
javaflag = '0'
return
endif
height = 'HEIGHT='height
width = entrybox("Width ")
if width = '' then
javaflag = '0'
return
endif
width = 'WIDTH='width
appletname = entrybox("Name ",,'<none>')
if appletname = '' then
javaflag = '0'
return
elseif appletname = '<none>' then
appletname = ''
else appletname = ' NAME="'appletname'"'
endif
codebase = listbox("Codebase URL? ","/No/Yes/","/OK/Cancel/", 3, 25)
if codebase = '' then
javaflag = '0'
return
elseif codebase = 'No' then
codebase = ''
else
res = HTML_geturl(EXTLINK_TITLE_MSG, EXTLINK_PROMPT_MSG, EXTLINK_LIST_MSG, url)
if res > 1 | url='' then
javaflag = '0'
return; endif
if not res then
call HTML_logurl(url)
endif
if url = '' then
javaflag = '0'
return
else
codebase = ' CODEBASE="'||html_path(url)'"'
endif
endif
align = listbox("Applet alignment ",
"/Bottom (default)/Left/Right/Top/Middle"||
"/TextTop/AbsMiddle/Baseline/AbsBottom/","/OK/Cancel/",3,25,9)
if align = '' then
javaflag = '0'
return
elseif align = 'Bottom (default)' then
align = ' ALIGN="BOTTOM"'
else align = ' ALIGN="'upcase(align)'"'
endif
jaltimage = listbox("Alternate image? ","/No/Yes/","/OK/Cancel/", 3, 25)
if jaltimage = '' then
javaflag = '0'
return
elseif jaltimage = 'No' then
jaltimage = ''
else
linktype = ''
res = HTML_geturl(IMAGE_TITLE_MSG, IMAGE_PROMPT_MSG, IMAGE_LIST_MSG, url)
if res > 1 | url='' then
javaflag = '0'
return; endif
if not res then
call HTML_logurl(url)
endif
if url = '' then
javaflag = '0'
return
else
jaltimage = html_path(url)
jaltimage = '<IMG SRC="'||jaltimage'" |' height width||align
endif
endif
alttext = entrybox("Alternate text ",,"<none>")
if alttext = '' then
javaflag = '0'
return
endif
if alttext = '<none>' then
jalttext = ''
else jalttext = ' ALT="'||alttext'">'
endif
if jaltimage = '' & jalttext then
jalttext = '<TEXTFLOW>'||alttext'</TEXTFLOW>'
elseif jaltimage & jalttext = '' then
jalttext = '>'
endif
javaflag = '0'
'HTML_IML |<APPLET'codebase'|'code||
'|'height width||appletname||align||
'>|'||jaltimage||jalttext
.col = savecol
keyin '</APPLET>'
defc HTML_JPARAM
paramname = entrybox("Parameter name: ")
if paramname = '' then
return
else paramname = ' NAME="'||paramname'"'
endif
paramvalue = entrybox("Value of parameter: ",,'<none>')
if paramvalue = '' then
return
endif
if paramvalue = '<none>' then
paramvalue = ''
else paramvalue = ' VALUE="'||paramvalue'"'
endif
jparam = '<PARAM'||paramname||paramvalue'>'
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin jparam
defc HTML_UPDATED
universal countryinfo
if countryinfo then -- See if countryinfo has been set.
compile if EPM32
time_sep = substr(countryinfo,24,1)
compile else
time_sep = substr(countryinfo,18,1)
compile endif
else
time_sep = ':'
endif
parse value gettime(0) with ':' mm ':' ss . ';' h24 ':'
timeinfo = h24 || time_sep || mm
parse value getdate(0) with WeekDay Month Day ', ' Year';'MonthNum
dateinfo = day leftstr(month, 3) year -- 7 Mar 1995
i_s = insert_state()
if not i_s then insert_toggle; endif
keyin 'Last updated on' dateinfo', at' timeinfo MY_TIMEZONE'.'
defc HTML_CONNECT
universal prog_name, prog_dir, prog_param
param = arg(1)
current_dir = directory()
get_progdir(param)
if arg(1) = MY_TELNET | arg(1) = MY_BROWSER then
'start linkup.exe '||prog_name prog_param
elseif arg(1) = MY_FTP then
CurrFile = .filename
slash = lastpos('\', CurrFile)
local_dir = leftstr(CurrFile, (slash-1))
if pos('FTPPM', upcase(MY_FTP)) then
'start linkup.exe ftppm.exe 0 0 0 0 0 '||local_dir' 0 * -a 2'
else
'start linkup.exe '||prog_name prog_param
endif
else
'start '||prog_name
endif
call directory(current_dir)
defc HTML_BROWSE
if .modify then
result = winmessagebox('Preview', MODIFIED_PROMPT_MSG, MB_YESNOCANCEL + MB_ICONQUESTION + MB_MOVEABLE)
if result=MBID_YES then
'save'
elseif result=MBID_NO then
-- nop
else
return
endif
endif
current_dir = directory()
CurrFile = .filename
place = lastpos('\', CurrFile)-1
NewDir = leftstr(CurrFile, place)
'cd '||NewDir
'start '||MY_BROWSER' file:///"'||CurrFile'"'
call directory(current_dir)
defc HTML_STRIP
universal prog_name, prog_dir, prog_param
param = arg(1)
current_dir = directory()
call get_progdir(param)
CurrFile = .filename
place = lastpos('.', CurrFile)-1
CurrName = leftstr(CurrFile, place)
TargetFile = CurrName'.txt'
if pos ('UNH', upcase(MY_HTML_STRIP)) then
TargetURL = CurrName'.url'
prog_name prog_param CurrFile TargetFile TargetURL
call directory(current_dir)
'e /d '||TargetFile TargetURL
else
'start '||prog_name prog_param
call directory(current_dir)
endif
defc HTML_SYNTAX
universal prog_name, prog_dir, prog_param
param = arg(1)
current_dir = directory()
call get_progdir(param)
CurrFile = .filename
place = lastpos('.', CurrFile)-1
CurrName = leftstr(CurrFile, place)
if pos('WEBLINT', upcase(MY_HTML_CHECK)) then
TargetFile = CurrName'.lint'
prog_name prog_param CurrFile' > '||TargetFile
call directory(current_dir)
'e /d '||TargetFile
else
'start '||prog_name prog_param
call directory(current_dir)
endif