-+-+-+-+-+-+-+-+ START OF PART 173 -+-+-+-+-+-+-+-+ V sC trlenlist, strlist) XC CHARACTER*(*) tablestr XC INTEGER size, totalsize XC INTEGER listlen XC INTEGER intlist(listlen) XC INTEGER strlenlist(listlen) XC CHARACTER*(*) strlist(listlen) XC structure /ptksstringtable/ XC INTEGER listlen XC INTEGER intlist(*) XC INTEGER strlenlist(*) XC CHARACTER strlist(listlen, *) XC end structure XC record /ptksstringtable/ strtable XC CHARACTER strbuffer*(listlen * 8 XC external ptk_inqstrings`20 XC XC call ptk_inqstrings(tablestr, size, totalsize, strbuffer, strtable) XC XC listlen = strtable.listlen XC intlist = strtable.intlist XC strlenlist = strtable.strlenlist XC strlist = strtable.strlist XC XC RETURN XC END X XC SUBROUTINE ptkf_inqhashtables(size, totalsize, strbuffer, tablerec) XC INTEGER size, totalsize XC CHARACTER*(*) strbuffer XC structure /ptkstablelist/ XC INTEGER listlen XC INTEGER namelenlist(*) XC CHARACTER*(*, *) tablenames XC end structure XC record /ptkstablelist/ tablerec XC external ptk_inqhashtables`20 XC XC call ptk_inqhashtables(%val(size), %val(stint), strbuffer, tablerec) XC XC RETURN XC END X X SUBROUTINE ptkf_storehashtable(fileptr, tablestr) X INTEGER*4 fileptr X CHARACTER*(*) tablestr X external ptkc_storehashtable`20 X X call ptkc_storehashtable(%val(fileptr), tablestr) X X RETURN X END X X SUBROUTINE ptkf_storeallhashtables(fileptr) X INTEGER*4 fileptr X external ptkc_storeallhashtables`20 X X call ptkc_storeallhashtables(%val(fileptr)) X X RETURN X END X X SUBROUTINE ptkf_restorehashtable(fileptr, tablestr) X INTEGER*4 fileptr X CHARACTER*(*) tablestr X external ptkc_restorehashtable`20 X X call ptkc_restorehashtable(%val(fileptr), tablestr) X X RETURN X END X X SUBROUTINE ptkf_restoreallhashtables(fileptr) X INTEGER*4 fileptr X external ptkc_restoreallhashtables`20 X X call ptkc_restoreallhashtables(%val(fileptr)) X X RETURN X END X XC end of hash.f X X X X $ CALL UNPACK [.FORTRAN.SOURCE.LIBRARY]HASH.FOR;1 990131404 $ create 'f' X X SUBROUTINE ptkf_createusermenu(menuid, menustid) X INTEGER menuid, menustid X external ptk_createusermenu`20 X X call ptk_createusermenu(%val(menuid), %val(menustid)) X X RETURN X END X X SUBROUTINE ptkf_createboxmenu(menuid, tlcorner, boxsize) X INTEGER menuid X REAL tlcorner(2), boxsize(2) X external ptk_createboxmenu`20 X X call ptk_createboxmenu(%val(menuid), tlcorner, boxsize) X X RETURN X END X `20 X SUBROUTINE ptkf_createtextmenuitem(menuid, str, itemno, editmode,`20 X : error) X INTEGER menuid X CHARACTER*(*) str X INTEGER itemno, editmode, error X external ptkc_createtextmenuitem`20 X X call ptkc_createtextmenuitem(%val(menuid), str, %val(itemno),`20 X : %val(editmode), error) X X RETURN X END X `20 X SUBROUTINE ptkf_createstructmenuitem(menuid, structid, itemno,`20 X : editmode, error) X INTEGER menuid, structid X INTEGER itemno, editmode, error X external ptk_createstructmenuitem`20 X X call ptk_createstructmenuitem(%val(menuid), %val(structid), X : %val(itemno), %val(editmode), error) X X RETURN X END X `20 X LOGICAL FUNCTION ptkf_delmenu(menuid) X INTEGER menuid X LOGICAL*1 ptk_delmenu, ans X external ptk_delmenu`20 X X ans = ptk_delmenu(%val(menuid)) X if (ans .eq. 1) then X ptkf_delmenu = .TRUE. X else X ptkf_delmenu = .FALSE. X endif X X RETURN X END X `20 X LOGICAL FUNCTION ptkf_delmenuitem(menuid, itemno) X INTEGER menuid, itemno X LOGICAL*1 ptk_delmenuitem, ans X external ptk_delmenuitem`20 X X ans = ptk_delmenuitem(%val(menuid), %val(itemno)) X if (ans .eq. 1) then X ptkf_delmenuitem = .TRUE. X else X ptkf_delmenuitem = .FALSE. X endif X X RETURN X END X `20 X SUBROUTINE ptkf_frontmenu(wsid, menuid) X INTEGER wsid, menuid X external ptk_frontmenu`20 X X call ptk_frontmenu(%val(wsid), %val(menuid)) X RETURN X END X `20 X SUBROUTINE ptkf_backmenu(wsid, menuid) X INTEGER wsid, menuid X external ptk_backmenu`20 X X call ptk_backmenu(%val(wsid), %val(menuid)) X X RETURN X END X `20 X SUBROUTINE ptkf_postmenu(wsid, menuid) X INTEGER wsid, menuid X external ptk_postmenu`20 X X call ptk_postmenu(%val(wsid), %val(menuid)) X X RETURN X END X `20 X SUBROUTINE ptkf_unpostmenu(wsid, menuid) X INTEGER wsid, menuid X external ptk_unpostmenu`20 X X call ptk_unpostmenu(%val(wsid), %val(menuid)) X X RETURN X END X X SUBROUTINE ptkf_unpostallmenu(wsid) X INTEGER wsid X external ptk_unpostallmenu`20 X X call ptk_unpostallmenu(%val(wsid)) X X RETURN X END X `20 X LOGICAL FUNCTION ptkf_stringscanmenus(wsid, str, menuid, itemnum) X INTEGER wsid X CHARACTER*(*) str X INTEGER menuid, itemnum X LOGICAL*1 ptkc_stringscanmenus, ans X external ptkc_stringscanmenus`20 X X ans = ptkc_stringscanmenus(%val(wsid), str, menuid, itemnum) X if (ans .eq. 1) then X ptkf_stringscanmenus = .TRUE. X else X ptkf_stringscanmenus = .FALSE. X endif X X RETURN X END X X LOGICAL FUNCTION ptkf_pickscanmenus(ippd, pp, ppordr, menuid,`20 X : itemnum) X INTEGER ippd X INTEGER pp(3, ippd) X INTEGER ppordr X INTEGER menuid, itemnum X LOGICAL*1 ptkc_pickscanmenus, ans X external ptkc_pickscanmenus`20 X X ans = ptkc_pickscanmenus(%val(ippd), pp, %val(ppordr), menuid,`20 X : itemnum) X if (ans .eq. 1) then X ptkf_pickscanmenus = .TRUE. X else X ptkf_pickscanmenus = .FALSE. X endif X X RETURN X END X X LOGICAL FUNCTION ptkf_locscanmenus(wsid, point, menuid, itemnum,`20 X : value) X INTEGER wsid X REAL point(2) X INTEGER menuid, itemnum X REAL value(2) X LOGICAL*1 ptk_locscanmenus, ans X external ptk_locscanmenus`20 X X ans = ptk_locscanmenus(%val(wsid), point, menuid, itemnum, value) X if (ans .eq. 1) then X ptkf_locscanmenus = .TRUE. X else X ptkf_locscanmenus = .FALSE. X endif X X RETURN X END X `20 X SUBROUTINE ptkf_setmenuposition(menuid, menupos) X INTEGER menuid X REAL menupos(2) X external ptk_setmenuposition`20 X X call ptk_setmenuposition(%val(menuid), menupos) X X RETURN X END X `20 X SUBROUTINE ptkf_setboxmenutextfont(wsid, menuid, font) X INTEGER wsid, menuid, font X external ptk_setboxmenutextfont`20 X X call ptk_setboxmenutextfont(%val(wsid), %val(menuid), %val(font)) X X RETURN X END `20 X X SUBROUTINE ptkf_setboxmenuattrs(wsid, menuid,`20 X : menupath, font, textcolour, intcolour, edgecolour,`20 X : boxtlcolour, boxbrcolour, httextcolour, htintcolour,`20 X : htedgecolour) X INTEGER wsid, menuid, menupath, font X INTEGER textcolour, intcolour, edgecolour X INTEGER boxtlcolour, boxbrcolour X INTEGER httextcolour, htintcolour, htedgecolour X external ptk_setboxmenuattrs X X call ptk_setboxmenuattrs(%val(wsid), %val(menuid),`20 X : %val(menupath), %val(font), %val(textcolour), %val(intcolour),`20 X : %val(edgecolour), %val(boxtlcolour), %val(boxbrcolour),`20 X : %val(httextcolour), %val(htintcolour), %val(htedgecolour)) X X RETURN X END X `20 X SUBROUTINE ptkf_setboxmenuhighlightitem(menuid, itemnum) X INTEGER menuid, itemnum X external ptk_setboxmenuhighlightitem`20 X X call ptk_setboxmenuhighlightitem(%val(menuid), %val(itemnum)) X X RETURN X END X `20 X SUBROUTINE ptkf_clearboxmenuhighlight(menuid) X INTEGER menuid X external ptk_clearboxmenuhighlight`20 X X call ptk_clearboxmenuhighlight(%val(menuid)) X X RETURN X END X `20 X SUBROUTINE ptkf_inqpostedmenus(wsid, num, menuids, totalnum, err) X INTEGER wsid, num, menuids(num), totalnum, err X external ptkc_inqpostedmenus`20 X X call ptkc_inqpostedmenus(%val(wsid), %val(num), menuids,`20 X : totalnum, err) X X RETURN X END X `20 X SUBROUTINE ptkf_inqmenuids(num, menuids, totalnum, err) X INTEGER num, menuids(num), totalnum, err X external ptkc_inqmenuids`20 X X call ptkc_inqmenuids(%val(num), menuids, totalnum, err) X X RETURN X END X `20 X SUBROUTINE ptkf_inqmenustructid(menuid, menustid, err) X INTEGER menuid, menustid, err X external ptk_inqmenustructid`20 X X call ptk_inqmenustructid(%val(menuid), menustid, err) X X RETURN X END X `20 X SUBROUTINE ptkf_inqmenuname(menuid, menuname, err) X INTEGER menuid, menuname, err X external ptk_inqmenuname`20 X `20 X call ptk_inqmenuname(%val(menuid), menuname, err) X X RETURN X END X `20 X LOGICAL FUNCTION ptkf_inqfrontbackmenuid(wsid, frontid,`20 X : backid, err) X INTEGER wsid, frontid, backid, err X LOGICAL*1 ptk_inqfrontbackmenuid, ans X external ptk_inqfrontbackmenuid`20 X X ans = ptk_inqfrontbackmenuid(%val(wsid), frontid, backid) X if (ans .eq. 1) then X ptkf_inqfrontbackmenuid = .TRUE. X else X ptkf_inqfrontbackmenuid = .FALSE. X endif X X RETURN X END X X SUBROUTINE ptkf_inqmenuposition(menuid, position, err) X INTEGER menuid X REAL position(2) X INTEGER err X external ptk_inqmenuposition !$PRAGMA C(ptk_inqmenuposition) X X call ptk_inqmenuposition(%val(menuid), position, err) X X RETURN X END X X SUBROUTINE ptkf_inqboxmenuhighlightitem(menuid, item, err) X INTEGER menuid, item, err X external ptk_inqboxmenuhighlightitem`20 X X call ptk_inqboxmenuhighlightitem(%val(menuid), item, err) X X RETURN X END X X SUBROUTINE ptkf_inqboxmenuattrs(menuid, menupath, X : font, textcolour, intcolour, edgecolour, boxtlcolour, boxbrcolour,`20 X : httextcolour, htintcolour, htedgecolour, err) X INTEGER menuid, menupath, font, textcolour, intcolour X INTEGER edgecolour, boxtlcolour, boxbrcolour X INTEGER httextcolour, htintcolour, htedgecolour, err X external ptk_inqboxmenuattrs X X call ptk_inqboxmenuattrs(%val(menuid), menupath, X : font, textcolour, intcolour, edgecolour, boxtlcolour,`20 X : boxbrcolour, httextcolour, htintcolour, htedgecolour, err) X X RETURN X END X `20 X SUBROUTINE ptkf_createrotator(wsid, menuid, rottype, size,`20 X : titlestr, titleheight) X INTEGER wsid, menuid, rottype X REAL size(2) X CHARACTER*(*) titlestr X REAL titleheight X external ptkc_createrotator`20 X X call ptkc_createrotator(%val(wsid), %val(menuid), %val(rottype),`20 X : size, titlestr, titleheight) X X RETURN X END X `20 X SUBROUTINE ptkf_setrotatortitle(menuid, titlestr) X INTEGER menuid X CHARACTER*(*) titlestr X external ptkc_setrotatortitle`20 X X call ptkc_setrotatortitle(%val(menuid), titlestr) X X RETURN X END X X SUBROUTINE ptkf_setrotatorattrs(wsid, menuid,`20 X : titlefont, titlecolour, arrowcolour, arrowedgecolour, X : intcolour, edgecolour, bannercolour,`20 X : boxtlcolour, boxbrcolour) X INTEGER wsid, menuid, titlefont X INTEGER titlecolour, arrowcolour, arrowedgecolour X INTEGER intcolour, edgecolour, bannercolour X INTEGER boxtlcolour, boxbrcolour X external ptk_setrotatorattrs X X call ptk_setrotatorattrs(%val(wsid), %val(menuid),`20 X : %val(titlefont), %val(titlecolour), %val(arrowcolour), X : %val(arrowedgecolour), %val(intcolour),`20 X : %val(edgecolour), %val(bannercolour),`20 X : %val(boxtlcolour), %val(boxbrcolour)) X X RETURN X END X X SUBROUTINE ptkf_inqrotatortitle(menuid, len, titlestr, totlen, X : err) X INTEGER menuid, len X CHARACTER*(*) titlestr X INTEGER totlen, err X external ptkc_inqrotatortitle X X call ptkc_inqrotatortitle(menuid, %val(len), titlestr, totlen, X : err)`20 X totlen = totlen - 1 X X RETURN X END X X SUBROUTINE ptkf_inqrotatorattrs(menuid,`20 X : titlefont, titlecolour, arrowcolour, arrowedgecolour,`20 X : intcolour, edgecolour, bannercolour, boxtlcolour,`20 X : boxbrcolour, err) X INTEGER menuid, titlefont, titlecolour, arrowcolour X INTEGER arrowedgecolour, intcolour X INTEGER edgecolour, bannercolour, boxtlcolour X INTEGER boxbrcolour, err X external ptk_inqrotatorattrs !$PRAGMA C(ptk_inqrotatorattrs) X X call ptk_inqrotatorattrs(%val(menuid),`20 X : titlefont, titlecolour, arrowcolour, arrowedgecolour,`20 X : intcolour, edgecolour, bannercolour, boxtlcolour,`20 X : boxbrcolour, err) X X RETURN X END X `20 XC end of menu.f $ CALL UNPACK [.FORTRAN.SOURCE.LIBRARY]MENU.FOR;1 1192470806 $ create 'f' X X SUBROUTINE ptkf_inqcurelemtype(error, eltype) X INTEGER error, eltype X external ptk_inqcurelemtype`20 X X call ptk_inqcurelemtype(error, eltype) X X RETURN X END X X SUBROUTINE ptkf_inqelemtype(stid, elemid, error, eltype) X INTEGER stid, elemid, error, eltype X external ptk_inqelemtype`20 X X call ptk_inqelemtype(%val(stid), %val(elemid), error, eltype) X +-+-+-+-+-+-+-+- END OF PART 173 +-+-+-+-+-+-+-+-