home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / x / volume18 / bibview / part16 < prev    next >
Encoding:
Text File  |  1992-08-26  |  50.6 KB  |  1,274 lines

  1. Newsgroups: comp.sources.x
  2. Path: uunet!cis.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!pacbell.com!mips!msi!dcmartin
  3. From: Armin Liebl <liebla@informatik.tu-muenchen.de>
  4. Subject: v18i114: bibview - BibTeX GUI, Part16/20
  5. Message-ID: <1992Aug27.161800.26024@msi.com>
  6. Originator: dcmartin@fascet
  7. Sender: dcmartin@msi.com (David C. Martin - Moderator)
  8. Organization: Molecular Simulations, Inc.
  9. References: <csx-18i099-bibview@uunet.UU.NET>
  10. Date: Thu, 27 Aug 1992 16:18:00 GMT
  11. Approved: dcmartin@msi.com
  12. Lines: 1260
  13.  
  14. Submitted-by: Armin Liebl <liebla@informatik.tu-muenchen.de>
  15. Posting-number: Volume 18, Issue 114
  16. Archive-name: bibview/part16
  17.  
  18. #!/bin/sh
  19. # this is part.16 (part 16 of a multipart archive)
  20. # do not concatenate these parts, unpack them in order with /bin/sh
  21. # file gui_card.c continued
  22. #
  23. if test ! -r _shar_seq_.tmp; then
  24.     echo 'Please unpack part 1 first!'
  25.     exit 1
  26. fi
  27. (read Scheck
  28.  if test "$Scheck" != 16; then
  29.     echo Please unpack part "$Scheck" next!
  30.     exit 1
  31.  else
  32.     exit 0
  33.  fi
  34. ) < _shar_seq_.tmp || exit 1
  35. if test ! -f _shar_wnt_.tmp; then
  36.     echo 'x - still skipping gui_card.c'
  37. else
  38. echo 'x - continuing file gui_card.c'
  39. sed 's/^X//' << 'SHAR_EOF' >> 'gui_card.c' &&
  40. X                 XtNstring, cdp->publisher, 
  41. X                 XtNfromVert, cwp->organization, 
  42. X                 XtNfromHoriz, cwp->publisherL, NULL);
  43. X   cwp->addressL =     XtVaCreateManagedWidget("addressLabel", 
  44. X                      labelWidgetClass, card, 
  45. X                  XtNfromVert, cwp->publisher, 
  46. X                  XtNleft, XtChainLeft, NULL);
  47. X   cwp->address =     XtVaCreateManagedWidget("address", 
  48. X                     asciiTextWidgetClass, card, 
  49. X                 XtNstring, cdp->address, 
  50. X                 XtNfromVert, cwp->publisher, 
  51. X                 XtNfromHoriz, cwp->addressL, NULL);
  52. X   cwp->pagesL =     XtVaCreateManagedWidget("pagesLabel", 
  53. X                      labelWidgetClass, card, 
  54. X                  XtNfromVert, cwp->address,
  55. X                  XtNleft, XtChainLeft, NULL);
  56. X   cwp->pages =     XtVaCreateManagedWidget("pages",
  57. X                     asciiTextWidgetClass, card, 
  58. X                 XtNstring, cdp->pages, 
  59. X                 XtNfromVert, cwp->address,
  60. X                 XtNfromHoriz, cwp->pagesL, NULL);
  61. X   cwp->monthL =     XtVaCreateManagedWidget("monthLabel", 
  62. X                     labelWidgetClass, card, 
  63. X                 XtNfromVert, cwp->pages,
  64. X                 XtNleft, XtChainLeft, NULL);
  65. X   cwp->month =     XtVaCreateManagedWidget("month", 
  66. X                    asciiTextWidgetClass, card, 
  67. X                XtNstring, cdp->month, 
  68. X                XtNfromVert, cwp->pages,
  69. X                XtNfromHoriz, cwp->monthL, NULL);
  70. X   cwp->yearL =     XtVaCreateManagedWidget("yearLabel", 
  71. X                    labelWidgetClass, card, 
  72. X                XtNfromVert, cwp->pages,
  73. X                XtNfromHoriz, cwp->month, NULL);
  74. X   cwp->year =         XtVaCreateManagedWidget("year", 
  75. X                   asciiTextWidgetClass, card, 
  76. X              XtNborderWidth, 2,
  77. X               XtNstring, cdp->year, 
  78. X               XtNfromVert, cwp->pages,
  79. X               XtNfromHoriz, cwp->yearL, NULL);
  80. X   cwp->noteL =     XtVaCreateManagedWidget("noteLabel", 
  81. X                      labelWidgetClass, card, 
  82. X                  XtNfromVert, cwp->month,
  83. X                 XtNleft, XtChainLeft, NULL);
  84. X   cwp->note =         XtVaCreateManagedWidget("note",
  85. X                     asciiTextWidgetClass, card, 
  86. X                 XtNstring, cdp->note, 
  87. X                 XtNfromVert, cwp->month,
  88. X                 XtNfromHoriz, cwp->noteL, NULL);
  89. }
  90. X
  91. /*********************************************************************/
  92. /* CreateManualWidgets:                                              */
  93. /*    Creates widgets for card type manual                           */
  94. /*********************************************************************/
  95. static void
  96. CreateManualWidgets (BibPtr bp, CardPtr cp)
  97. {
  98. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  99. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  100. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  101. Widget card = cp->cw->cardFlds;        /* parent widget */
  102. X
  103. X   cdp->annoteDisplayed = FALSE;
  104. X   cdp->annoteChanged = FALSE;
  105. X   cwp->titleL =     XtVaCreateManagedWidget("titleLabel", 
  106. X                     labelWidgetClass, card, 
  107. X                  XtNfromVert, cwp->category, 
  108. X                 XtNleft, XtChainLeft, NULL);
  109. X   cwp->title =     XtVaCreateManagedWidget("title", 
  110. X                    asciiTextWidgetClass, card, 
  111. X              XtNborderWidth, 2,
  112. X                XtNstring, cdp->title, 
  113. X                  XtNfromVert, cwp->category, 
  114. X                XtNfromHoriz, cwp->titleL, NULL);
  115. X   cwp->authorL =     XtVaCreateManagedWidget("authorLabel", 
  116. X                     labelWidgetClass, card, 
  117. X                  XtNfromVert, cwp->title, 
  118. X                 XtNleft, XtChainLeft, NULL);
  119. X   cwp->author =     XtVaCreateManagedWidget("author", 
  120. X                    asciiTextWidgetClass, card, 
  121. X                XtNstring, cdp->author, 
  122. X                  XtNfromVert, cwp->title, 
  123. X                XtNfromHoriz, cwp->authorL, NULL);
  124. X   cwp->organizationL = XtVaCreateManagedWidget("organizationLabel", 
  125. X                     labelWidgetClass, card, 
  126. X                  XtNfromVert, cwp->author, 
  127. X                 XtNleft, XtChainLeft, NULL);
  128. X   cwp->organization =     XtVaCreateManagedWidget("organization", 
  129. X                    asciiTextWidgetClass, card, 
  130. X                XtNstring, cdp->organization, 
  131. X                  XtNfromVert, cwp->author, 
  132. X                XtNfromHoriz, cwp->organizationL, NULL);
  133. X   cwp->addressL =     XtVaCreateManagedWidget("addressLabel", 
  134. X                      labelWidgetClass, card, 
  135. X                  XtNfromVert, cwp->organization, 
  136. X                  XtNleft, XtChainLeft, NULL);
  137. X   cwp->address =     XtVaCreateManagedWidget("address", 
  138. X                     asciiTextWidgetClass, card, 
  139. X                 XtNstring, cdp->address, 
  140. X                 XtNfromVert, cwp->organization, 
  141. X                 XtNfromHoriz, cwp->addressL, NULL);
  142. X   cwp->editionL =     XtVaCreateManagedWidget("editionLabel", 
  143. X                      labelWidgetClass, card, 
  144. X                  XtNfromVert, cwp->address, 
  145. X                  XtNleft, XtChainLeft, NULL);
  146. X   cwp->edition =     XtVaCreateManagedWidget("edition", 
  147. X                     asciiTextWidgetClass, card, 
  148. X                 XtNstring, cdp->edition, 
  149. X                 XtNfromVert, cwp->address, 
  150. X                 XtNfromHoriz, cwp->editionL, NULL);
  151. X   cwp->monthL =     XtVaCreateManagedWidget("monthLabel", 
  152. X                     labelWidgetClass, card, 
  153. X                 XtNfromVert, cwp->edition,
  154. X                 XtNleft, XtChainLeft, NULL);
  155. X   cwp->month =     XtVaCreateManagedWidget("month", 
  156. X                    asciiTextWidgetClass, card, 
  157. X                XtNstring, cdp->month, 
  158. X                XtNfromVert, cwp->edition,
  159. X                XtNfromHoriz, cwp->monthL, NULL);
  160. X   cwp->yearL =     XtVaCreateManagedWidget("yearLabel", 
  161. X                    labelWidgetClass, card, 
  162. X                XtNfromVert, cwp->edition,
  163. X                XtNfromHoriz, cwp->month, NULL);
  164. X   cwp->year =         XtVaCreateManagedWidget("year", 
  165. X                   asciiTextWidgetClass, card, 
  166. X               XtNstring, cdp->year, 
  167. X               XtNfromVert, cwp->edition,
  168. X               XtNfromHoriz, cwp->yearL, NULL);
  169. X   cwp->noteL =     XtVaCreateManagedWidget("noteLabel", 
  170. X                      labelWidgetClass, card, 
  171. X                  XtNfromVert, cwp->month,
  172. X                 XtNleft, XtChainLeft, NULL);
  173. X   cwp->note =         XtVaCreateManagedWidget("note",
  174. X                     asciiTextWidgetClass, card, 
  175. X                 XtNstring, cdp->note, 
  176. X                 XtNfromVert, cwp->month,
  177. X                 XtNfromHoriz, cwp->noteL, NULL);
  178. X
  179. }
  180. X
  181. /*********************************************************************/
  182. /* CreateMasterthesisWidgets:                                        */
  183. /*    Creates widgets for card type mastersthesis                    */
  184. /*********************************************************************/
  185. static void
  186. CreateMasterthesisWidgets (BibPtr bp, CardPtr cp)
  187. {
  188. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  189. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  190. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  191. Widget card = cp->cw->cardFlds;        /* parent widget */
  192. X
  193. X   cdp->annoteDisplayed = FALSE;
  194. X   cdp->annoteChanged = FALSE;
  195. X   cwp->titleL =     XtVaCreateManagedWidget("titleLabel", 
  196. X                     labelWidgetClass, card, 
  197. X                  XtNfromVert, cwp->category, 
  198. X                 XtNleft, XtChainLeft, NULL);
  199. X   cwp->title =     XtVaCreateManagedWidget("title", 
  200. X                    asciiTextWidgetClass, card, 
  201. X              XtNborderWidth, 2,
  202. X                XtNstring, cdp->title, 
  203. X                  XtNfromVert, cwp->category, 
  204. X                XtNfromHoriz, cwp->titleL, NULL);
  205. X   cwp->authorL =     XtVaCreateManagedWidget("authorLabel", 
  206. X                     labelWidgetClass, card, 
  207. X                  XtNfromVert, cwp->title, 
  208. X                 XtNleft, XtChainLeft, NULL);
  209. X   cwp->author =     XtVaCreateManagedWidget("author", 
  210. X                    asciiTextWidgetClass, card, 
  211. X              XtNborderWidth, 2,
  212. X                XtNstring, cdp->author, 
  213. X                  XtNfromVert, cwp->title, 
  214. X                XtNfromHoriz, cwp->authorL, NULL);
  215. X   cwp->schoolL =     XtVaCreateManagedWidget("schoolLabel", 
  216. X                     labelWidgetClass, card, 
  217. X                  XtNfromVert, cwp->author, 
  218. X                 XtNleft, XtChainLeft, NULL);
  219. X   cwp->school =     XtVaCreateManagedWidget("school", 
  220. X                    asciiTextWidgetClass, card, 
  221. X              XtNborderWidth, 2,
  222. X                XtNstring, cdp->school, 
  223. X                  XtNfromVert, cwp->author, 
  224. X                XtNfromHoriz, cwp->schoolL, NULL);
  225. X   cwp->addressL =     XtVaCreateManagedWidget("addressLabel", 
  226. X                      labelWidgetClass, card, 
  227. X                  XtNfromVert, cwp->school, 
  228. X                  XtNleft, XtChainLeft, NULL);
  229. X   cwp->address =     XtVaCreateManagedWidget("address", 
  230. X                     asciiTextWidgetClass, card, 
  231. X                 XtNstring, cdp->address, 
  232. X                 XtNfromVert, cwp->school, 
  233. X                 XtNfromHoriz, cwp->addressL, NULL);
  234. X   cwp->monthL =     XtVaCreateManagedWidget("monthLabel", 
  235. X                     labelWidgetClass, card, 
  236. X                 XtNfromVert, cwp->address,
  237. X                 XtNleft, XtChainLeft, NULL);
  238. X   cwp->month =     XtVaCreateManagedWidget("month", 
  239. X                    asciiTextWidgetClass, card, 
  240. X                XtNstring, cdp->month, 
  241. X                XtNfromVert, cwp->address,
  242. X                XtNfromHoriz, cwp->monthL, NULL);
  243. X   cwp->yearL =     XtVaCreateManagedWidget("yearLabel", 
  244. X                    labelWidgetClass, card, 
  245. X                XtNfromVert, cwp->address,
  246. X                XtNfromHoriz, cwp->month, NULL);
  247. X   cwp->year =         XtVaCreateManagedWidget("year", 
  248. X                   asciiTextWidgetClass, card, 
  249. X              XtNborderWidth, 2,
  250. X               XtNstring, cdp->year, 
  251. X               XtNfromVert, cwp->address,
  252. X               XtNfromHoriz, cwp->yearL, NULL);
  253. X   cwp->noteL =     XtVaCreateManagedWidget("noteLabel", 
  254. X                      labelWidgetClass, card, 
  255. X                  XtNfromVert, cwp->month,
  256. X                 XtNleft, XtChainLeft, NULL);
  257. X   cwp->note =         XtVaCreateManagedWidget("note",
  258. X                     asciiTextWidgetClass, card, 
  259. X                 XtNstring, cdp->note, 
  260. X                 XtNfromVert, cwp->month,
  261. X                 XtNfromHoriz, cwp->noteL, NULL);
  262. }
  263. X
  264. /*********************************************************************/
  265. /* CreateMiscWidgets:                                                */
  266. /*    Creates widgets for card type misc                             */
  267. /*********************************************************************/
  268. static void
  269. CreateMiscWidgets (BibPtr bp, CardPtr cp)
  270. {
  271. X CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  272. X CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  273. X CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  274. X Widget card = cp->cw->cardFlds;        /* parent widget */
  275. X
  276. X   cdp->annoteDisplayed = FALSE;
  277. X   cdp->annoteChanged = FALSE;
  278. X   cwp->titleL =     XtVaCreateManagedWidget("titleLabel", 
  279. X                     labelWidgetClass, card, 
  280. X                  XtNfromVert, cwp->category, 
  281. X                 XtNleft, XtChainLeft, NULL);
  282. X   cwp->title =     XtVaCreateManagedWidget("title", 
  283. X                    asciiTextWidgetClass, card, 
  284. X                XtNstring, cdp->title, 
  285. X                  XtNfromVert, cwp->category, 
  286. X                XtNfromHoriz, cwp->titleL, NULL);
  287. X   cwp->authorL =     XtVaCreateManagedWidget("authorLabel", 
  288. X                      labelWidgetClass, card, 
  289. X                  XtNfromVert, cwp->title, 
  290. X                  XtNleft, XtChainLeft, NULL);
  291. X   cwp->author =     XtVaCreateManagedWidget("author", 
  292. X                     asciiTextWidgetClass, card, 
  293. X                 XtNstring, cdp->author, 
  294. X                 XtNfromVert, cwp->title, 
  295. X                 XtNfromHoriz, cwp->authorL, NULL);
  296. X   cwp->howpublishedL =    XtVaCreateManagedWidget("howpublishedLabel", 
  297. X                      labelWidgetClass, card, 
  298. X                  XtNfromVert, cwp->author, 
  299. X                  XtNleft, XtChainLeft, NULL);
  300. X   cwp->howpublished =     XtVaCreateManagedWidget("howpublished", 
  301. X                     asciiTextWidgetClass, card, 
  302. X                 XtNstring, cdp->howpublished, 
  303. X                 XtNfromVert, cwp->author, 
  304. X                 XtNfromHoriz, cwp->howpublishedL, NULL);
  305. X   cwp->monthL =     XtVaCreateManagedWidget("monthLabel", 
  306. X                     labelWidgetClass, card, 
  307. X                 XtNfromVert, cwp->howpublished,
  308. X                 XtNleft, XtChainLeft, NULL);
  309. X   cwp->month =     XtVaCreateManagedWidget("month", 
  310. X                    asciiTextWidgetClass, card, 
  311. X                XtNstring, cdp->month, 
  312. X                XtNfromVert, cwp->howpublished,
  313. X                XtNfromHoriz, cwp->monthL, NULL);
  314. X   cwp->yearL =     XtVaCreateManagedWidget("yearLabel", 
  315. X                    labelWidgetClass, card, 
  316. X                XtNfromVert, cwp->howpublished,
  317. X                XtNfromHoriz, cwp->month, NULL);
  318. X   cwp->year =         XtVaCreateManagedWidget("year", 
  319. X                   asciiTextWidgetClass, card, 
  320. X               XtNstring, cdp->year, 
  321. X               XtNfromVert, cwp->howpublished,
  322. X               XtNfromHoriz, cwp->yearL, NULL);
  323. X   cwp->noteL =     XtVaCreateManagedWidget("noteLabel", 
  324. X                      labelWidgetClass, card, 
  325. X                  XtNfromVert, cwp->month,
  326. X                 XtNleft, XtChainLeft, NULL);
  327. X   cwp->note =         XtVaCreateManagedWidget("note",
  328. X                     asciiTextWidgetClass, card, 
  329. X                 XtNstring, cdp->note, 
  330. X                 XtNfromVert, cwp->month,
  331. X                 XtNfromHoriz, cwp->noteL, NULL);
  332. }
  333. X
  334. X
  335. /*********************************************************************/
  336. /* CreatePhdthesisWidgets:                                           */
  337. /*    Creates widgets for card type phdthesis                        */
  338. /*********************************************************************/
  339. static void
  340. CreatePhdthesisWidgets (BibPtr bp, CardPtr cp)
  341. {
  342. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  343. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  344. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  345. Widget card = cp->cw->cardFlds;        /* parent widget */
  346. X
  347. X   cdp->annoteDisplayed = FALSE;
  348. X   cdp->annoteChanged = FALSE;
  349. X   cwp->titleL =     XtVaCreateManagedWidget("titleLabel", 
  350. X                     labelWidgetClass, card, 
  351. X                  XtNfromVert, cwp->category, 
  352. X                 XtNleft, XtChainLeft, NULL);
  353. X   cwp->title =     XtVaCreateManagedWidget("title", 
  354. X                    asciiTextWidgetClass, card, 
  355. X              XtNborderWidth, 2,
  356. X                XtNstring, cdp->title, 
  357. X                  XtNfromVert, cwp->category, 
  358. X                XtNfromHoriz, cwp->titleL, NULL);
  359. X   cwp->authorL =     XtVaCreateManagedWidget("authorLabel", 
  360. X                     labelWidgetClass, card, 
  361. X                  XtNfromVert, cwp->title, 
  362. X                 XtNleft, XtChainLeft, NULL);
  363. X   cwp->author =     XtVaCreateManagedWidget("author", 
  364. X                    asciiTextWidgetClass, card, 
  365. X              XtNborderWidth, 2,
  366. X                XtNstring, cdp->author, 
  367. X                  XtNfromVert, cwp->title, 
  368. X                XtNfromHoriz, cwp->authorL, NULL);
  369. X   cwp->schoolL =     XtVaCreateManagedWidget("schoolLabel", 
  370. X                     labelWidgetClass, card, 
  371. X                  XtNfromVert, cwp->author, 
  372. X                 XtNleft, XtChainLeft, NULL);
  373. X   cwp->school =     XtVaCreateManagedWidget("school", 
  374. X                    asciiTextWidgetClass, card, 
  375. X              XtNborderWidth, 2,
  376. X                XtNstring, cdp->school, 
  377. X                  XtNfromVert, cwp->author, 
  378. X                XtNfromHoriz, cwp->schoolL, NULL);
  379. X   cwp->addressL =     XtVaCreateManagedWidget("addressLabel", 
  380. X                      labelWidgetClass, card, 
  381. X                  XtNfromVert, cwp->school, 
  382. X                  XtNleft, XtChainLeft, NULL);
  383. X   cwp->address =     XtVaCreateManagedWidget("address", 
  384. X                     asciiTextWidgetClass, card, 
  385. X                 XtNstring, cdp->address, 
  386. X                 XtNfromVert, cwp->school, 
  387. X                 XtNfromHoriz, cwp->addressL, NULL);
  388. X   cwp->monthL =     XtVaCreateManagedWidget("monthLabel", 
  389. X                     labelWidgetClass, card, 
  390. X                 XtNfromVert, cwp->address,
  391. X                 XtNleft, XtChainLeft, NULL);
  392. X   cwp->month =     XtVaCreateManagedWidget("month", 
  393. X                    asciiTextWidgetClass, card, 
  394. X                XtNstring, cdp->month, 
  395. X                XtNfromVert, cwp->address,
  396. X                XtNfromHoriz, cwp->monthL, NULL);
  397. X   cwp->yearL =     XtVaCreateManagedWidget("yearLabel", 
  398. X                    labelWidgetClass, card, 
  399. X                XtNfromVert, cwp->address,
  400. X                XtNfromHoriz, cwp->month, NULL);
  401. X   cwp->year =         XtVaCreateManagedWidget("year", 
  402. X                   asciiTextWidgetClass, card, 
  403. X              XtNborderWidth, 2,
  404. X               XtNstring, cdp->year, 
  405. X               XtNfromVert, cwp->address,
  406. X               XtNfromHoriz, cwp->yearL, NULL);
  407. X   cwp->noteL =     XtVaCreateManagedWidget("noteLabel", 
  408. X                      labelWidgetClass, card, 
  409. X                  XtNfromVert, cwp->month,
  410. X                 XtNleft, XtChainLeft, NULL);
  411. X   cwp->note =         XtVaCreateManagedWidget("note",
  412. X                     asciiTextWidgetClass, card, 
  413. X                 XtNstring, cdp->note, 
  414. X                 XtNfromVert, cwp->month,
  415. X                 XtNfromHoriz, cwp->noteL, NULL);
  416. }
  417. X
  418. /*********************************************************************/
  419. /* CreateProceedingsWidgets:                                         */
  420. /*    Creates widgets for card type proceedings                      */
  421. /*********************************************************************/
  422. static void
  423. CreateProceedingsWidgets (BibPtr bp, CardPtr cp)
  424. {
  425. X CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  426. X CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  427. X CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  428. X Widget card = cp->cw->cardFlds;        /* parent widget */
  429. X
  430. X   cdp->annoteDisplayed = FALSE;
  431. X   cdp->annoteChanged = FALSE;
  432. X   cwp->titleL =     XtVaCreateManagedWidget("titleLabel", 
  433. X                     labelWidgetClass, card, 
  434. X                  XtNfromVert, cwp->category, 
  435. X                 XtNleft, XtChainLeft, NULL);
  436. X   cwp->title =     XtVaCreateManagedWidget("title", 
  437. X                    asciiTextWidgetClass, card, 
  438. X              XtNborderWidth, 2,
  439. X                XtNstring, cdp->title, 
  440. X                  XtNfromVert, cwp->category, 
  441. X                XtNfromHoriz, cwp->titleL, NULL);
  442. X   cwp->editorL =     XtVaCreateManagedWidget("editorLabel", 
  443. X                      labelWidgetClass, card, 
  444. X                  XtNfromVert, cwp->title, 
  445. X                  XtNleft, XtChainLeft, NULL);
  446. X   cwp->editor =     XtVaCreateManagedWidget("editor", 
  447. X                     asciiTextWidgetClass, card, 
  448. X                 XtNstring, cdp->editor, 
  449. X                 XtNfromVert, cwp->title, 
  450. X                 XtNfromHoriz, cwp->editorL, NULL);
  451. X   cwp->organizationL =    XtVaCreateManagedWidget("organizationLabel", 
  452. X                      labelWidgetClass, card, 
  453. X                  XtNfromVert, cwp->editor, 
  454. X                  XtNleft, XtChainLeft, NULL);
  455. X   cwp->organization =     XtVaCreateManagedWidget("organization", 
  456. X                     asciiTextWidgetClass, card, 
  457. X                 XtNstring, cdp->organization, 
  458. X                 XtNfromVert, cwp->editor, 
  459. X                 XtNfromHoriz, cwp->organizationL, NULL);
  460. X   cwp->publisherL =     XtVaCreateManagedWidget("publisherLabel", 
  461. X                      labelWidgetClass, card, 
  462. X                  XtNfromVert, cwp->organization, 
  463. X                  XtNleft, XtChainLeft, NULL);
  464. X   cwp->publisher =     XtVaCreateManagedWidget("publisher", 
  465. X                     asciiTextWidgetClass, card, 
  466. X                 XtNstring, cdp->publisher, 
  467. X                 XtNfromVert, cwp->organization, 
  468. X                 XtNfromHoriz, cwp->publisherL, NULL);
  469. X   cwp->addressL =     XtVaCreateManagedWidget("addressLabel", 
  470. X                      labelWidgetClass, card, 
  471. X                  XtNfromVert, cwp->publisher, 
  472. X                  XtNleft, XtChainLeft, NULL);
  473. X   cwp->address =     XtVaCreateManagedWidget("address", 
  474. X                     asciiTextWidgetClass, card, 
  475. X                 XtNstring, cdp->address, 
  476. X                 XtNfromVert, cwp->publisher, 
  477. X                 XtNfromHoriz, cwp->addressL, NULL);
  478. X   cwp->pagesL =     XtVaCreateManagedWidget("pagesLabel", 
  479. X                      labelWidgetClass, card, 
  480. X                  XtNfromVert, cwp->address,
  481. X                  XtNleft, XtChainLeft, NULL);
  482. X   cwp->pages =     XtVaCreateManagedWidget("pages",
  483. X                     asciiTextWidgetClass, card, 
  484. X                 XtNstring, cdp->pages, 
  485. X                 XtNfromVert, cwp->address,
  486. X                 XtNfromHoriz, cwp->pagesL, NULL);
  487. X   cwp->monthL =     XtVaCreateManagedWidget("monthLabel", 
  488. X                     labelWidgetClass, card, 
  489. X                 XtNfromVert, cwp->pages,
  490. X                 XtNleft, XtChainLeft, NULL);
  491. X   cwp->month =     XtVaCreateManagedWidget("month", 
  492. X                    asciiTextWidgetClass, card, 
  493. X                XtNstring, cdp->month, 
  494. X                XtNfromVert, cwp->pages,
  495. X                XtNfromHoriz, cwp->monthL, NULL);
  496. X   cwp->yearL =     XtVaCreateManagedWidget("yearLabel", 
  497. X                    labelWidgetClass, card, 
  498. X                XtNfromVert, cwp->pages,
  499. X                XtNfromHoriz, cwp->month, NULL);
  500. X   cwp->year =         XtVaCreateManagedWidget("year", 
  501. X                   asciiTextWidgetClass, card, 
  502. X              XtNborderWidth, 2,
  503. X               XtNstring, cdp->year, 
  504. X               XtNfromVert, cwp->pages,
  505. X               XtNfromHoriz, cwp->yearL, NULL);
  506. X   cwp->noteL =     XtVaCreateManagedWidget("noteLabel", 
  507. X                      labelWidgetClass, card, 
  508. X                  XtNfromVert, cwp->month,
  509. X                 XtNleft, XtChainLeft, NULL);
  510. X   cwp->note =         XtVaCreateManagedWidget("note",
  511. X                     asciiTextWidgetClass, card, 
  512. X                 XtNstring, cdp->note, 
  513. X                 XtNfromVert, cwp->month,
  514. X                 XtNfromHoriz, cwp->noteL, NULL);
  515. }
  516. X
  517. /*********************************************************************/
  518. /* CreateTechreportWidgets:                                          */
  519. /*    Creates widgets for card type techreport                       */
  520. /*********************************************************************/
  521. static void
  522. CreateTechreportWidgets (BibPtr bp, CardPtr cp)
  523. {
  524. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  525. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  526. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  527. Widget card = cp->cw->cardFlds;        /* parent widget */
  528. X
  529. X   cdp->annoteDisplayed = FALSE;
  530. X   cdp->annoteChanged = FALSE;
  531. X   cwp->titleL =     XtVaCreateManagedWidget("titleLabel", 
  532. X                     labelWidgetClass, card, 
  533. X                  XtNfromVert, cwp->category, 
  534. X                 XtNleft, XtChainLeft, NULL);
  535. X   cwp->title =     XtVaCreateManagedWidget("title", 
  536. X                    asciiTextWidgetClass, card, 
  537. X              XtNborderWidth, 2,
  538. X                XtNstring, cdp->title, 
  539. X                  XtNfromVert, cwp->category, 
  540. X                XtNfromHoriz, cwp->titleL, NULL);
  541. X   cwp->authorL =     XtVaCreateManagedWidget("authorLabel", 
  542. X                     labelWidgetClass, card, 
  543. X                  XtNfromVert, cwp->title, 
  544. X                 XtNleft, XtChainLeft, NULL);
  545. X   cwp->author =     XtVaCreateManagedWidget("author", 
  546. X                    asciiTextWidgetClass, card, 
  547. X              XtNborderWidth, 2,
  548. X                XtNstring, cdp->author, 
  549. X                  XtNfromVert, cwp->title, 
  550. X                XtNfromHoriz, cwp->authorL, NULL);
  551. X   cwp->institutionL =     XtVaCreateManagedWidget("institutionLabel", 
  552. X                     labelWidgetClass, card, 
  553. X                  XtNfromVert, cwp->author, 
  554. X                 XtNleft, XtChainLeft, NULL);
  555. X   cwp->institution =     XtVaCreateManagedWidget("institution", 
  556. X                    asciiTextWidgetClass, card, 
  557. X              XtNborderWidth, 2,
  558. X                XtNstring, cdp->institution, 
  559. X                  XtNfromVert, cwp->author, 
  560. X                XtNfromHoriz, cwp->institutionL, NULL);
  561. X   cwp->typeL =     XtVaCreateManagedWidget("typeLabel", 
  562. X                      labelWidgetClass, card, 
  563. X                  XtNfromVert, cwp->institution, 
  564. X                  XtNleft, XtChainLeft, NULL);
  565. X   cwp->type =      XtVaCreateManagedWidget("type", 
  566. X                     asciiTextWidgetClass, card, 
  567. X                 XtNstring, cdp->type, 
  568. X                 XtNfromVert, cwp->institution, 
  569. X                 XtNfromHoriz, cwp->typeL, NULL);
  570. X   cwp->numberL =     XtVaCreateManagedWidget("numberLabel", 
  571. X                      labelWidgetClass, card, 
  572. X                  XtNfromVert, cwp->type, 
  573. X                  XtNleft, XtChainLeft, NULL);
  574. X   cwp->number =      XtVaCreateManagedWidget("number", 
  575. X                     asciiTextWidgetClass, card, 
  576. X                 XtNstring, cdp->number, 
  577. X                 XtNfromVert, cwp->type, 
  578. X                 XtNfromHoriz, cwp->numberL, NULL);
  579. X   cwp->addressL =     XtVaCreateManagedWidget("addressLabel", 
  580. X                      labelWidgetClass, card, 
  581. X                  XtNfromVert, cwp->number, 
  582. X                  XtNleft, XtChainLeft, NULL);
  583. X   cwp->address =     XtVaCreateManagedWidget("address", 
  584. X                     asciiTextWidgetClass, card, 
  585. X                 XtNstring, cdp->address, 
  586. X                 XtNfromVert, cwp->number, 
  587. X                 XtNfromHoriz, cwp->addressL, NULL);
  588. X   cwp->monthL =     XtVaCreateManagedWidget("monthLabel", 
  589. X                     labelWidgetClass, card, 
  590. X                 XtNfromVert, cwp->address,
  591. X                 XtNleft, XtChainLeft, NULL);
  592. X   cwp->month =     XtVaCreateManagedWidget("month", 
  593. X                    asciiTextWidgetClass, card, 
  594. X                XtNstring, cdp->month, 
  595. X                XtNfromVert, cwp->address,
  596. X                XtNfromHoriz, cwp->monthL, NULL);
  597. X   cwp->yearL =     XtVaCreateManagedWidget("yearLabel", 
  598. X                    labelWidgetClass, card, 
  599. X                XtNfromVert, cwp->address,
  600. X                XtNfromHoriz, cwp->month, NULL);
  601. X   cwp->year =         XtVaCreateManagedWidget("year", 
  602. X                   asciiTextWidgetClass, card, 
  603. X              XtNborderWidth, 2,
  604. X               XtNstring, cdp->year, 
  605. X               XtNfromVert, cwp->address,
  606. X               XtNfromHoriz, cwp->yearL, NULL);
  607. X   cwp->noteL =     XtVaCreateManagedWidget("noteLabel", 
  608. X                      labelWidgetClass, card, 
  609. X                  XtNfromVert, cwp->month,
  610. X                 XtNleft, XtChainLeft, NULL);
  611. X   cwp->note =         XtVaCreateManagedWidget("note",
  612. X                     asciiTextWidgetClass, card, 
  613. X                 XtNstring, cdp->note, 
  614. X                 XtNfromVert, cwp->month,
  615. X                 XtNfromHoriz, cwp->noteL, NULL);
  616. }
  617. X
  618. X
  619. /*********************************************************************/
  620. /* CreateUnpublishedWidgets:                                         */
  621. /*    Creates widgets for card type unpublished                      */
  622. /*********************************************************************/
  623. static void
  624. CreateUnpublishedWidgets (BibPtr bp, CardPtr cp)
  625. {
  626. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  627. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  628. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  629. Widget card = cp->cw->cardFlds;        /* parent widget */
  630. X
  631. X   cdp->annoteDisplayed = FALSE;
  632. X   cdp->annoteChanged = FALSE;
  633. X   cwp->titleL =     XtVaCreateManagedWidget("titleLabel", 
  634. X                     labelWidgetClass, card, 
  635. X                  XtNfromVert, cwp->category, 
  636. X                 XtNleft, XtChainLeft, NULL);
  637. X   cwp->title =     XtVaCreateManagedWidget("title", 
  638. X                    asciiTextWidgetClass, card, 
  639. X              XtNborderWidth, 2,
  640. X                XtNstring, cdp->title, 
  641. X                  XtNfromVert, cwp->category, 
  642. X                XtNfromHoriz, cwp->titleL, NULL);
  643. X   cwp->authorL =     XtVaCreateManagedWidget("authorLabel", 
  644. X                     labelWidgetClass, card, 
  645. X                  XtNfromVert, cwp->title, 
  646. X                 XtNleft, XtChainLeft, NULL);
  647. X   cwp->author =     XtVaCreateManagedWidget("author", 
  648. X                    asciiTextWidgetClass, card, 
  649. X              XtNborderWidth, 2,
  650. X                XtNstring, cdp->author, 
  651. X                  XtNfromVert, cwp->title, 
  652. X                XtNfromHoriz, cwp->authorL, NULL);
  653. X   cwp->monthL =     XtVaCreateManagedWidget("monthLabel", 
  654. X                     labelWidgetClass, card, 
  655. X                 XtNfromVert, cwp->author,
  656. X                 XtNleft, XtChainLeft, NULL);
  657. X   cwp->month =     XtVaCreateManagedWidget("month", 
  658. X                    asciiTextWidgetClass, card, 
  659. X                XtNstring, cdp->month, 
  660. X                XtNfromVert, cwp->author,
  661. X                XtNfromHoriz, cwp->monthL, NULL);
  662. X   cwp->yearL =     XtVaCreateManagedWidget("yearLabel", 
  663. X                    labelWidgetClass, card, 
  664. X                XtNfromVert, cwp->author,
  665. X                XtNfromHoriz, cwp->month, NULL);
  666. X   cwp->year =         XtVaCreateManagedWidget("year", 
  667. X                   asciiTextWidgetClass, card, 
  668. X               XtNstring, cdp->year, 
  669. X               XtNfromVert, cwp->author,
  670. X               XtNfromHoriz, cwp->yearL, NULL);
  671. X   cwp->noteL =     XtVaCreateManagedWidget("noteLabel", 
  672. X                      labelWidgetClass, card, 
  673. X                  XtNfromVert, cwp->month,
  674. X                 XtNleft, XtChainLeft, NULL);
  675. X   cwp->note =         XtVaCreateManagedWidget("note",
  676. X                     asciiTextWidgetClass, card, 
  677. X              XtNborderWidth, 2,
  678. X                 XtNstring, cdp->note, 
  679. X                 XtNfromVert, cwp->month,
  680. X                 XtNfromHoriz, cwp->noteL, NULL);
  681. }
  682. X
  683. X
  684. /*********************************************************************/
  685. /* saveStdWidgetFlds:                                                */
  686. /*    Saves data from standard widget fields                         */
  687. /*********************************************************************/
  688. static Errcode
  689. saveStdWidgetFlds (CardPtr cp)
  690. {
  691. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  692. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  693. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  694. Widget card = cp->cw->cardFlds;        /* parent widget */
  695. String str;
  696. X   
  697. X   XtVaGetValues(cwp->mainkey, XtNstring, &str, NULL);
  698. X   if ((cdp->mainkey = glbNewString(str)) == NULL)
  699. X      return(ERR_NOMALLOC);
  700. X   XtVaGetValues(cwp->crossref, XtNstring, &str, NULL);
  701. X   if ((cdp->crossref = glbNewString(str)) == NULL)
  702. X      return(ERR_NOMALLOC);
  703. X   XtVaGetValues(cwp->key, XtNstring, &str, NULL);
  704. X   if ((cdp->key = glbNewString(str)) == NULL)
  705. X      return(ERR_NOMALLOC);
  706. X   XtVaGetValues(cwp->category, XtNstring, &str, NULL);
  707. X   if ((cdp->category = glbNewString(str)) == NULL)
  708. X      return(ERR_NOMALLOC);
  709. X   XtVaGetValues(cwp->note, XtNstring, &str, NULL);
  710. X   if ((cdp->note = glbNewString(str)) == NULL)
  711. X      return(ERR_NOMALLOC);
  712. X
  713. X   return(OK);
  714. }
  715. X
  716. X
  717. /*********************************************************************/
  718. /* SaveArticleWidgets:                                               */
  719. /*    Saves data from widget to new card                             */
  720. /*********************************************************************/
  721. static Errcode
  722. SaveArticleWidgets (CardPtr cp)
  723. {
  724. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  725. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  726. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  727. Widget card = cp->cw->cardFlds;        /* parent widget */
  728. String str;
  729. X   
  730. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  731. X   if ((cdp->title = glbNewString(str)) == NULL)
  732. X      return(ERR_NOMALLOC);
  733. X   XtVaGetValues(cwp->author, XtNstring, &str, NULL);
  734. X   if ((cdp->author = glbNewString(str)) == NULL)
  735. X      return(ERR_NOMALLOC);
  736. X   XtVaGetValues(cwp->journal, XtNstring, &str, NULL);
  737. X   if ((cdp->journal = glbNewString(str)) == NULL)
  738. X      return(ERR_NOMALLOC);
  739. X   XtVaGetValues(cwp->pages, XtNstring, &str, NULL);
  740. X   if ((cdp->pages = glbNewString(str)) == NULL)
  741. X      return(ERR_NOMALLOC);
  742. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  743. X   if ((cdp->month = glbNewString(str)) == NULL)
  744. X      return(ERR_NOMALLOC);
  745. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  746. X   if ((cdp->year = glbNewString(str)) == NULL)
  747. X      return(ERR_NOMALLOC);
  748. X   XtVaGetValues(cwp->volume, XtNstring, &str, NULL);
  749. X   if ((cdp->volume = glbNewString(str)) == NULL)
  750. X      return(ERR_NOMALLOC);
  751. X   XtVaGetValues(cwp->number, XtNstring, &str, NULL);
  752. X   if ((cdp->number = glbNewString(str)) == NULL)
  753. X      return(ERR_NOMALLOC);
  754. X
  755. X   return(OK);
  756. }
  757. X
  758. X
  759. /*********************************************************************/
  760. /* SaveBookWidgets:                                                  */
  761. /*    Saves data from widget to new card                             */
  762. /*********************************************************************/
  763. static Errcode
  764. SaveBookWidgets (CardPtr cp)
  765. {
  766. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  767. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  768. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  769. Widget card = cp->cw->cardFlds;        /* parent widget */
  770. String str;
  771. X
  772. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  773. X   if ((cdp->title = glbNewString(str)) == NULL)
  774. X      return(ERR_NOMALLOC);
  775. X   XtVaGetValues(cwp->author, XtNstring, &str, NULL);
  776. X   if ((cdp->author = glbNewString(str)) == NULL)
  777. X      return(ERR_NOMALLOC);
  778. X   XtVaGetValues(cwp->editor, XtNstring, &str, NULL);
  779. X   if ((cdp->editor = glbNewString(str)) == NULL)
  780. X      return(ERR_NOMALLOC);
  781. X   XtVaGetValues(cwp->publisher, XtNstring, &str, NULL);
  782. X   if ((cdp->publisher = glbNewString(str)) == NULL)
  783. X      return(ERR_NOMALLOC);
  784. X   XtVaGetValues(cwp->address, XtNstring, &str, NULL);
  785. X   if ((cdp->address = glbNewString(str)) == NULL)
  786. X      return(ERR_NOMALLOC);
  787. X   XtVaGetValues(cwp->series, XtNstring, &str, NULL);
  788. X   if ((cdp->series = glbNewString(str)) == NULL)
  789. X      return(ERR_NOMALLOC);
  790. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  791. X   if ((cdp->month = glbNewString(str)) == NULL)
  792. X      return(ERR_NOMALLOC);
  793. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  794. X   if ((cdp->year = glbNewString(str)) == NULL)
  795. X      return(ERR_NOMALLOC);
  796. X   XtVaGetValues(cwp->volume, XtNstring, &str, NULL);
  797. X   if ((cdp->volume = glbNewString(str)) == NULL)
  798. X      return(ERR_NOMALLOC);
  799. X   XtVaGetValues(cwp->edition, XtNstring, &str, NULL);
  800. X   if ((cdp->edition = glbNewString(str)) == NULL)
  801. X      return(ERR_NOMALLOC);
  802. X
  803. X   return(OK);
  804. }
  805. X
  806. X
  807. /*********************************************************************/
  808. /* SaveBookletWidgets:                                               */
  809. /*    Saves data from widget to new card                             */
  810. /*********************************************************************/
  811. static Errcode
  812. SaveBookletWidgets (CardPtr cp)
  813. {
  814. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  815. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  816. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  817. Widget card = cp->cw->cardFlds;        /* parent widget */
  818. String str;
  819. X
  820. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  821. X   if ((cdp->title = glbNewString(str)) == NULL)
  822. X      return(ERR_NOMALLOC);
  823. X   XtVaGetValues(cwp->author, XtNstring, &str, NULL);
  824. X   if ((cdp->author = glbNewString(str)) == NULL)
  825. X      return(ERR_NOMALLOC);
  826. X   XtVaGetValues(cwp->howpublished, XtNstring, &str, NULL);
  827. X   if ((cdp->howpublished = glbNewString(str)) == NULL)
  828. X      return(ERR_NOMALLOC);
  829. X   XtVaGetValues(cwp->address, XtNstring, &str, NULL);
  830. X   if ((cdp->address = glbNewString(str)) == NULL)
  831. X      return(ERR_NOMALLOC);
  832. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  833. X   if ((cdp->month = glbNewString(str)) == NULL)
  834. X      return(ERR_NOMALLOC);
  835. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  836. X   if ((cdp->year = glbNewString(str)) == NULL)
  837. X      return(ERR_NOMALLOC);
  838. X
  839. X   return(OK);
  840. }
  841. X
  842. X
  843. /*********************************************************************/
  844. /* SaveConferenceWidgets:                                            */
  845. /*    Saves data from widget to new card                             */
  846. /*********************************************************************/
  847. static Errcode
  848. SaveConferenceWidgets (CardPtr cp)
  849. {
  850. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  851. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  852. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  853. Widget card = cp->cw->cardFlds;        /* parent widget */
  854. String str;
  855. X
  856. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  857. X   if ((cdp->title = glbNewString(str)) == NULL)
  858. X      return(ERR_NOMALLOC);
  859. X   XtVaGetValues(cwp->booktitle, XtNstring, &str, NULL);
  860. X   if ((cdp->booktitle = glbNewString(str)) == NULL)
  861. X      return(ERR_NOMALLOC);
  862. X   XtVaGetValues(cwp->author, XtNstring, &str, NULL);
  863. X   if ((cdp->author = glbNewString(str)) == NULL)
  864. X      return(ERR_NOMALLOC);
  865. X   XtVaGetValues(cwp->editor, XtNstring, &str, NULL);
  866. X   if ((cdp->editor = glbNewString(str)) == NULL)
  867. X      return(ERR_NOMALLOC);
  868. X   XtVaGetValues(cwp->organization, XtNstring, &str, NULL);
  869. X   if ((cdp->organization = glbNewString(str)) == NULL)
  870. X      return(ERR_NOMALLOC);
  871. X   XtVaGetValues(cwp->publisher, XtNstring, &str, NULL);
  872. X   if ((cdp->publisher = glbNewString(str)) == NULL)
  873. X      return(ERR_NOMALLOC);
  874. X   XtVaGetValues(cwp->address, XtNstring, &str, NULL);
  875. X   if ((cdp->address = glbNewString(str)) == NULL)
  876. X      return(ERR_NOMALLOC);
  877. X   XtVaGetValues(cwp->pages, XtNstring, &str, NULL);
  878. X   if ((cdp->pages = glbNewString(str)) == NULL)
  879. X      return(ERR_NOMALLOC);
  880. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  881. X   if ((cdp->month = glbNewString(str)) == NULL)
  882. X      return(ERR_NOMALLOC);
  883. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  884. X   if ((cdp->year = glbNewString(str)) == NULL)
  885. X      return(ERR_NOMALLOC);
  886. X
  887. X   return(OK);
  888. }
  889. X
  890. X
  891. /*********************************************************************/
  892. /* SaveInbookWidgets:                                                */
  893. /*    Saves data from widget to new card                             */
  894. /*********************************************************************/
  895. static Errcode
  896. SaveInbookWidgets (CardPtr cp)
  897. {
  898. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  899. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  900. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  901. Widget card = cp->cw->cardFlds;        /* parent widget */
  902. String str;
  903. X
  904. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  905. X   if ((cdp->title = glbNewString(str)) == NULL)
  906. X      return(ERR_NOMALLOC);
  907. X   XtVaGetValues(cwp->author, XtNstring, &str, NULL);
  908. X   if ((cdp->author = glbNewString(str)) == NULL)
  909. X      return(ERR_NOMALLOC);
  910. X   XtVaGetValues(cwp->editor, XtNstring, &str, NULL);
  911. X   if ((cdp->editor = glbNewString(str)) == NULL)
  912. X      return(ERR_NOMALLOC);
  913. X   XtVaGetValues(cwp->chapter, XtNstring, &str, NULL);
  914. X   if ((cdp->chapter = glbNewString(str)) == NULL)
  915. X      return(ERR_NOMALLOC);
  916. X   XtVaGetValues(cwp->pages, XtNstring, &str, NULL);
  917. X   if ((cdp->pages = glbNewString(str)) == NULL)
  918. X      return(ERR_NOMALLOC);
  919. X   XtVaGetValues(cwp->publisher, XtNstring, &str, NULL);
  920. X   if ((cdp->publisher = glbNewString(str)) == NULL)
  921. X      return(ERR_NOMALLOC);
  922. X   XtVaGetValues(cwp->address, XtNstring, &str, NULL);
  923. X   if ((cdp->address = glbNewString(str)) == NULL)
  924. X      return(ERR_NOMALLOC);
  925. X   XtVaGetValues(cwp->series, XtNstring, &str, NULL);
  926. X   if ((cdp->series = glbNewString(str)) == NULL)
  927. X      return(ERR_NOMALLOC);
  928. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  929. X   if ((cdp->month = glbNewString(str)) == NULL)
  930. X      return(ERR_NOMALLOC);
  931. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  932. X   if ((cdp->year = glbNewString(str)) == NULL)
  933. X      return(ERR_NOMALLOC);
  934. X   XtVaGetValues(cwp->volume, XtNstring, &str, NULL);
  935. X   if ((cdp->volume = glbNewString(str)) == NULL)
  936. X      return(ERR_NOMALLOC);
  937. X   XtVaGetValues(cwp->edition, XtNstring, &str, NULL);
  938. X   if ((cdp->edition = glbNewString(str)) == NULL)
  939. X      return(ERR_NOMALLOC);
  940. X
  941. X   return(OK);
  942. }
  943. X
  944. X
  945. /*********************************************************************/
  946. /* SaveIncollectionWidgets:                                          */
  947. /*    Saves data from widget to new card                             */
  948. /*********************************************************************/
  949. static Errcode
  950. SaveIncollectionWidgets (CardPtr cp)
  951. {
  952. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  953. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  954. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  955. Widget card = cp->cw->cardFlds;        /* parent widget */
  956. String str;
  957. X
  958. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  959. X   if ((cdp->title = glbNewString(str)) == NULL)
  960. X      return(ERR_NOMALLOC);
  961. X   XtVaGetValues(cwp->booktitle, XtNstring, &str, NULL);
  962. X   if ((cdp->booktitle = glbNewString(str)) == NULL)
  963. X      return(ERR_NOMALLOC);
  964. X   XtVaGetValues(cwp->author, XtNstring, &str, NULL);
  965. X   if ((cdp->author = glbNewString(str)) == NULL)
  966. X      return(ERR_NOMALLOC);
  967. X   XtVaGetValues(cwp->editor, XtNstring, &str, NULL);
  968. X   if ((cdp->editor = glbNewString(str)) == NULL)
  969. X      return(ERR_NOMALLOC);
  970. X   XtVaGetValues(cwp->publisher, XtNstring, &str, NULL);
  971. X   if ((cdp->publisher = glbNewString(str)) == NULL)
  972. X      return(ERR_NOMALLOC);
  973. X   XtVaGetValues(cwp->address, XtNstring, &str, NULL);
  974. X   if ((cdp->address = glbNewString(str)) == NULL)
  975. X      return(ERR_NOMALLOC);
  976. X   XtVaGetValues(cwp->chapter, XtNstring, &str, NULL);
  977. X   if ((cdp->chapter = glbNewString(str)) == NULL)
  978. X      return(ERR_NOMALLOC);
  979. X   XtVaGetValues(cwp->pages, XtNstring, &str, NULL);
  980. X   if ((cdp->pages = glbNewString(str)) == NULL)
  981. X      return(ERR_NOMALLOC);
  982. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  983. X   if ((cdp->month = glbNewString(str)) == NULL)
  984. X      return(ERR_NOMALLOC);
  985. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  986. X   if ((cdp->year = glbNewString(str)) == NULL)
  987. X      return(ERR_NOMALLOC);
  988. X
  989. X   return(OK);
  990. }
  991. X
  992. X
  993. /*********************************************************************/
  994. /* SaveInproceedingsWidgets:                                         */
  995. /*    Saves data from widget to new card                             */
  996. /*********************************************************************/
  997. static Errcode
  998. SaveInproceedingsWidgets (CardPtr cp)
  999. {
  1000. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  1001. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  1002. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  1003. Widget card = cp->cw->cardFlds;        /* parent widget */
  1004. String str;
  1005. X
  1006. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  1007. X   if ((cdp->title = glbNewString(str)) == NULL)
  1008. X      return(ERR_NOMALLOC);
  1009. X   XtVaGetValues(cwp->booktitle, XtNstring, &str, NULL);
  1010. X   if ((cdp->booktitle = glbNewString(str)) == NULL)
  1011. X      return(ERR_NOMALLOC);
  1012. X   XtVaGetValues(cwp->author, XtNstring, &str, NULL);
  1013. X   if ((cdp->author = glbNewString(str)) == NULL)
  1014. X      return(ERR_NOMALLOC);
  1015. X   XtVaGetValues(cwp->editor, XtNstring, &str, NULL);
  1016. X   if ((cdp->editor = glbNewString(str)) == NULL)
  1017. X      return(ERR_NOMALLOC);
  1018. X   XtVaGetValues(cwp->organization, XtNstring, &str, NULL);
  1019. X   if ((cdp->organization = glbNewString(str)) == NULL)
  1020. X      return(ERR_NOMALLOC);
  1021. X   XtVaGetValues(cwp->publisher, XtNstring, &str, NULL);
  1022. X   if ((cdp->publisher = glbNewString(str)) == NULL)
  1023. X      return(ERR_NOMALLOC);
  1024. X   XtVaGetValues(cwp->address, XtNstring, &str, NULL);
  1025. X   if ((cdp->address = glbNewString(str)) == NULL)
  1026. X      return(ERR_NOMALLOC);
  1027. X   XtVaGetValues(cwp->pages, XtNstring, &str, NULL);
  1028. X   if ((cdp->pages = glbNewString(str)) == NULL)
  1029. X      return(ERR_NOMALLOC);
  1030. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  1031. X   if ((cdp->month = glbNewString(str)) == NULL)
  1032. X      return(ERR_NOMALLOC);
  1033. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  1034. X   if ((cdp->year = glbNewString(str)) == NULL)
  1035. X      return(ERR_NOMALLOC);
  1036. X
  1037. X   return(OK);
  1038. }
  1039. X
  1040. X
  1041. /*********************************************************************/
  1042. /* SaveManualWidgets:                                                */
  1043. /*    Saves data from widget to new card                             */
  1044. /*********************************************************************/
  1045. static Errcode
  1046. SaveManualWidgets (CardPtr cp)
  1047. {
  1048. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  1049. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  1050. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  1051. Widget card = cp->cw->cardFlds;        /* parent widget */
  1052. String str;
  1053. X
  1054. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  1055. X   if ((cdp->title = glbNewString(str)) == NULL)
  1056. X      return(ERR_NOMALLOC);
  1057. X   XtVaGetValues(cwp->author, XtNstring, &str, NULL);
  1058. X   if ((cdp->author = glbNewString(str)) == NULL)
  1059. X      return(ERR_NOMALLOC);
  1060. X   XtVaGetValues(cwp->organization, XtNstring, &str, NULL);
  1061. X   if ((cdp->organization = glbNewString(str)) == NULL)
  1062. X      return(ERR_NOMALLOC);
  1063. X   XtVaGetValues(cwp->address, XtNstring, &str, NULL);
  1064. X   if ((cdp->address = glbNewString(str)) == NULL)
  1065. X      return(ERR_NOMALLOC);
  1066. X   XtVaGetValues(cwp->edition, XtNstring, &str, NULL);
  1067. X   if ((cdp->edition = glbNewString(str)) == NULL)
  1068. X      return(ERR_NOMALLOC);
  1069. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  1070. X   if ((cdp->month = glbNewString(str)) == NULL)
  1071. X      return(ERR_NOMALLOC);
  1072. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  1073. X   if ((cdp->year = glbNewString(str)) == NULL)
  1074. X      return(ERR_NOMALLOC);
  1075. X
  1076. X   return(OK);
  1077. }
  1078. X
  1079. X
  1080. /*********************************************************************/
  1081. /* SaveMasterthesisWidgets:                                          */
  1082. /*    Saves data from widget to new card                             */
  1083. /*********************************************************************/
  1084. static Errcode
  1085. SaveMasterthesisWidgets (CardPtr cp)
  1086. {
  1087. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  1088. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  1089. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  1090. Widget card = cp->cw->cardFlds;        /* parent widget */
  1091. String str;
  1092. X
  1093. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  1094. X   if ((cdp->title = glbNewString(str)) == NULL)
  1095. X      return(ERR_NOMALLOC);
  1096. X   XtVaGetValues(cwp->author, XtNstring, &str, NULL);
  1097. X   if ((cdp->author = glbNewString(str)) == NULL)
  1098. X      return(ERR_NOMALLOC);
  1099. X   XtVaGetValues(cwp->school, XtNstring, &str, NULL);
  1100. X   if ((cdp->school = glbNewString(str)) == NULL)
  1101. X      return(ERR_NOMALLOC);
  1102. X   XtVaGetValues(cwp->address, XtNstring, &str, NULL);
  1103. X   if ((cdp->address = glbNewString(str)) == NULL)
  1104. X      return(ERR_NOMALLOC);
  1105. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  1106. X   if ((cdp->month = glbNewString(str)) == NULL)
  1107. X      return(ERR_NOMALLOC);
  1108. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  1109. X   if ((cdp->year = glbNewString(str)) == NULL)
  1110. X      return(ERR_NOMALLOC);
  1111. X
  1112. X   return(OK);
  1113. }
  1114. X
  1115. X
  1116. /*********************************************************************/
  1117. /* SaveMiscWidgets:                                                  */
  1118. /*    Saves data from widget to new card                             */
  1119. /*********************************************************************/
  1120. static Errcode
  1121. SaveMiscWidgets (CardPtr cp)
  1122. {
  1123. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  1124. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  1125. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  1126. Widget card = cp->cw->cardFlds;        /* parent widget */
  1127. String str;
  1128. X
  1129. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  1130. X   if ((cdp->title = glbNewString(str)) == NULL)
  1131. X      return(ERR_NOMALLOC);
  1132. X   XtVaGetValues(cwp->author, XtNstring, &str, NULL);
  1133. X   if ((cdp->author = glbNewString(str)) == NULL)
  1134. X      return(ERR_NOMALLOC);
  1135. X   XtVaGetValues(cwp->howpublished, XtNstring, &str, NULL);
  1136. X   if ((cdp->howpublished = glbNewString(str)) == NULL)
  1137. X      return(ERR_NOMALLOC);
  1138. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  1139. X   if ((cdp->month = glbNewString(str)) == NULL)
  1140. X      return(ERR_NOMALLOC);
  1141. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  1142. X   if ((cdp->year = glbNewString(str)) == NULL)
  1143. X      return(ERR_NOMALLOC);
  1144. X
  1145. X   return(OK);
  1146. }
  1147. X
  1148. X
  1149. /*********************************************************************/
  1150. /* SavePhdthesisWidgets:                                             */
  1151. /*    Saves data from widget to new card                             */
  1152. /*********************************************************************/
  1153. static Errcode
  1154. SavePhdthesisWidgets (CardPtr cp)
  1155. {
  1156. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  1157. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  1158. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  1159. Widget card = cp->cw->cardFlds;        /* parent widget */
  1160. String str;
  1161. X
  1162. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  1163. X   if ((cdp->title = glbNewString(str)) == NULL)
  1164. X      return(ERR_NOMALLOC);
  1165. X   XtVaGetValues(cwp->author, XtNstring, &str, NULL);
  1166. X   if ((cdp->author = glbNewString(str)) == NULL)
  1167. X      return(ERR_NOMALLOC);
  1168. X   XtVaGetValues(cwp->school, XtNstring, &str, NULL);
  1169. X   if ((cdp->school = glbNewString(str)) == NULL)
  1170. X      return(ERR_NOMALLOC);
  1171. X   XtVaGetValues(cwp->address, XtNstring, &str, NULL);
  1172. X   if ((cdp->address = glbNewString(str)) == NULL)
  1173. X      return(ERR_NOMALLOC);
  1174. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  1175. X   if ((cdp->month = glbNewString(str)) == NULL)
  1176. X      return(ERR_NOMALLOC);
  1177. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  1178. X   if ((cdp->year = glbNewString(str)) == NULL)
  1179. X      return(ERR_NOMALLOC);
  1180. X
  1181. X   return(OK);
  1182. }
  1183. X
  1184. X
  1185. /*********************************************************************/
  1186. /* SaveProceedingsWidgets:                                           */
  1187. /*    Saves data from widget to new card                             */
  1188. /*********************************************************************/
  1189. static Errcode
  1190. SaveProceedingsWidgets (CardPtr cp)
  1191. {
  1192. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  1193. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  1194. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  1195. Widget card = cp->cw->cardFlds;        /* parent widget */
  1196. String str;
  1197. X
  1198. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  1199. X   if ((cdp->title = glbNewString(str)) == NULL)
  1200. X      return(ERR_NOMALLOC);
  1201. X   XtVaGetValues(cwp->editor, XtNstring, &str, NULL);
  1202. X   if ((cdp->editor = glbNewString(str)) == NULL)
  1203. X      return(ERR_NOMALLOC);
  1204. X   XtVaGetValues(cwp->organization, XtNstring, &str, NULL);
  1205. X   if ((cdp->organization = glbNewString(str)) == NULL)
  1206. X      return(ERR_NOMALLOC);
  1207. X   XtVaGetValues(cwp->publisher, XtNstring, &str, NULL);
  1208. X   if ((cdp->publisher = glbNewString(str)) == NULL)
  1209. X      return(ERR_NOMALLOC);
  1210. X   XtVaGetValues(cwp->address, XtNstring, &str, NULL);
  1211. X   if ((cdp->address = glbNewString(str)) == NULL)
  1212. X      return(ERR_NOMALLOC);
  1213. X   XtVaGetValues(cwp->pages, XtNstring, &str, NULL);
  1214. X   if ((cdp->pages = glbNewString(str)) == NULL)
  1215. X      return(ERR_NOMALLOC);
  1216. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  1217. X   if ((cdp->month = glbNewString(str)) == NULL)
  1218. X      return(ERR_NOMALLOC);
  1219. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  1220. X   if ((cdp->year = glbNewString(str)) == NULL)
  1221. X      return(ERR_NOMALLOC);
  1222. X
  1223. X   return(OK);
  1224. }
  1225. X
  1226. X
  1227. /*********************************************************************/
  1228. /* SaveTechreportWidgets:                                            */
  1229. /*    Saves data from widget to new card                             */
  1230. /*********************************************************************/
  1231. static Errcode
  1232. SaveTechreportWidgets (CardPtr cp)
  1233. {
  1234. CardWidgetsPtr cwp = &cp->cw->ct.cw;    /* ptr to widget ids */
  1235. CardDataPtr cdp = cp->cd;        /* ptr to real card data */
  1236. CardDataPtr cbp = &cp->cw->ct.buf;    /* ptr to text buffers */
  1237. Widget card = cp->cw->cardFlds;        /* parent widget */
  1238. String str;
  1239. X
  1240. X   XtVaGetValues(cwp->title, XtNstring, &str, NULL);
  1241. X   if ((cdp->title = glbNewString(str)) == NULL)
  1242. X      return(ERR_NOMALLOC);
  1243. X   XtVaGetValues(cwp->author, XtNstring, &str, NULL);
  1244. X   if ((cdp->author = glbNewString(str)) == NULL)
  1245. X      return(ERR_NOMALLOC);
  1246. X   XtVaGetValues(cwp->institution, XtNstring, &str, NULL);
  1247. X   if ((cdp->institution = glbNewString(str)) == NULL)
  1248. X      return(ERR_NOMALLOC);
  1249. X   XtVaGetValues(cwp->type, XtNstring, &str, NULL);
  1250. X   if ((cdp->type = glbNewString(str)) == NULL)
  1251. X      return(ERR_NOMALLOC);
  1252. X   XtVaGetValues(cwp->number, XtNstring, &str, NULL);
  1253. X   if ((cdp->number = glbNewString(str)) == NULL)
  1254. X      return(ERR_NOMALLOC);
  1255. X   XtVaGetValues(cwp->address, XtNstring, &str, NULL);
  1256. X   if ((cdp->address = glbNewString(str)) == NULL)
  1257. X      return(ERR_NOMALLOC);
  1258. X   XtVaGetValues(cwp->month, XtNstring, &str, NULL);
  1259. X   if ((cdp->month = glbNewString(str)) == NULL)
  1260. X      return(ERR_NOMALLOC);
  1261. X   XtVaGetValues(cwp->year, XtNstring, &str, NULL);
  1262. SHAR_EOF
  1263. true || echo 'restore of gui_card.c failed'
  1264. fi
  1265. echo 'End of  part 16'
  1266. echo 'File gui_card.c is continued in part 17'
  1267. echo 17 > _shar_seq_.tmp
  1268. exit 0
  1269. -- 
  1270. Senior Systems Scientist        mail: dcmartin@msi.com
  1271. Molecular Simulations, Inc.        uucp: uunet!dcmartin
  1272. 796 North Pastoria Avenue        at&t: 408/522-9236
  1273. Sunnyvale, California 94086        fax: 408/732-0831
  1274.