/3.0 (Extension.1 Name: "HotPotato" Dependencies: "C:/ESRI/AV_GIS30/ARCVIEW/Ext32/cadview.avx\nC:/ESRI/AV_GIS30/ARCVIEW/Ext32/jfif.avx\n" FirstRootClassName: "List" Roots: 2 Roots: 3 Roots: 20 Roots: 21 Roots: 22 Roots: 41 Roots: 42 Roots: 43 Roots: 44 Roots: 45 Roots: 46 Roots: 47 Roots: 48 Roots: 49 Roots: 50 Roots: 51 Roots: 52 Roots: 53 Roots: 54 Roots: 55 Roots: 56 Version: 30 About: "HotPotato Hotlinks provides the ability to have multiple hotlinks of different types for multiple shapes." InstallScript: 57 UninstallScript: 58 ExtVersion: 1 ) (List.2 ) (List.3 Child: 4 Child: 12 ) (List.4 Child: 5 Child: 9 Child: 11 ) (List.5 Child: 6 Child: 7 Child: 8 ) (AVStr.6 S: "View" ) (AVStr.7 S: "ToolBar" ) (AVStr.8 S: "HotPotato.AddLinks" ) (Tool.9 Help: "HotPotato Add HotLinks//Tool for adding Hotlinks to a feature theme" Icon: 10 Cursor: "Cursors.Default" Apply: "HotPotato.AddLinks" ) (AVIcon.10 Name: "lnkbtn.gif" Data: 4e442049 6d616765 0001000f 000f0000 Data: 00e1cdd0 d4d6d9db dbdbdbdb d9d6d4d0 Data: cdd0d4d7 dbdd7171 71717171 717171d0 Data: d4d7dbdf e2717171 71717171 7171d4d6 Data: dbdfe4e6 7171ebeb e9e6e471 71d6d9dd Data: e2e6eb71 71f0f0ef ebe67171 d9db2b2b Data: 2b2b2b2b 2b2b2bef e97171db db2b2b2b Data: 2b2b2b2b 2b2bf0eb 7171dbdb 2b2bebf0 Data: 7171ff2b 2bf0eb71 71dbdb2b 2bebf071 Data: 71717171 71717171 dbdb2b2b e9ef7171 Data: 71717171 717171db d92b2be6 ebeff0f0 Data: 2b2bebe6 e2ddd9d6 2b2be4e6 e9ebeb2b Data: 2be6e4df dbd6d42b 2b2b2b2b 2b2b2b2b Data: e2dfdbd7 d4d02b2b 2b2b2b2b 2b2b2bdd Data: dbd7d4d0 cdd0d4d6 d9dbdbdb dbdbd9d6 Data: d4d0cd00 00030000 00000300 00060000 Data: 0900000c 00000f00 00120000 15000018 Data: 00001b00 001e0000 21000024 00002700 Data: 002a0000 2d000030 00003300 00360000 Data: 3900003c 00003f00 00420000 45000048 Data: 00004b00 004e0000 51000054 00005700 Data: 005a0000 5d000060 00006300 00660000 Data: 6900006c 00006f00 00720000 75000078 Data: 00007b00 007e0000 81000084 00008700 Data: 008a0000 8d000090 00009300 00960000 Data: 9900009c 00009f00 00a20000 a50000a8 Data: 0000ab00 00ae0000 b10000b4 0000b700 Data: 00ba0000 bd0000c0 0000c300 00c60000 Data: c90000cc 0000cf00 00d20000 d50000d8 Data: 0000db00 00de0000 e10000e4 0000e700 Data: 00ea0000 ed0000f0 0000f300 00f60000 Data: f90000fc 0000ff00 00ff0300 ff0600ff Data: 0900ff0c 00ff0f00 ff1200ff 1500ff18 Data: 00ff1b00 ff1e00ff 2100ff24 00ff2700 Data: ff2a00ff 2d00ff30 00ff3300 ff3600ff Data: 3900ff3c 00ff3f00 ff4200ff 4500ff48 Data: 00ff4b00 ff4e00ff 5100ff54 00ff5700 Data: ff5a00ff 5d00ff60 00ff6300 ff6600ff Data: 6900ff6c 00ff6f00 ff7200ff 7500ff78 Data: 00ff7b00 ff7e00ff 8100ff84 00ff8700 Data: ff8a00ff 8d00ff90 00ff9300 ff9600ff Data: 9900ff9c 00ff9f00 ffa200ff a500ffa8 Data: 00ffab00 ffae00ff b100ffb4 00ffb700 Data: ffba00ff bd00ffc0 00ffc300 ffc600ff Data: c900ffcc 00ffcf00 ffd200ff d500ffd8 Data: 00ffdb00 ffde00ff e100ffe4 00ffe700 Data: ffea00ff ed00fff0 00fff300 fff600ff Data: f900fffc 00ffff00 ffff03ff ff06ffff Data: 09ffff0c ffff0fff ff12ffff 15ffff18 Data: ffff1bff ff1effff 21ffff24 ffff27ff Data: ff2affff 2dffff30 ffff33ff ff36ffff Data: 39ffff3c ffff3fff ff42ffff 45ffff48 Data: ffff4bff ff4effff 51ffff54 ffff57ff Data: ff5affff 5dffff60 ffff63ff ff66ffff Data: 69ffff6c ffff6fff ff72ffff 75ffff78 Data: ffff7bff ff7effff 81ffff84 ffff87ff Data: ff8affff 8dffff90 ffff93ff ff96ffff Data: 99ffff9c ffff9fff ffa2ffff a5ffffa8 Data: ffffabff ffaeffff b1ffffb4 ffffb7ff Data: ffbaffff bdffffc0 ffffc3ff ffc6ffff Data: c9ffffcc ffffcfff ffd2ffff d5ffffd8 Data: ffffdbff ffdeffff e1ffffe4 ffffe7ff Data: ffeaffff edfffff0 fffff3ff fff6ffff Data: f9fffffc ffffff00 02000800 05001800 Data: 00000000 00000000 000000 ) (Numb.11 N: 19.00000000000000 ) (List.12 Child: 13 Child: 17 Child: 19 ) (List.13 Child: 14 Child: 15 Child: 16 ) (AVStr.14 S: "View" ) (AVStr.15 S: "ToolBar" ) (AVStr.16 S: "HotPotato.GetLinks" ) (Tool.17 Help: "HotPotato HotLink//Follows a HotLink in the Active Theme" Icon: 18 Cursor: "Cursors.Default" Apply: "HotPotato.GetLinks" ) (AVIcon.18 Name: "bolt.gif" Data: 4e442049 6d616765 0001000f 000f0000 Data: 00e1cdd0 d4d6d9db dbdbdbdb d9d6d4d0 Data: cdd0d4d7 dbdde0e0 e0e06b6b 6b6b6bd0 Data: d4d7dbdf e2e4e6e6 6b6b5858 6b6bd4d6 Data: dbdfe4e6 e9eb6b6b 58586b6b dbd6d9dd Data: e2e6ebef 6b6b5858 6b6be2dd d9dbe0e4 Data: e9ef6b60 58585860 e9e4e0db dbe0e6eb Data: 6b6b6b6a 6b586b6b 6be0dbdb e0e6ebf0 Data: f6fbff6a 58586b6b e0dbdbe0 e6ebf0f6 Data: f96a6b58 6b6be6e0 dbdbe0e4 e9eff26b Data: 6b6b6b6b e9e4e0db d9dde2e6 eb6b6b6b Data: 6befebe6 e2ddd9d6 dbdfe46b 6b6bebeb Data: e9e6e4df dbd6d4d7 db6b6b6b e6e6e6e4 Data: e2dfdbd7 d4d0d46b 6bdde0e0 e0e0e0dd Data: dbd7d4d0 cdd0d4d6 d9dbdbdb dbdbd9d6 Data: d4d0cd00 00030000 00000300 00060000 Data: 0900000c 00000f00 00120000 15000018 Data: 00001b00 001e0000 21000024 00002700 Data: 002a0000 2d000030 00003300 00360000 Data: 3900003c 00003f00 00420000 45000048 Data: 00004b00 004e0000 51000054 00005700 Data: 005a0000 5d000060 00006300 00660000 Data: 6900006c 00006f00 00720000 75000078 Data: 00007b00 007e0000 81000084 00008700 Data: 008a0000 8d000090 00009300 00960000 Data: 9900009c 00009f00 00a20000 a50000a8 Data: 0000ab00 00ae0000 b10000b4 0000b700 Data: 00ba0000 bd0000c0 0000c300 00c60000 Data: c90000cc 0000cf00 00d20000 d50000d8 Data: 0000db00 00de0000 e10000e4 0000e700 Data: 00ea0000 ed0000f0 0000f300 00f60000 Data: f90000fc 0000ff00 00ff0300 ff0600ff Data: 0900ff0c 00ff0f00 ff1200ff 1500ff18 Data: 00ff1b00 ff1e00ff 2100ff24 00ff2700 Data: ff2a00ff 2d00ff30 00ff3300 ff3600ff Data: 3900ff3c 00ff3f00 ff4200ff 4500ff48 Data: 00ff4b00 ff4e00ff 5100ff54 00ff5700 Data: ff5a00ff 5d00ff60 00ff6300 ff6600ff Data: 6900ff6c 00ff6f00 ff7200ff 7500ff78 Data: 00ff7b00 ff7e00ff 8100ff84 00ff8700 Data: ff8a00ff 8d00ff90 00ff9300 ff9600ff Data: 9900ff9c 00ff9f00 ffa200ff a500ffa8 Data: 00ffab00 ffae00ff b100ffb4 00ffb700 Data: ffba00ff bd00ffc0 00ffc300 ffc600ff Data: c900ffcc 00ffcf00 ffd200ff d500ffd8 Data: 00ffdb00 ffde00ff e100ffe4 00ffe700 Data: ffea00ff ed00fff0 00fff300 fff600ff Data: f900fffc 00ffff00 ffff03ff ff06ffff Data: 09ffff0c ffff0fff ff12ffff 15ffff18 Data: ffff1bff ff1effff 21ffff24 ffff27ff Data: ff2affff 2dffff30 ffff33ff ff36ffff Data: 39ffff3c ffff3fff ff42ffff 45ffff48 Data: ffff4bff ff4effff 51ffff54 ffff57ff Data: ff5affff 5dffff60 ffff63ff ff66ffff Data: 69ffff6c ffff6fff ff72ffff 75ffff78 Data: ffff7bff ff7effff 81ffff84 ffff87ff Data: ff8affff 8dffff90 ffff93ff ff96ffff Data: 99ffff9c ffff9fff ffa2ffff a5ffffa8 Data: ffffabff ffaeffff b1ffffb4 ffffb7ff Data: ffbaffff bdffffc0 ffffc3ff ffc6ffff Data: c9ffffcc ffffcfff ffd2ffff d5ffffd8 Data: ffffdbff ffdeffff e1ffffe4 ffffe7ff Data: ffeaffff edfffff0 fffff3ff fff6ffff Data: f9fffffc ffffff00 02000800 05001800 Data: 00000000 00000000 000000 ) (Numb.19 N: 18.00000000000000 ) (List.20 ) (List.21 ) (List.22 Child: 23 ) (List.23 Child: 24 Child: 27 Child: 40 ) (List.24 Child: 25 Child: 26 ) (AVStr.25 S: "View" ) (AVStr.26 S: "HotPotato.ImgTag" ) (ToolMenu.27 Help: "HotPotato Video Links//This selector will let you work with Video Hotlinks" Icon: 28 Cursor: "Cursors.Default" Click: "HotPotato.VideoTag" Child: 29 Child: 31 Child: 33 Child: 35 Child: 37 Child: 39 ) (AVIcon.28 Name: "video.gif" Data: 4e442049 6d616765 00010012 000f0000 Data: 010e5455 7f7f8080 80808080 80808080 Data: 807f7f55 557f7f80 80808080 ababab80 Data: 80808080 7f7f557f 80808080 abababab Data: ababab80 8080807f 7f7f8080 80000000 Data: 00ab0000 00008080 807f7f80 8080abab Data: 0000acac ac0000ab ab808080 7f808080 Data: abab0000 d6d6d600 00abab80 80807f80 Data: 80ababab ac0000d7 0000acab abab8080 Data: 7f8080ab ababac00 00d70000 acababab Data: 80807f80 80ababab ac0000d7 0000acab Data: abab8080 7f808080 ababacac 00d600ac Data: acabab80 80807f80 8080abab abac0000 Data: 00acabab ab808080 7f7f8080 80ababab Data: 000000ab abab8080 807f557f 80808080 Data: abababab ababab80 8080807f 557f7f80 Data: 80808080 ababab80 80808080 7f7f5455 Data: 7f7f8080 80808080 80808080 807f7f55 Data: 00000300 00000033 00006600 00990000 Data: cc0000ff 00000033 00333300 66330099 Data: 3300cc33 00ff3300 00660033 66006666 Data: 00996600 cc6600ff 66000099 00339900 Data: 66990099 9900cc99 00ff9900 00cc0033 Data: cc0066cc 0099cc00 cccc00ff cc0000ff Data: 0033ff00 66ff0099 ff00ccff 00ffff00 Data: 00003333 00336600 33990033 cc0033ff Data: 00330033 33333333 66333399 3333cc33 Data: 33ff3333 00663333 66336666 33996633 Data: cc6633ff 66330099 33339933 66993399 Data: 9933cc99 33ff9933 00cc3333 cc3366cc Data: 3399cc33 cccc33ff cc3300ff 3333ff33 Data: 66ff3399 ff33ccff 33ffff33 00006633 Data: 00666600 66990066 cc0066ff 00660033 Data: 66333366 66336699 3366cc33 66ff3366 Data: 00666633 66666666 66996666 cc6666ff Data: 66660099 66339966 66996699 9966cc99 Data: 66ff9966 00cc6633 cc6666cc 6699cc66 Data: cccc66ff cc6600ff 6633ff66 66ff6699 Data: ff66ccff 66ffff66 00009933 00996600 Data: 99990099 cc0099ff 00990033 99333399 Data: 66339999 3399cc33 99ff3399 00669933 Data: 66996666 99996699 cc6699ff 66990099 Data: 99339999 66999999 9999cc99 99ff9999 Data: 00cc9933 cc9966cc 9999cc99 cccc99ff Data: cc9900ff 9933ff99 66ff9999 ff99ccff Data: 99ffff99 0000cc33 00cc6600 cc9900cc Data: cc00ccff 00cc0033 cc3333cc 6633cc99 Data: 33cccc33 ccff33cc 0066cc33 66cc6666 Data: cc9966cc cc66ccff 66cc0099 cc3399cc Data: 6699cc99 99cccc99 ccff99cc 00cccc33 Data: cccc66cc cc99cccc ccccccff cccc00ff Data: cc33ffcc 66ffcc99 ffccccff ccffffcc Data: 0000ff33 00ff6600 ff9900ff cc00ffff Data: 00ff0033 ff3333ff 6633ff99 33ffcc33 Data: ffff33ff 0066ff33 66ff6666 ff9966ff Data: cc66ffff 66ff0099 ff3399ff 6699ff99 Data: 99ffcc99 ffff99ff 00ccff33 ccff66cc Data: ff99ccff ccccffff ccff00ff ff33ffff Data: 66ffff99 ffffccff ffffffff 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00020008 00050018 00000000 Data: 00000000 00000000 ) (Tool.29 Help: "HotPotato Image Links//This selector lets you work with Image Links that are displayed in Views." Icon: 30 Cursor: "Cursors.Default" Click: "HotPotato.ImgTag" ) (AVIcon.30 Name: "img.gif" Data: 4e442049 6d616765 00010012 000f0000 Data: 010e9c9d a3a3a4a4 a4a4a4a4 a4a4a4a4 Data: a4a3a39d 9da3a3a4 a4000000 00000000 Data: 00a4a4a4 a3a39da3 a4a4a400 00000000 Data: 000000a4 a4a4a4a3 a3a3a4a4 a4cfcfcf Data: 0000cfcf cfcfa4a4 a4a3a3a4 a4a4cfcf Data: cfd00000 d0d0cfcf cfa4a4a4 a3a4a4a4 Data: cfcfd0d0 0000d6d0 d0cfcfa4 a4a4a3a4 Data: a4cfcfcf d0d60000 d7d6d0cf cfcfa4a4 Data: a3a4a4cf cfcfd0d6 0000d7d6 d0cfcfcf Data: a4a4a3a4 a4cfcfcf d0d60000 d7d6d0cf Data: cfcfa4a4 a3a4a4a4 cfcfd0d0 0000d6d0 Data: d0cfcfa4 a4a4a3a4 a4a4cfcf cfd00000 Data: d0d0cfcf cfa4a4a4 a3a3a4a4 a4000000 Data: 00000000 00cfa4a4 a4a39da3 a4a4a400 Data: 00000000 000000a4 a4a4a4a3 9da3a3a4 Data: a4a4a4a4 cfcfcfa4 a4a4a4a4 a3a39c9d Data: a3a3a4a4 a4a4a4a4 a4a4a4a4 a4a3a39d Data: 00000300 00000033 00006600 00990000 Data: cc0000ff 00000033 00333300 66330099 Data: 3300cc33 00ff3300 00660033 66006666 Data: 00996600 cc6600ff 66000099 00339900 Data: 66990099 9900cc99 00ff9900 00cc0033 Data: cc0066cc 0099cc00 cccc00ff cc0000ff Data: 0033ff00 66ff0099 ff00ccff 00ffff00 Data: 00003333 00336600 33990033 cc0033ff Data: 00330033 33333333 66333399 3333cc33 Data: 33ff3333 00663333 66336666 33996633 Data: cc6633ff 66330099 33339933 66993399 Data: 9933cc99 33ff9933 00cc3333 cc3366cc Data: 3399cc33 cccc33ff cc3300ff 3333ff33 Data: 66ff3399 ff33ccff 33ffff33 00006633 Data: 00666600 66990066 cc0066ff 00660033 Data: 66333366 66336699 3366cc33 66ff3366 Data: 00666633 66666666 66996666 cc6666ff Data: 66660099 66339966 66996699 9966cc99 Data: 66ff9966 00cc6633 cc6666cc 6699cc66 Data: cccc66ff cc6600ff 6633ff66 66ff6699 Data: ff66ccff 66ffff66 00009933 00996600 Data: 99990099 cc0099ff 00990033 99333399 Data: 66339999 3399cc33 99ff3399 00669933 Data: 66996666 99996699 cc6699ff 66990099 Data: 99339999 66999999 9999cc99 99ff9999 Data: 00cc9933 cc9966cc 9999cc99 cccc99ff Data: cc9900ff 9933ff99 66ff9999 ff99ccff Data: 99ffff99 0000cc33 00cc6600 cc9900cc Data: cc00ccff 00cc0033 cc3333cc 6633cc99 Data: 33cccc33 ccff33cc 0066cc33 66cc6666 Data: cc9966cc cc66ccff 66cc0099 cc3399cc Data: 6699cc99 99cccc99 ccff99cc 00cccc33 Data: cccc66cc cc99cccc ccccccff cccc00ff Data: cc33ffcc 66ffcc99 ffccccff ccffffcc Data: 0000ff33 00ff6600 ff9900ff cc00ffff Data: 00ff0033 ff3333ff 6633ff99 33ffcc33 Data: ffff33ff 0066ff33 66ff6666 ff9966ff Data: cc66ffff 66ff0099 ff3399ff 6699ff99 Data: 99ffcc99 ffff99ff 00ccff33 ccff66cc Data: ff99ccff ccccffff ccff00ff ff33ffff Data: 66ffff99 ffffccff ffffffff 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00020008 00050018 00000000 Data: 00000000 00000000 ) (Tool.31 Help: "HotPotato Text Links//This selector lets you work withText Links" Icon: 32 Cursor: "Cursors.Default" Click: "HotPotato.TextTag" ) (AVIcon.32 Name: "txt.gif" Data: 4e442049 6d616765 00010012 000f0000 Data: 010e476b 6b6b6b6b 8f8f8f8f 8f8f8f6b Data: 6b6b6b6b 476b6b6b 6b8f8f8f 8f8f8f8f Data: 8f8f6b6b 6b6b6b6b 6b6b8f8f 8f8f8f8f Data: 8f8f8f8f 8f6b6b6b 6b6b6b8f 8f000000 Data: 00000000 008f8f8f 6b6b6b6b 8f8f8f00 Data: b3b30000 b3b3008f 8f8f8f6b 6b6b8f8f Data: 8f00b3b3 0000b3b3 00b38f8f 8f6b6b6b Data: 8f8f8f00 b3b30000 d7b300b3 8f8f8f6b Data: 6b6b8f8f 8fb3b3b3 0000d7b3 b3b38f8f Data: 8f6b6b6b 8f8f8fb3 b3b30000 d7b3b3b3 Data: 8f8f8f6b 6b6b8f8f 8fb3b3b3 0000b3b3 Data: b3b38f8f 8f6b6b6b 8f8f8f8f b3b30000 Data: b3b3b38f 8f8f8f6b 6b6b6b8f 8f8f0000 Data: 00000000 8f8f8f8f 6b6b6b6b 6b6b8f8f Data: 8f8f8f8f 8f8f8f8f 8f6b6b6b 476b6b6b Data: 6b8f8f8f 8f8f8f8f 8f8f6b6b 6b6b476b Data: 6b6b6b6b 8f8f8f8f 8f8f8f6b 6b6b6b6b Data: 00000300 00000033 00006600 00990000 Data: cc0000ff 00000033 00333300 66330099 Data: 3300cc33 00ff3300 00660033 66006666 Data: 00996600 cc6600ff 66000099 00339900 Data: 66990099 9900cc99 00ff9900 00cc0033 Data: cc0066cc 0099cc00 cccc00ff cc0000ff Data: 0033ff00 66ff0099 ff00ccff 00ffff00 Data: 00003333 00336600 33990033 cc0033ff Data: 00330033 33333333 66333399 3333cc33 Data: 33ff3333 00663333 66336666 33996633 Data: cc6633ff 66330099 33339933 66993399 Data: 9933cc99 33ff9933 00cc3333 cc3366cc Data: 3399cc33 cccc33ff cc3300ff 3333ff33 Data: 66ff3399 ff33ccff 33ffff33 00006633 Data: 00666600 66990066 cc0066ff 00660033 Data: 66333366 66336699 3366cc33 66ff3366 Data: 00666633 66666666 66996666 cc6666ff Data: 66660099 66339966 66996699 9966cc99 Data: 66ff9966 00cc6633 cc6666cc 6699cc66 Data: cccc66ff cc6600ff 6633ff66 66ff6699 Data: ff66ccff 66ffff66 00009933 00996600 Data: 99990099 cc0099ff 00990033 99333399 Data: 66339999 3399cc33 99ff3399 00669933 Data: 66996666 99996699 cc6699ff 66990099 Data: 99339999 66999999 9999cc99 99ff9999 Data: 00cc9933 cc9966cc 9999cc99 cccc99ff Data: cc9900ff 9933ff99 66ff9999 ff99ccff Data: 99ffff99 0000cc33 00cc6600 cc9900cc Data: cc00ccff 00cc0033 cc3333cc 6633cc99 Data: 33cccc33 ccff33cc 0066cc33 66cc6666 Data: cc9966cc cc66ccff 66cc0099 cc3399cc Data: 6699cc99 99cccc99 ccff99cc 00cccc33 Data: cccc66cc cc99cccc ccccccff cccc00ff Data: cc33ffcc 66ffcc99 ffccccff ccffffcc Data: 0000ff33 00ff6600 ff9900ff cc00ffff Data: 00ff0033 ff3333ff 6633ff99 33ffcc33 Data: ffff33ff 0066ff33 66ff6666 ff9966ff Data: cc66ffff 66ff0099 ff3399ff 6699ff99 Data: 99ffcc99 ffff99ff 00ccff33 ccff66cc Data: ff99ccff ccccffff ccff00ff ff33ffff Data: 66ffff99 ffffccff ffffffff 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00020008 00050018 00000000 Data: 00000000 00000000 ) (Tool.33 Help: "HotPotato Image PopUps//This selector lets you work with image popups" Icon: 34 Cursor: "Cursors.Default" Click: "HotPotato.SmlImgTag" ) (AVIcon.34 Name: "img2.gif" Data: 4e442049 6d616765 00010012 000f0000 Data: 010e7177 779ba1a1 a1a1a1a1 a1a1a1a1 Data: a19b7777 77779ba1 a1a1a1a1 a7a7a7a1 Data: a1a1a1a1 9b777777 a1a1a1a1 a7a70000 Data: a7a7a7a1 a1a1a177 779ba1a1 a1a7a7a7 Data: 0000a7a7 a7a7a1a1 a19b77a1 a1a1a7a7 Data: a7add1d1 d1ada7a7 a7a1a1a1 9ba1a1a1 Data: a7a70000 0000d1d1 ada7a7a1 a1a19ba1 Data: a1a7a7a7 d1d10000 d7d1d1a7 a7a7a1a1 Data: 9ba1a1a7 a7a7d1d1 0000d7d1 d1a7a7a7 Data: a1a19ba1 a1a7a7a7 d1d10000 d7d1d1a7 Data: a7a7a1a1 9ba1a1a1 a7a7add1 0000d1d1 Data: ada7a7a1 a1a177a1 a1a1a7a7 a7ad0000 Data: d1ada7a7 a7a1a1a1 779ba1a1 a1000000 Data: 00000000 00a7a1a1 a19b7777 a1a1a1a1 Data: a7a7a7a7 a7a7a7a1 a1a1a177 77779ba1 Data: a1a1a1a1 a7a7a7a1 a1a1a1a1 9b777177 Data: 779ba1a1 a1a1a1a1 a1a1a1a1 a19b7777 Data: 00000300 00000033 00006600 00990000 Data: cc0000ff 00000033 00333300 66330099 Data: 3300cc33 00ff3300 00660033 66006666 Data: 00996600 cc6600ff 66000099 00339900 Data: 66990099 9900cc99 00ff9900 00cc0033 Data: cc0066cc 0099cc00 cccc00ff cc0000ff Data: 0033ff00 66ff0099 ff00ccff 00ffff00 Data: 00003333 00336600 33990033 cc0033ff Data: 00330033 33333333 66333399 3333cc33 Data: 33ff3333 00663333 66336666 33996633 Data: cc6633ff 66330099 33339933 66993399 Data: 9933cc99 33ff9933 00cc3333 cc3366cc Data: 3399cc33 cccc33ff cc3300ff 3333ff33 Data: 66ff3399 ff33ccff 33ffff33 00006633 Data: 00666600 66990066 cc0066ff 00660033 Data: 66333366 66336699 3366cc33 66ff3366 Data: 00666633 66666666 66996666 cc6666ff Data: 66660099 66339966 66996699 9966cc99 Data: 66ff9966 00cc6633 cc6666cc 6699cc66 Data: cccc66ff cc6600ff 6633ff66 66ff6699 Data: ff66ccff 66ffff66 00009933 00996600 Data: 99990099 cc0099ff 00990033 99333399 Data: 66339999 3399cc33 99ff3399 00669933 Data: 66996666 99996699 cc6699ff 66990099 Data: 99339999 66999999 9999cc99 99ff9999 Data: 00cc9933 cc9966cc 9999cc99 cccc99ff Data: cc9900ff 9933ff99 66ff9999 ff99ccff Data: 99ffff99 0000cc33 00cc6600 cc9900cc Data: cc00ccff 00cc0033 cc3333cc 6633cc99 Data: 33cccc33 ccff33cc 0066cc33 66cc6666 Data: cc9966cc cc66ccff 66cc0099 cc3399cc Data: 6699cc99 99cccc99 ccff99cc 00cccc33 Data: cccc66cc cc99cccc ccccccff cccc00ff Data: cc33ffcc 66ffcc99 ffccccff ccffffcc Data: 0000ff33 00ff6600 ff9900ff cc00ffff Data: 00ff0033 ff3333ff 6633ff99 33ffcc33 Data: ffff33ff 0066ff33 66ff6666 ff9966ff Data: cc66ffff 66ff0099 ff3399ff 6699ff99 Data: 99ffcc99 ffff99ff 00ccff33 ccff66cc Data: ff99ccff ccccffff ccff00ff ff33ffff Data: 66ffff99 ffffccff ffffffff 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00020008 00050018 00000000 Data: 00000000 00000000 ) (Tool.35 Help: "HotPotato CAD, Theme, and Coverage Links//This selector lets you work with CAD, Theme, and Coverages" Icon: 36 Cursor: "Cursors.Default" Click: "HotPotato.CADtag" ) (AVIcon.36 Name: "cad.gif" Data: 4e442049 6d616765 00010012 000f0000 Data: 010e8b8c 8cb0b0b0 b1b1b1b1 b1b1b1b0 Data: b0b08c8c 8b8cb0b0 b0b1b1b1 b1b1b1b1 Data: b1b1b0b0 b08c8c8c b0b0b1b1 b1b1b1b1 Data: b1b1b1b1 b1b0b08c 8cb0b0b1 b1b10000 Data: 000000b2 00b1b1b1 b0b08cb0 b1b1b100 Data: 00b2d6d6 d60000b1 b1b1b1b0 b0b0b1b1 Data: 0000b2d6 d6d6d6d6 00b2b1b1 b1b0b0b0 Data: b1b10000 d6d6d7d7 d7d6d6b2 b1b1b1b0 Data: b0b0b1b1 0000d6d6 d7d7d7d6 d6b2b1b1 Data: b1b0b0b0 b1b10000 d6d6d7d7 d7d6d6b2 Data: b1b1b1b0 b0b0b1b1 0000b2d6 d6d6d6d6 Data: 00b2b1b1 b1b08cb0 b1b1b100 00b2d6d6 Data: d600b2b1 b1b1b1b0 8cb0b0b1 b1b10000 Data: 000000b2 b1b1b1b1 b0b08c8c b0b0b1b1 Data: b1b1b1b1 b1b1b1b1 b1b0b08c 8b8cb0b0 Data: b0b1b1b1 b1b1b1b1 b1b1b0b0 b08c8b8c Data: 8cb0b0b0 b1b1b1b1 b1b1b1b0 b0b08c8c Data: 00000300 00000033 00006600 00990000 Data: cc0000ff 00000033 00333300 66330099 Data: 3300cc33 00ff3300 00660033 66006666 Data: 00996600 cc6600ff 66000099 00339900 Data: 66990099 9900cc99 00ff9900 00cc0033 Data: cc0066cc 0099cc00 cccc00ff cc0000ff Data: 0033ff00 66ff0099 ff00ccff 00ffff00 Data: 00003333 00336600 33990033 cc0033ff Data: 00330033 33333333 66333399 3333cc33 Data: 33ff3333 00663333 66336666 33996633 Data: cc6633ff 66330099 33339933 66993399 Data: 9933cc99 33ff9933 00cc3333 cc3366cc Data: 3399cc33 cccc33ff cc3300ff 3333ff33 Data: 66ff3399 ff33ccff 33ffff33 00006633 Data: 00666600 66990066 cc0066ff 00660033 Data: 66333366 66336699 3366cc33 66ff3366 Data: 00666633 66666666 66996666 cc6666ff Data: 66660099 66339966 66996699 9966cc99 Data: 66ff9966 00cc6633 cc6666cc 6699cc66 Data: cccc66ff cc6600ff 6633ff66 66ff6699 Data: ff66ccff 66ffff66 00009933 00996600 Data: 99990099 cc0099ff 00990033 99333399 Data: 66339999 3399cc33 99ff3399 00669933 Data: 66996666 99996699 cc6699ff 66990099 Data: 99339999 66999999 9999cc99 99ff9999 Data: 00cc9933 cc9966cc 9999cc99 cccc99ff Data: cc9900ff 9933ff99 66ff9999 ff99ccff Data: 99ffff99 0000cc33 00cc6600 cc9900cc Data: cc00ccff 00cc0033 cc3333cc 6633cc99 Data: 33cccc33 ccff33cc 0066cc33 66cc6666 Data: cc9966cc cc66ccff 66cc0099 cc3399cc Data: 6699cc99 99cccc99 ccff99cc 00cccc33 Data: cccc66cc cc99cccc ccccccff cccc00ff Data: cc33ffcc 66ffcc99 ffccccff ccffffcc Data: 0000ff33 00ff6600 ff9900ff cc00ffff Data: 00ff0033 ff3333ff 6633ff99 33ffcc33 Data: ffff33ff 0066ff33 66ff6666 ff9966ff Data: cc66ffff 66ff0099 ff3399ff 6699ff99 Data: 99ffcc99 ffff99ff 00ccff33 ccff66cc Data: ff99ccff ccccffff ccff00ff ff33ffff Data: 66ffff99 ffffccff ffffffff 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00020008 00050018 00000000 Data: 00000000 00000000 ) (Tool.37 Help: "HotPotato Browser Links//this selector will let you work with HTML Documents" Icon: 38 Cursor: "Cursors.Default" Click: "HotPotato.BrowserTag" ) (AVIcon.38 Name: "browser.gif" Data: 4e442049 6d616765 00010012 000f0000 Data: 010e8989 89adadad adadadad adadadad Data: adad8989 8989adad adadadad b3b3b3ad Data: adadadad ad898989 adadadad b3b3b3b3 Data: b3b3b3ad adadad89 89adadad ad000000 Data: 00000000 b3b3adad adad89ad adadb3b3 Data: 0000d7d7 d70000b3 b3adadad adadadad Data: b3b30000 d7d7d700 00b3b3ad adadadad Data: adb3b3b3 0000d7d7 d70000b3 b3b3adad Data: adadadb3 b3b30000 00000000 d7b3b3b3 Data: adadadad adb3b3b3 0000d7d7 d70000b3 Data: b3b3adad adadadad b3b30000 d7d7d700 Data: 00b3b3ad adad89ad adadb3b3 0000d7d7 Data: d70000b3 b3adadad 89adadad ad000000 Data: 00000000 b3b3adad adad8989 adadadad Data: b3b3b3b3 b3b3b3ad adadad89 8989adad Data: adadadad b3b3b3ad adadadad ad898989 Data: 89adadad adadadad adadadad adad8989 Data: 00000300 00000033 00006600 00990000 Data: cc0000ff 00000033 00333300 66330099 Data: 3300cc33 00ff3300 00660033 66006666 Data: 00996600 cc6600ff 66000099 00339900 Data: 66990099 9900cc99 00ff9900 00cc0033 Data: cc0066cc 0099cc00 cccc00ff cc0000ff Data: 0033ff00 66ff0099 ff00ccff 00ffff00 Data: 00003333 00336600 33990033 cc0033ff Data: 00330033 33333333 66333399 3333cc33 Data: 33ff3333 00663333 66336666 33996633 Data: cc6633ff 66330099 33339933 66993399 Data: 9933cc99 33ff9933 00cc3333 cc3366cc Data: 3399cc33 cccc33ff cc3300ff 3333ff33 Data: 66ff3399 ff33ccff 33ffff33 00006633 Data: 00666600 66990066 cc0066ff 00660033 Data: 66333366 66336699 3366cc33 66ff3366 Data: 00666633 66666666 66996666 cc6666ff Data: 66660099 66339966 66996699 9966cc99 Data: 66ff9966 00cc6633 cc6666cc 6699cc66 Data: cccc66ff cc6600ff 6633ff66 66ff6699 Data: ff66ccff 66ffff66 00009933 00996600 Data: 99990099 cc0099ff 00990033 99333399 Data: 66339999 3399cc33 99ff3399 00669933 Data: 66996666 99996699 cc6699ff 66990099 Data: 99339999 66999999 9999cc99 99ff9999 Data: 00cc9933 cc9966cc 9999cc99 cccc99ff Data: cc9900ff 9933ff99 66ff9999 ff99ccff Data: 99ffff99 0000cc33 00cc6600 cc9900cc Data: cc00ccff 00cc0033 cc3333cc 6633cc99 Data: 33cccc33 ccff33cc 0066cc33 66cc6666 Data: cc9966cc cc66ccff 66cc0099 cc3399cc Data: 6699cc99 99cccc99 ccff99cc 00cccc33 Data: cccc66cc cc99cccc ccccccff cccc00ff Data: cc33ffcc 66ffcc99 ffccccff ccffffcc Data: 0000ff33 00ff6600 ff9900ff cc00ffff Data: 00ff0033 ff3333ff 6633ff99 33ffcc33 Data: ffff33ff 0066ff33 66ff6666 ff9966ff Data: cc66ffff 66ff0099 ff3399ff 6699ff99 Data: 99ffcc99 ffff99ff 00ccff33 ccff66cc Data: ff99ccff ccccffff ccff00ff ff33ffff Data: 66ffff99 ffffccff ffffffff 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00000000 00000000 00000000 Data: 00000000 00020008 00050018 00000000 Data: 00000000 00000000 ) (Tool.39 Help: "HotPotato Video Links//This selector will let you work with Video Hotlinks" Icon: 28 Cursor: "Cursors.Default" Click: "HotPotato.VideoTag" ) (Numb.40 N: 17.00000000000000 ) (Script.41 Name: "HotPotato.Add" SourceCode: "' Name: HotPotato.Add\n'\n' Author: Kenneth R. McVay\n' Date: Fri Jul 31 01:41:29 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: A tool for adding hotlinks of any type to any shape.\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = false\nDEBUGNOT = false\n\n\ntheVal = Self.Get(0)\nrecd = Self.Get(1)\ntheFtab = Self.Get(2)\nOutFN = Self.Get(3)\nHP = Self.Get(4)\n\ntheExt = Extension.Find(\"HotPotato\")\ntheControl = theExt.GetPreferences.Get(\"ControlWidget\").Get(0)\n\n\n\n\n\nif ((theControl = \"Image\") or (theControl = \"Image2\")) then\n theFlag = 0\n Patterns = {\"*.bmp\",\"*.tif\",\"*.jpg\",\"*.bil\",\"*.bsq\",\"*.bip\",\"*.rs\",\"*.ras\",\"*.sun\",\"*.lan\",\"*.gis\",\"*.img\",\"*.rlc\"}\n Labels = {\"Windows Bitmap\",\"TIFF\", \"JPEG\",\"Band Interleaved Line\",\"Band Sequential\",\"Band Interleaved Pixel\",\n \"Sun Raster *.rs\",\"SunRaster *.ras\",\"SunRaster *.sun\",\"ERDAS Lan\",\"ERDAS Gis\", \"ERDAS Imagine\",\n \"Run Length Compressed\"}\n \nelseif(theControl = \"Text\") then\n Patterns = {\"*.txt\"}\n Labels = {\"Text Files\"}\n theFlag = 2\nelseif (theControl = \"CAD\") then\n theFlag = 4\nelseif (theControl = \"Browser\") then\n theFlag = 6\n Patterns = {\"*.*\"}\n Labels = {\"File\"}\nelseif (theControl = \"Video\") then\n theFlag = 8\n Patterns = {\"*.avi\"}\n Labels = {\"Movies *.avi\"}\nend\n\n'#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"The Flag is \"+theFlag.asString,\"\")\n END\n'#######\n \n\nif (File.Exists(OutFN)) then\n theODB = ODB.Open(OutFN)\n \n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"the ODB IS OPEN\",\"\")\n END\n '#######\nelse\n theODB = ODB.Make(OutFN)\nend\n\nOdbCnt = theODB.Count\n\nif (theVal = -9999) then\n\n\n if ((theFlag <> 4) and (theFlag <> 6))then\n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"we are getting file names\",\"\")\n END\n '#######\n AddNames = FileDialog.ReturnFiles (Patterns, Labels, \"Pick the \"+theControl+ \" Files you would like to add.\", 0)\n\n if (AddNames.IsEmpty) then\n exit\n end\n elseif ( theFlag = 4) then 'must be CAD or theme or coverage\n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"we are getting sources\",\"\")\n END\n '#######\n SomeSRCs = SourceDialog.ShowClass(\"Pick the CAD drawings, Coverages, or shapefiles you would like to add\",fSrc)\n if (SomeSRCs.IsEmpty) then\n exit\n end\n \n AddNames = List.Make\n theDataSrc = List.Make\n tmpList = List. Make\n for each aSrc in SomeSRCs\n tmpList.Add(aSrc.GetDataSource)\n end\n tmpList.RemoveDuplicates\n for each aSrc in tmpList\n theDataSrc.Add({aSrc})\n end\n theDataSrc.RemoveDuplicates\n \n for each aSrc in SomeSRCs\n theSrc = aSrc.GetDataSource\n theSub = aSrc.GetSubName\n thePos = 0\n foundit = false\n for each el in theDataSrc\n if (el.Get(0) = theSrc) then\n foundit = true\n break\n else\n thePos = thePos + 1\n end\n end\n if (foundit = true) then\n tmp = theDataSrc.Get(thePos)\n tmp.Add(theSub)\n theDataSrc.Set(thePos,tmp)\n end\n end\n for each aSrc in theDataSrc\n aStr = \"\"\n for each el in aSrc\n aStr = aStr +\" \"+ el\n end\n AddNames.Add(aStr)\n end\n \n \n \n elseif ( theFlag = 6) then\n AddNames = List.Make\n theChosen = MsgBox.ListAsString({\"URL\",\"FILE\"},\"Do you want to link to a URL or FILE\",\"Browser Link Type\")\n if (theChosen = nil) then\n exit\n end\n if (theChosen = \"URL\") then\n theAdd = MsgBox.Input(\"Enter the URL\",\"URL Input\",\"http://www.esri.com\")\n if (theAdd = nil) then\n exit\n end\n AddNames.Add(theAdd)\n elseif ( theChosen = \"FILE\") then\n AddNames = FileDialog.ReturnFiles (Patterns, Labels, \"Pick the \"+theControl+ \" Files you would like to add.\", 0)\n\n if (AddNames.IsEmpty) then\n exit\n end\n end\n end\n\n\n\n DLst = List.Make\n cnt = 0\n for each el in AddNames\n dscrp = MsgBox .Input(\"Enter the a description for \" + AddNames.Get(cnt).asString,\"Link Description\",\"Enter Description\")\n if (dscrp = nil) then\n exit\n end\n Dlst.Add(dscrp)\n cnt = cnt + 1\n end \n \n theFtab.SetEditable(TRUE)\n theFtab.SetValue(HP,recd,OdbCnt + 1)\n theFtab.SetEditable(FALSE)\n theFtab.Refresh\n if (theFlag = 0) then\n theODB.Add({AddNames,DLst,{},{},{},{},{},{},{},{}})\n elseif (theFlag = 2) then\n theODB.Add({{},{},AddNames,DLst,{},{},{},{},{},{}})\n elseif (theFlag = 4 ) then\n theODB.Add({{},{},{},{},AddNames,Dlst,{},{},{},{}})\n elseif (theFlag = 6) then\n theODB.Add({{},{},{},{},{},{},AddNames,Dlst,{},{}})\n elseif (theFlag = 8) then\n theODB.Add({{},{},{},{},{},{},{},{},AddNames,Dlst})\n end\n theODB.Commit\n Return TRUE\n\nelse\n home = system.getenvvar(\"AVHOME\") + \"\\Hotpotato\\\"\n tmpFN = (home + \"1a2b3c4d.tmp\").AsFileName\n tmpFN.SetExtension(\"tmp\")\n tmpODB = ODB.Make(tmpFN)\n \n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"the Record value is \" + theVal.AS STRING,\"\")\n END\n '#######\n \n BigList = theODB.Get(theVal - 1)\n \n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"GOT THE ODB RECORD\",\"\")\n END\n '#######\n \n if ( theVal > 1) then\n for each i in 0..(theVal - 2)\n tmpODB.Add(theODB.Get(i))\n end\n end\n \n \n FNlst = BigList.Get(theFlag)\n DlstA = BigList.Get(theFlag + 1)\n \n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"the flag just before we get the filenames \"+ theFlag.asString,\"\")\n END\n '###### #\n \n if ((theFlag <> 4) and (theFlag <> 6)) then\n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"we are getting file names\",\"\")\n END\n '#######\n AddNames = FileDialog.ReturnFiles (Patterns, Labels, \"Pick the \"+theControl+ \" Files you would like to add.\", 0)\n\n if (AddNames.IsEmpty) then\n tmpODB.Commit\n File.Delete(tmpFN)\n exit\n end\n elseif (theFlag = 4) then 'must be CAD or theme or coverage\n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"we are getting sources\",\"\")\n END\n '#######\n SomeSRCs = SourceDialog.ShowClass(\"Pick the CAD drawings, Coverages, or shapefiles you would like to add\",fSrc)\n if (SomeSRCs.IsEmpty) then\n tmpODB.Commit\n File.Delete(tmpFN)\n exit\n end\n AddNames = List.Make\n theDataSrc = List.Make\n tmpList = List.Make\n for each aSrc in SomeSRCs\n tmpList.Add(aSrc.GetDataSource)\n end\n tmpList.RemoveDuplicat es\n for each aSrc in tmpList\n theDataSrc.Add({aSrc})\n end\n theDataSrc.RemoveDuplicates\n \n for each aSrc in SomeSRCs\n theSrc = aSrc.GetDataSource\n theSub = aSrc.GetSubName\n thePos = 0\n foundit = false\n for each el in theDataSrc\n if (el.Get(0) = theSrc) then\n foundit = true\n break\n else\n thePos = thePos + 1\n end\n end\n if (foundit = true) then\n tmp = theDataSrc.G et(thePos)\n tmp.Add(theSub)\n theDataSrc.Set(thePos,tmp)\n end\n end\n for each aSrc in theDataSrc\n aStr = \"\"\n for each el in aSrc\n aStr = aStr +\" \"+ el\n end\n AddNames.Add(aStr)\n end\n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.LISTASSTRING(AddNames,\"the Feature src names \",\"\")\n END\n '###############\n elseif ( theFlag = 6) then\n AddNames = List.Make\n theChosen = MsgBox.ListAsString({\"URL\",\"F ILE\"},\"Do you want to link to a URL or FILE\",\"Browser Link Type\")\n if (theChosen = nil) then\n tmpODB.Commit\n File.Delete(tmpFN)\n exit\n end\n if (theChosen = \"URL\") then\n theAdd = MsgBox.Input(\"Enter the URL\",\"URL Input\",\"http://www.esri.com\")\n if (theAdd = nil) then\n tmpODB.Commit\n File.Delete(tmpFN)\n exit\n end\n AddNames.Add(theAdd)\n elseif ( theChosen = \"FILE\") then\n AddNames = FileDialog.ReturnFiles (Patt erns, Labels, \"Pick the \"+theControl+ \" Files you would like to add.\", 0)\n \n if (AddNames.IsEmpty) then\n tmpODB.Commit\n File.Delete(tmpFN)\n exit\n end\n end\n \n end\n \n DLstB = List.Make\n cnt = 0\n for each el in AddNames\n dscrp = MsgBox.Input(\"Enter the a description for \" + AddNames.Get(cnt).asString,\"Link Description\",\"Enter Description\")\n if (dscrp = nil) then\n tmpODB.Commit\n File.Delete(tmpFN)\n exit\n end \n DlstB.Add(dscrp)\n cnt = cnt + 1\n end\n \n for each el in AddNames\n FNlst.Add(el)\n end\n for each el in DlstB\n DlstA.Add(el)\n end\n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"the filename and description was added \",\"\")\n END\n '#######\n \n Biglist.Set(theFlag,Fnlst)\n BigList.Set(theFlag + 1,DlstA)\n \n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"the records were added to biglist\",\"\")\n END\n '#######\n \n tmp ODB.Add(BigList)\n \n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"RECORD was added to BigList\",\"\")\n END\n '#######\n \n if ((theODB.Count > 1 ) and ( theVal <> theODB.Count))then\n for each i in (theVal)..(theODB.Count - 1)\n tmpODB.Add(theODB.Get(i))\n end\n end\n \n tmpODB.Commit\n theODB.Clear\n theODB.Commit\n File.Copy(tmpFN,OutFN)\n File.Delete(tmpFN)\n \n \n \n \n \nend\n \n \n \n \n \n \n \n \n \n " ) (Script.42 Name: "HotPotato.AddLinks" SourceCode: "' Name: HotPotato.AddLinks\n'\n' Author: Kenneth R. McVay\n' Date: Thu Jul 30 20:48:07 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: 'handles getting the shape value from the ftab and calling\n' the correct function add or delete depending on what the user has chosen\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = false\nDEBUGNOT = false\n\n \ntheView = av.GetActiveDoc\n\ntheThemes = theView.GetActiveThemes\nif (theThemes.Count = 0) then\n exit\nend\n\nif (theThemes.Count > 1) then\n MsgBox.Info(\"ZZZZZzzzz Multiple themes are active! Will only work with one theme active.\",\"INFO\")\n exit\nelse\n aTheme = theThemes.Get(0)\nend\n\nif (aTheme.Is(Ftheme).Not) then\n Msgbox.Error(\"ZZZZzzzz You can only set hotlinks for Feature Themes\",\"INFO\")\n exit\nend\n\nhome = system.getenvvar(\"AVHOME\") + \"\\Hotpotato\\\"\n\nOutFN = (home + aTheme.GetName).AsFileName\nOutFN.SetExten sion(\"hot\")\n\ntheFtab = aTheme.GetFtab\n\nif ((File.Exists(OutFN)) and (theFtab.FindField(\"HotPotato\") = Nil)) then\n MsgBox.Error(\"There is already a hotlink file \" + OutFN.GetName + NL +\n \"existing for a theme called \"+ aTheme.GetName + NL +\n \"Before you can enter hotlinks for this theme you will have\" + NL +\n \"to rename it to a name that does not have a hotlink file.\",\"Can't Create HotPotato Hotlink\")\n exit\nend\n\nif (theFtab.FindField(\"HotPotato\") = Nil) then\n \n '### debug code###\n IF (DEB UG = true) THEN\n MSGBOX.INFO(\"the field was not found will add the field\",\"\")\n END\n '###\n \n theFtab.SetEditable(TRUE)\n HP = Field.Make(\"HotPotato\",#FIELD_LONG,20,0)\n theFtab.AddFields({HP})\n for each recd in theFTab\n theFtab.SetValue(HP,recd,-9999)\n end\n theFtab.SetEditable(False)\n theFtab.Refresh\nelse\n HP = theFtab.FindField(\"HotPotato\")\nend\n\n\n\n\naPnt = theView.GetDisplay.ReturnUserPoint\n\nrecd = aTheme.FindByPoint(aPnt)\nif (recd.IsEmpty) then\n MsgBox.Info(\"Oops you missed the shape\",\"INFO\" )\n exit\nelse\n recd = recd.Get(0)\nend\n\naVal = theFTab.ReturnValue(HP,recd)\n\n\nAddDel = MsgBox.ListAsString({\"Add\",\"Delete\"},\"Do you want to Add or Delete a Hotlink\",\"ADD DELETE\")\nif (AddDel = nil) then\n exit\nend\n\nif (AddDel = \"Add\") then\n\n av.Run(\"HotPotato.Add\",{aVal,recd,theFtab,OutFN,HP}) \n\nelse \n av.Run(\"HotPotato.Delete\",{aVal,recd,theFtab,OutFN,HP})\nend\n\n" ) (Script.43 Name: "HotPotato.BrowserTag" SourceCode: "' Name: HotPotato.BrowserTag\n'\n' Author: Kenneth R. McVay\n' Date: Thu Aug 06 18:03:39 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Sets the type of hotlink to Browser\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheExt = Extension.Find(\"HotPotato\")\n\ntheExt.GetPreferences.Set(\"ControlWidget\",{\"Browser\"})" ) (Script.44 Name: "HotPotato.CADtag" SourceCode: "' Name: HotPotato.CADtag\n'\n' Author: Kenneth R. McVay\n' Date: Wed Aug 05 12:24:40 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Sets the type of hotlink to CAD theme or coverage\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheExt = Extension.Find(\"HotPotato\")\ntheExt.GetPreferences.Set(\"ControlWidget\",{\"CAD\" })" ) (Script.45 Name: "HotPotato.Delete" SourceCode: "' Name: HotPotato.Delete\n'\n' Author: Kenneth R. McVay\n' Date: Fri Jul 31 19:06:43 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Tool for deleting hotlinks of the chosen type\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = false\nDEBUGNOT = false\n\n\n\n\ntheVal = Self.Get(0)\nif (theVal = -9999) then\n MsgBox.Info(\"ZZZZZzzzzz That shape cont ains no HotPotato hotlinks to delete.\",\"INFO\")\n exit\nend\n\nrecd = Self.Get(1)\ntheFtab = Self.Get(2)\nOutFN = Self.Get(3)\nHP = Self.Get(4)\n\ntheExt = Extension.Find(\"HotPotato\")\ntheControl = theExt.GetPreferences.Get(\"ControlWidget\").Get(0)\n\nif ((theControl = \"Image\") or (theControl = \"Image2\")) then\n theFlag = 0\nelseif (theControl = \"Text\") then\n theFlag = 2\nelseif (theControl = \"CAD\") then\n theFlag = 4\nelseif (theControl = \"Browser\") then\n theFlag = 6\nelseif (theControl = \"Video\") then\n theFlag = 8\nend \n\n\nif (File.Exists(OutFN)) then\n theODB = ODB.Open(OutFN)\n \n '#### DEBUG CODE #####\n IF (DEBUG) THEN\n MSGBOX.INFO(\"the ODB IS OPEN\",\"\")\n END\n '#######\nelse\n MsgBox.Info(\"ZZZZZzzzzz That shape contains no HotPotato hotlinks to delete.\",\"INFO\")\n exit\nend\n \n \nBigList = theODB.Get(theVal - 1)\n \ntheLinks = BigList.Get(theFlag)\ntheDesc = BigList.Get(theFlag + 1)\n \n \ntheChosen = MsgBox.ListAsString(theDesc,\"Pick the \" + theControl+\" hotlink you want to delete.\",\"PICK HOTLINK\")\nif (theChosen = nil) then\n exit\nend\n\ntheIdx = theDesc.FindByValue(theChosen)\naLink = theLinks.Get(theIdx)\n\nnewLinks = List.Make\nnewDesc = List.Make\n\nfor each el in theLinks\n if (el <> aLink) then\n newLinks.Add(el)\n end\nend\nfor each el in theDesc\n if (el <> theChosen) then\n newDesc.Add(el)\n end\nend\n\n\n\nhome = system.getenvvar(\"AVHOME\") + \"\\Hotpotato\\\"\ntmpFN = (home + \"1a2b3c4d.tmp\").AsFileName\ntmpFN.SetExtension(\"tmp\")\ntmpODB = ODB.Make(tmpFN)\n\nBigList.Set(theFlag,newLinks)\nBigList.Set(theFlag + 1,newDesc)\n\nListEmpty = true\nfor each el in BigList\n if (el.count <> 0) then\n ListEmpty = false\n break\n end\nend\n\n\n'### DEBUG CODE ###\nIF (DEBUG) THEN\n MSGBOX.INFO(LISTEMPTY.ASSTRING,\"\")\nEND\n'#######\n\n\nif ((ListEmpty = true) and (theODB.Count = 1)) then 'CASE FOR ONLY RECORD AND ITS DELETED\n\n'### DEBUG CODE ###\nIF (DEBUG) THEN\n MSGBOX.INFO(\"CASE FOR ONLY RECORD AND ITS DELETED\",\"\")\nEND\n'#######\n\n \n theODB.Clear\n tmpODB.Clear\n theODB.Commit\n tmpODB.Commit\n File.Delete(OutFN)\n File.Delete(tmpFN)\n theFtab.SetEdi table(TRUE)\n theFtab.RemoveFields({HP})\n theFtab.SetEditable(FALSE)\n theFtab.Refresh\n exit\nend\n\n\nif (ListEmpty = false) then 'CASE WHEN ENTIRE RECORD IS NOT DELETED\n\n if (theVal = 1) then 'its the first record\n \n '### DEBUG CODE ###\n IF (DEBUG) THEN\n MSGBOX.INFO(\"CASE WHEN ENTIRE RECORD IS NOT DELETED its the first record\",\"\")\n END\n '#######\n \n tmpODB.Add(BigList)\n \n if (theODB.Count > 1) then\n for each el in 1..(theODB.Count - 1)\n tmpODB.Add(theODB. Get(el))\n end\n end\n \n elseif (theVal = theODB.Count) then 'its the last record\n \n '### DEBUG CODE ###\n IF (DEBUG) THEN\n MSGBOX.INFO(\"CASE WHEN ENTIRE RECORD IS NOT DELETED its the last record\",\"\")\n END\n '#######\n \n for each el in 0..(theODB.Count - 2)\n tmpODB.Add(theODB.Get(el))\n end\n \n else 'its a middle record\n \n '### DEBUG CODE ###\n IF (DEBUG) THEN\n MSGBOX.INFO(\"CASE WHEN ENTIRE RECORD IS NOT DELETED its a middle record\",\"\")\n END\n '#### ###\n \n for each i in 0..(theVal - 2) 'THESE RECORDS DON'T CHANGE\n tmpODB.Add(theODB.Get(i))\n end\n tmpODB.Add(BigList)\n for each i in (theVal)..(theODB.Count - 1)\n tmpODB.Add(theODB.Get(i))\n end\n end\n \n tmpODB.Commit\n theODB.Clear\n theODB.Commit\n File.Copy(tmpFN,OutFN)\n File.Delete(tmpFN)\n \nelseif (ListEmpty = true) then 'CASES WHEN ENTIRE RECORD IS DELETED AND THERE ARE MULTIPLE RECS\n\n if ((theODB.Count > 1) and (theVal <> theODB.Count) and (theVal <> 1)) then 'CASE FOR DELETED MIDDLE RECORD\n \n '### DEBUG CODE ###\n IF (DEBUG) THEN\n MSGBOX.INFO(\"CASES WHEN ENTIRE RECORD IS DELETED AND THERE ARE MULTIPLE RECS CASE FOR DELETED MIDDLE RECORD\",\"\")\n END\n '#######\n \n \n theFtab.SetEditable(True)\n for each el in theFtab\n if (theFtab.ReturnValue(HP,el) = theVal) then\n theFtab.SetValue(HP,el,-9999)\n break\n end\n end\n \n for each i in 0..(theVal - 2) 'THESE RECORDS DON'T CHANGE\n tmpODB.Add(theODB.Get(i))\n en d\n \n theFtab.SetEditable(True)\n theBitMap = theFtab.GetSelection\n expr =\"[HotPotato] > 1\" \n theFtab.query(expr,TheBitMap,#VTAB_SELTYPE_NEW)\n theFtab.UpdateSelection\n \n for each i in (theVal)..(theODB.Count-1)\n tmpODB.Add(theODB.Get(i))\n for each j in theFtab.GetSelection\n if (theFtab.ReturnValue(HP,j) = (i + 1)) then\n theFtab.SetValue(HP,j, i)\n break\n end\n end\n end\n TheBitMap.ClearAll\n theFtab.SetEditable(False)\n theFtab.Re fresh\n \n elseif (theVal = 1) then 'CASE WHEN ITS THE FIRST RECORD DELETED\n \n '### DEBUG CODE ###\n IF (DEBUG) THEN\n MSGBOX.INFO(\"CASES WHEN ENTIRE RECORD IS DELETED AND THERE ARE MULTIPLE RECS CASE WHEN ITS THE FIRST RECORD DELETED\",\"\")\n END\n '#######\n \n theFtab.SetEditable(True)\n theBitMap = theFtab.GetSelection\n expr =\"[HotPotato] = 1\" \n theFtab.query(expr,TheBitMap,#VTAB_SELTYPE_NEW)\n theFtab.UpdateSelection\n for each el in theFtab.GetSelection\n theFta b.SetValue(HP,el,-9999)\n end\n theBitMap.ClearAll\n theFtab.SetEditable(False)\n theFtab.Refresh\n \n theFtab.SetEditable(True)\n theBitMap = theFtab.GetSelection\n expr =\"[HotPotato] > 1\" \n theFtab.query(expr,TheBitMap,#VTAB_SELTYPE_NEW)\n theFtab.UpdateSelection\n \n for each i in 1..(theODB.Count - 1)\n tmpODB.Add(theODB.Get(i))\n for each j in theFtab.GetSelection\n if (theFtab.ReturnValue(HP,j) = (i + 1)) then\n theFtab.SetValue(HP,j, i )\n break\n end\n end\n end \n TheBitMap.ClearAll\n theFtab.SetEditable(False)\n theFtab.Refresh\n\n elseif (theVal = theODB.Count) then\n \n \n '### DEBUG CODE ###\n IF (DEBUG) THEN\n MSGBOX.INFO(\"CASES WHEN ENTIRE RECORD IS DELETED AND THERE ARE MULTIPLE RECS CASE WHEN ITS THE LAST RECORD DELETED\",\"\")\n END\n '#######\n \n \n theFtab.SetEditable(True)\n theBitMap = theFtab.GetSelection\n expr =\"[HotPotato] > 1\" \n theFtab.query(expr,TheBitMap,#VTAB_SELTYPE_NEW)\n th eFtab.UpdateSelection\n \n theFtab.SetEditable(True)\n for each el in theFtab.GetSelection\n if(theFtab.ReturnValue(HP,el) = theVal) then\n theFtab.SetValue(HP,el,-9999)\n end\n end\n theBitMap.ClearAll\n theFtab.SetEditable(False)\n theFtab.Refresh\n \n for each i in 0..(theVal - 2) 'THESE RECORDS DON'T CHANGE\n tmpODB.Add(theODB.Get(i))\n end\n \n end\n \n tmpODB.Commit\n theODB.Clear\n theODB.Commit\n File.Copy(tmpFN,OutFN)\n File.Delete(tmpFN)\n \nend\n\n\n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n" ) (Script.46 Name: "HotPotato.DoBrowser" SourceCode: "' Name: HotPotato.DoBrowser\n'\n' Author: Kenneth R. McVay\n' Date: Wed Aug 05 19:12:20 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Opens the chosen browser link\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\ntheVal=Self.Get(0)\nif (theVal.Is(FileName)) then\n if (File.Exists(theVal).Not) then\n MsgBox.Warning (\"HTML Document \"+theVal+\" not found.\",\"HotPotato Hotlinks\")\n exit\n else\n theVal = theVal.GetName.Unquote\n end\nend\n\nHotExt = Extension.Find(\"HotPotato\")\nbrowserPath = HotExt.GetPreferences.Get(\"Browser\").Get(0)\n\n\n' check to see if there is an html document defined in the theme table \n' and, if\n' not then display an error message.\n\n\nif (not(theVal.IsNull)) then\n\n \n System.Execute(browserPath++theVal.Quote)\n \n \nend" ) (Script.47 Name: "HotPotato.DoCAD" SourceCode: "' Name: HotPotato.DoCAD\n'\n' Author: Kenneth R. McVay\n' Date: Wed Aug 05 13:59:01 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Opens the chosen CAD, theme, or coverage link\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = false\nDEBUGNOT = false\n\n\ntheData = Self.Get(0)\ntheDesc = Self.Get(1)\n\nif ( theData.IsNull.Not) then\n DataLst = the Data.AsTokens(\" \")\n if(File.Exists(DataLst.Get(0).AsFileName)) then\n \n theView = View.Make\n if (av.FindScript(\"View.CloseImageView\") = NIL) then\n anSEd = Script.Make(\"av.GetProject.RemoveDoc(SELF)\")\n anSEd.SetName(\"View.CloseImageView\")\n av.GetProject.AddScript(anSEd)\n end\n \n theView.SetCloseScript(\"View.CloseImageView\")\n theView.SetName(theDesc + \" HotPotato Hotlink\")\n \n if(DataLst.Get(0).Right(4) = \".shp\") then\n srcData = SrcName.Make(DataLst.Get(0))\n t = Theme.Make(srcData)\n t.SetVisible(True)\n theView.AddTheme(t)\n else\n Cnt = DataLst.Count\n for each i in 1..(cnt-1)\n aStr = DataLst.Get(0) + \" \" + DataLst.Get(i)\n srcData = SrcName.Make(aStr)\n t = Theme.Make(srcData)\n t.SetVisible(True)\n theView.AddTheme(t)\n end\n end\n \n theView.GetWin.Open\n \n else\n MsgBox.Error(\"The Hotlink file name does not exist\",\"File Not Found\")\n end\nend" ) (Script.48 Name: "HotPotato.DoImg" SourceCode: "' Name: HotPotato.DoImg\n'\n' Author: Kenneth R. McVay\n' Date: Fri Jul 31 01:41:19 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Opens the chosen Image link into a view\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\ntheImage = Self.Get(0).AsString\ntheDesc = Self.Get(1).AsString\n\nif (Not (theImage.IsNull)) then\n if (File.Exists(theImage.AsFileName)) then\n srcImage = SrcName.Make(theImage)\n t = Theme.Make(srcImage)\n t.SetVisible(TRUE)\n\n theView = View.Make\n theView.AddTheme(t)\n theView.SetTOCWidth(0)\n theView.SetTOCUnresizable(TRUE)\n theView.SetName(theDesc + \" HotPotato Hotlink\")\n\n if (av.FindScript(\"View.CloseImageView\") = NIL) then\n anSEd = Script.Make(\"av.GetProject.RemoveDoc(SELF)\")\n anSEd.SetName(\"View.CloseImageView\")\n av.GetProject.AddScript(anSEd)\n end\n \n the View.SetCloseScript(\"View.CloseImageView\")\n \n theView.GetWin.Open\n \n else\n MsgBox.Warning(\"ZZZZZzzzz The image \"+theImage+\" was not found, your links are screwed up.\",\"INFO\")\n end\nend " ) (Script.49 Name: "HotPotato.DoSmlImg" SourceCode: "' Name: HotPotato.DoSmlImg\n'\n' Author: Kenneth R. McVay\n' Date: Thu Aug 06 18:07:20 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Opens the chosen image into an imageWin\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheVal = SELF.Get(0).AsString\ntheDesc = Self.Get(1).AsString\nif (not (theVal.IsNull)) then\n if (File.Exists(theVal.AsFileName)) then\n i = ImageWin.Make(theVal.AsFileName, theVal)\n i.SetName(theDesc + \" HotPotato Hotlink\")\n i.Open\n else\n MsgBox.Warning(\"File \"+theVal+\" not found.\",\"Hot Link\")\n end\nend\n" ) (Script.50 Name: "HotPotato.DoText" SourceCode: "' Name: HotPotato.DoText\n'\n' Author: Kenneth R. McVay\n' Date: Thu Aug 06 18:07:50 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Opens the chosen link into a textwin\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheVal = SELF.Get(0).AsString\ntheDesc = Self.Get(1).AsString\n\nif (not (theVal.IsNull)) then\n if ( TextWin.Make(theVal.AsFileName, theDesc + \" HotPotato Hotlink\") = Nil) then\n MsgBox.Warning(\"ZZZZzzzz File \"+theVal+\" not found.\",\"HotPotato\")\n else\n \n end\nend\n" ) (Script.51 Name: "HotPotato.DoVideo" SourceCode: "' Name: HotPotato.DoVideo\n'\n' Author: Kenneth R. McVay\n' Date: Thu Aug 06 18:08:20 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Opens the chosen link into a video \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheVal = SELF.Get(0).AsString\n\nHotExt = Extension.Find(\"HotPotato\")\nVideoPlayerPath = HotExt.GetPr eferences.Get(\"Player\").Get(0)\n\nif (not (theVal.IsNull)) then\n\n \n if (File.Exists(theVal.AsFileName)) then\n \n\n\n\n System.Execute(VideoPlayerPath++\"/play\"++theVal)\n else\n \n MsgBox.Warning(\"File \"+theVal+\" not found.\",\"HotPotato Hotlinks\")\n end\n\n\nend \n" ) (Script.52 Name: "HotPotato.GetLinks" SourceCode: "' Name: HotPotato.Getlinks\n'\n' Author: Kenneth R. McVay\n' Date: Fri Jul 31 01:41:39 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Allows the user to select a shape an view a hotlink\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = false\nDEBUGNOT = false\n\n\ntheExt = Extension.Find(\"HotPotato\")\ntheControl = theExt.GetPreferences.Get(\"Cont rolWidget\").Get(0)\n\nif (theControl = \"Image\") then\n theFlag = 0\nelseif (theControl = \"Text\") then\n theFlag = 2\nelseif (theControl = \"Image2\") then\n theFlag = 0\nelseif (theControl = \"CAD\") then\n theFlag = 4\nelseif (theControl = \"Browser\") then\n theFlag = 6\nelseif (theControl = \"Video\") then\n theFlag = 8\nend\n\ntheView = av.GetActiveDoc\n\ntheThemes = theView.GetActiveThemes\n\nif (theThemes.Count = 0) then\n exit \nend\nif (theThemes.Count > 1) then\n MsgBox.Info(\"ZZZzzzz You have multiple themes active! Only one theme may be active for this to work.\",\"INFO\")\n exit\nend\n\naTheme = theThemes.Get(0)\n\nif (aTheme.Is(Ftheme).Not) then\n MsgBox.Info(\"ZZZZZzzzz Only works with feature themes.\",\"INFO\")\n exit\nend\n\ntheFtab = aTheme.GetFtab\nif (theFtab.FindField(\"HotPotato\") = nil) then\n MsgBox.Info(\"ZZZZzzzz No HotLinks exist for this theme!\",\"INFO\")\n exit\nelse\n HP = theFtab.FindField(\"HotPotato\")\nend\n\naPnt = theView.GetDisplay.ReturnUserPoint\n\nrecd = aTheme.FindByPoint(aPnt)\nif (recd.IsEmpty) then\n MsgBox.Info(\"Oops you missed the shape\",\"INFO\")\n exit\nelse\n recd = recd.Get(0)\nend\n\ntheVal = theFtab.ReturnValue(HP,recd)\n\n\n\nif (theVal = -9999) then\n MsgBox.Info(\"ZZZZZzzzzz No Hotlinks exist for this record!\",\"INFO\")\n exit\nend\n\nhome = system.getenvvar(\"AVHOME\") + \"\\Hotpotato\\\"\n\nOutFN = (home + aTheme.GetName).AsFileName\nOutFN.SetExtension(\"hot\")\n\nif (File.Exists(OutFN)) then\n theODB = ODB.Open(OutFN)\n OdbCnt = theODB.Count\nelse\n MsgBox.Info(\"ZZZZzzzz No HotLinks exist for this theme!\",\"INFO\")\n exit\nend\n\nif (theVal > ODBCnt) then\n MsgBox.Error(\"ZZZZzzzz Bad News the hotlinks are screwed up\",\"&^%^%$&&*^*^(*\")\n exit\nend\n\n\ntheLinks = theODB.Get(theVal-1).Get(theFlag)\ntheDesc = theODB.Get(theVal-1).Get(theFlag+1)\n\n\nif (theLinks.Count = 0) then\n MsgBox.Info(\"No image links are available for this record\",\"INFO\")\n exit\nend\n\n\nadesc = MsgBox.MultiListAsString(theDesc,\"Pick the \"+theControl+\"(s) you want to see.\",\"Hot Links\")\nif (adesc = nil) then\n exit\nend\n\nfor each el in adesc\n theIdx = theDesc.FindByValue(el)\n aLink = theLinks.Get(theIdx)\n \n if (theControl = \"Image\") then\n av.Run(\"HotPotato.DoImg\",{aLink,el})\n elseif (theControl = \"Image2\") then\n av.Run(\"HotPotato.DoSmlImg\",{aLink,el})\n elseif (theControl = \"Text\") then\n av.Run(\"HotPotato.DoText\",{aLink,el})\n elseif (theControl = \"CAD\") then\n av.Run(\"HotPotato.DoCAD\",{aLink,el})\n elseif (theControl = \"Browser\") then\n av.Run(\"HotPotato.DoBrowser\",{aLink,el})\n elseif (theControl = \"Video\") then\n av.Run(\"HotPotato.DoVideo\",{aLink,el})\n end\nend" ) (Script.53 Name: "HotPotato.ImgTag" SourceCode: "' Name: HotPotato.ImgTag\n'\n' Author: Kenneth R. McVay\n' Date: Fri Jul 31 01:47:26 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Sets the type of hotlink to image\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheExt = Extension.Find(\"HotPotato\")\n\ntheExt.GetPreferences.Set(\"ControlWidget\",{\"Image\"})\n" ) (Script.54 Name: "HotPotato.SmlImgTag" SourceCode: "theExt = Extension.Find(\"HotPotato\")\n\ntheExt.GetPreferences.Set(\"ControlWidget\",{\"Image2\"})" ) (Script.55 Name: "HotPotato.TextTag" SourceCode: "' Name: HotPotato.TextTag\n'\n' Author: Kenneth R. McVay\n' Date: Fri Jul 31 01:47:10 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Sets the type of hotlink to text files.\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheExt = Extension.Find(\"HotPotato\")\ntheExt.GetPreferences.Set(\"ControlWidget\",{\"Text\"})\n" ) (Script.56 Name: "HotPotato.VideoTag" SourceCode: "' Name: HotPotato.VideoTag\n'\n' Author: Kenneth R. McVay\n' Date: Thu Aug 06 18:10:14 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: Sets the type of hotlink to video\n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheExt = Extension.Find(\"HotPotato\")\ntheExt.GetPreferences.Set(\"ControlWidget\",{\"Video\"})\n" ) (Script.57 Name: "Install" SourceCode: "' Name: Install\n'\n' Author: Original Script ESRI Redlands\n' Modified Harley Prowse, Auckland UniServices - Geographic Technologies (harleyp@gtech.co.nz)\n'\n' Title: Extension Builder - Install\n'\n' Topics: \n'\n' Description: \n'\n' Requires: \n'\n' Self: \n'\n' Returns:\n\n\n'DO NOT EDIT!!!\n\nif (av.getproject=nil) then return(nil) end\n\n'msgbox.info (\"now installing the extension\",\"\")\n\ntheDocs = SELF.get(0)\ntheControlList = SELF.get(1)\ntheMenuList = SELF.get(2)\nthePopupList= SELF.get(3)\ntheToolMenuList=SEL F.Get(4)\ntheProject=Av.getproject\n\ntheOldCindex=0\nButtonStartIndex=23\nTootlStartIndex=14\nNumControlSpaces=0\nNumToolSpaces=0\n\n\n'Add the Docs\n'\nfor each adoc in theDocs\n theProject.addDoc(adoc)\nend\n\n'Add the Controls\n'\nfor each totalControl in theControlList\n 'The Control list\n acontrol=totalControl.get(0)\n aspacer=totalControl.get(2)\n \n if (aspacer=\"Space\") then\n if (NumControlSpaces=0) then\n theCindex=ButtonStartIndex\n theOldCindex=theCindex\n NumControlSpaces=NumControlSpaces +1\n else\n theCindex=theOldCindex+1\n end\n \n thecommand=\"av.getproject.findGUI(\"\"\"+totalControl.get(0)+\"\"\").Get\"+totalcontrol.get(1)\n thescript1=Script.Make(thecommand)\n thecontrolset=thescript1.doit(\"\") \n theControl=space.make\n theControl.setName(\"Spacer\")\n \n else\n 'The physical control\n theControl = totalControl.get(1)\n \n 'The control Index\n theCindex=totalControl.get(2)\n \n 'Find the DocGUI\n theControlDoc=av.getproject.findGUI(aControl.get( 0))\n if (theControlDoc=NIL) then \n MsgBox.Warning(\"The GUI \"+aControl.get(0)+\" cannot be found in the current project.\",\"Script Eror\")\n return(nil)\n end\n \n 'This finds the control set \n thecommand=\"av.getproject.findGUI(\"\"\"+aControl.get(0)+\"\"\").Get\"+acontrol.get(1)\n thescript1=Script.Make(thecommand)\n thecontrolset=thescript1.doit(\"\")\n theOldCindex=theCindex\n end\n \n 'Add the control to the control set\n theControlSet.Add(theControl,theCindex)\nend\n\n\n'Add the menus\nfor each totalcontrol in theMenuList\n \n 'The Control list\n acontrol=totalControl.get(0)\n \n if (totalControl.get(2)=\"Space\") then\n theCindex=theOldCindex+1\n theControl=space.make\n theControl.SetName(\"Spacer\")\n else\n mDoc=acontrol.get(0)\n mMenu=acontrol.get(1)\n mMenuItem=acontrol.get(2)\n \n 'The physical control\n theControl = totalControl.get(1)\n \n 'The control Index\n theCindex=totalControl.get(2)\n theOldCindex=theCindex\n \n 'Fi nd the DocGUI\n theControlDoc=av.getproject.findGUI(aControl.get(0))\n if (theControlDoc=NIL) then \n MsgBox.Warning(\"The GUI \"+aControl.get(0)+\" cannot be found in the current project.\",\"Script Eror\")\n return(nil)\n end\n \n theMbar=av.getproject.findGUI(mDoc).GetMenuBar\n themenu=theMbar.findbylabel(mMenu)\n if (themenu=NiL) then\n themenu=menu.make\n themenu.setlabel(mMenu)\n theMbar.add(themenu,999)\n end\n end\n themenu.add(thecontrol, theCinde x)\nend\n\n'________________________________________________________________\n'Custom code for adding popups\n'________________________________________________________________\n\n'Add the popups\n\nfor each totalcontrol in thePopupList\n \n 'The Control list\n acontrol=totalControl.get(0)\n \n if (totalControl.get(2)=\"Space\") then\n theCindex=theOldCindex+1\n theControl=space.make\n theControl.SetName(\"Spacer\")\n else\n pDoc=acontrol.get(0)\n popMenu=acontrol.get(1)\n pMenuItem=acontr ol.get(2)\n \n 'The physical control\n theControl = totalControl.get(1)\n \n 'The control Index\n theCindex=totalControl.get(2)\n theOldCindex=theCindex\n \n 'Find the DocGUI\n theControlDoc=av.getproject.findGUI(aControl.get(0))\n if (theControlDoc=NIL) then \n MsgBox.Warning(\"The GUI \"+aControl.get(0)+\" cannot be found in the current project.\",\"Script Eror\")\n return(nil)\n end\n \n thepopups=av.getproject.findGUI(pDoc).Getpopups\n thepopup=thepopup s.findbylabel(popMenu)\n if (thepopup=NiL) then\n thepopup=popup.make\n thepopup.setlabel(popMenu)\n thepopups.add(thepopup,999)\n end\n end\n thepopup.add(thecontrol, theCindex)\nend\n\n'______________________________________________________________________\n \n'Add the Tool Menus\n\nfor each totalControl in theToolMenuList\n 'The Control list\n acontrol=totalControl.get(0)\n \n if (aControl=\"Space\") then\n theCindex=theOldCindex+1\n theControl=space.make\n else\n 'The physic al control\n theControl = totalControl.get(1)\n \n 'The control Index\n theCindex=totalControl.get(2)\n \n 'Find the DocGUI\n theControlDoc=av.getproject.findGUI(aControl.get(0))\n if (theControlDoc=NIL) then \n MsgBox.Warning(\"The GUI \"+aControl.get(0)+\" cannot be found in the current project.\",\"Script Eror\")\n return(nil)\n end\n \n 'This finds the control set \n thecommand=\"av.getproject.findGUI(\"\"\"+aControl.get(0)+\"\"\").Get\"+acontrol.get(1)\n thescri pt1=Script.Make(thecommand)\n thecontrolset=av.getproject.findGUI(aControl.get(0)).GetToolBar\n theOldCindex=theCindex\n end\n \n 'Add the control to the control set\n theControlSet.Add(theControl,theCindex)\nend\n\nHotExt = Extension.Find(\"HotPotato\")\nHotExt.GetPreferences.Add(\"ControlWidget\",{\"Image\"})\nHotExt.GetPreferences.Add(\"Browser\",{\"NONE\"})\nHotExt.GetPreferences.Add(\"Player\",{\"NONE\"})\n\nhome = system.getenvvar(\"AVHOME\") + \"\\Hotpotato\\\"\n\nDatFN = (home + \"HotPotato.Dat\").AsFileName\nif (File.Exists(D atFN)) then\n SetUp = LineFile.Make(DatFN,#FILE_PERM_READ)\n theBrowser = SetUp.ReadElt\n HotExt.GetPreferences.Set(\"Browser\",{theBrowser})\n theVideo = SetUp.ReadElt\n HotExt.GetPreferences.Set(\"Player\",{theVideo})\n SetUp.Close\nelse\n SetUp = LineFile.Make(DatFN,#FILE_PERM_WRITE)\n theBrowser = FileDialog.Show(\"*.exe\",\"a Browser\",\"Point out your current Browser or CANCEL FOR NONE\")\n if (theBrowser = nil) then\n SetUp.WriteElt(\"NONE\")\n \n else\n SetUp.WriteElt(theBrowser.GetName)\n HotExt.GetPref erences.Set(\"Browser\",{theBrowser.GetName})\n \n end\n theVideo = FileDialog.Show(\"*.exe\",\"Video Player\",\"Point out the Video Player you want to use or CANCEL FOR NONE\")\n if (theVideo = nil) then\n Setup.WriteElt(\"NONE\")\n else\n SetUp.WriteElt(theVideo.GetName)\n HotExt.GetPreferences.Set(\"Player\",{theVideo})\n end\n SetUp.Close\nend\nav.getproject.setmodified(true)" ) (Script.58 Name: "Uninstall" SourceCode: "' Name: Uninstall\n'\n' Author: Original Script ESRI Redlands\n' Modified Harley Prowse, Auckland UniServices - Geographic Technologies (harleyp@gtech.co.nz)\n'\n' Title: Extension Builder - Uninstall\n'\n' Topics: \n'\n' Description: \n'\n' Requires: \n'\n' Self: \n'\n' Returns:\n\n\n\n'DO NOT EDIT!!!\n\n'The SELF is the Extension\n\ntheDocs = SELF.get(0)\ntheControlList = SELF.get(1)\ntheMenuList = SELF.get(2)\nthePopupList = SELF.get(3)\ntheToolMenuList=SELF.get(4)\ntheProject=Av.getproject\n\n\n'remove the Docs\n'\nfor ea ch adoc in theDocs\n If (theProject.finddoc(adoc.getname)<>NIL) then \n 'theAnswer=msgbox.yesno(\"Remove the Document \"+adoc.getname+\"?\",\"Remove Document?\",TRUE)\n 'if (theAnswer=TRUE) then theProject.RemoveDoc(adoc) end\n theProject.RemoveDoc(adoc)\n end\nend\n\n'Removethe Controls\n'\nfor each totalControl in theControlList\n \n if (totalcontrol.get(2) <> \"Space\") then\n \n 'Get the control list from the Ext\n acontrol=totalControl.get(0)\n \n 'Get the physical Control\n theControl = totalContro l.get(1)\n \n 'Get the Controls Index\n theCindex=totalControl.get(2)\n \n 'Find the DocGUI for the Control\n theControlDoc=av.getproject.findGUI(aControl.get(0))\n if (theControlDoc=NIL) then \n MsgBox.Warning(\"The GUI \"+aControl.get(0)+\" cannot be found in the current project.\",\"Script Eror\")\n return(nil)\n end\n \n 'This sequence finds the appropiate control set\n thecommand=\"av.getproject.findGUI(\"\"\"+aControl.get(0)+\"\"\").Get\"+acontrol.get(1)\n thescr ipt1=Script.Make(thecommand)\n thecontrolset=thescript1.doit(\"\")\n \n 'See if the control is in the set , if so remove it\n if (theControlSet.GetControls.find(theControl)<>NIL) then\n theControlSet.remove(theControl)\n if (thecontrol = \"ToolBar\") then\n theControlSet.selectdefault\n end\n end\n else\n thecommand=\"av.getproject.findGUI(\"\"\"+totalControl.get(0)+\"\"\").Get\"+totalcontrol.get(1)\n thescript1=Script.Make(thecommand)\n thecontrolset=thescript1.doit(\"\" )\n \n spacerControl=theControlSet.FindByName(\"Spacer\")\n \n if (spacerControl <> nil) then\n theControlSet.remove(spacerControl)\n end\n end\nend\n\n'msgbox.info(\"Controls Removed OK\",\"\")\n\n'Remove the Menus\n'\nfor each totalcontrol in theMenuList\n \n 'The Control list\n acontrol=totalControl.get(0)\n if (totalControl.get(2) <> \"Space\") then\n \n mDoc=acontrol.get(0)\n mMenu=acontrol.get(1)\n mMenuItem=acontrol.get(2)\n \n 'The physical control\n theControl = totalControl.get(1)\n \n 'The control Index\n theCindex=totalControl.get(2)\n \n 'Find the DocGUI\n theControlDoc=av.getproject.findGUI(aControl.get(0))\n if (theControlDoc=NIL) then \n MsgBox.Warning(\"The GUI \"+aControl.get(0)+\" cannot be found in the current project.\",\"Script Eror\")\n return(nil)\n end\n \n theMbar=av.getproject.findGUI(mDoc).GetMenuBar\n themenu=theMbar.findbylabel(mMenu)\n if (themenu=NiL) then\n MsgBox.Warning(\"The menu named \"+mMenu+\" is not here.\",\"Script Eror\")\n 'return(nil)\n else\n \n thething=themenu.getcontrols.find(thecontrol)\n if (thething<>NIL) then \n themenu.remove(thecontrol) \n end\n 'msgbox.info(themenu.GetControls.count.asstring,\"\")\n if (themenu.GetControls.count<1) then\n theMbar.remove(themenu)\n end\n end\n else\n 'Find the DocGUI\n theControlDoc=av.getproject.findGUI(totalControl.get(0)) \n if (theControlDoc=NIL) then \n MsgBox.Warning(\"The GUI \"+totalControl.get(0)+\" cannot be found in the current project.\",\"Script Eror\")\n return(nil)\n end\n theMbar=av.getproject.findGUI(mDoc).GetMenuBar\n themenu=theMbar.findbylabel(mMenu)\n if (themenu=NiL) then\n MsgBox.Warning(\"The menu named \"+mMenu+\" is not here.\",\"Script Eror\")\n 'return(nil)\n else\n theSpacer=themenu.findbyname(\"Spacer\")\n if (thespacer <> nil) then\n themenu.remove(theSpacer)\n end\n end\n end\nend\n\n'msgbox.info(\"Menus Removed OK\",\"\")\n\n'__________________________________________________________________________\n'Remove the Popups\n'__________________________________________________________________________\n\nfor each totalcontrol in thePopupList\n \n 'The Control list\n acontrol=totalControl.get(0)\n if (totalControl.get(2) <> \"Space\") then\n \n pDoc=acontrol.get(0)\n popMenu=acontrol.get(1)\n pMenuItem=acont rol.get(2)\n \n 'The physical control\n theControl = totalControl.get(1)\n \n 'The control Index\n theCindex=totalControl.get(2)\n \n 'Find the DocGUI\n theControlDoc=av.getproject.findGUI(aControl.get(0))\n if (theControlDoc=NIL) then \n MsgBox.Warning(\"The GUI \"+aControl.get(0)+\" cannot be found in the current project.\",\"Script Eror\")\n return(nil)\n end\n \n thepopups=av.getproject.findGUI(pDoc).Getpopups\n thepopup=the popups.findbylabel(popMenu)\n if (thepopup=NiL) then\n MsgBox.Warning(\"The popup named \"+popMenu+\" is not here.\",\"Script Eror\")\n 'return(nil)\n else \n thething=thepopup.getcontrols.find(thecontrol)\n if (thething<>NIL) then \n thepopup.remove(thecontrol) \n end\n 'msgbox.info(themenu.GetControls.count.asstring,\"\")\n if (thepopup.GetControls.count<1) then\n thepopups.remove(thepopup)\n end\n end\n else\n 'Find the DocGUI\n theControlDoc=av.getproject.findGUI(totalControl.get(0))\n if (theControlDoc=NIL) then \n MsgBox.Warning(\"The GUI \"+totalControl.get(0)+\" cannot be found in the current project.\",\"Script Eror\")\n return(nil)\n end\n thepopups=av.getproject.findGUI(mDoc).Getpopups\n thepopup=thepopups.findbylabel(popMenu)\n if (thepopup=NiL) then\n MsgBox.Warning(\"The popup named \"+thepopup+\" is not here.\",\"Script Eror\")\n 'return(nil)\n else\n theS pacer=thepopup.findbyname(\"Spacer\")\n if (thespacer <> nil) then\n thepopup.remove(theSpacer)\n end\n end\n end\nend\n\n\nfor each totalControl in theToolMenuList\n 'Get the control list from the Ext\n acontrol=totalControl.get(0)\n \n 'Get the physical Control\n theControl = totalControl.get(1)\n \n 'Get the Controls Index\n theCindex=totalControl.get(2)\n\n 'Find the DocGUI for the Control\n theControlDoc=av.getproject.findGUI(aControl.get(0))\n if (theControlDoc=NIL) then \n MsgBox.Warning(\"The GUI \"+aControl.get(0)+\" cannot be found in the current project.\",\"Script Eror\")\n return(nil)\n end\n \n 'This sequence finds the appropiate control set\n thecontrolset=av.getproject.findGUI(aControl.get(0)).GetToolBar\n\n \n 'See if the control is in the set , if so remove it\n if (theControlSet.GetControls.find(theControl)<>NIL) then\n \n theControlSet.remove(theControl)\n theControlSet.selectdefault\n end\n\nend\n \n'msgbox.info(\"ToolMenus Removed OK\",\"\") \n\n'And the scripts delete themselves\n\n'**** Uncomment this line if your extension contains dialogs *****\n\n'Dialog.DetachFromExtension(self)\nav.purgeObjects\nav.getproject.setmodified(true)\n\n\n\n" )