home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / x / volume20 / xarchie / part11 < prev    next >
Encoding:
Text File  |  1993-06-14  |  50.4 KB  |  1,566 lines

  1. Newsgroups: comp.sources.x
  2. From: ferguson@cs.rochester.edu (George Ferguson)
  3. Subject: v20i039:  xarchie - An X browser interface to Archie, v2.0.6, Part11/24
  4. Message-ID: <1993Jun15.223330.651@sparky.imd.sterling.com>
  5. X-Md4-Signature: 71299c20d64e1e0dbfb354ac0c9886f3
  6. Sender: chris@sparky.imd.sterling.com (Chris Olson)
  7. Organization: Sterling Software
  8. Date: Tue, 15 Jun 1993 22:33:30 GMT
  9. Approved: chris@sparky.imd.sterling.com
  10.  
  11. Submitted-by: ferguson@cs.rochester.edu (George Ferguson)
  12. Posting-number: Volume 20, Issue 39
  13. Archive-name: xarchie/part11
  14. Environment: X11
  15. Supersedes: xarchie: Volume 14, Issue 82-90
  16.  
  17. Submitted-by: ferguson@cs.rochester.edu
  18. Archive-name: xarchie-2.0.6/part11
  19.  
  20. #!/bin/sh
  21. # this is Part.11 (part 11 of xarchie-2.0.6)
  22. # do not concatenate these parts, unpack them in order with /bin/sh
  23. # file xarchie-2.0.6/help-text1.h continued
  24. #
  25. if test ! -r _shar_seq_.tmp; then
  26.     echo 'Please unpack part 1 first!'
  27.     exit 1
  28. fi
  29. (read Scheck
  30.  if test "$Scheck" != 11; then
  31.     echo Please unpack part "$Scheck" next!
  32.     exit 1
  33.  else
  34.     exit 0
  35.  fi
  36. ) < _shar_seq_.tmp || exit 1
  37. if test ! -f _shar_wnt_.tmp; then
  38.     echo 'x - still skipping xarchie-2.0.6/help-text1.h'
  39. else
  40. echo 'x - continuing file xarchie-2.0.6/help-text1.h'
  41. sed 's/^X//' << 'SHAR_EOF' >> 'xarchie-2.0.6/help-text1.h' &&
  42. "          tial value of the  \"Strip  CR\"\n",
  43. "          item on the Settings Panel.\n",
  44. "\n",
  45. NULL,
  46. "  Database Writing Resources\n",
  47. "     fileWriteOnePerLine\n",
  48. "          Specifies the format of  files\n",
  49. "          written by \"Write\".  This will\n",
  50. "          be used as the  initial  value\n",
  51. "          of  the \"Write format\" item on\n",
  52. "          the File Panel.   The  meaning\n",
  53. "          of  this  setting is described\n",
  54. "          in the USER'S GUIDE section on\n",
  55. "          \"Saving,  Loading,  and  Writ-\n",
  56. "          ing\".\n",
  57. "\n",
  58. NULL,
  59. "  Special Font Resources\n",
  60. "     Xarchie uses two fonts by  default:\n",
  61. "     one  \"normal\" and one \"bold\".  How-\n",
  62. "     ever, because of widget naming  and\n",
  63. "     resource  lookup conventions, these\n",
  64. "     fonts must  be  specified  in  many\n",
  65. "     places  in  the  resource  file. To\n",
  66. "     make it easier to find  and  change\n",
  67. "     these   fonts,  the  following  two\n",
  68. "     resources are defined:\n",
  69. "\n",
  70. "     xarchieFont\n",
  71. "          The name of the  default  font\n",
  72. "          used  by  Xarchie  widgets. If\n",
  73. "          any widget  specifies  a  font\n",
  74. "          resource   as   \"xarchieFont\",\n",
  75. "          this font will be used.\n",
  76. "\n",
  77. "     xarchieBoldFont\n",
  78. "          Like the above, but  specifies\n",
  79. "          the  font  used  by any widget\n",
  80. "          that specifies a font resource\n",
  81. "          of \"xarchieBoldFont\".\n",
  82. "\n",
  83. "     The resource converter  that  looks\n",
  84. "     up  fontnames  is  modified so that\n",
  85. "     the the two special  strings  \"xar-\n",
  86. "     chieFont\"   and   \"xarchieBoldFont\"\n",
  87. "     result in  the  corresponding  font\n",
  88. "     being  returned;  other strings are\n",
  89. "     looked up as normal fontnames.\n",
  90. "\n",
  91. NULL,
  92. "  Other Resources\n",
  93. "     visualType\n",
  94. "          This resource  allows  you  to\n",
  95. "          override   Xarchie's   builtin\n",
  96. "          determination of the  type  of\n",
  97. "          display,   which  it  uses  to\n",
  98. "          specify   appropriate    color\n",
  99. "          resources.   You  can  specify\n",
  100. "          \"mon\", \"gray\", or  \"color\"  as\n",
  101. "          the value of this resource. It\n",
  102. "          can  also  be  set  with   the\n",
  103. "          corresponding     command-line\n",
  104. "          options.\n",
  105. "\n",
  106. "     defaultIcon\n",
  107. "          If given, this resource speci-\n",
  108. "          fies  the  name of an X bitmap\n",
  109. "          file  that  will  be  used  as\n",
  110. "          Xarchie's icon when not query-\n",
  111. "          ing (assuming you are using  a\n",
  112. "          window  manager  that supports\n",
  113. "          icon pixmaps). The X  resource\n",
  114. "          conversion  routines will look\n",
  115. "          for the file in a  variety  of\n",
  116. "          places,  including directories\n",
  117. "          given by the  global  resource\n",
  118. "          bitmapFilePath.\n",
  119. "\n",
  120. "     busyIcon\n",
  121. "          If given, this resource speci-\n",
  122. "          fies  the  name of an X bitmap\n",
  123. "          file  that  will  be  used  as\n",
  124. "          Xarchie's  icon  when querying\n",
  125. "          (see the  description  of  the\n",
  126. "          defaultIcon  resource, above).\n",
  127. "          The icon is  changed  back  to\n",
  128. "          the  default  when  the  query\n",
  129. "          completes, so  you  can  watch\n",
  130. "          for  a change while Xarchie is\n",
  131. "          iconified.\n",
  132. "\n",
  133. NULL,
  134. " Widget Hierarchies\n",
  135. "     Xarchie uses primarily Athena widg-\n",
  136. "     ets, with some extra sub-classes as\n",
  137. "     described below.\n",
  138. "\n",
  139. NULL,
  140. "  Main Xarchie Widgets\n",
  141. "     The widget hierarchy for  the  main\n",
  142. "     Xarchie display is as follows:\n",
  143. "\n",
  144. "     Xarchie xarchie\n",
  145. "       [Form color|gray] <-- Color or gray-scale displays only\n",
  146. "       Paned outerPaned\n",
  147. "         Form buttonForm\n",
  148. "           MenuButton fileButton\n",
  149. "           MenuButton settingsButton\n",
  150. "           MenuButton queryButton\n",
  151. "           Command abortButton\n",
  152. "           Command helpButton\n",
  153. "           Label,Text status{Label,Text}\n",
  154. "         Form browserForm\n",
  155. "           Command browserUpButton\n",
  156. "           Command browserDownButton\n",
  157. "           Paned browserPaned\n",
  158. "             Viewport browserViewport0\n",
  159. "               XfwfMultiList browserList0\n",
  160. "             Viewport browserViewport1\n",
  161. "               XfwfMultiList browserList1\n",
  162. "             Viewport browserViewport2\n",
  163. "               XfwfMultiList browserList2\n",
  164. "         Form stringForm\n",
  165. "           Label,Text search{Label,Text}\n",
  166. "           Label,Text host{Label,Text}\n",
  167. "           Label,Text location{Label,Text}\n",
  168. "           Label,Text file{Label,Text}\n",
  169. "           Label,Text size{Label,Text}\n",
  170. "           Label,Text modes{Label,Text}\n",
  171. "           Label,Text date{Label,Text}\n",
  172. "\n",
  173. "     On  color  displays,  there  is  an\n",
  174. "     extra  Form  widget  named  \"color\"\n",
  175. "     created as the only  child  of  the\n",
  176. "     toplevel shell, and all other widg-\n",
  177. "     ets are children of it. This allows\n",
  178. "     resources  that are only applicable\n",
  179. "     for color displays to use the  pre-\n",
  180. "     fix \"Xarchie.color\" while generally\n",
  181. "     applicable resources should use the\n",
  182. "     \"Xarchie*\"  prefix.  On  gray-scale\n",
  183. "     displays, the extra widget is named\n",
  184. "     \"gray\".  On monochrome displays, no\n",
  185. "     extra widget is created.\n",
  186. "\n",
  187. "     The  XfwfMultiList  widget   is   a\n",
  188. "     modification of the standard Athena\n",
  189. "     List widget  that  allows  multiple\n",
  190. "     items  to be selected. It was writ-\n",
  191. "     ten      by       Brian       Totty\n",
  192. "     (totty@flute.cs.uiuc.edu)   and  is\n",
  193. "     distributed  by  the  Free   Widget\n",
  194. "     Foundation  (contact  free-widgets-\n",
  195. "     request@kazoo.cs.uiuc.edu).    Xar-\n",
  196. "     chie  can  be compiled to use stan-\n",
  197. "     dard Athena List  widgets  instead.\n",
  198. "     See  the  Imakefile  or  your local\n",
  199. "     installer.\n",
  200. "\n",
  201. "     To describe this  widget  hierarchy\n",
  202. "     briefly,  outerPaned  controls  the\n",
  203. "     relative sizes of  the  three  hor-\n",
  204. "     izontal    display    areas   while\n",
  205. "     browserPaned  allows  the   browser\n",
  206. "     panels to be resized independently.\n",
  207. "     Each browser panel  consists  of  a\n",
  208. "     Viewport  to allow it to scroll and\n",
  209. "     an  XfwfMultiList  (or   List)   to\n",
  210. "     display the entries.\n",
  211. "\n",
  212. "     The  command  buttons  and   status\n",
  213. "     widgets are pretty straightforward.\n",
  214. "     The   fileButton   pops   up    the\n",
  215. "     fileMenu,  whose  items  invoke the\n",
  216. "     obvious actions  (see  below)  when\n",
  217. "     selected.  The  settingsButton pops\n",
  218. "     up  the  settingsMenu,  which  uses\n",
  219. "     some  special  translations and the\n",
  220. "     settings-submenu() action to permit\n",
  221. "     the  use of pullright submenus. The\n",
  222. "     queryButton pops up the  queryMenu,\n",
  223. "     the   abortButton   (when   active)\n",
  224. "     invokes the abort() action, and the\n",
  225. "     helpButton   invokes   the   help()\n",
  226. "     action to pop up the Help panel.\n",
  227. "\n",
  228. "     In the bottom pane, the  searchText\n",
  229. "     widget  is used to enter the search\n",
  230. "     term,  and  by  default  it   binds\n",
  231. "     Return  to  the query() action (see\n",
  232. "     below) to send the query to Archie.\n",
  233. "     The   hostText   binds   Return  to\n",
  234. "     query-host() and  the  locationText\n",
  235. "     binds  Return  to query-location().\n",
  236. "     All the other  Text  items  in  the\n",
  237. "     stringForm cannot be edited and are\n",
  238. "     used to display  information  about\n",
  239. "     the current browser selection.\n",
  240. "\n",
  241. NULL,
  242. "  Settings Panel Widgets\n",
  243. "     The \"Panel\" item  on  the  Settings\n",
  244. "     menu  pops  up  the Settings Panel,\n",
  245. "     which  has  the  following   widget\n",
  246. "     hierarchy:\n",
  247. "\n",
  248. "       TopLevelShell settingsShell\n",
  249. "         Form settingsForm\n",
  250. "           Command setDoneButton\n",
  251. "           Command setApplyButton\n",
  252. "           Command setDefaultButton\n",
  253. "           MenuButton,AsciiText setHost{Button,Text}\n",
  254. "           MenuButton,Label setSearch{Button,Label}\n",
  255. "           MenuButton,Label setSort{Button,Label}\n",
  256. "           Label,AsciiText setHostWeights{Label,Text}\n",
  257. "           MenuButton,AsciiText setNice{Button,Text}\n",
  258. "           Label,AsciiText setMaxHits{Label,Text}\n",
  259. "           Label,AsciiText setTimeout{Label,Text}\n",
  260. "           Label,AsciiText setRetries{Label,Text}\n",
  261. "           Label,AsciiText setAutoScroll{Button,Label}\n",
  262. "           Label,AsciiText ftpMailAddress{Label,Text}\n",
  263. "           Label,AsciiText ftpLocalDir{Label,Text}\n",
  264. "           MenuButton,Label ftpType{Button,Label}\n",
  265. "           MenuButton,Label ftpPrompt{Button,Label}\n",
  266. "           MenuButton,Label ftpTrace{Button,Label}\n",
  267. "           MenuButton,Label ftpStrip{Button,Label}\n",
  268. "\n",
  269. "     The   setDoneButton   invokes   the\n",
  270. "     settings-done()  action, the setAp-\n",
  271. "     plyButton invokes settings-apply(),\n",
  272. "     and  the  setDefaultButton  invokes\n",
  273. "     settings-default().   The   actions\n",
  274. "     are  described below.  The MenuBut-\n",
  275. "     ton widgets pop up menus  described\n",
  276. "     below under \"Menus\".  The AsciiText\n",
  277. "     widgets are  used  to  display  and\n",
  278. "     edit the corresponding parameters.\n",
  279. "\n",
  280. NULL,
  281. "  File Panel Widgets\n",
  282. "     The  \"Save\",  \"Load\",  and  \"Write\"\n",
  283. "     items  on  the File menu pop up the\n",
  284. "     File panel, which has the following\n",
  285. "     widget hierarchy:\n",
  286. "\n",
  287. "     TopLevelShell fileShell\n",
  288. "       Form fileForm\n",
  289. "         Label fileLabel\n",
  290. "         XfwfFileChooser fileChooser\n",
  291. "         Label,AsciiText filename{Label,Text}\n",
  292. "         MenuButton,Label fileWriteMode{Button,Label}\n",
  293. "         Command fileOkButton, fileCancelButton\n",
  294. "\n",
  295. "     The XfwfFileChooser widget provides\n",
  296. "     a   browser  for  selecting  files.\n",
  297. "     Xarchie can be compiled without the\n",
  298. "     FileChooser, if necessary.  See the\n",
  299. "     Imakefile or your local installer.\n",
  300. "\n",
  301. "     In any event, the  fileLabel  indi-\n",
  302. "     cates  what operation is being per-\n",
  303. "     formed, the fileChooser,  fileText,\n",
  304. "     and  buttons  are  used to select a\n",
  305. "     file, and  the  fileWriteModeButton\n",
  306. "     pops up the fileWriteModeMenu (only\n",
  307. "     enabled for Write).  Typing  Return\n",
  308. "     in  the filenameText is the same as\n",
  309. "     clicking  the   fileOkButton,   and\n",
  310. "     sending  the  WM_DELETE_WINDOW mes-\n",
  311. "     sage  (typically  from  the  window\n",
  312. "     manager) is the same as clicking on\n",
  313. "     the fileCancelButton.\n",
  314. "\n",
  315. NULL,
  316. "  View Window Widgets\n",
  317. "     Whenever a  file  is  retrieved  by\n",
  318. "     \"Open\", it is displayed in a window\n",
  319. "     with the following  widget  hierar-\n",
  320. "     chy:\n",
  321. "\n",
  322. "     TopLevelShell viewShell\n",
  323. "       Form viewForm\n",
  324. "         Command viewDoneButton\n",
  325. "         Command viewDownButton\n",
  326. "         Command viewUpButton\n",
  327. "         Command viewSaveButton\n",
  328. "         Text viewText\n",
  329. "\n",
  330. "     The title of the TopLevel shell  is\n",
  331. "     set  to  the  basename  of the file\n",
  332. "     being viewed in the viewText.   The\n",
  333. "     operation  of  the  buttons  is all\n",
  334. "     hard-coded.    Clicking   on    the\n",
  335. "     viewSaveButton  results in the fol-\n",
  336. "     lowing  panel  being  displayed  to\n",
  337. "     select the file to save to:\n",
  338. "\n",
  339. "     TopLevelShell viewSaveShell\n",
  340. "       Form viewSaveForm\n",
  341. "         Label viewSaveLabel\n",
  342. "         AsciiText viewSaveLabelText\n",
  343. "         XfwfFileChooser fileChooser\n",
  344. "         Label viewSaveTextLabel\n",
  345. "         AsciiText viewSaveText\n",
  346. "         Command viewSaveOkButton, viewSaveCancelButton\n",
  347. "\n",
  348. "     The viewSaveLabelText indicates the\n",
  349. "     name  of  the  temporary  file from\n",
  350. "     which the save should be  made  and\n",
  351. "     connot  be changed. The fileChooser\n",
  352. "     and fileText allow  you  to  select\n",
  353. "     the file to save to.\n",
  354. "\n",
  355. NULL,
  356. "  Help Panel Widgets\n",
  357. "     The \"Help\" button in Xarchie's  top\n",
  358. "     pane  pops up the Help panel, which\n",
  359. "     has the following widget hierarchy:\n",
  360. "\n",
  361. "     TopLevelShell  helpShell\n",
  362. "       Form  helpForm\n",
  363. "         Label  helpLabel\n",
  364. "         Viewport  helpViewport\n",
  365. "         List  helpList\n",
  366. "         Text  helpText\n",
  367. "         Command  helpDoneButton\n",
  368. "         Command  helpPrevButton\n",
  369. "         Command  helpNextButton\n",
  370. "         Command  helpDownButton\n",
  371. "         Command  helpUpButton\n",
  372. "\n",
  373. "     The helpLabel identifies  the  ver-\n",
  374. "     sion   of  Xarchie.   The  helpList\n",
  375. "     displays the help topics,  and  the\n",
  376. "     corresponding  text is displayed in\n",
  377. "     the helpText.   The  helpDoneButton\n",
  378. "     invokes the help-done() action, the\n",
  379. "     helpPrevButton     invokes      the\n",
  380. "     help-prev()  action,  and the help-\n",
  381. "     NextButton invokes the  help-next()\n",
  382. "     action. The helpDownButton and hel-\n",
  383. "     pUpButton  invoke  the  help-down()\n",
  384. "     and help-up() actions respectively.\n",
  385. "\n",
  386. NULL,
  387. "  About Panel Widgets\n",
  388. "     Selecting the \"About\" item  on  the\n",
  389. "     File  menu pops up the About panel,\n",
  390. "     which  has  the  following   widget\n",
  391. "     hierarchy:\n",
  392. "\n",
  393. "     TopLevelShell aboutShell\n",
  394. "       Form aboutForm\n",
  395. "         Label aboutLabel{0,1,2,3,4,5}\n",
  396. "         Command aboutDoneButton\n",
  397. "\n",
  398. "     The labels are set to  display  the\n",
  399. "     version  of  Xarchie and other con-\n",
  400. "     tact information. There  is  little\n",
  401. "     you  can  or  should  do with these\n",
  402. "     widgets.\n",
  403. "\n",
  404. NULL,
  405. "  Popup Widgets\n",
  406. "     Finally, two types of popup windows\n",
  407. "     can appear. An Alert box signals an\n",
  408. "     error and blocks until clicked  in;\n",
  409. "     a  Confirm  box  allows the user to\n",
  410. "     make a Yes/No decision. These  have\n",
  411. "     the following widget hierarchies:\n",
  412. "\n",
  413. "     TransientShell alertShell\n",
  414. "       Dialog alertDialog\n",
  415. "         Command okButton\n",
  416. "\n",
  417. "     TransientShell confirmShell\n",
  418. "       Dialog confirmDialog\n",
  419. "         Command yesButton,noButton\n",
  420. "\n",
  421. "     respectively. Several  actions  are\n",
  422. "     defined  (see  below)  for  use  in\n",
  423. "     these popups.\n",
  424. "\n",
  425. NULL,
  426. "  Menus\n",
  427. "     The MenuButton widgets on both  the\n",
  428. "     main  Xarchie  display  and  on the\n",
  429. "     various panels use standard  Athena\n",
  430. "     SimpleMenu  widgets.  The following\n",
  431. "     naming  conventions  are  used   to\n",
  432. "     allow resources to be specified: if\n",
  433. "     the  parent  SimpleMenu  widget  is\n",
  434. "     named \"fooMenu\", then the SmeBSBOb-\n",
  435. "     jects making  up  the  entries  are\n",
  436. "     named   \"fooMenuItemn\",   where   n\n",
  437. "     starts at 0 for the first  item  in\n",
  438. "     the  menu.  The menus are all chil-\n",
  439. "     dren of  the  main  Xarchie  shell,\n",
  440. "     toplevel.   For  example,  the File\n",
  441. "     menu has widget hierarchy\n",
  442. "\n",
  443. "     SimpleMenu  fileMenu\n",
  444. "       SmeBSB  menuLabel\n",
  445. "         SmeBSB  fileMenuItem{0,1,2,3,4,5,6}\n",
  446. "\n",
  447. "     There are three things  worth  men-\n",
  448. "     tioning. First, as noted above, the\n",
  449. "     settingsMenu uses special  transla-\n",
  450. "     tions  and  the  settings-submenu()\n",
  451. "     action to allow pullright submenus.\n",
  452. "     Secondly,  the  submenus  available\n",
  453. "     from the Settings menu (searchMenu,\n",
  454. "     sortMenu,  niceMenu,  and hostMenu)\n",
  455. "     and those available on the Settings\n",
  456. "     Panel  (setSearchMenu, setSortMenu,\n",
  457. "     setNiceMenu, and setHostMenu)  have\n",
  458. "     the  same  labels but are different\n",
  459. "     widgets  with  different   effects.\n",
  460. "     The   Settings   Panel  menus  (the\n",
  461. "     second group) only update the  Set-\n",
  462. "     tings  panel,  requiring  the  Done\n",
  463. "     button  to  be  clicked   to   take\n",
  464. "     effect.  The Settings menu submenus\n",
  465. "     (the  first  group)   take   effect\n",
  466. "     immediately,  and also indicate the\n",
  467. "     current item in the left margin  of\n",
  468. "     the menu.\n",
  469. "\n",
  470. "     Finally,  the  number,  order,  and\n",
  471. "     effect  of all menus are hardcoded,\n",
  472. "     although the labels can, of course,\n",
  473. "     be  changed  in  the resource file.\n",
  474. "     However, changing the  labels  will\n",
  475. "     NOT  change the effect of selecting\n",
  476. "     the item, with the exception of the\n",
  477. "     hostMenu  and  setHostMenu.   These\n",
  478. "     menus use the  numHosts  non-widget\n",
  479. "     resource to indicate how many items\n",
  480. "     are on the menu. Thus you  can  add\n",
  481. "     hosts  to  the menu by adding label\n",
  482. "     resources     for      the      new\n",
  483. "     hostMenuItem's  and  increasing the\n",
  484. "     value of Xarchie.numHosts.  Xarchie\n",
  485. "     parses  the labels to determine the\n",
  486. "     hostname: anything up to whitespace\n",
  487. "     constitutes   the   hostname   (and\n",
  488. "     optional  port  number),   anything\n",
  489. "     after is simply commentary.\n",
  490. "\n",
  491. NULL,
  492. " Translation Actions\n",
  493. "     The following action procedures are\n",
  494. "     registered  for  Xarchie and can be\n",
  495. "     bound to widget  events  using  the\n",
  496. "     translations  resource  (see the Xt\n",
  497. "     manual, Appendix C). The actions of\n",
  498. "     the  browser widgets are hard-coded\n",
  499. "     since  they  are  so  essential  to\n",
  500. "     correct  behaviour.   They can how-\n",
  501. "     ever be bound to  different  events\n",
  502. "     using the notify() action (that is,\n",
  503. "     you  could  notify  on  some  other\n",
  504. "     event  than  mouse  clicks,  if you\n",
  505. "     know what you're doing).\n",
  506. "\n",
  507. NULL,
  508. "  Main panel actions\n",
  509. "     quit()\n",
  510. "          Exit Xarchie.  By default this\n",
  511. "          is invoked by selecting \"Quit\"\n",
  512. "          from the File menu or by  typ-\n",
  513. "          ing  \"Meta-Q\"  in any non-Text\n",
  514. "          widget.\n",
  515. "\n",
  516. "     query()\n",
  517. "          Send the current  contents  of\n",
  518. "          the  \"Search Term\" text widget\n",
  519. "          (searchText)  to  Archie.   By\n",
  520. "          default  this  is performed by\n",
  521. "          hitting Return  in  searchText\n",
  522. "          or  by  selecting \"Query Item\"\n",
  523. "          from the Query menu.\n",
  524. "\n",
  525. "     query-host()\n",
  526. "          Fills  the  browser  with  the\n",
  527. "          contents of the root directory\n",
  528. "          of the host given by the  con-\n",
  529. "          tents   of   the  \"Host\"  text\n",
  530. "          widget (hostText).  By default\n",
  531. "          this  is  performed by hitting\n",
  532. "          Return in hostText  or  by  by\n",
  533. "          selecting  \"Query  Host\"  from\n",
  534. "          the Query menu.\n",
  535. "\n",
  536. "     query-location()\n",
  537. "          Fills  the  browser  with  the\n",
  538. "          contents   of   the  directory\n",
  539. "          given by the  \"Location\"  text\n",
  540. "          widget  (locationText) and the\n",
  541. "          host given by the contents  of\n",
  542. "          the  \"Host\" text widget (host-\n",
  543. "          Text).   By  default  this  is\n",
  544. "          performed by hitting Return in\n",
  545. "          locationText or  by  selecting\n",
  546. "          \"Query   Location\"   from  the\n",
  547. "          Query menu.\n",
  548. "\n",
  549. "     abort()\n",
  550. "          Aborts the  current  query  at\n",
  551. "          the soonest possible time. Has\n",
  552. "          no effect is a  query  is  not\n",
  553. "          currently  being processed. By\n",
  554. "          default,   this   invoked   by\n",
  555. "          clicking  on  the Abort button\n",
  556. "          when it is active.\n",
  557. "\n",
  558. "     query-or-abort()\n",
  559. "          Invokes  either   query()   or\n",
  560. "          abort(),  depending on whether\n",
  561. "          a query is in progress.\n",
  562. "\n",
  563. "     about()\n",
  564. "          Pops up the About panel.\n",
  565. "\n",
  566. "     ftp-get()\n",
  567. "          Begin   retrieval    of    the\n",
  568. "          currently-selected  files.  By\n",
  569. "          default  this  is  invoked  by\n",
  570. "          selecting   \"Get\"   from   the\n",
  571. "          \"File\"  menu,  or  by   typing\n",
  572. "          \"Meta-G\"   in   any   non-Text\n",
  573. "          widget.\n",
  574. "\n",
  575. NULL,
  576. "  Browser actions\n",
  577. "     Items are selected in  the  browser\n",
  578. "     using  the  Left  mouse  button, as\n",
  579. "     usual.  Clicking  with  Shift  does\n",
  580. "     not  clear other selections, allow-\n",
  581. "     ing multiple  selections.  This  is\n",
  582. "     implemented using the XfwfMultiList\n",
  583. "     translation    actions    Notify(),\n",
  584. "     Set(),  Toggle(),  and  OpenMany(),\n",
  585. "     unless your version of Xarchie  was\n",
  586. "     compiled to not use the XfwfMultiL-\n",
  587. "     ist widget (see  the  Imakefile  or\n",
  588. "     your  local  installer).  Modify at\n",
  589. "     your own risk!\n",
  590. "\n",
  591. "     The following actions are used  for\n",
  592. "     other browser operations.\n",
  593. "\n",
  594. "     browser-up()\n",
  595. "          Shifts the browser left (i.e.,\n",
  596. "          up the file hierarchy) if pos-\n",
  597. "          sible.   By  default  this  is\n",
  598. "          invoked  by  clicking  on  the\n",
  599. "          \"<<<\"  button   (browserUpBut-\n",
  600. "          ton),  or by clicking the Mid-\n",
  601. "          dle  mouse   button   in   the\n",
  602. "          browser,  or  by  hitting  the\n",
  603. "          \"Left\"  key  (often  the  left\n",
  604. "          arrow on the cursor keypad).\n",
  605. "\n",
  606. "     browser-down()\n",
  607. "          Shifts the browser right (ie.,\n",
  608. "          down  the  file  hierarchy) if\n",
  609. "          possible.  By default this  is\n",
  610. "          invoked  by  clicking  on  the\n",
  611. "          \">>>\" button  (browserDownBut-\n",
  612. "          ton), or by clicking the Right\n",
  613. "          mouse button in  the  browser,\n",
  614. "          or  by hitting the \"Right\" key\n",
  615. "          (often the right arrow on  the\n",
  616. "          cursor keypad).\n",
  617. "\n",
  618. "     browser-top()\n",
  619. "          Shifts  the  browser  to   its\n",
  620. "          leftmost  position  (i.e., the\n",
  621. "          top of  the  file  hierarchy).\n",
  622. "          By  default this is invoked by\n",
  623. "          clicking  with  Shift  on  the\n",
  624. "          \"<<<\" button (browserUpButton)\n",
  625. "          or by hitting the \"Home\" key.\n",
  626. "     browser-open-directories()\n",
  627. "          Expands selected  directories.\n",
  628. "          If  the  browser  was expanded\n",
  629. "          uniquely and successfully,  it\n",
  630. "          will   be   shifted  right  to\n",
  631. "          display the  new  information.\n",
  632. "          By default, this is invoked by\n",
  633. "          double-clicking     in     the\n",
  634. "          browser.\n",
  635. "\n",
  636. "     browser-open-files()\n",
  637. "          Retrieves  selected  files  by\n",
  638. "          FTP  into a temporary file and\n",
  639. "          displays them using View  win-\n",
  640. "          dows.\n",
  641. "\n",
  642. "     browser-open-all()\n",
  643. "          Opens the  selected  items  by\n",
  644. "          expanding selected directories\n",
  645. "          and retrieving selected  files\n",
  646. "          for viewing.  By default, this\n",
  647. "          is invoked by selecting \"Open\"\n",
  648. "          from the File menu, or by typ-\n",
  649. "          ing \"Meta-O\" in  any  non-text\n",
  650. "          widget.\n",
  651. "\n",
  652. NULL,
  653. "  Settings actions\n",
  654. "     The following actions  control  the\n",
  655. "     Settings  Panel  and can be used to\n",
  656. "     change some settings without  using\n",
  657. "     the panel.\n",
  658. "\n",
  659. "     popup-settings()\n",
  660. "          Pops up  the  Settings  Panel,\n",
  661. "          and resets its values to those\n",
  662. "          currently  in  effect.  Raises\n",
  663. "          the  Settings  Panel  if it is\n",
  664. "          already popped up. By  default\n",
  665. "          this is performed by selecting\n",
  666. "          \"Other\" on the Settings menu.\n",
  667. "\n",
  668. "     settings-apply()\n",
  669. "          Sets the current settings from\n",
  670. "          the  values  on  the  Settings\n",
  671. "          Panel.   By  default  this  is\n",
  672. "          performed   by   clicking  the\n",
  673. "          \"Apply\" button on the Settings\n",
  674. "          Panel.\n",
  675. "\n",
  676. "     settings-default()\n",
  677. "          Resets the values on the  Set-\n",
  678. "          tings  Panel  to  the  default\n",
  679. "          settings, but does not  affect\n",
  680. "          the current settings until the\n",
  681. "          settings-apply()   action   is\n",
  682. "          invoked.  By  default, this is\n",
  683. "          invoked  by  clicking  on  the\n",
  684. "          \"Default\"  button  on the Set-\n",
  685. "          tings Panel.\n",
  686. "\n",
  687. "     settings-done()\n",
  688. "          Pops down the Settings  Panel.\n",
  689. "          If there are changes that have\n",
  690. "          not be applied, then  a  popup\n",
  691. "          confirm box allows the user to\n",
  692. "          discard  the  settings  or  go\n",
  693. "          back   and   apply  them.   By\n",
  694. "          default, this  is  invoked  by\n",
  695. "          clicking  on the \"Done\" button\n",
  696. "          on the Settings Panel.\n",
  697. "\n",
  698. "     set-host(hostname)\n",
  699. "          This action  sets  the  Archie\n",
  700. "          host  as indicated on the Set-\n",
  701. "          tings  Panel,  but  does   not\n",
  702. "          affect  the  current  settings\n",
  703. "          until   the   settings-apply()\n",
  704. "          action is invoked.\n",
  705. "\n",
  706. "     set-host-now(hostname)\n",
  707. "          Sets the Archie  host  immedi-\n",
  708. "          ately   without   waiting  for\n",
  709. "          settings-apply().\n",
  710. "\n",
  711. "     set-search-type(type)\n",
  712. "          This  action  sets  the  sear-\n",
  713. "          chType  as  indicated  on  the\n",
  714. "          Settings Panel, but  does  not\n",
  715. "          affect  the  current  settings\n",
  716. "          until   the   settings-apply()\n",
  717. "          action is invoked.\n",
  718. "\n",
  719. "     set-search-type-now(type)\n",
  720. "          Sets  the  searchType  immedi-\n",
  721. "          ately   without   waiting  for\n",
  722. "          settings-apply().\n",
  723. "\n",
  724. "     set-sort-type(type)\n",
  725. "          This action sets the  sortType\n",
  726. "          as  indicated  on the Settings\n",
  727. "          Panel, but does not affect the\n",
  728. "          current   settings  until  the\n",
  729. "          settings-apply()   action   is\n",
  730. "          invoked.\n",
  731. "\n",
  732. "     set-sort-type-now(type)\n",
  733. "          Sets the sortType  immediately\n",
  734. "          without       waiting      for\n",
  735. "          settings-apply().\n",
  736. "\n",
  737. "     set-nice-level(level)\n",
  738. "          This action sets the niceLevel\n",
  739. "          as  indicated  on the Settings\n",
  740. "          Panel, but does not affect the\n",
  741. "          current   settings  until  the\n",
  742. "          settings-apply()   action   is\n",
  743. "          invoked.\n",
  744. "\n",
  745. "     set-nice-level-now(level)\n",
  746. "          Sets the niceLevel immediately\n",
  747. "          without       waiting      for\n",
  748. "          settings-apply().\n",
  749. "\n",
  750. "     settings-submenu()\n",
  751. "          This action procedure is docu-\n",
  752. "          mented here only for complete-\n",
  753. "          ness. It should only  be  used\n",
  754. "          for  BtnMotion  events  in the\n",
  755. "          settingsMenu    widget.     It\n",
  756. "          invokes     the    appropriate\n",
  757. "          pullright menu  for  the  Set-\n",
  758. "          tings  menu.  Believe  me, you\n",
  759. "          don't want to deal with this.\n",
  760. "\n",
  761. NULL,
  762. "  File actions\n",
  763. "     The operation of the File panel  is\n",
  764. "     hard-coded.  The  following actions\n",
  765. "     are used to pop it up however:\n",
  766. "\n",
  767. "     file-save()\n",
  768. "          Pops up the  File  panel,  and\n",
  769. "          resets  its values in prepara-\n",
  770. "          tion for saving the  database.\n",
  771. "          By  default this is invoked by\n",
  772. "          selecting  \"Save\"   from   the\n",
  773. "          \"File\"   menu   or  by  typing\n",
  774. "          \"Meta-S\"   in   any   non-Text\n",
  775. "          widget.\n",
  776. "\n",
  777. "     file-load()\n",
  778. "          Pops up the  File  panel,  and\n",
  779. "          resets  its values in prepara-\n",
  780. "          tion for reloading  the  data-\n",
  781. "          base.   By   default  this  is\n",
  782. "          invoked  by  selecting  \"Load\"\n",
  783. "          from  the  \"File\"  menu  or by\n",
  784. "          typing \"Meta-L\"  in  any  non-\n",
  785. "          Text widget.\n",
  786. "\n",
  787. "     file-write()\n",
  788. "          Pops up the  File  panel,  and\n",
  789. "          resets  its values in prepara-\n",
  790. "          tion for writing the  database\n",
  791. "          in  a  human-readable form. By\n",
  792. "          default  this  is  invoked  by\n",
  793. "          selecting   \"Write\"  from  the\n",
  794. "          \"File\"  menu  or   by   typing\n",
  795. "          \"Meta-W\"   in   any   non-Text\n",
  796. "          widget.\n",
  797. "\n",
  798. NULL,
  799. "  Help actions\n",
  800. "     help()\n",
  801. "          Pops up the Help panel.\n",
  802. "\n",
  803. "     help-done()\n",
  804. "          Dismisses the Help panel.\n",
  805. "\n",
  806. "     help-prev()\n",
  807. "     help-next()\n",
  808. "          Selects the previous  or  next\n",
  809. "          help topic, respectively.\n",
  810. "\n",
  811. "     help-up()\n",
  812. "     help-down()\n",
  813. "          Scrolls  the   text   of   the\n",
  814. "          current  help topic up or down\n",
  815. "          one page, respectively.   This\n",
  816. "          is an alternative to using the\n",
  817. "          Text widget's scrollbar.\n",
  818. "\n",
  819. NULL,
  820. "  Miscellaneous actions\n",
  821. "     ftp-trace-done()\n",
  822. "          Dismisses the FTP  Trace  win-\n",
  823. "          dow.   By   default,  this  is\n",
  824. "          invoked  by  clicking  on  the\n",
  825. "          \"Dismiss\"  button  in  the FTP\n",
  826. "          Trace window.\n",
  827. "\n",
  828. NULL,
  829. " Environment Variables\n",
  830. "     The following environment variables\n",
  831. "     are  used  by  Xarchie  if they are\n",
  832. "     defined:\n",
  833. "\n",
  834. "     TMPDIR    - Directory for \"Open\"-ed\n",
  835. "     files\n",
  836. "     XAPPLRESDIR - Directory  containing\n",
  837. "     Xarchie resource file\n",
  838. "     USER      - Username for  FTP  mail\n",
  839. "     address\n",
  840. "     HOSTNAME    - Hostname for FTP mail\n",
  841. "     address\n",
  842. "\n",
  843. NULL,
  844. " Files\n",
  845. "     Xarchie   -     default     Xarchie\n",
  846. "     resource file\n",
  847. "\n",
  848. NULL,
  849. " Diagnostics\n",
  850. "     Xarchie indicates  X  errors  using\n",
  851. "     the  ever-popular  default  X error\n",
  852. "     handler that prints a  message  and\n",
  853. "     dies, possibly leaving a large core\n",
  854. "     dump somewhere.\n",
  855. "\n",
  856. "     Errors due  to  incorrect  resource\n",
  857. "     specifications  cause an error mes-\n",
  858. "     sage on stderr,  but  do  not  kill\n",
  859. "     Xarchie (usually).\n",
  860. "\n",
  861. "     Errors due to incorrect  user  com-\n",
  862. "     mands  or problems with the connec-\n",
  863. "     tion to Archie result  in  a  popup\n",
  864. "     alert box being displayed. Clicking\n",
  865. "     on  the  indicated  button  in  the\n",
  866. "     alert  box will make it go away and\n",
  867. "     allow you to continue.\n",
  868. "\n",
  869. "     An incorrect value for the FTP mail\n",
  870. "     address  (as  determined  from  the\n",
  871. "     system information or from the USER\n",
  872. "     and  HOSTNAME variables) can result\n",
  873. "     in  access  being  denied  by  some\n",
  874. "     anonymous   FTP  servers.  See  the\n",
  875. "     description of  the  ftpMailAddress\n",
  876. "     non-widget  resource if your system\n",
  877. "     has problems with this.\n",
  878. "\n",
  879. "     If  you  continually   get   \"Can't\n",
  880. "     resolve  hostname\"  errors when you\n",
  881. "     try to query, then Xarchie was  not\n",
  882. "     built  properly. Contact your local\n",
  883. "     maintainer and  suggest  that  they\n",
  884. "     read  the  PROBLEMS file concerning\n",
  885. "     the \"resolv\" library.\n",
  886. "\n",
  887. "     If your queries  always  time  out,\n",
  888. "     then  there  are two possibilities.\n",
  889. "     First, and by far the most  likely,\n",
  890. "     is  that the server is simply busy.\n",
  891. "     Try again later. The  other  possi-\n",
  892. "     bility  is that UDP traffic is dis-\n",
  893. "     abled on your  system.  You  should\n",
  894. "     contact  your  local maintainer and\n",
  895. "     ask them to read the PROBLEMS files\n",
  896. "     concerning UDP traffic.\n",
  897. "\n",
  898. NULL,
  899. " Known Bugs\n",
  900. "     Crashes have been observed when the\n",
  901. "     Help  text is scrolled. There is no\n",
  902. "     fix, but see the PROBLEMS file  for\n",
  903. "     some discussion.\n",
  904. "\n",
  905. "     The   list   of   files   in    the\n",
  906. "     FileChooser  widgets  don't seem to\n",
  907. "     get  displayed  properly  all   the\n",
  908. "     time. That is, sometimes items seem\n",
  909. "     to be drawn on top of  each  other.\n",
  910. "     Refreshing    the    window   (eg.,\n",
  911. "     iconify/deiconify   or    scrolling\n",
  912. "     up/down)  clears  it up. This seems\n",
  913. "     like an Xaw bug, but  is  difficult\n",
  914. "     to repeat in isolation.\n",
  915. "\n",
  916. "     Your mileage may vary regarding the\n",
  917. "     Xarchie  icon  changing  to reflect\n",
  918. "     search and  transfer  status.  Your\n",
  919. "     window   manager  may  not  support\n",
  920. "     application-specified icons, or may\n",
  921. "     not  support  them changing dynami-\n",
  922. "     cally. See the  PROBLEMS  file  for\n",
  923. "     some discussion.\n",
  924. "\n",
  925. "     It is  not  currently  possible  to\n",
  926. "     abort   during  nameserver  lookup.\n",
  927. "     Perhaps some day I'll get motivated\n",
  928. "     to add asynchronous DNS code.\n",
  929. "\n",
  930. "     The browser has a  hard-coded  max-\n",
  931. "     imum depth, beyond which you cannot\n",
  932. "     expand directories. I  don't  think\n",
  933. "     it will be a major problem however.\n",
  934. "\n",
  935. NULL,
  936. " Reporting Bugs\n",
  937. "     If you  have  any  questions  about\n",
  938. "     Archie  itself,  write  to  archie-\n",
  939. "     l@cs.mcgill.ca. If you  have  ques-\n",
  940. "     tions   about  Prospero,  write  to\n",
  941. "     info-prospero@isi.edu.\n",
  942. "\n",
  943. "     If you have a problem, please  read\n",
  944. "     the  \"Known  Bugs\"  section  first,\n",
  945. "     then contact your local  maintainer\n",
  946. "     and/or  refer  to  the PROBLEMS and\n",
  947. "     INSTALL files in the  Xarchie  dis-\n",
  948. "     tribution.\n",
  949. "\n",
  950. "     When  reporting   bugs,   problems,\n",
  951. "     suggestions    or    contributions,\n",
  952. "     please be sure to send them to  the\n",
  953. "     right  place.  Issues  dealing with\n",
  954. "     the X interface should be  sent  to\n",
  955. "     George                     Ferguson\n",
  956. "     (ferguson@cs.rochester.edu). Please\n",
  957. "     be   sure   to  include  sufficient\n",
  958. "     details,  including  hardware,  OS,\n",
  959. "     compiler,  version  of  X,  and the\n",
  960. "     like.  No amount of detail  is  too\n",
  961. "     much.\n",
  962. "\n",
  963. "     Brendan Kehoe  (brendan@cygnus.com)\n",
  964. "     is  in charge of the archie clients\n",
  965. "     and  most  of  the  network   stuff\n",
  966. "     underlying  Xarchie,  Cliff  Neuman\n",
  967. "     (bcn@isi.edu) is in charge of Pros-\n",
  968. "     pero,  and  Alan  Emtage  and Peter\n",
  969. "     Deutsch ({bajan,peterd}@bunyip.com)\n",
  970. "     are in charge of the Archie project\n",
  971. "     itself.  Individual archie servers,\n",
  972. "     however,  are maintained locally at\n",
  973. "     each server site.\n",
  974. "\n",
  975. NULL,
  976. "AUTHOR\n",
  977. "     George  Ferguson,   University   of\n",
  978. "     Rochester,\n",
  979. "     (ferguson@cs.rochester.edu)\n",
  980. "\n",
  981. "     Original standalone archie  program\n",
  982. "     by Brendan Kehoe,\n",
  983. "     (brendan@cs.widener.edu).\n",
  984. "\n",
  985. "     Original Prospero archie program by\n",
  986. "     Clifford Neuman,\n",
  987. "     (bcn@isi.edu).\n",
  988. "\n",
  989. "     The archie service was conceived of\n",
  990. "     and implemented by Alan Emtage\n",
  991. "     (bajan@bunyip.com), Peter Deutsch\n",
  992. "     (peterd@bunyip.com) and Bill Heelan\n",
  993. "     (wheelan@bunyip.com).\n",
  994. "\n",
  995. SHAR_EOF
  996. echo 'File xarchie-2.0.6/help-text1.h is complete' &&
  997. chmod 0644 xarchie-2.0.6/help-text1.h ||
  998. echo 'restore of xarchie-2.0.6/help-text1.h failed'
  999. Wc_c="`wc -c < 'xarchie-2.0.6/help-text1.h'`"
  1000. test 87771 -eq "$Wc_c" ||
  1001.     echo 'xarchie-2.0.6/help-text1.h: original size 87771, current size' "$Wc_c"
  1002. rm -f _shar_wnt_.tmp
  1003. fi
  1004. # ============= xarchie-2.0.6/help-text1.sh ==============
  1005. if test -f 'xarchie-2.0.6/help-text1.sh' -a X"$1" != X"-c"; then
  1006.     echo 'x - skipping xarchie-2.0.6/help-text1.sh (File already exists)'
  1007.     rm -f _shar_wnt_.tmp
  1008. else
  1009. > _shar_wnt_.tmp
  1010. echo 'x - extracting xarchie-2.0.6/help-text1.sh (Text)'
  1011. sed 's/^X//' << 'SHAR_EOF' > 'xarchie-2.0.6/help-text1.sh' &&
  1012. #!/bin/sh
  1013. #
  1014. # help-text1.sh : Convert xarchie manpage into Help strings.
  1015. #
  1016. # To avoid long strings, the text is broken into one C string
  1017. # per line of formatted text.
  1018. #
  1019. # George Ferguson, ferguson@cs.rochester.edu, 23 Apr 1993.
  1020. #
  1021. # The commands below perform the following steps:
  1022. # - Indicate Help formatting
  1023. # - Send manpage...
  1024. # - ...through nroff
  1025. # - Remove underlining (sed has no nice way of specifying backspace)
  1026. # - Collapse blank lines
  1027. # - Escape "real" quotes then add string quotes
  1028. # - Put a NULL entry after each topic
  1029. X
  1030. echo '.nr XX 1' |\
  1031. cat - xarchie.man |\
  1032. nroff -man |\
  1033. ul -t dumb |\
  1034. uniq |\
  1035. sed -e 's/"/\\"/g' -e 's/^\(.*\)$/"\1\\n",/' |\
  1036. sed 's/^\("..[^ "]\)/NULL,\
  1037. \1/'
  1038. SHAR_EOF
  1039. chmod 0755 xarchie-2.0.6/help-text1.sh ||
  1040. echo 'restore of xarchie-2.0.6/help-text1.sh failed'
  1041. Wc_c="`wc -c < 'xarchie-2.0.6/help-text1.sh'`"
  1042. test 688 -eq "$Wc_c" ||
  1043.     echo 'xarchie-2.0.6/help-text1.sh: original size 688, current size' "$Wc_c"
  1044. rm -f _shar_wnt_.tmp
  1045. fi
  1046. # ============= xarchie-2.0.6/help-text2.h ==============
  1047. if test -f 'xarchie-2.0.6/help-text2.h' -a X"$1" != X"-c"; then
  1048.     echo 'x - skipping xarchie-2.0.6/help-text2.h (File already exists)'
  1049.     rm -f _shar_wnt_.tmp
  1050. else
  1051. > _shar_wnt_.tmp
  1052. echo 'x - extracting xarchie-2.0.6/help-text2.h (Text)'
  1053. sed 's/^X//' << 'SHAR_EOF' > 'xarchie-2.0.6/help-text2.h' &&
  1054. {
  1055. 2
  1056. ,"NAME"},{
  1057. 7
  1058. ,"SYNOPSIS"},{
  1059. 20
  1060. ,"DESCRIPTION"},{
  1061. 55
  1062. ,"USER'S GUIDE"},{
  1063. 63
  1064. ," What is Archie?"},{
  1065. 100
  1066. ," What is Xarchie?"},{
  1067. 143
  1068. ," The Xarchie Display"},{
  1069. 238
  1070. ," Basic Xarchie Usage"},{
  1071. 248
  1072. ,"  Querying"},{
  1073. 292
  1074. ,"  Aborting"},{
  1075. 310
  1076. ,"  Browsing"},{
  1077. 387
  1078. ,"  Expanding the Browser"},{
  1079. 420
  1080. ,"  Viewing Files"},{
  1081. 466
  1082. ,"  Retrieving Files"},{
  1083. 509
  1084. ,"  Saving, Loading, and Writing"},{
  1085. 572
  1086. ,"  Quitting Xarchie"},{
  1087. 578
  1088. ," Advanced Xarchie Usage"},{
  1089. 588
  1090. ,"  The Settings Panel"},{
  1091. 627
  1092. ,"  Archie host"},{
  1093. 660
  1094. ,"  Search mode"},{
  1095. 688
  1096. ,"  Sort mode"},{
  1097. 758
  1098. ,"  Nice level"},{
  1099. 790
  1100. ,"  Other Query Settings"},{
  1101. 822
  1102. ,"  FTP settings"},{
  1103. 893
  1104. ,"  Querying Hosts and Locations"},{
  1105. 940
  1106. ,"REFERENCE MANUAL"},{
  1107. 952
  1108. ," Command-line Options"},{
  1109. 1093
  1110. ," Non-widget Resources"},{
  1111. 1112
  1112. ,"  Query Resources"},{
  1113. 1267
  1114. ,"  Browser Resources"},{
  1115. 1301
  1116. ,"  FTP Resources"},{
  1117. 1366
  1118. ,"  Database Writing Resources"},{
  1119. 1379
  1120. ,"  Special Font Resources"},{
  1121. 1412
  1122. ,"  Other Resources"},{
  1123. 1454
  1124. ," Widget Hierarchies"},{
  1125. 1460
  1126. ,"  Main Xarchie Widgets"},{
  1127. 1562
  1128. ,"  Settings Panel Widgets"},{
  1129. 1601
  1130. ,"  File Panel Widgets"},{
  1131. 1636
  1132. ,"  View Window Widgets"},{
  1133. 1676
  1134. ,"  Help Panel Widgets"},{
  1135. 1707
  1136. ,"  About Panel Widgets"},{
  1137. 1725
  1138. ,"  Popup Widgets"},{
  1139. 1746
  1140. ,"  Menus"},{
  1141. 1812
  1142. ," Translation Actions"},{
  1143. 1828
  1144. ,"  Main panel actions"},{
  1145. 1896
  1146. ,"  Browser actions"},{
  1147. 1973
  1148. ,"  Settings actions"},{
  1149. 2082
  1150. ,"  File actions"},{
  1151. 2119
  1152. ,"  Help actions"},{
  1153. 2140
  1154. ,"  Miscellaneous actions"},{
  1155. 2149
  1156. ," Environment Variables"},{
  1157. 2164
  1158. ," Files"},{
  1159. 2169
  1160. ," Diagnostics"},{
  1161. 2219
  1162. ," Known Bugs"},{
  1163. 2256
  1164. ," Reporting Bugs"},{
  1165. 2296
  1166. ,"AUTHOR"},{
  1167. 000,NULL}
  1168. SHAR_EOF
  1169. chmod 0644 xarchie-2.0.6/help-text2.h ||
  1170. echo 'restore of xarchie-2.0.6/help-text2.h failed'
  1171. Wc_c="`wc -c < 'xarchie-2.0.6/help-text2.h'`"
  1172. test 1595 -eq "$Wc_c" ||
  1173.     echo 'xarchie-2.0.6/help-text2.h: original size 1595, current size' "$Wc_c"
  1174. rm -f _shar_wnt_.tmp
  1175. fi
  1176. # ============= xarchie-2.0.6/help-text2.sh ==============
  1177. if test -f 'xarchie-2.0.6/help-text2.sh' -a X"$1" != X"-c"; then
  1178.     echo 'x - skipping xarchie-2.0.6/help-text2.sh (File already exists)'
  1179.     rm -f _shar_wnt_.tmp
  1180. else
  1181. > _shar_wnt_.tmp
  1182. echo 'x - extracting xarchie-2.0.6/help-text2.sh (Text)'
  1183. sed 's/^X//' << 'SHAR_EOF' > 'xarchie-2.0.6/help-text2.sh' &&
  1184. #!/bin/sh
  1185. #
  1186. # help-text2.sh : Extract the headings by taking the non-indented initial
  1187. #    parts of the help text strings. The output is a set of initializers
  1188. #    for a { lineno,string } structure. Since we can only use the
  1189. #    sed = command to print the line number, and it prints it on a
  1190. #    line by itself, the output is kinda gross. Sorry.
  1191. #
  1192. # George Ferguson, ferguson@cs.rochester.edu, 23 Apr 1993.
  1193. #
  1194. X
  1195. echo '{'
  1196. sed -n -e '/^NULL,$/=' -e 's/^\("..[^ "].*\)\\n",$/,\1"},{/p'
  1197. echo '000,NULL}'
  1198. SHAR_EOF
  1199. chmod 0755 xarchie-2.0.6/help-text2.sh ||
  1200. echo 'restore of xarchie-2.0.6/help-text2.sh failed'
  1201. Wc_c="`wc -c < 'xarchie-2.0.6/help-text2.sh'`"
  1202. test 487 -eq "$Wc_c" ||
  1203.     echo 'xarchie-2.0.6/help-text2.sh: original size 487, current size' "$Wc_c"
  1204. rm -f _shar_wnt_.tmp
  1205. fi
  1206. # ============= xarchie-2.0.6/help.c ==============
  1207. if test -f 'xarchie-2.0.6/help.c' -a X"$1" != X"-c"; then
  1208.     echo 'x - skipping xarchie-2.0.6/help.c (File already exists)'
  1209.     rm -f _shar_wnt_.tmp
  1210. else
  1211. > _shar_wnt_.tmp
  1212. echo 'x - extracting xarchie-2.0.6/help.c (Text)'
  1213. sed 's/^X//' << 'SHAR_EOF' > 'xarchie-2.0.6/help.c' &&
  1214. /*
  1215. X * help.c : The Help browser
  1216. X *
  1217. X * George Ferguson, ferguson@cs.rochester.edu, 23 Apr 1993.
  1218. X * 13 May 1993: Change the way the version number is printed.
  1219. X */
  1220. X
  1221. #include <stdio.h>
  1222. #include <X11/Intrinsic.h>
  1223. #include <X11/Shell.h>
  1224. #include <X11/StringDefs.h>
  1225. #include <X11/Xaw/Form.h>
  1226. #include <X11/Xaw/Label.h>
  1227. #include <X11/Xaw/Viewport.h>
  1228. #include <X11/Xaw/List.h>
  1229. #include <X11/Xaw/AsciiText.h>
  1230. #include <X11/Xaw/Command.h>
  1231. #include <X11/Xaw/Cardinals.h>
  1232. #include "xarchie.h"
  1233. #include "xutil.h"
  1234. #include "patchlevel.h"
  1235. X
  1236. /*
  1237. X * Functions defined here
  1238. X */
  1239. void initHelpActions(),initHelpPanel();
  1240. void setHelpShellState();
  1241. X
  1242. static void popupHelpPanel();
  1243. static void initHelpWidgets();
  1244. static void helpCallback();
  1245. static void helpDoneAction(),helpPrevAction(),helpNextAction();
  1246. static void helpDownAction(),helpUpAction();
  1247. X
  1248. /*
  1249. X * Data defined here
  1250. X */
  1251. static Widget helpShell;
  1252. static Widget helpLabel,helpViewport,helpList,helpText;
  1253. static Widget helpScrollbar;
  1254. static Widget helpPrevButton,helpNextButton;
  1255. X
  1256. static Boolean isPoppedUp;
  1257. static int numHelpTopics;
  1258. X
  1259. static XtActionsRec actionTable[] = {
  1260. X    { "help",        popupHelpPanel },
  1261. X    { "help-done",    helpDoneAction },
  1262. X    { "help-prev",    helpPrevAction },
  1263. X    { "help-next",    helpNextAction },
  1264. X    { "help-down",    helpDownAction },
  1265. X    { "help-up",    helpUpAction },
  1266. };
  1267. X
  1268. static char *helpStrings[] = {
  1269. #include "help-text1.h"
  1270. X    NULL
  1271. };
  1272. X
  1273. static struct {
  1274. X    int lineno;
  1275. X    char *string;
  1276. } helpTopicInfo[] = {
  1277. #include "help-text2.h"
  1278. };
  1279. X
  1280. static char **helpTopics;
  1281. X
  1282. /*    -    -    -    -    -    -    -    -    */
  1283. X
  1284. void
  1285. initHelpActions()
  1286. {
  1287. X    XtAppAddActions(appContext,actionTable,XtNumber(actionTable));
  1288. }
  1289. X
  1290. void
  1291. initHelpPanel()
  1292. {
  1293. X    int i;
  1294. X
  1295. X    /* Last entry in help-text2.h is bogus */
  1296. X    numHelpTopics = XtNumber(helpTopicInfo)-1;
  1297. X    /* Make an array with just the strings for the List widget */
  1298. X    helpTopics = (char **)XtCalloc(numHelpTopics,sizeof(char*));
  1299. X    for (i=0; i < numHelpTopics; i++)
  1300. X    *(helpTopics+i) = helpTopicInfo[i].string;
  1301. }
  1302. X
  1303. static void
  1304. popupHelpPanel()
  1305. {
  1306. X    if (isPoppedUp) {
  1307. X    XRaiseWindow(display,XtWindow(helpShell));
  1308. X    return;
  1309. X    }
  1310. X    if (helpShell == NULL) {
  1311. X    initHelpWidgets();
  1312. X    }
  1313. X    isPoppedUp = True;
  1314. X    XtPopup(helpShell,XtGrabNone);
  1315. }
  1316. X
  1317. static void
  1318. initHelpWidgets()
  1319. {
  1320. X    Widget form;
  1321. X    char buf[64];
  1322. X
  1323. X    helpShell = XtCreatePopupShell("helpShell",topLevelShellWidgetClass,
  1324. X                   toplevel,NULL,0);
  1325. X    form = XtCreateManagedWidget("helpForm",formWidgetClass,
  1326. X                 helpShell,NULL,0);
  1327. X    helpLabel = XtCreateManagedWidget("helpLabel",labelWidgetClass,
  1328. X                      form,NULL,0);
  1329. #ifdef BETA
  1330. X    sprintf(buf,"This is help for Xarchie %.1fb%d",VERSION,PATCHLEVEL);
  1331. #else
  1332. X    sprintf(buf,"This is help for Xarchie %.1f.%d",VERSION,PATCHLEVEL);
  1333. #endif
  1334. X    setWidgetLabel(helpLabel,buf);
  1335. X    helpViewport = XtCreateManagedWidget("helpViewport",viewportWidgetClass,
  1336. X                     form,NULL,0);
  1337. X    helpList = XtCreateManagedWidget("helpList",listWidgetClass,
  1338. X                     helpViewport,NULL,0);
  1339. X    XawListChange(helpList,helpTopics,numHelpTopics,0,True);
  1340. X    XtAddCallback(helpList,XtNcallback,helpCallback,NULL);
  1341. X    helpText = XtCreateManagedWidget("helpText",asciiTextWidgetClass,
  1342. X                     form,NULL,0);
  1343. X    (void)XtCreateManagedWidget("helpDoneButton",commandWidgetClass,
  1344. X                form,NULL,0);
  1345. X    helpPrevButton = XtCreateManagedWidget("helpPrevButton",commandWidgetClass,
  1346. X                       form,NULL,0);
  1347. X    XtSetSensitive(helpPrevButton,False);
  1348. X    helpNextButton = XtCreateManagedWidget("helpNextButton",commandWidgetClass,
  1349. X                       form,NULL,0);
  1350. X    XtSetSensitive(helpNextButton,False);
  1351. X    (void)XtCreateManagedWidget("helpDownButton",commandWidgetClass,
  1352. X                form,NULL,0);
  1353. X    (void)XtCreateManagedWidget("helpUpButton",commandWidgetClass,
  1354. X                form,NULL,0);
  1355. X    XtRealizeWidget(helpShell);
  1356. X    (void)XSetWMProtocols(XtDisplay(helpShell),XtWindow(helpShell),
  1357. X              &WM_DELETE_WINDOW,1);
  1358. X    helpScrollbar = XtNameToWidget(helpViewport,"vertical");
  1359. }
  1360. X
  1361. void
  1362. setHelpShellState(state)
  1363. int state;
  1364. {
  1365. X    if (!isPoppedUp)
  1366. X    return;
  1367. X    switch (state) {
  1368. X    case NormalState:
  1369. X        XtMapWidget(helpShell);
  1370. X        break;
  1371. X    case IconicState:
  1372. X        XtUnmapWidget(helpShell);
  1373. X        break;
  1374. X    }
  1375. }
  1376. X
  1377. /*    -    -    -    -    -    -    -    -    */
  1378. /* Callback procedure */
  1379. X
  1380. /*ARGSUSED*/
  1381. static void
  1382. helpCallback(w,client_data,call_data)
  1383. Widget w;
  1384. XXtPointer client_data;  /* not used */
  1385. XXtPointer call_data;    /* returnStruct */
  1386. {
  1387. X    int topic = ((XawListReturnStruct*)call_data)->list_index;
  1388. X    XawTextPosition pos;
  1389. X    XawTextBlock block;
  1390. X    Arg args[2];
  1391. X    int i;
  1392. X
  1393. X    block.firstPos = 0;
  1394. X    block.format = FMT8BIT;
  1395. X    /* Reset helpText */
  1396. X    XtSetArg(args[0],XtNstring,"");
  1397. X    XtSetArg(args[1],XtNeditType,XawtextEdit);
  1398. X    XtSetValues(helpText,args,2);
  1399. X    pos = (XawTextPosition)0;
  1400. X    XawTextDisableRedisplay(helpText);
  1401. X    for (i=helpTopicInfo[topic].lineno; helpStrings[i] != NULL; i++) {
  1402. X    /* Add helpStrings[i] to helpText */
  1403. X    block.ptr = helpStrings[i];
  1404. X    block.length = strlen(helpStrings[i]);
  1405. X    XawTextReplace(helpText,pos,pos,&block);
  1406. X    pos += block.length;
  1407. X    }
  1408. X    XawTextEnableRedisplay(helpText);
  1409. X    XtSetArg(args[0],XtNeditType,XawtextRead);
  1410. X    XtSetValues(helpText,args,1);
  1411. X    XtSetSensitive(helpPrevButton,(topic != 0));
  1412. X    XtSetSensitive(helpNextButton,(topic != numHelpTopics-1));
  1413. }
  1414. X
  1415. X
  1416. /*    -    -    -    -    -    -    -    -    */
  1417. /* Action procedures */
  1418. X
  1419. #define ACTION_PROC(NAME)    void NAME(w,event,params,num_params) \
  1420. X                    Widget w; \
  1421. X                    XEvent *event; \
  1422. X                    String *params; \
  1423. X                    Cardinal *num_params;
  1424. X
  1425. /*ARGSUSED*/
  1426. static
  1427. ACTION_PROC(helpDoneAction)
  1428. {
  1429. X    XtPopdown(helpShell);
  1430. X    isPoppedUp = False;
  1431. }
  1432. X
  1433. /*ARGSUSED*/
  1434. static
  1435. ACTION_PROC(helpPrevAction)
  1436. {
  1437. X    XawListReturnStruct *ret = XawListShowCurrent(helpList);
  1438. X    float percent;
  1439. X
  1440. X    if (ret->list_index != XAW_LIST_NONE && ret->list_index != 0) {
  1441. X    ret->list_index -= 1;
  1442. X    /* Highlight the item */
  1443. X    XawListHighlight(helpList,ret->list_index);
  1444. X    /* Get the text displayed */
  1445. X    helpCallback(helpList,NULL,(XtPointer)ret);
  1446. X    /* Adjust the scrollbar so it's visible */
  1447. X    percent = (float)(ret->list_index-1) / (float)numHelpTopics;
  1448. X    XtCallCallbacks(helpScrollbar,"jumpProc",(XtPointer)&percent);
  1449. X    }
  1450. }
  1451. X
  1452. /*ARGSUSED*/
  1453. static
  1454. ACTION_PROC(helpNextAction)
  1455. {
  1456. X    XawListReturnStruct *ret = XawListShowCurrent(helpList);
  1457. X    float percent;
  1458. X
  1459. X    if (ret->list_index != XAW_LIST_NONE &&
  1460. X    ret->list_index != numHelpTopics-1) {
  1461. X    ret->list_index += 1;
  1462. X    XawListHighlight(helpList,ret->list_index);
  1463. X    helpCallback(helpList,NULL,(XtPointer)ret);
  1464. X    percent = (float)(ret->list_index-1) / (float)numHelpTopics;
  1465. X    XtCallCallbacks(helpScrollbar,"jumpProc",(XtPointer)&percent);
  1466. X    }
  1467. }
  1468. X
  1469. /*ARGSUSED*/
  1470. static
  1471. ACTION_PROC(helpDownAction)
  1472. {
  1473. X    XtCallActionProc(helpText,"next-page",event,NULL,0);
  1474. }
  1475. X
  1476. /*ARGSUSED*/
  1477. static
  1478. ACTION_PROC(helpUpAction)
  1479. {
  1480. X    XtCallActionProc(helpText,"previous-page",event,NULL,0);
  1481. }
  1482. X
  1483. SHAR_EOF
  1484. chmod 0644 xarchie-2.0.6/help.c ||
  1485. echo 'restore of xarchie-2.0.6/help.c failed'
  1486. Wc_c="`wc -c < 'xarchie-2.0.6/help.c'`"
  1487. test 6746 -eq "$Wc_c" ||
  1488.     echo 'xarchie-2.0.6/help.c: original size 6746, current size' "$Wc_c"
  1489. rm -f _shar_wnt_.tmp
  1490. fi
  1491. # ============= xarchie-2.0.6/help.h ==============
  1492. if test -f 'xarchie-2.0.6/help.h' -a X"$1" != X"-c"; then
  1493.     echo 'x - skipping xarchie-2.0.6/help.h (File already exists)'
  1494.     rm -f _shar_wnt_.tmp
  1495. else
  1496. > _shar_wnt_.tmp
  1497. echo 'x - extracting xarchie-2.0.6/help.h (Text)'
  1498. sed 's/^X//' << 'SHAR_EOF' > 'xarchie-2.0.6/help.h' &&
  1499. /*
  1500. X * help.h : Defs for the Help browser
  1501. X *
  1502. X * George Ferguson, ferguson@cs.rochester.edu, 23 Apr 1993.
  1503. X */
  1504. X
  1505. extern void initHelpActions();
  1506. extern void initHelpPanel();
  1507. extern void setHelpShellState();
  1508. SHAR_EOF
  1509. chmod 0644 xarchie-2.0.6/help.h ||
  1510. echo 'restore of xarchie-2.0.6/help.h failed'
  1511. Wc_c="`wc -c < 'xarchie-2.0.6/help.h'`"
  1512. test 202 -eq "$Wc_c" ||
  1513.     echo 'xarchie-2.0.6/help.h: original size 202, current size' "$Wc_c"
  1514. rm -f _shar_wnt_.tmp
  1515. fi
  1516. # ============= xarchie-2.0.6/hostname.c ==============
  1517. if test -f 'xarchie-2.0.6/hostname.c' -a X"$1" != X"-c"; then
  1518.     echo 'x - skipping xarchie-2.0.6/hostname.c (File already exists)'
  1519.     rm -f _shar_wnt_.tmp
  1520. else
  1521. > _shar_wnt_.tmp
  1522. echo 'x - extracting xarchie-2.0.6/hostname.c (Text)'
  1523. sed 's/^X//' << 'SHAR_EOF' > 'xarchie-2.0.6/hostname.c' &&
  1524. /*
  1525. X * hostname.c : Amamzing how hard it is to get this information...
  1526. X *
  1527. X * George Ferguson, ferguson@cs.rochester.edu, 23 Apr 1993.
  1528. X *
  1529. X * Many possibilities here. The current attempt is:
  1530. X * (a) Use HOSTNAME if set, since SO many people have strange systems
  1531. X * (b) else call gethostname(), complain if it fails
  1532. X * (c) if it succeeded, call gethostbyname() to "canonicalize"
  1533. X *     the name (many systems don't return a fully-qualified name,
  1534. X *     and getdomainname() is a loss.
  1535. X */
  1536. #include <stdio.h>
  1537. #include <netdb.h>
  1538. #ifndef MAXHOSTNAMELEN
  1539. #include <sys/param.h>
  1540. #endif
  1541. #include "sysdefs.h"
  1542. #include "stringdefs.h"
  1543. X
  1544. char *
  1545. GetHostname()
  1546. {
  1547. X    static char hostname[MAXHOSTNAMELEN];
  1548. X    struct hostent *host;
  1549. X
  1550. X    if (getenv("HOSTNAME") != NULL)
  1551. X    strcpy(hostname,getenv("HOSTNAME"));
  1552. SHAR_EOF
  1553. true || echo 'restore of xarchie-2.0.6/hostname.c failed'
  1554. fi
  1555. echo 'End of xarchie-2.0.6 part 11'
  1556. echo 'File xarchie-2.0.6/hostname.c is continued in part 12'
  1557. echo 12 > _shar_seq_.tmp
  1558. exit 0
  1559.  
  1560. exit 0 # Just in case...
  1561. -- 
  1562.   // chris@IMD.Sterling.COM       | Send comp.sources.x submissions to:
  1563. \X/  Amiga - The only way to fly! |    sources-x@imd.sterling.com
  1564.  "It's intuitively obvious to the |
  1565.   most casual observer..."        | GCS d+/-- p+ c++ l+ m+ s++/+ g+ w+ t+ r+ x+
  1566.