home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / x / volume19 / xephem / part11 < prev    next >
SHell self-extracting ARchive  |  1993-05-15  |  76.4 KB

view JSON data     |     view as text     |     open on a Mac     |     open on a PC

This file was processed as: SHell self-extracting ARchive (archive/shar).

You can browse this item here: part11

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert SHell self-extracting ARchive (archive/shar) magic Supported
1% dexvert Text File (text/txt) fallback Supported
100% file ASCII text default
100% checkBytes Printable ASCII default
100% perlTextCheck Likely Text (Perl) default
100% siegfried fmt/329 Shell Archive Format default
100% detectItEasy Format: plain text[LF] default (weak)



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 4e 65 77 73 67 72 6f 75 | 70 73 3a 20 63 6f 6d 70 |Newsgrou|ps: comp|
|00000010| 2e 73 6f 75 72 63 65 73 | 2e 78 0a 46 72 6f 6d 3a |.sources|.x.From:|
|00000020| 20 65 63 64 6f 77 6e 65 | 79 40 70 6f 62 6f 78 2e | ecdowne|y@pobox.|
|00000030| 63 63 61 2e 63 72 2e 72 | 6f 63 6b 77 65 6c 6c 2e |cca.cr.r|ockwell.|
|00000040| 63 6f 6d 20 28 45 6c 77 | 6f 6f 64 20 44 6f 77 6e |com (Elw|ood Down|
|00000050| 65 79 29 0a 53 75 62 6a | 65 63 74 3a 20 76 31 39 |ey).Subj|ect: v19|
|00000060| 69 30 39 39 3a 20 20 78 | 65 70 68 65 6d 20 2d 20 |i099: x|ephem - |
|00000070| 61 73 74 72 6f 6e 6f 6d | 69 63 61 6c 20 65 70 68 |astronom|ical eph|
|00000080| 65 6d 65 72 69 73 20 70 | 72 6f 67 72 61 6d 2c 20 |emeris p|rogram, |
|00000090| 50 61 72 74 31 31 2f 32 | 31 0a 4d 65 73 73 61 67 |Part11/2|1.Messag|
|000000a0| 65 2d 49 44 3a 20 3c 31 | 39 39 33 4d 61 79 31 30 |e-ID: <1|993May10|
|000000b0| 2e 32 32 31 30 35 34 2e | 38 37 34 30 40 73 70 61 |.221054.|8740@spa|
|000000c0| 72 6b 79 2e 69 6d 64 2e | 73 74 65 72 6c 69 6e 67 |rky.imd.|sterling|
|000000d0| 2e 63 6f 6d 3e 0a 58 2d | 4d 64 34 2d 53 69 67 6e |.com>.X-|Md4-Sign|
|000000e0| 61 74 75 72 65 3a 20 38 | 62 31 37 64 62 36 39 61 |ature: 8|b17db69a|
|000000f0| 38 38 62 39 61 30 32 30 | 34 32 61 32 61 36 62 32 |88b9a020|42a2a6b2|
|00000100| 34 34 31 62 33 61 62 0a | 44 61 74 65 3a 20 4d 6f |441b3ab.|Date: Mo|
|00000110| 6e 2c 20 31 30 20 4d 61 | 79 20 31 39 39 33 20 32 |n, 10 Ma|y 1993 2|
|00000120| 32 3a 31 30 3a 35 34 20 | 47 4d 54 0a 41 70 70 72 |2:10:54 |GMT.Appr|
|00000130| 6f 76 65 64 3a 20 63 68 | 72 69 73 40 73 70 61 72 |oved: ch|ris@spar|
|00000140| 6b 79 2e 69 6d 64 2e 73 | 74 65 72 6c 69 6e 67 2e |ky.imd.s|terling.|
|00000150| 63 6f 6d 0a 0a 53 75 62 | 6d 69 74 74 65 64 2d 62 |com..Sub|mitted-b|
|00000160| 79 3a 20 65 63 64 6f 77 | 6e 65 79 40 70 6f 62 6f |y: ecdow|ney@pobo|
|00000170| 78 2e 63 63 61 2e 63 72 | 2e 72 6f 63 6b 77 65 6c |x.cca.cr|.rockwel|
|00000180| 6c 2e 63 6f 6d 20 28 45 | 6c 77 6f 6f 64 20 44 6f |l.com (E|lwood Do|
|00000190| 77 6e 65 79 29 0a 50 6f | 73 74 69 6e 67 2d 6e 75 |wney).Po|sting-nu|
|000001a0| 6d 62 65 72 3a 20 56 6f | 6c 75 6d 65 20 31 39 2c |mber: Vo|lume 19,|
|000001b0| 20 49 73 73 75 65 20 39 | 39 0a 41 72 63 68 69 76 | Issue 9|9.Archiv|
|000001c0| 65 2d 6e 61 6d 65 3a 20 | 78 65 70 68 65 6d 2f 70 |e-name: |xephem/p|
|000001d0| 61 72 74 31 31 0a 45 6e | 76 69 72 6f 6e 6d 65 6e |art11.En|vironmen|
|000001e0| 74 3a 20 58 31 31 72 34 | 2c 20 4f 53 46 2f 4d 6f |t: X11r4|, OSF/Mo|
|000001f0| 74 69 66 0a 53 75 70 65 | 72 73 65 64 65 73 3a 20 |tif.Supe|rsedes: |
|00000200| 78 65 70 68 65 6d 3a 20 | 56 6f 6c 75 6d 65 20 31 |xephem: |Volume 1|
|00000210| 36 2c 20 49 73 73 75 65 | 20 31 31 32 2d 31 33 34 |6, Issue| 112-134|
|00000220| 0a 0a 23 21 20 2f 62 69 | 6e 2f 73 68 0a 23 20 54 |..#! /bi|n/sh.# T|
|00000230| 68 69 73 20 69 73 20 61 | 20 73 68 65 6c 6c 20 61 |his is a| shell a|
|00000240| 72 63 68 69 76 65 2e 20 | 20 52 65 6d 6f 76 65 20 |rchive. | Remove |
|00000250| 61 6e 79 74 68 69 6e 67 | 20 62 65 66 6f 72 65 20 |anything| before |
|00000260| 74 68 69 73 20 6c 69 6e | 65 2c 20 74 68 65 6e 20 |this lin|e, then |
|00000270| 66 65 65 64 20 69 74 0a | 23 20 69 6e 74 6f 20 61 |feed it.|# into a|
|00000280| 20 73 68 65 6c 6c 20 76 | 69 61 20 22 73 68 20 66 | shell v|ia "sh f|
|00000290| 69 6c 65 22 20 6f 72 20 | 73 69 6d 69 6c 61 72 2e |ile" or |similar.|
|000002a0| 20 20 54 6f 20 6f 76 65 | 72 77 72 69 74 65 20 65 | To ove|rwrite e|
|000002b0| 78 69 73 74 69 6e 67 20 | 66 69 6c 65 73 2c 0a 23 |xisting |files,.#|
|000002c0| 20 74 79 70 65 20 22 73 | 68 20 66 69 6c 65 20 2d | type "s|h file -|
|000002d0| 63 22 2e 0a 23 20 54 68 | 65 20 74 6f 6f 6c 20 74 |c"..# Th|e tool t|
|000002e0| 68 61 74 20 67 65 6e 65 | 72 61 74 65 64 20 74 68 |hat gene|rated th|
|000002f0| 69 73 20 61 70 70 65 61 | 72 65 64 20 69 6e 20 74 |is appea|red in t|
|00000300| 68 65 20 63 6f 6d 70 2e | 73 6f 75 72 63 65 73 2e |he comp.|sources.|
|00000310| 75 6e 69 78 20 6e 65 77 | 73 67 72 6f 75 70 3b 0a |unix new|sgroup;.|
|00000320| 23 20 73 65 6e 64 20 6d | 61 69 6c 20 74 6f 20 63 |# send m|ail to c|
|00000330| 6f 6d 70 2d 73 6f 75 72 | 63 65 73 2d 75 6e 69 78 |omp-sour|ces-unix|
|00000340| 40 75 75 6e 65 74 2e 75 | 75 2e 6e 65 74 20 69 66 |@uunet.u|u.net if|
|00000350| 20 79 6f 75 20 77 61 6e | 74 20 74 68 61 74 20 74 | you wan|t that t|
|00000360| 6f 6f 6c 2e 0a 23 20 43 | 6f 6e 74 65 6e 74 73 3a |ool..# C|ontents:|
|00000370| 20 20 63 61 6c 5f 6d 6a | 64 2e 63 20 64 61 74 61 | cal_mj|d.c data|
|00000380| 6d 65 6e 75 2e 63 20 78 | 65 70 68 65 6d 2e 63 0a |menu.c x|ephem.c.|
|00000390| 23 20 57 72 61 70 70 65 | 64 20 62 79 20 63 68 72 |# Wrappe|d by chr|
|000003a0| 69 73 40 6e 6f 76 61 20 | 6f 6e 20 4d 6f 6e 20 4d |is@nova |on Mon M|
|000003b0| 61 79 20 31 30 20 31 36 | 3a 34 31 3a 34 38 20 31 |ay 10 16|:41:48 1|
|000003c0| 39 39 33 0a 50 41 54 48 | 3d 2f 62 69 6e 3a 2f 75 |993.PATH|=/bin:/u|
|000003d0| 73 72 2f 62 69 6e 3a 2f | 75 73 72 2f 75 63 62 20 |sr/bin:/|usr/ucb |
|000003e0| 3b 20 65 78 70 6f 72 74 | 20 50 41 54 48 0a 65 63 |; export| PATH.ec|
|000003f0| 68 6f 20 49 66 20 74 68 | 69 73 20 61 72 63 68 69 |ho If th|is archi|
|00000400| 76 65 20 69 73 20 63 6f | 6d 70 6c 65 74 65 2c 20 |ve is co|mplete, |
|00000410| 79 6f 75 20 77 69 6c 6c | 20 73 65 65 20 74 68 65 |you will| see the|
|00000420| 20 66 6f 6c 6c 6f 77 69 | 6e 67 20 6d 65 73 73 61 | followi|ng messa|
|00000430| 67 65 3a 0a 65 63 68 6f | 20 27 20 20 20 20 20 20 |ge:.echo| ' |
|00000440| 20 20 20 20 22 73 68 61 | 72 3a 20 45 6e 64 20 6f | "sha|r: End o|
|00000450| 66 20 61 72 63 68 69 76 | 65 20 31 31 20 28 6f 66 |f archiv|e 11 (of|
|00000460| 20 32 31 29 2e 22 27 0a | 69 66 20 74 65 73 74 20 | 21)."'.|if test |
|00000470| 2d 66 20 27 63 61 6c 5f | 6d 6a 64 2e 63 27 20 2d |-f 'cal_|mjd.c' -|
|00000480| 61 20 22 24 7b 31 7d 22 | 20 21 3d 20 22 2d 63 22 |a "${1}"| != "-c"|
|00000490| 20 3b 20 74 68 65 6e 20 | 0a 20 20 65 63 68 6f 20 | ; then |. echo |
|000004a0| 73 68 61 72 3a 20 57 69 | 6c 6c 20 6e 6f 74 20 63 |shar: Wi|ll not c|
|000004b0| 6c 6f 62 62 65 72 20 65 | 78 69 73 74 69 6e 67 20 |lobber e|xisting |
|000004c0| 66 69 6c 65 20 5c 22 27 | 63 61 6c 5f 6d 6a 64 2e |file \"'|cal_mjd.|
|000004d0| 63 27 5c 22 0a 65 6c 73 | 65 0a 20 20 65 63 68 6f |c'\".els|e. echo|
|000004e0| 20 73 68 61 72 3a 20 45 | 78 74 72 61 63 74 69 6e | shar: E|xtractin|
|000004f0| 67 20 5c 22 27 63 61 6c | 5f 6d 6a 64 2e 63 27 5c |g \"'cal|_mjd.c'\|
|00000500| 22 20 5c 28 33 37 32 36 | 20 63 68 61 72 61 63 74 |" \(3726| charact|
|00000510| 65 72 73 5c 29 0a 20 20 | 73 65 64 20 22 73 2f 5e |ers\). |sed "s/^|
|00000520| 58 2f 2f 22 20 3e 27 63 | 61 6c 5f 6d 6a 64 2e 63 |X//" >'c|al_mjd.c|
|00000530| 27 20 3c 3c 27 45 4e 44 | 5f 4f 46 5f 46 49 4c 45 |' <<'END|_OF_FILE|
|00000540| 27 0a 58 23 69 6e 63 6c | 75 64 65 20 3c 73 74 64 |'.X#incl|ude <std|
|00000550| 69 6f 2e 68 3e 0a 58 23 | 69 6e 63 6c 75 64 65 20 |io.h>.X#|include |
|00000560| 3c 6d 61 74 68 2e 68 3e | 0a 58 23 69 6e 63 6c 75 |<math.h>|.X#inclu|
|00000570| 64 65 20 22 61 73 74 72 | 6f 2e 68 22 0a 58 0a 58 |de "astr|o.h".X.X|
|00000580| 2f 2a 20 67 69 76 65 6e | 20 61 20 64 61 74 65 20 |/* given| a date |
|00000590| 69 6e 20 6d 6f 6e 74 68 | 73 2c 20 6d 6e 2c 20 64 |in month|s, mn, d|
|000005a0| 61 79 73 2c 20 64 79 2c | 20 79 65 61 72 73 2c 20 |ays, dy,| years, |
|000005b0| 79 72 2c 0a 58 20 2a 20 | 72 65 74 75 72 6e 20 74 |yr,.X * |return t|
|000005c0| 68 65 20 6d 6f 64 69 66 | 69 65 64 20 4a 75 6c 69 |he modif|ied Juli|
|000005d0| 61 6e 20 64 61 74 65 20 | 28 6e 75 6d 62 65 72 20 |an date |(number |
|000005e0| 6f 66 20 64 61 79 73 20 | 65 6c 61 70 73 65 64 20 |of days |elapsed |
|000005f0| 73 69 6e 63 65 20 31 39 | 30 30 20 6a 61 6e 20 30 |since 19|00 jan 0|
|00000600| 2e 35 29 2c 0a 58 20 2a | 20 2a 6d 6a 64 2e 0a 58 |.5),.X *| *mjd..X|
|00000610| 20 2a 2f 0a 58 76 6f 69 | 64 0a 58 63 61 6c 5f 6d | */.Xvoi|d.Xcal_m|
|00000620| 6a 64 20 28 6d 6e 2c 20 | 64 79 2c 20 79 72 2c 20 |jd (mn, |dy, yr, |
|00000630| 6d 6a 64 29 0a 58 69 6e | 74 20 6d 6e 2c 20 79 72 |mjd).Xin|t mn, yr|
|00000640| 3b 0a 58 64 6f 75 62 6c | 65 20 64 79 3b 0a 58 64 |;.Xdoubl|e dy;.Xd|
|00000650| 6f 75 62 6c 65 20 2a 6d | 6a 64 3b 0a 58 7b 0a 58 |ouble *m|jd;.X{.X|
|00000660| 09 73 74 61 74 69 63 20 | 64 6f 75 62 6c 65 20 6c |.static |double l|
|00000670| 61 73 74 5f 6d 6a 64 2c | 20 6c 61 73 74 5f 64 79 |ast_mjd,| last_dy|
|00000680| 3b 0a 58 09 73 74 61 74 | 69 63 20 69 6e 74 20 6c |;.X.stat|ic int l|
|00000690| 61 73 74 5f 6d 6e 2c 20 | 6c 61 73 74 5f 79 72 3b |ast_mn, |last_yr;|
|000006a0| 0a 58 09 69 6e 74 20 62 | 2c 20 64 2c 20 6d 2c 20 |.X.int b|, d, m, |
|000006b0| 79 3b 0a 58 09 6c 6f 6e | 67 20 63 3b 0a 58 0a 58 |y;.X.lon|g c;.X.X|
|000006c0| 09 69 66 20 28 6d 6e 20 | 3d 3d 20 6c 61 73 74 5f |.if (mn |== last_|
|000006d0| 6d 6e 20 26 26 20 79 72 | 20 3d 3d 20 6c 61 73 74 |mn && yr| == last|
|000006e0| 5f 79 72 20 26 26 20 64 | 79 20 3d 3d 20 6c 61 73 |_yr && d|y == las|
|000006f0| 74 5f 64 79 29 20 7b 0a | 58 09 20 20 20 20 2a 6d |t_dy) {.|X. *m|
|00000700| 6a 64 20 3d 20 6c 61 73 | 74 5f 6d 6a 64 3b 0a 58 |jd = las|t_mjd;.X|
|00000710| 09 20 20 20 20 72 65 74 | 75 72 6e 3b 0a 58 09 7d |. ret|urn;.X.}|
|00000720| 0a 58 0a 58 09 6d 20 3d | 20 6d 6e 3b 0a 58 09 79 |.X.X.m =| mn;.X.y|
|00000730| 20 3d 20 28 79 72 20 3c | 20 30 29 20 3f 20 79 72 | = (yr <| 0) ? yr|
|00000740| 20 2b 20 31 20 3a 20 79 | 72 3b 0a 58 09 69 66 20 | + 1 : y|r;.X.if |
|00000750| 28 6d 6e 20 3c 20 33 29 | 20 7b 0a 58 09 20 20 20 |(mn < 3)| {.X. |
|00000760| 20 6d 20 2b 3d 20 31 32 | 3b 0a 58 09 20 20 20 20 | m += 12|;.X. |
|00000770| 79 20 2d 3d 20 31 3b 0a | 58 09 7d 0a 58 0a 58 09 |y -= 1;.|X.}.X.X.|
|00000780| 69 66 20 28 79 72 20 3c | 20 31 35 38 32 20 7c 7c |if (yr <| 1582 |||
|00000790| 20 79 72 20 3d 3d 20 31 | 35 38 32 20 26 26 20 28 | yr == 1|582 && (|
|000007a0| 6d 6e 20 3c 20 31 30 20 | 7c 7c 20 6d 6e 20 3d 3d |mn < 10 ||| mn ==|
|000007b0| 20 31 30 20 26 26 20 64 | 79 20 3c 20 31 35 29 29 | 10 && d|y < 15))|
|000007c0| 20 0a 58 09 20 20 20 20 | 62 20 3d 20 30 3b 0a 58 | .X. |b = 0;.X|
|000007d0| 09 65 6c 73 65 20 7b 0a | 58 09 20 20 20 20 69 6e |.else {.|X. in|
|000007e0| 74 20 61 3b 0a 58 09 20 | 20 20 20 61 20 3d 20 79 |t a;.X. | a = y|
|000007f0| 2f 31 30 30 3b 0a 58 09 | 20 20 20 20 62 20 3d 20 |/100;.X.| b = |
|00000800| 32 20 2d 20 61 20 2b 20 | 61 2f 34 3b 0a 58 09 7d |2 - a + |a/4;.X.}|
|00000810| 0a 58 0a 58 09 69 66 20 | 28 79 20 3c 20 30 29 0a |.X.X.if |(y < 0).|
|00000820| 58 09 20 20 20 20 63 20 | 3d 20 28 6c 6f 6e 67 29 |X. c |= (long)|
|00000830| 28 28 33 36 35 2e 32 35 | 2a 79 29 20 2d 20 30 2e |((365.25|*y) - 0.|
|00000840| 37 35 29 20 2d 20 36 39 | 34 30 32 35 4c 3b 0a 58 |75) - 69|4025L;.X|
|00000850| 09 65 6c 73 65 0a 58 09 | 20 20 20 20 63 20 3d 20 |.else.X.| c = |
|00000860| 28 6c 6f 6e 67 29 28 33 | 36 35 2e 32 35 2a 79 29 |(long)(3|65.25*y)|
|00000870| 20 2d 20 36 39 34 30 32 | 35 4c 3b 0a 58 0a 58 09 | - 69402|5L;.X.X.|
|00000880| 64 20 3d 20 33 30 2e 36 | 30 30 31 2a 28 6d 2b 31 |d = 30.6|001*(m+1|
|00000890| 29 3b 0a 58 0a 58 09 2a | 6d 6a 64 20 3d 20 62 20 |);.X.X.*|mjd = b |
|000008a0| 2b 20 63 20 2b 20 64 20 | 2b 20 64 79 20 2d 20 30 |+ c + d |+ dy - 0|
|000008b0| 2e 35 3b 0a 58 0a 58 09 | 6c 61 73 74 5f 6d 6e 20 |.5;.X.X.|last_mn |
|000008c0| 3d 20 6d 6e 3b 0a 58 09 | 6c 61 73 74 5f 64 79 20 |= mn;.X.|last_dy |
|000008d0| 3d 20 64 79 3b 0a 58 09 | 6c 61 73 74 5f 79 72 20 |= dy;.X.|last_yr |
|000008e0| 3d 20 79 72 3b 0a 58 09 | 6c 61 73 74 5f 6d 6a 64 |= yr;.X.|last_mjd|
|000008f0| 20 3d 20 2a 6d 6a 64 3b | 0a 58 7d 0a 58 0a 58 2f | = *mjd;|.X}.X.X/|
|00000900| 2a 20 67 69 76 65 6e 20 | 74 68 65 20 6d 6f 64 69 |* given |the modi|
|00000910| 66 69 65 64 20 4a 75 6c | 69 61 6e 20 64 61 74 65 |fied Jul|ian date|
|00000920| 20 28 6e 75 6d 62 65 72 | 20 6f 66 20 64 61 79 73 | (number| of days|
|00000930| 20 65 6c 61 70 73 65 64 | 20 73 69 6e 63 65 20 31 | elapsed| since 1|
|00000940| 39 30 30 20 6a 61 6e 20 | 30 2e 35 2c 29 2c 0a 58 |900 jan |0.5,),.X|
|00000950| 20 2a 20 6d 6a 64 2c 20 | 72 65 74 75 72 6e 20 74 | * mjd, |return t|
|00000960| 68 65 20 63 61 6c 65 6e | 64 61 72 20 64 61 74 65 |he calen|dar date|
|00000970| 20 69 6e 20 6d 6f 6e 74 | 68 73 2c 20 2a 6d 6e 2c | in mont|hs, *mn,|
|00000980| 20 64 61 79 73 2c 20 2a | 64 79 2c 20 61 6e 64 20 | days, *|dy, and |
|00000990| 79 65 61 72 73 2c 20 2a | 79 72 2e 0a 58 20 2a 2f |years, *|yr..X */|
|000009a0| 0a 58 76 6f 69 64 0a 58 | 6d 6a 64 5f 63 61 6c 20 |.Xvoid.X|mjd_cal |
|000009b0| 28 6d 6a 64 2c 20 6d 6e | 2c 20 64 79 2c 20 79 72 |(mjd, mn|, dy, yr|
|000009c0| 29 0a 58 64 6f 75 62 6c | 65 20 6d 6a 64 3b 0a 58 |).Xdoubl|e mjd;.X|
|000009d0| 69 6e 74 20 2a 6d 6e 2c | 20 2a 79 72 3b 0a 58 64 |int *mn,| *yr;.Xd|
|000009e0| 6f 75 62 6c 65 20 2a 64 | 79 3b 0a 58 7b 0a 58 09 |ouble *d|y;.X{.X.|
|000009f0| 73 74 61 74 69 63 20 64 | 6f 75 62 6c 65 20 6c 61 |static d|ouble la|
|00000a00| 73 74 5f 6d 6a 64 2c 20 | 6c 61 73 74 5f 64 79 3b |st_mjd, |last_dy;|
|00000a10| 0a 58 09 73 74 61 74 69 | 63 20 69 6e 74 20 6c 61 |.X.stati|c int la|
|00000a20| 73 74 5f 6d 6e 2c 20 6c | 61 73 74 5f 79 72 3b 0a |st_mn, l|ast_yr;.|
|00000a30| 58 09 64 6f 75 62 6c 65 | 20 64 2c 20 66 3b 0a 58 |X.double| d, f;.X|
|00000a40| 09 64 6f 75 62 6c 65 20 | 69 2c 20 61 2c 20 62 2c |.double |i, a, b,|
|00000a50| 20 63 65 2c 20 67 3b 0a | 58 0a 58 09 69 66 20 28 | ce, g;.|X.X.if (|
|00000a60| 6d 6a 64 20 3d 3d 20 6c | 61 73 74 5f 6d 6a 64 29 |mjd == l|ast_mjd)|
|00000a70| 20 7b 0a 58 09 20 20 20 | 20 2a 6d 6e 20 3d 20 6c | {.X. | *mn = l|
|00000a80| 61 73 74 5f 6d 6e 3b 0a | 58 09 20 20 20 20 2a 79 |ast_mn;.|X. *y|
|00000a90| 72 20 3d 20 6c 61 73 74 | 5f 79 72 3b 0a 58 09 20 |r = last|_yr;.X. |
|00000aa0| 20 20 20 2a 64 79 20 3d | 20 6c 61 73 74 5f 64 79 | *dy =| last_dy|
|00000ab0| 3b 0a 58 09 20 20 20 20 | 72 65 74 75 72 6e 3b 0a |;.X. |return;.|
|00000ac0| 58 09 7d 0a 58 0a 58 09 | 64 20 3d 20 6d 6a 64 20 |X.}.X.X.|d = mjd |
|00000ad0| 2b 20 30 2e 35 3b 0a 58 | 09 69 20 3d 20 66 6c 6f |+ 0.5;.X|.i = flo|
|00000ae0| 6f 72 28 64 29 3b 0a 58 | 09 66 20 3d 20 64 2d 69 |or(d);.X|.f = d-i|
|00000af0| 3b 0a 58 09 69 66 20 28 | 66 20 3d 3d 20 31 29 20 |;.X.if (|f == 1) |
|00000b00| 7b 0a 58 09 20 20 20 20 | 66 20 3d 20 30 3b 0a 58 |{.X. |f = 0;.X|
|00000b10| 09 20 20 20 20 69 20 2b | 3d 20 31 3b 0a 58 09 7d |. i +|= 1;.X.}|
|00000b20| 0a 58 0a 58 09 69 66 20 | 28 69 20 3e 20 2d 31 31 |.X.X.if |(i > -11|
|00000b30| 35 38 36 30 2e 30 29 20 | 7b 0a 58 09 20 20 20 20 |5860.0) |{.X. |
|00000b40| 61 20 3d 20 66 6c 6f 6f | 72 28 28 69 2f 33 36 35 |a = floo|r((i/365|
|00000b50| 32 34 2e 32 35 29 2b 2e | 39 39 38 33 35 37 33 29 |24.25)+.|9983573)|
|00000b60| 2b 31 34 3b 0a 58 09 20 | 20 20 20 69 20 2b 3d 20 |+14;.X. | i += |
|00000b70| 31 20 2b 20 61 20 2d 20 | 66 6c 6f 6f 72 28 61 2f |1 + a - |floor(a/|
|00000b80| 34 2e 30 29 3b 0a 58 09 | 7d 0a 58 0a 58 09 62 20 |4.0);.X.|}.X.X.b |
|00000b90| 3d 20 66 6c 6f 6f 72 28 | 28 69 2f 33 36 35 2e 32 |= floor(|(i/365.2|
|00000ba0| 35 29 2b 2e 38 30 32 36 | 30 31 29 3b 0a 58 09 63 |5)+.8026|01);.X.c|
|00000bb0| 65 20 3d 20 69 20 2d 20 | 66 6c 6f 6f 72 28 28 33 |e = i - |floor((3|
|00000bc0| 36 35 2e 32 35 2a 62 29 | 2b 2e 37 35 30 30 30 31 |65.25*b)|+.750001|
|00000bd0| 29 2b 34 31 36 3b 0a 58 | 09 67 20 3d 20 66 6c 6f |)+416;.X|.g = flo|
|00000be0| 6f 72 28 63 65 2f 33 30 | 2e 36 30 30 31 29 3b 0a |or(ce/30|.6001);.|
|00000bf0| 58 09 2a 6d 6e 20 3d 20 | 67 20 2d 20 31 3b 0a 58 |X.*mn = |g - 1;.X|
|00000c00| 09 2a 64 79 20 3d 20 63 | 65 20 2d 20 66 6c 6f 6f |.*dy = c|e - floo|
|00000c10| 72 28 33 30 2e 36 30 30 | 31 2a 67 29 2b 66 3b 0a |r(30.600|1*g)+f;.|
|00000c20| 58 09 2a 79 72 20 3d 20 | 62 20 2b 20 31 38 39 39 |X.*yr = |b + 1899|
|00000c30| 3b 0a 58 0a 58 09 69 66 | 20 28 67 20 3e 20 31 33 |;.X.X.if| (g > 13|
|00000c40| 2e 35 29 0a 58 09 20 20 | 20 20 2a 6d 6e 20 3d 20 |.5).X. | *mn = |
|00000c50| 67 20 2d 20 31 33 3b 0a | 58 09 69 66 20 28 2a 6d |g - 13;.|X.if (*m|
|00000c60| 6e 20 3c 20 32 2e 35 29 | 0a 58 09 20 20 20 20 2a |n < 2.5)|.X. *|
|00000c70| 79 72 20 3d 20 62 20 2b | 20 31 39 30 30 3b 0a 58 |yr = b +| 1900;.X|
|00000c80| 09 69 66 20 28 2a 79 72 | 20 3c 20 31 29 0a 58 09 |.if (*yr| < 1).X.|
|00000c90| 20 20 20 20 2a 79 72 20 | 2d 3d 20 31 3b 0a 58 0a | *yr |-= 1;.X.|
|00000ca0| 58 09 6c 61 73 74 5f 6d | 6e 20 3d 20 2a 6d 6e 3b |X.last_m|n = *mn;|
|00000cb0| 0a 58 09 6c 61 73 74 5f | 64 79 20 3d 20 2a 64 79 |.X.last_|dy = *dy|
|00000cc0| 3b 0a 58 09 6c 61 73 74 | 5f 79 72 20 3d 20 2a 79 |;.X.last|_yr = *y|
|00000cd0| 72 3b 0a 58 09 6c 61 73 | 74 5f 6d 6a 64 20 3d 20 |r;.X.las|t_mjd = |
|00000ce0| 6d 6a 64 3b 0a 58 7d 0a | 58 0a 58 2f 2a 20 67 69 |mjd;.X}.|X.X/* gi|
|00000cf0| 76 65 6e 20 61 6e 20 6d | 6a 64 2c 20 73 65 74 20 |ven an m|jd, set |
|00000d00| 2a 64 6f 77 20 74 6f 20 | 30 2e 2e 36 20 61 63 63 |*dow to |0..6 acc|
|00000d10| 6f 72 64 69 6e 67 20 74 | 6f 20 77 68 69 63 68 20 |ording t|o which |
|00000d20| 64 61 79 20 6f 66 20 74 | 68 65 20 77 65 65 6b 20 |day of t|he week |
|00000d30| 69 74 20 66 61 6c 6c 73 | 0a 58 20 2a 20 6f 6e 20 |it falls|.X * on |
|00000d40| 28 30 3d 73 75 6e 64 61 | 79 29 20 6f 72 20 73 65 |(0=sunda|y) or se|
|00000d50| 74 20 69 74 20 74 6f 20 | 2d 31 20 69 66 20 63 61 |t it to |-1 if ca|
|00000d60| 6e 27 74 20 66 69 67 75 | 72 65 20 69 74 20 6f 75 |n't figu|re it ou|
|00000d70| 74 2e 0a 58 20 2a 2f 0a | 58 76 6f 69 64 0a 58 6d |t..X */.|Xvoid.Xm|
|00000d80| 6a 64 5f 64 6f 77 20 28 | 6d 6a 64 2c 20 64 6f 77 |jd_dow (|mjd, dow|
|00000d90| 29 0a 58 64 6f 75 62 6c | 65 20 6d 6a 64 3b 0a 58 |).Xdoubl|e mjd;.X|
|00000da0| 69 6e 74 20 2a 64 6f 77 | 3b 0a 58 7b 0a 58 09 2f |int *dow|;.X{.X./|
|00000db0| 2a 20 63 61 6c 5f 6d 6a | 64 28 29 20 75 73 65 73 |* cal_mj|d() uses|
|00000dc0| 20 47 72 65 67 6f 72 69 | 61 6e 20 64 61 74 65 73 | Gregori|an dates|
|00000dd0| 20 6f 6e 20 6f 72 20 61 | 66 74 65 72 20 4f 63 74 | on or a|fter Oct|
|00000de0| 20 31 35 2c 20 31 35 38 | 32 2e 0a 58 09 20 2a 20 | 15, 158|2..X. * |
|00000df0| 28 50 6f 70 65 20 47 72 | 65 67 6f 72 79 20 58 49 |(Pope Gr|egory XI|
|00000e00| 49 49 20 64 72 6f 70 70 | 65 64 20 31 30 20 64 61 |II dropp|ed 10 da|
|00000e10| 79 73 2c 20 4f 63 74 20 | 35 2e 2e 31 34 2c 20 61 |ys, Oct |5..14, a|
|00000e20| 6e 64 20 69 6d 70 72 6f | 76 65 64 20 74 68 65 20 |nd impro|ved the |
|00000e30| 6c 65 61 70 2d 0a 58 09 | 20 2a 20 79 65 61 72 20 |leap-.X.| * year |
|00000e40| 61 6c 67 6f 72 69 74 68 | 6d 29 2e 20 68 6f 77 65 |algorith|m). howe|
|00000e50| 76 65 72 2c 20 47 72 65 | 61 74 20 42 72 69 74 69 |ver, Gre|at Briti|
|00000e60| 61 6e 20 61 6e 64 20 74 | 68 65 20 63 6f 6c 6f 6e |an and t|he colon|
|00000e70| 69 65 73 20 64 69 64 20 | 6e 6f 74 0a 58 09 20 2a |ies did |not.X. *|
|00000e80| 20 61 64 6f 70 74 20 69 | 74 20 75 6e 74 69 6c 20 | adopt i|t until |
|00000e90| 53 65 70 74 20 31 34 2c | 20 31 37 35 32 20 28 74 |Sept 14,| 1752 (t|
|00000ea0| 68 65 79 20 64 72 6f 70 | 70 65 64 20 31 31 20 64 |hey drop|ped 11 d|
|00000eb0| 61 79 73 2c 20 53 65 70 | 74 20 33 2d 31 33 2c 0a |ays, Sep|t 3-13,.|
|00000ec0| 58 09 20 2a 20 64 75 65 | 20 74 6f 20 61 64 64 69 |X. * due| to addi|
|00000ed0| 74 69 6f 6e 61 6c 20 61 | 63 63 75 6d 75 6c 61 74 |tional a|ccumulat|
|00000ee0| 65 64 20 65 72 72 6f 72 | 29 2e 20 6c 65 61 70 20 |ed error|). leap |
|00000ef0| 79 65 61 72 73 20 62 65 | 66 6f 72 65 20 31 37 35 |years be|fore 175|
|00000f00| 32 20 74 68 75 73 0a 58 | 09 20 2a 20 63 61 6e 20 |2 thus.X|. * can |
|00000f10| 6e 6f 74 20 65 61 73 69 | 6c 79 20 62 65 20 61 63 |not easi|ly be ac|
|00000f20| 63 6f 75 6e 74 65 64 20 | 66 6f 72 20 66 72 6f 6d |counted |for from|
|00000f30| 20 74 68 65 20 63 61 6c | 5f 6d 6a 64 28 29 20 6e | the cal|_mjd() n|
|00000f40| 75 6d 62 65 72 2e 2e 2e | 0a 58 09 20 2a 2f 0a 58 |umber...|.X. */.X|
|00000f50| 09 69 66 20 28 6d 6a 64 | 20 3c 20 2d 35 33 37 39 |.if (mjd| < -5379|
|00000f60| 38 2e 35 29 20 7b 0a 58 | 09 20 20 20 20 2f 2a 20 |8.5) {.X|. /* |
|00000f70| 70 72 65 20 73 65 70 74 | 20 31 34 2c 20 31 37 35 |pre sept| 14, 175|
|00000f80| 32 20 74 6f 6f 20 68 61 | 72 64 20 74 6f 20 63 6f |2 too ha|rd to co|
|00000f90| 72 72 65 63 74 20 2a 2f | 0a 58 09 20 20 20 20 2a |rrect */|.X. *|
|00000fa0| 64 6f 77 20 3d 20 2d 31 | 3b 0a 58 09 20 20 20 20 |dow = -1|;.X. |
|00000fb0| 72 65 74 75 72 6e 3b 0a | 58 09 7d 0a 58 09 2a 64 |return;.|X.}.X.*d|
|00000fc0| 6f 77 20 3d 20 28 28 6c | 6f 6e 67 29 66 6c 6f 6f |ow = ((l|ong)floo|
|00000fd0| 72 28 6d 6a 64 2d 2e 35 | 29 20 2b 20 31 29 20 25 |r(mjd-.5|) + 1) %|
|00000fe0| 20 37 3b 2f 2a 20 31 2f | 31 2f 31 39 30 30 20 28 | 7;/* 1/|1/1900 (|
|00000ff0| 6d 6a 64 20 30 2e 35 29 | 20 69 73 20 61 20 4d 6f |mjd 0.5)| is a Mo|
|00001000| 6e 64 61 79 2a 2f 0a 58 | 09 69 66 20 28 2a 64 6f |nday*/.X|.if (*do|
|00001010| 77 20 3c 20 30 29 0a 58 | 09 20 20 20 20 2a 64 6f |w < 0).X|. *do|
|00001020| 77 20 2b 3d 20 37 3b 0a | 58 7d 0a 58 0a 58 2f 2a |w += 7;.|X}.X.X/*|
|00001030| 20 67 69 76 65 6e 20 61 | 20 6d 6a 64 2c 20 72 65 | given a| mjd, re|
|00001040| 74 75 72 6e 20 74 68 65 | 20 74 68 65 20 6e 75 6d |turn the| the num|
|00001050| 62 65 72 20 6f 66 20 64 | 61 79 73 20 69 6e 20 74 |ber of d|ays in t|
|00001060| 68 65 20 6d 6f 6e 74 68 | 2e 20 20 2a 2f 0a 58 76 |he month|. */.Xv|
|00001070| 6f 69 64 0a 58 6d 6a 64 | 5f 64 70 6d 20 28 6d 6a |oid.Xmjd|_dpm (mj|
|00001080| 64 2c 20 6e 64 61 79 73 | 29 0a 58 64 6f 75 62 6c |d, ndays|).Xdoubl|
|00001090| 65 20 6d 6a 64 3b 0a 58 | 69 6e 74 20 2a 6e 64 61 |e mjd;.X|int *nda|
|000010a0| 79 73 3b 0a 58 7b 0a 58 | 09 73 74 61 74 69 63 20 |ys;.X{.X|.static |
|000010b0| 73 68 6f 72 74 20 64 70 | 6d 5b 5d 20 3d 20 7b 33 |short dp|m[] = {3|
|000010c0| 31 2c 20 32 38 2c 20 33 | 31 2c 20 33 30 2c 20 33 |1, 28, 3|1, 30, 3|
|000010d0| 31 2c 20 33 30 2c 20 33 | 31 2c 20 33 31 2c 20 33 |1, 30, 3|1, 31, 3|
|000010e0| 30 2c 20 33 31 2c 20 33 | 30 2c 20 33 31 7d 3b 0a |0, 31, 3|0, 31};.|
|000010f0| 58 09 69 6e 74 20 6d 2c | 20 79 3b 0a 58 09 64 6f |X.int m,| y;.X.do|
|00001100| 75 62 6c 65 20 64 3b 0a | 58 0a 58 09 6d 6a 64 5f |uble d;.|X.X.mjd_|
|00001110| 63 61 6c 20 28 6d 6a 64 | 2c 20 26 6d 2c 20 26 64 |cal (mjd|, &m, &d|
|00001120| 2c 20 26 79 29 3b 0a 58 | 09 2a 6e 64 61 79 73 20 |, &y);.X|.*ndays |
|00001130| 3d 20 28 6d 3d 3d 32 20 | 26 26 20 28 28 79 25 34 |= (m==2 |&& ((y%4|
|00001140| 3d 3d 30 20 26 26 20 79 | 25 31 30 30 21 3d 30 29 |==0 && y|%100!=0)|
|00001150| 7c 7c 79 25 34 30 30 3d | 3d 30 29 29 20 3f 20 32 |||y%400=|=0)) ? 2|
|00001160| 39 20 3a 20 64 70 6d 5b | 6d 2d 31 5d 3b 0a 58 7d |9 : dpm[|m-1];.X}|
|00001170| 0a 58 0a 58 2f 2a 20 67 | 69 76 65 6e 20 61 20 6d |.X.X/* g|iven a m|
|00001180| 6a 64 2c 20 72 65 74 75 | 72 6e 20 74 68 65 20 79 |jd, retu|rn the y|
|00001190| 65 61 72 20 61 73 20 61 | 20 64 6f 75 62 6c 65 2e |ear as a| double.|
|000011a0| 20 2a 2f 0a 58 76 6f 69 | 64 0a 58 6d 6a 64 5f 79 | */.Xvoi|d.Xmjd_y|
|000011b0| 65 61 72 20 28 6d 6a 64 | 2c 20 79 72 29 0a 58 64 |ear (mjd|, yr).Xd|
|000011c0| 6f 75 62 6c 65 20 6d 6a | 64 3b 0a 58 64 6f 75 62 |ouble mj|d;.Xdoub|
|000011d0| 6c 65 20 2a 79 72 3b 0a | 58 7b 0a 58 09 73 74 61 |le *yr;.|X{.X.sta|
|000011e0| 74 69 63 20 64 6f 75 62 | 6c 65 20 6c 61 73 74 5f |tic doub|le last_|
|000011f0| 6d 6a 64 2c 20 6c 61 73 | 74 5f 79 72 3b 0a 58 09 |mjd, las|t_yr;.X.|
|00001200| 69 6e 74 20 6d 2c 20 79 | 3b 0a 58 09 64 6f 75 62 |int m, y|;.X.doub|
|00001210| 6c 65 20 64 3b 0a 58 09 | 64 6f 75 62 6c 65 20 65 |le d;.X.|double e|
|00001220| 30 2c 20 65 31 3b 09 2f | 2a 20 6d 6a 64 20 6f 66 |0, e1;./|* mjd of|
|00001230| 20 73 74 61 72 74 20 6f | 66 20 74 68 69 73 20 79 | start o|f this y|
|00001240| 65 61 72 2c 20 73 74 61 | 72 74 20 6f 66 20 6e 65 |ear, sta|rt of ne|
|00001250| 78 74 20 79 65 61 72 20 | 2a 2f 0a 58 0a 58 09 69 |xt year |*/.X.X.i|
|00001260| 66 20 28 6d 6a 64 20 3d | 3d 20 6c 61 73 74 5f 6d |f (mjd =|= last_m|
|00001270| 6a 64 29 20 7b 0a 58 09 | 20 20 20 20 2a 79 72 20 |jd) {.X.| *yr |
|00001280| 3d 20 6c 61 73 74 5f 79 | 72 3b 0a 58 09 20 20 20 |= last_y|r;.X. |
|00001290| 20 72 65 74 75 72 6e 3b | 0a 58 09 7d 0a 58 0a 58 | return;|.X.}.X.X|
|000012a0| 09 6d 6a 64 5f 63 61 6c | 20 28 6d 6a 64 2c 20 26 |.mjd_cal| (mjd, &|
|000012b0| 6d 2c 20 26 64 2c 20 26 | 79 29 3b 0a 58 09 69 66 |m, &d, &|y);.X.if|
|000012c0| 20 28 79 20 3d 3d 20 2d | 31 29 20 79 20 3d 20 2d | (y == -|1) y = -|
|000012d0| 32 3b 0a 58 09 63 61 6c | 5f 6d 6a 64 20 28 31 2c |2;.X.cal|_mjd (1,|
|000012e0| 20 31 2e 30 2c 20 79 2c | 20 26 65 30 29 3b 0a 58 | 1.0, y,| &e0);.X|
|000012f0| 09 63 61 6c 5f 6d 6a 64 | 20 28 31 2c 20 31 2e 30 |.cal_mjd| (1, 1.0|
|00001300| 2c 20 79 2b 31 2c 20 26 | 65 31 29 3b 0a 58 09 2a |, y+1, &|e1);.X.*|
|00001310| 79 72 20 3d 20 79 20 2b | 20 28 6d 6a 64 20 2d 20 |yr = y +| (mjd - |
|00001320| 65 30 29 2f 28 65 31 20 | 2d 20 65 30 29 3b 0a 58 |e0)/(e1 |- e0);.X|
|00001330| 0a 58 09 6c 61 73 74 5f | 6d 6a 64 20 3d 20 6d 6a |.X.last_|mjd = mj|
|00001340| 64 3b 0a 58 09 6c 61 73 | 74 5f 79 72 20 3d 20 2a |d;.X.las|t_yr = *|
|00001350| 79 72 3b 0a 58 7d 0a 58 | 0a 58 2f 2a 20 67 69 76 |yr;.X}.X|.X/* giv|
|00001360| 65 6e 20 61 20 64 65 63 | 69 6d 61 6c 20 79 65 61 |en a dec|imal yea|
|00001370| 72 2c 20 72 65 74 75 72 | 6e 20 6d 6a 64 20 2a 2f |r, retur|n mjd */|
|00001380| 0a 58 76 6f 69 64 0a 58 | 79 65 61 72 5f 6d 6a 64 |.Xvoid.X|year_mjd|
|00001390| 20 28 79 2c 20 6d 6a 64 | 29 0a 58 64 6f 75 62 6c | (y, mjd|).Xdoubl|
|000013a0| 65 20 79 3b 0a 58 64 6f | 75 62 6c 65 20 2a 6d 6a |e y;.Xdo|uble *mj|
|000013b0| 64 3b 0a 58 7b 0a 58 09 | 64 6f 75 62 6c 65 20 65 |d;.X{.X.|double e|
|000013c0| 30 2c 20 65 31 3b 09 2f | 2a 20 6d 6a 64 20 6f 66 |0, e1;./|* mjd of|
|000013d0| 20 73 74 61 72 74 20 6f | 66 20 74 68 69 73 20 79 | start o|f this y|
|000013e0| 65 61 72 2c 20 73 74 61 | 72 74 20 6f 66 20 6e 65 |ear, sta|rt of ne|
|000013f0| 78 74 20 79 65 61 72 20 | 2a 2f 0a 58 09 69 6e 74 |xt year |*/.X.int|
|00001400| 20 79 66 20 3d 20 66 6c | 6f 6f 72 20 28 79 29 3b | yf = fl|oor (y);|
|00001410| 0a 58 09 69 66 20 28 79 | 66 20 3d 3d 20 2d 31 29 |.X.if (y|f == -1)|
|00001420| 20 79 66 20 3d 20 2d 32 | 3b 0a 58 0a 58 09 63 61 | yf = -2|;.X.X.ca|
|00001430| 6c 5f 6d 6a 64 20 28 31 | 2c 20 31 2e 30 2c 20 79 |l_mjd (1|, 1.0, y|
|00001440| 66 2c 20 26 65 30 29 3b | 0a 58 09 63 61 6c 5f 6d |f, &e0);|.X.cal_m|
|00001450| 6a 64 20 28 31 2c 20 31 | 2e 30 2c 20 79 66 2b 31 |jd (1, 1|.0, yf+1|
|00001460| 2c 20 26 65 31 29 3b 0a | 58 09 2a 6d 6a 64 20 3d |, &e1);.|X.*mjd =|
|00001470| 20 65 30 20 2b 20 28 79 | 20 2d 20 79 66 29 2a 28 | e0 + (y| - yf)*(|
|00001480| 65 31 2d 65 30 29 3b 0a | 58 7d 0a 45 4e 44 5f 4f |e1-e0);.|X}.END_O|
|00001490| 46 5f 46 49 4c 45 0a 20 | 20 69 66 20 74 65 73 74 |F_FILE. | if test|
|000014a0| 20 33 37 32 36 20 2d 6e | 65 20 60 77 63 20 2d 63 | 3726 -n|e `wc -c|
|000014b0| 20 3c 27 63 61 6c 5f 6d | 6a 64 2e 63 27 60 3b 20 | <'cal_m|jd.c'`; |
|000014c0| 74 68 65 6e 0a 20 20 20 | 20 65 63 68 6f 20 73 68 |then. | echo sh|
|000014d0| 61 72 3a 20 5c 22 27 63 | 61 6c 5f 6d 6a 64 2e 63 |ar: \"'c|al_mjd.c|
|000014e0| 27 5c 22 20 75 6e 70 61 | 63 6b 65 64 20 77 69 74 |'\" unpa|cked wit|
|000014f0| 68 20 77 72 6f 6e 67 20 | 73 69 7a 65 21 0a 20 20 |h wrong |size!. |
|00001500| 66 69 0a 20 20 23 20 65 | 6e 64 20 6f 66 20 27 63 |fi. # e|nd of 'c|
|00001510| 61 6c 5f 6d 6a 64 2e 63 | 27 0a 66 69 0a 69 66 20 |al_mjd.c|'.fi.if |
|00001520| 74 65 73 74 20 2d 66 20 | 27 64 61 74 61 6d 65 6e |test -f |'datamen|
|00001530| 75 2e 63 27 20 2d 61 20 | 22 24 7b 31 7d 22 20 21 |u.c' -a |"${1}" !|
|00001540| 3d 20 22 2d 63 22 20 3b | 20 74 68 65 6e 20 0a 20 |= "-c" ;| then . |
|00001550| 20 65 63 68 6f 20 73 68 | 61 72 3a 20 57 69 6c 6c | echo sh|ar: Will|
|00001560| 20 6e 6f 74 20 63 6c 6f | 62 62 65 72 20 65 78 69 | not clo|bber exi|
|00001570| 73 74 69 6e 67 20 66 69 | 6c 65 20 5c 22 27 64 61 |sting fi|le \"'da|
|00001580| 74 61 6d 65 6e 75 2e 63 | 27 5c 22 0a 65 6c 73 65 |tamenu.c|'\".else|
|00001590| 0a 20 20 65 63 68 6f 20 | 73 68 61 72 3a 20 45 78 |. echo |shar: Ex|
|000015a0| 74 72 61 63 74 69 6e 67 | 20 5c 22 27 64 61 74 61 |tracting| \"'data|
|000015b0| 6d 65 6e 75 2e 63 27 5c | 22 20 5c 28 34 37 37 32 |menu.c'\|" \(4772|
|000015c0| 32 20 63 68 61 72 61 63 | 74 65 72 73 5c 29 0a 20 |2 charac|ters\). |
|000015d0| 20 73 65 64 20 22 73 2f | 5e 58 2f 2f 22 20 3e 27 | sed "s/|^X//" >'|
|000015e0| 64 61 74 61 6d 65 6e 75 | 2e 63 27 20 3c 3c 27 45 |datamenu|.c' <<'E|
|000015f0| 4e 44 5f 4f 46 5f 46 49 | 4c 45 27 0a 58 2f 2a 20 |ND_OF_FI|LE'.X/* |
|00001600| 63 6f 64 65 20 74 6f 20 | 6d 61 6e 61 67 65 20 74 |code to |manage t|
|00001610| 68 65 20 73 74 75 66 66 | 20 6f 6e 20 74 68 65 20 |he stuff| on the |
|00001620| 22 64 61 74 61 22 20 6d | 65 6e 75 2e 0a 58 20 2a |"data" m|enu..X *|
|00001630| 20 66 75 6e 63 74 69 6f | 6e 73 20 66 6f 72 20 74 | functio|ns for t|
|00001640| 68 65 20 6d 61 69 6e 20 | 64 61 74 61 20 74 61 62 |he main |data tab|
|00001650| 6c 65 20 61 72 65 20 70 | 72 65 66 69 78 65 64 20 |le are p|refixed |
|00001660| 77 69 74 68 20 64 6d 2e | 0a 58 20 2a 20 66 75 6e |with dm.|.X * fun|
|00001670| 63 74 69 6f 6e 73 20 66 | 6f 72 20 74 68 65 20 73 |ctions f|or the s|
|00001680| 65 74 75 70 20 6d 65 6e | 75 20 61 72 65 20 70 72 |etup men|u are pr|
|00001690| 65 66 69 78 65 64 20 77 | 69 74 68 20 64 73 2e 0a |efixed w|ith ds..|
|000016a0| 58 20 2a 2f 0a 58 0a 58 | 23 69 6e 63 6c 75 64 65 |X */.X.X|#include|
|000016b0| 20 3c 73 74 64 69 6f 2e | 68 3e 0a 58 23 69 6e 63 | <stdio.|h>.X#inc|
|000016c0| 6c 75 64 65 20 3c 63 74 | 79 70 65 2e 68 3e 0a 58 |lude <ct|ype.h>.X|
|000016d0| 23 69 6e 63 6c 75 64 65 | 20 3c 6d 61 74 68 2e 68 |#include| <math.h|
|000016e0| 3e 0a 58 23 69 66 20 64 | 65 66 69 6e 65 64 28 5f |>.X#if d|efined(_|
|000016f0| 5f 53 54 44 43 5f 5f 29 | 0a 58 23 69 6e 63 6c 75 |_STDC__)|.X#inclu|
|00001700| 64 65 20 3c 73 74 64 6c | 69 62 2e 68 3e 0a 58 23 |de <stdl|ib.h>.X#|
|00001710| 65 6e 64 69 66 0a 58 23 | 69 6e 63 6c 75 64 65 20 |endif.X#|include |
|00001720| 3c 58 6d 2f 58 6d 2e 68 | 3e 0a 58 23 69 6e 63 6c |<Xm/Xm.h|>.X#incl|
|00001730| 75 64 65 20 3c 58 6d 2f | 46 6f 72 6d 2e 68 3e 0a |ude <Xm/|Form.h>.|
|00001740| 58 23 69 6e 63 6c 75 64 | 65 20 3c 58 6d 2f 46 72 |X#includ|e <Xm/Fr|
|00001750| 61 6d 65 2e 68 3e 0a 58 | 23 69 6e 63 6c 75 64 65 |ame.h>.X|#include|
|00001760| 20 3c 58 6d 2f 4c 61 62 | 65 6c 2e 68 3e 0a 58 23 | <Xm/Lab|el.h>.X#|
|00001770| 69 6e 63 6c 75 64 65 20 | 3c 58 6d 2f 50 75 73 68 |include |<Xm/Push|
|00001780| 42 2e 68 3e 0a 58 23 69 | 6e 63 6c 75 64 65 20 3c |B.h>.X#i|nclude <|
|00001790| 58 6d 2f 54 6f 67 67 6c | 65 42 2e 68 3e 0a 58 23 |Xm/Toggl|eB.h>.X#|
|000017a0| 69 6e 63 6c 75 64 65 20 | 3c 58 6d 2f 52 6f 77 43 |include |<Xm/RowC|
|000017b0| 6f 6c 75 6d 6e 2e 68 3e | 0a 58 23 69 6e 63 6c 75 |olumn.h>|.X#inclu|
|000017c0| 64 65 20 3c 58 6d 2f 53 | 65 70 61 72 61 74 6f 72 |de <Xm/S|eparator|
|000017d0| 2e 68 3e 0a 58 23 69 6e | 63 6c 75 64 65 20 22 61 |.h>.X#in|clude "a|
|000017e0| 73 74 72 6f 2e 68 22 0a | 58 23 69 6e 63 6c 75 64 |stro.h".|X#includ|
|000017f0| 65 20 22 63 69 72 63 75 | 6d 2e 68 22 0a 58 23 69 |e "circu|m.h".X#i|
|00001800| 6e 63 6c 75 64 65 20 22 | 70 72 65 66 65 72 65 6e |nclude "|preferen|
|00001810| 63 65 73 2e 68 22 0a 58 | 0a 58 65 78 74 65 72 6e |ces.h".X|.Xextern|
|00001820| 20 57 69 64 67 65 74 09 | 74 6f 70 6c 65 76 65 6c | Widget.|toplevel|
|00001830| 5f 77 3b 0a 58 0a 58 23 | 69 66 20 64 65 66 69 6e |_w;.X.X#|if defin|
|00001840| 65 64 28 5f 5f 53 54 44 | 43 5f 5f 29 20 7c 7c 20 |ed(__STD|C__) || |
|00001850| 64 65 66 69 6e 65 64 28 | 5f 5f 63 70 6c 75 73 70 |defined(|__cplusp|
|00001860| 6c 75 73 29 0a 58 23 64 | 65 66 69 6e 65 20 50 5f |lus).X#d|efine P_|
|00001870| 28 73 29 20 73 0a 58 23 | 65 6c 73 65 0a 58 23 64 |(s) s.X#|else.X#d|
|00001880| 65 66 69 6e 65 20 50 5f | 28 73 29 20 28 29 0a 58 |efine P_|(s) ().X|
|00001890| 23 65 6e 64 69 66 0a 58 | 0a 58 65 78 74 65 72 6e |#endif.X|.Xextern|
|000018a0| 20 4e 6f 77 20 2a 6d 6d | 5f 67 65 74 5f 6e 6f 77 | Now *mm|_get_now|
|000018b0| 20 50 5f 28 28 76 6f 69 | 64 29 29 3b 0a 58 65 78 | P_((voi|d));.Xex|
|000018c0| 74 65 72 6e 20 4f 62 6a | 20 2a 64 62 5f 62 61 73 |tern Obj| *db_bas|
|000018d0| 69 63 20 50 5f 28 28 69 | 6e 74 20 69 64 29 29 3b |ic P_((i|nt id));|
|000018e0| 0a 58 65 78 74 65 72 6e | 20 69 6e 74 20 61 6e 79 |.Xextern| int any|
|000018f0| 5f 69 73 6f 6e 20 50 5f | 28 28 76 6f 69 64 29 29 |_ison P_|((void))|
|00001900| 3b 0a 58 65 78 74 65 72 | 6e 20 76 6f 69 64 20 63 |;.Xexter|n void c|
|00001910| 6f 6e 66 6e 64 20 50 5f | 28 28 64 6f 75 62 6c 65 |onfnd P_|((double|
|00001920| 20 72 2c 20 64 6f 75 62 | 6c 65 20 64 2c 20 64 6f | r, doub|le d, do|
|00001930| 75 62 6c 65 20 65 2c 20 | 63 68 61 72 20 2a 2a 6e |uble e, |char **n|
|00001940| 61 6d 65 29 29 3b 0a 58 | 65 78 74 65 72 6e 20 76 |ame));.X|extern v|
|00001950| 6f 69 64 20 64 62 5f 75 | 70 64 61 74 65 20 50 5f |oid db_u|pdate P_|
|00001960| 28 28 4f 62 6a 20 2a 6f | 70 29 29 3b 0a 58 65 78 |((Obj *o|p));.Xex|
|00001970| 74 65 72 6e 20 76 6f 69 | 64 20 66 5f 61 6e 67 6c |tern voi|d f_angl|
|00001980| 65 20 50 5f 28 28 57 69 | 64 67 65 74 20 77 2c 20 |e P_((Wi|dget w, |
|00001990| 64 6f 75 62 6c 65 20 61 | 29 29 3b 0a 58 65 78 74 |double a|));.Xext|
|000019a0| 65 72 6e 20 76 6f 69 64 | 20 66 5f 64 6f 75 62 6c |ern void| f_doubl|
|000019b0| 65 20 50 5f 28 28 57 69 | 64 67 65 74 20 77 2c 20 |e P_((Wi|dget w, |
|000019c0| 63 68 61 72 20 2a 66 6d | 74 2c 20 64 6f 75 62 6c |char *fm|t, doubl|
|000019d0| 65 20 66 29 29 3b 0a 58 | 65 78 74 65 72 6e 20 76 |e f));.X|extern v|
|000019e0| 6f 69 64 20 66 5f 6d 74 | 69 6d 65 20 50 5f 28 28 |oid f_mt|ime P_((|
|000019f0| 57 69 64 67 65 74 20 77 | 2c 20 64 6f 75 62 6c 65 |Widget w|, double|
|00001a00| 20 74 29 29 3b 0a 58 65 | 78 74 65 72 6e 20 76 6f | t));.Xe|xtern vo|
|00001a10| 69 64 20 66 5f 72 61 20 | 50 5f 28 28 57 69 64 67 |id f_ra |P_((Widg|
|00001a20| 65 74 20 77 2c 20 64 6f | 75 62 6c 65 20 72 61 29 |et w, do|uble ra)|
|00001a30| 29 3b 0a 58 65 78 74 65 | 72 6e 20 76 6f 69 64 20 |);.Xexte|rn void |
|00001a40| 66 5f 73 68 6f 77 69 74 | 20 50 5f 28 28 57 69 64 |f_showit| P_((Wid|
|00001a50| 67 65 74 20 77 2c 20 63 | 68 61 72 20 2a 73 29 29 |get w, c|har *s))|
|00001a60| 3b 0a 58 65 78 74 65 72 | 6e 20 76 6f 69 64 20 66 |;.Xexter|n void f|
|00001a70| 5f 73 74 72 69 6e 67 20 | 50 5f 28 28 57 69 64 67 |_string |P_((Widg|
|00001a80| 65 74 20 77 2c 20 63 68 | 61 72 20 2a 73 29 29 3b |et w, ch|ar *s));|
|00001a90| 0a 58 65 78 74 65 72 6e | 20 76 6f 69 64 20 67 65 |.Xextern| void ge|
|00001aa0| 74 5f 73 6f 6d 65 74 68 | 69 6e 67 20 50 5f 28 28 |t_someth|ing P_((|
|00001ab0| 57 69 64 67 65 74 20 77 | 2c 20 63 68 61 72 20 2a |Widget w|, char *|
|00001ac0| 72 65 73 6f 75 72 63 65 | 2c 20 63 68 61 72 20 2a |resource|, char *|
|00001ad0| 76 61 6c 75 65 29 29 3b | 0a 58 65 78 74 65 72 6e |value));|.Xextern|
|00001ae0| 20 76 6f 69 64 20 67 65 | 74 5f 78 6d 73 74 72 69 | void ge|t_xmstri|
|00001af0| 6e 67 20 50 5f 28 28 57 | 69 64 67 65 74 20 77 2c |ng P_((W|idget w,|
|00001b00| 20 63 68 61 72 20 2a 72 | 65 73 6f 75 72 63 65 2c | char *r|esource,|
|00001b10| 20 63 68 61 72 20 2a 2a | 74 78 74 70 29 29 3b 0a | char **|txtp));.|
|00001b20| 58 65 78 74 65 72 6e 20 | 76 6f 69 64 20 68 6c 70 |Xextern |void hlp|
|00001b30| 5f 64 69 61 6c 6f 67 20 | 50 5f 28 28 63 68 61 72 |_dialog |P_((char|
|00001b40| 20 2a 74 61 67 2c 20 63 | 68 61 72 20 2a 64 65 66 | *tag, c|har *def|
|00001b50| 6c 74 5b 5d 2c 20 69 6e | 74 20 6e 64 65 66 6c 74 |lt[], in|t ndeflt|
|00001b60| 29 29 3b 0a 58 65 78 74 | 65 72 6e 20 76 6f 69 64 |));.Xext|ern void|
|00001b70| 20 70 72 6f 6d 70 74 5f | 6d 61 70 5f 63 62 20 50 | prompt_|map_cb P|
|00001b80| 5f 28 28 57 69 64 67 65 | 74 20 77 2c 20 58 74 50 |_((Widge|t w, XtP|
|00001b90| 6f 69 6e 74 65 72 20 63 | 6c 69 65 6e 74 2c 20 58 |ointer c|lient, X|
|00001ba0| 74 50 6f 69 6e 74 65 72 | 20 63 61 6c 6c 29 29 3b |tPointer| call));|
|00001bb0| 0a 58 65 78 74 65 72 6e | 20 76 6f 69 64 20 72 65 |.Xextern| void re|
|00001bc0| 67 69 73 74 65 72 5f 73 | 65 6c 65 63 74 69 6f 6e |gister_s|election|
|00001bd0| 20 50 5f 28 28 63 68 61 | 72 20 2a 6e 61 6d 65 29 | P_((cha|r *name)|
|00001be0| 29 3b 0a 58 65 78 74 65 | 72 6e 20 76 6f 69 64 20 |);.Xexte|rn void |
|00001bf0| 72 69 73 65 74 5f 63 69 | 72 20 50 5f 28 28 4e 6f |riset_ci|r P_((No|
|00001c00| 77 20 2a 6e 70 2c 20 4f | 62 6a 20 2a 6f 70 2c 20 |w *np, O|bj *op, |
|00001c10| 64 6f 75 62 6c 65 20 64 | 69 73 2c 20 52 69 73 65 |double d|is, Rise|
|00001c20| 53 65 74 20 2a 72 70 29 | 29 3b 0a 58 65 78 74 65 |Set *rp)|);.Xexte|
|00001c30| 72 6e 20 76 6f 69 64 20 | 73 65 74 5f 73 6f 6d 65 |rn void |set_some|
|00001c40| 74 68 69 6e 67 20 50 5f | 28 28 57 69 64 67 65 74 |thing P_|((Widget|
|00001c50| 20 77 2c 20 63 68 61 72 | 20 2a 72 65 73 6f 75 72 | w, char| *resour|
|00001c60| 63 65 2c 20 63 68 61 72 | 20 2a 76 61 6c 75 65 29 |ce, char| *value)|
|00001c70| 29 3b 0a 58 65 78 74 65 | 72 6e 20 76 6f 69 64 20 |);.Xexte|rn void |
|00001c80| 74 69 6d 65 73 74 61 6d | 70 20 50 5f 28 28 4e 6f |timestam|p P_((No|
|00001c90| 77 20 2a 6e 70 2c 20 57 | 69 64 67 65 74 20 77 29 |w *np, W|idget w)|
|00001ca0| 29 3b 0a 58 65 78 74 65 | 72 6e 20 76 6f 69 64 20 |);.Xexte|rn void |
|00001cb0| 75 6e 72 65 66 72 61 63 | 74 20 50 5f 28 28 64 6f |unrefrac|t P_((do|
|00001cc0| 75 62 6c 65 20 70 72 2c | 20 64 6f 75 62 6c 65 20 |uble pr,| double |
|00001cd0| 74 72 2c 20 64 6f 75 62 | 6c 65 20 61 61 2c 20 64 |tr, doub|le aa, d|
|00001ce0| 6f 75 62 6c 65 20 2a 74 | 61 29 29 3b 0a 58 65 78 |ouble *t|a));.Xex|
|00001cf0| 74 65 72 6e 20 76 6f 69 | 64 20 77 61 74 63 68 5f |tern voi|d watch_|
|00001d00| 63 75 72 73 6f 72 20 50 | 5f 28 28 69 6e 74 20 77 |cursor P|_((int w|
|00001d10| 61 6e 74 29 29 3b 0a 58 | 65 78 74 65 72 6e 20 76 |ant));.X|extern v|
|00001d20| 6f 69 64 20 78 65 5f 6d | 73 67 20 50 5f 28 28 63 |oid xe_m|sg P_((c|
|00001d30| 68 61 72 20 2a 6d 73 67 | 2c 20 69 6e 74 20 61 70 |har *msg|, int ap|
|00001d40| 70 5f 6d 6f 64 61 6c 29 | 29 3b 0a 58 0a 58 76 6f |p_modal)|);.X.Xvo|
|00001d50| 69 64 20 64 6d 5f 6d 61 | 6e 61 67 65 20 50 5f 28 |id dm_ma|nage P_(|
|00001d60| 28 76 6f 69 64 29 29 3b | 0a 58 76 6f 69 64 20 64 |(void));|.Xvoid d|
|00001d70| 6d 5f 6e 65 77 6f 62 6a | 20 50 5f 28 28 69 6e 74 |m_newobj| P_((int|
|00001d80| 20 64 62 69 64 78 29 29 | 3b 0a 58 76 6f 69 64 20 | dbidx))|;.Xvoid |
|00001d90| 64 6d 5f 75 70 64 61 74 | 65 20 50 5f 28 28 4e 6f |dm_updat|e P_((No|
|00001da0| 77 20 2a 6e 70 2c 20 69 | 6e 74 20 68 6f 77 5f 6d |w *np, i|nt how_m|
|00001db0| 75 63 68 29 29 3b 0a 58 | 76 6f 69 64 20 64 6d 5f |uch));.X|void dm_|
|00001dc0| 73 65 6c 65 63 74 69 6f | 6e 5f 6d 6f 64 65 20 50 |selectio|n_mode P|
|00001dd0| 5f 28 28 69 6e 74 20 77 | 68 65 74 68 65 72 29 29 |_((int w|hether))|
|00001de0| 3b 0a 58 76 6f 69 64 20 | 64 6d 5f 63 75 72 73 6f |;.Xvoid |dm_curso|
|00001df0| 72 20 50 5f 28 28 43 75 | 72 73 6f 72 20 63 29 29 |r P_((Cu|rsor c))|
|00001e00| 3b 0a 58 73 74 61 74 69 | 63 20 76 6f 69 64 20 64 |;.Xstati|c void d|
|00001e10| 6d 5f 63 72 65 61 74 65 | 5f 66 6f 72 6d 20 50 5f |m_create|_form P_|
|00001e20| 28 28 76 6f 69 64 29 29 | 3b 0a 58 73 74 61 74 69 |((void))|;.Xstati|
|00001e30| 63 20 76 6f 69 64 20 64 | 6d 5f 73 65 74 5f 62 75 |c void d|m_set_bu|
|00001e40| 74 74 6f 6e 73 20 50 5f | 28 28 69 6e 74 20 77 68 |ttons P_|((int wh|
|00001e50| 65 74 68 65 72 29 29 3b | 0a 58 73 74 61 74 69 63 |ether));|.Xstatic|
|00001e60| 20 76 6f 69 64 20 64 6d | 5f 63 72 65 61 74 65 5f | void dm|_create_|
|00001e70| 74 61 62 6c 65 20 50 5f | 28 28 57 69 64 67 65 74 |table P_|((Widget|
|00001e80| 20 70 61 72 65 6e 74 29 | 29 3b 0a 58 73 74 61 74 | parent)|);.Xstat|
|00001e90| 69 63 20 76 6f 69 64 20 | 64 6d 5f 61 63 74 69 76 |ic void |dm_activ|
|00001ea0| 61 74 65 5f 63 62 20 50 | 5f 28 28 57 69 64 67 65 |ate_cb P|_((Widge|
|00001eb0| 74 20 77 2c 20 58 74 50 | 6f 69 6e 74 65 72 20 63 |t w, XtP|ointer c|
|00001ec0| 6c 69 65 6e 74 2c 20 58 | 74 50 6f 69 6e 74 65 72 |lient, X|tPointer|
|00001ed0| 20 63 61 6c 6c 29 29 3b | 0a 58 73 74 61 74 69 63 | call));|.Xstatic|
|00001ee0| 20 76 6f 69 64 20 64 6d | 5f 63 6c 6f 73 65 5f 63 | void dm|_close_c|
|00001ef0| 62 20 50 5f 28 28 57 69 | 64 67 65 74 20 77 2c 20 |b P_((Wi|dget w, |
|00001f00| 58 74 50 6f 69 6e 74 65 | 72 20 63 6c 69 65 6e 74 |XtPointe|r client|
|00001f10| 2c 20 58 74 50 6f 69 6e | 74 65 72 20 63 61 6c 6c |, XtPoin|ter call|
|00001f20| 29 29 3b 0a 58 73 74 61 | 74 69 63 20 76 6f 69 64 |));.Xsta|tic void|
|00001f30| 20 64 6d 5f 73 65 74 75 | 70 5f 63 62 20 50 5f 28 | dm_setu|p_cb P_(|
|00001f40| 28 57 69 64 67 65 74 20 | 77 2c 20 58 74 50 6f 69 |(Widget |w, XtPoi|
|00001f50| 6e 74 65 72 20 63 6c 69 | 65 6e 74 2c 20 58 74 50 |nter cli|ent, XtP|
|00001f60| 6f 69 6e 74 65 72 20 63 | 61 6c 6c 29 29 3b 0a 58 |ointer c|all));.X|
|00001f70| 73 74 61 74 69 63 20 76 | 6f 69 64 20 64 6d 5f 68 |static v|oid dm_h|
|00001f80| 65 6c 70 5f 63 62 20 50 | 5f 28 28 57 69 64 67 65 |elp_cb P|_((Widge|
|00001f90| 74 20 77 2c 20 58 74 50 | 6f 69 6e 74 65 72 20 63 |t w, XtP|ointer c|
|00001fa0| 6c 69 65 6e 74 2c 20 58 | 74 50 6f 69 6e 74 65 72 |lient, X|tPointer|
|00001fb0| 20 63 61 6c 6c 29 29 3b | 0a 58 73 74 61 74 69 63 | call));|.Xstatic|
|00001fc0| 20 76 6f 69 64 20 64 6d | 5f 63 6f 6d 70 75 74 65 | void dm|_compute|
|00001fd0| 20 50 5f 28 28 69 6e 74 | 20 72 2c 20 69 6e 74 20 | P_((int| r, int |
|00001fe0| 66 6f 72 63 65 2c 20 4e | 6f 77 20 2a 6e 70 29 29 |force, N|ow *np))|
|00001ff0| 3b 0a 58 73 74 61 74 69 | 63 20 76 6f 69 64 20 64 |;.Xstati|c void d|
|00002000| 6d 5f 66 6f 72 6d 61 74 | 20 50 5f 28 28 4e 6f 77 |m_format| P_((Now|
|00002010| 20 2a 6e 70 2c 20 4f 62 | 6a 20 2a 6f 70 2c 20 52 | *np, Ob|j *op, R|
|00002020| 69 73 65 53 65 74 20 2a | 72 70 2c 20 69 6e 74 20 |iseSet *|rp, int |
|00002030| 63 2c 20 57 69 64 67 65 | 74 20 77 29 29 3b 0a 58 |c, Widge|t w));.X|
|00002040| 73 74 61 74 69 63 20 76 | 6f 69 64 20 64 6d 5f 72 |static v|oid dm_r|
|00002050| 73 5f 61 64 64 70 6c 75 | 73 20 50 5f 28 28 57 69 |s_addplu|s P_((Wi|
|00002060| 64 67 65 74 20 77 2c 20 | 69 6e 74 20 61 64 64 70 |dget w, |int addp|
|00002070| 6c 75 73 29 29 3b 0a 58 | 73 74 61 74 69 63 20 76 |lus));.X|static v|
|00002080| 6f 69 64 20 64 6d 5f 72 | 73 5f 68 72 73 75 70 20 |oid dm_r|s_hrsup |
|00002090| 50 5f 28 28 57 69 64 67 | 65 74 20 77 2c 20 52 69 |P_((Widg|et w, Ri|
|000020a0| 73 65 53 65 74 20 2a 72 | 70 29 29 3b 0a 58 73 74 |seSet *r|p));.Xst|
|000020b0| 61 74 69 63 20 76 6f 69 | 64 20 73 68 6f 77 5f 63 |atic voi|d show_c|
|000020c0| 6f 6e 73 74 65 6c 6c 61 | 74 69 6f 6e 20 50 5f 28 |onstella|tion P_(|
|000020d0| 28 4e 6f 77 20 2a 6e 70 | 2c 20 4f 62 6a 20 2a 6f |(Now *np|, Obj *o|
|000020e0| 70 2c 20 57 69 64 67 65 | 74 20 77 29 29 3b 0a 58 |p, Widge|t w));.X|
|000020f0| 73 74 61 74 69 63 20 76 | 6f 69 64 20 64 6d 5f 73 |static v|oid dm_s|
|00002100| 65 70 61 72 61 74 69 6f | 6e 20 50 5f 28 28 4f 62 |eparatio|n P_((Ob|
|00002110| 6a 20 2a 70 2c 20 4f 62 | 6a 20 2a 71 2c 20 69 6e |j *p, Ob|j *q, in|
|00002120| 74 20 68 6f 77 2c 20 57 | 69 64 67 65 74 20 77 29 |t how, W|idget w)|
|00002130| 29 3b 0a 58 73 74 61 74 | 69 63 20 76 6f 69 64 20 |);.Xstat|ic void |
|00002140| 64 73 5f 63 72 65 61 74 | 65 5f 73 65 6c 65 63 74 |ds_creat|e_select|
|00002150| 69 6f 6e 20 50 5f 28 28 | 57 69 64 67 65 74 20 70 |ion P_((|Widget p|
|00002160| 61 72 65 6e 74 29 29 3b | 0a 58 73 74 61 74 69 63 |arent));|.Xstatic|
|00002170| 20 76 6f 69 64 20 64 73 | 5f 73 65 74 75 70 5f 72 | void ds|_setup_r|
|00002180| 6f 77 5f 73 65 6c 65 63 | 74 69 6f 6e 73 20 50 5f |ow_selec|tions P_|
|00002190| 28 28 76 6f 69 64 29 29 | 3b 0a 58 73 74 61 74 69 |((void))|;.Xstati|
|000021a0| 63 20 76 6f 69 64 20 64 | 73 5f 73 65 74 75 70 5f |c void d|s_setup_|
|000021b0| 63 6f 6c 5f 73 65 6c 65 | 63 74 69 6f 6e 73 20 50 |col_sele|ctions P|
|000021c0| 5f 28 28 69 6e 74 20 77 | 68 61 74 29 29 3b 0a 58 |_((int w|hat));.X|
|000021d0| 73 74 61 74 69 63 20 76 | 6f 69 64 20 64 73 5f 61 |static v|oid ds_a|
|000021e0| 70 70 6c 79 5f 73 65 6c | 65 63 74 69 6f 6e 73 20 |pply_sel|ections |
|000021f0| 50 5f 28 28 76 6f 69 64 | 29 29 3b 0a 58 73 74 61 |P_((void|));.Xsta|
|00002200| 74 69 63 20 76 6f 69 64 | 20 64 73 5f 63 74 6c 5f |tic void| ds_ctl_|
|00002210| 63 62 20 50 5f 28 28 57 | 69 64 67 65 74 20 77 2c |cb P_((W|idget w,|
|00002220| 20 58 74 50 6f 69 6e 74 | 65 72 20 63 6c 69 65 6e | XtPoint|er clien|
|00002230| 74 2c 20 58 74 50 6f 69 | 6e 74 65 72 20 63 61 6c |t, XtPoi|nter cal|
|00002240| 6c 29 29 3b 0a 58 73 74 | 61 74 69 63 20 76 6f 69 |l));.Xst|atic voi|
|00002250| 64 20 64 73 5f 68 65 6c | 70 20 50 5f 28 28 76 6f |d ds_hel|p P_((vo|
|00002260| 69 64 29 29 3b 0a 58 73 | 74 61 74 69 63 20 76 6f |id));.Xs|tatic vo|
|00002270| 69 64 20 64 73 5f 72 6f | 77 5f 74 6f 67 67 6c 65 |id ds_ro|w_toggle|
|00002280| 5f 63 62 20 50 5f 28 28 | 57 69 64 67 65 74 20 77 |_cb P_((|Widget w|
|00002290| 2c 20 58 74 50 6f 69 6e | 74 65 72 20 63 6c 69 65 |, XtPoin|ter clie|
|000022a0| 6e 74 2c 20 58 74 50 6f | 69 6e 74 65 72 20 63 61 |nt, XtPo|inter ca|
|000022b0| 6c 6c 29 29 3b 0a 58 73 | 74 61 74 69 63 20 76 6f |ll));.Xs|tatic vo|
|000022c0| 69 64 20 64 73 5f 63 6f | 6c 5f 74 6f 67 67 6c 65 |id ds_co|l_toggle|
|000022d0| 5f 63 62 20 50 5f 28 28 | 57 69 64 67 65 74 20 77 |_cb P_((|Widget w|
|000022e0| 2c 20 58 74 50 6f 69 6e | 74 65 72 20 63 6c 69 65 |, XtPoin|ter clie|
|000022f0| 6e 74 2c 20 58 74 50 6f | 69 6e 74 65 72 20 63 61 |nt, XtPo|inter ca|
|00002300| 6c 6c 29 29 3b 0a 58 73 | 74 61 74 69 63 20 76 6f |ll));.Xs|tatic vo|
|00002310| 69 64 20 64 73 5f 72 6f | 77 5f 61 6c 6c 5f 63 62 |id ds_ro|w_all_cb|
|00002320| 20 50 5f 28 28 57 69 64 | 67 65 74 20 77 2c 20 58 | P_((Wid|get w, X|
|00002330| 74 50 6f 69 6e 74 65 72 | 20 63 6c 69 65 6e 74 2c |tPointer| client,|
|00002340| 20 58 74 50 6f 69 6e 74 | 65 72 20 63 61 6c 6c 29 | XtPoint|er call)|
|00002350| 29 3b 0a 58 73 74 61 74 | 69 63 20 76 6f 69 64 20 |);.Xstat|ic void |
|00002360| 64 73 5f 63 6f 6c 5f 61 | 6c 6c 5f 63 62 20 50 5f |ds_col_a|ll_cb P_|
|00002370| 28 28 57 69 64 67 65 74 | 20 77 2c 20 58 74 50 6f |((Widget| w, XtPo|
|00002380| 69 6e 74 65 72 20 63 6c | 69 65 6e 74 2c 20 58 74 |inter cl|ient, Xt|
|00002390| 50 6f 69 6e 74 65 72 20 | 63 61 6c 6c 29 29 3b 0a |Pointer |call));.|
|000023a0| 58 73 74 61 74 69 63 20 | 76 6f 69 64 20 64 73 5f |Xstatic |void ds_|
|000023b0| 72 6f 77 5f 72 65 73 65 | 74 5f 63 62 20 50 5f 28 |row_rese|t_cb P_(|
|000023c0| 28 57 69 64 67 65 74 20 | 77 2c 20 58 74 50 6f 69 |(Widget |w, XtPoi|
|000023d0| 6e 74 65 72 20 63 6c 69 | 65 6e 74 2c 20 58 74 50 |nter cli|ent, XtP|
|000023e0| 6f 69 6e 74 65 72 20 63 | 61 6c 6c 29 29 3b 0a 58 |ointer c|all));.X|
|000023f0| 73 74 61 74 69 63 20 76 | 6f 69 64 20 64 73 5f 63 |static v|oid ds_c|
|00002400| 6f 6c 5f 72 65 73 65 74 | 5f 63 62 20 50 5f 28 28 |ol_reset|_cb P_((|
|00002410| 57 69 64 67 65 74 20 77 | 2c 20 58 74 50 6f 69 6e |Widget w|, XtPoin|
|00002420| 74 65 72 20 63 6c 69 65 | 6e 74 2c 20 58 74 50 6f |ter clie|nt, XtPo|
|00002430| 69 6e 74 65 72 20 63 61 | 6c 6c 29 29 3b 0a 58 0a |inter ca|ll));.X.|
|00002440| 58 23 75 6e 64 65 66 20 | 50 5f 0a 58 0a 58 74 79 |X#undef |P_.X.Xty|
|00002450| 70 65 64 65 66 20 73 74 | 72 75 63 74 20 7b 0a 58 |pedef st|ruct {.X|
|00002460| 20 20 20 20 69 6e 74 20 | 64 62 69 64 78 3b 09 09 | int |dbidx;..|
|00002470| 2f 2a 20 64 62 20 69 6e | 64 65 78 20 6f 66 20 6f |/* db in|dex of o|
|00002480| 62 6a 65 63 74 20 6f 6e | 20 74 68 69 73 20 72 6f |bject on| this ro|
|00002490| 77 20 2a 2f 0a 58 20 20 | 20 20 69 6e 74 20 6f 6e |w */.X | int on|
|000024a0| 3b 09 09 2f 2a 20 77 68 | 65 74 68 65 72 20 74 68 |;../* wh|ether th|
|000024b0| 69 73 20 72 6f 77 20 69 | 73 20 63 75 72 72 65 6e |is row i|s curren|
|000024c0| 74 6c 79 20 74 6f 20 62 | 65 20 6f 6e 20 2a 2f 0a |tly to b|e on */.|
|000024d0| 58 20 20 20 20 57 69 64 | 67 65 74 20 6c 77 3b 09 |X Wid|get lw;.|
|000024e0| 09 2f 2a 20 6c 61 62 65 | 6c 20 77 69 64 67 65 74 |./* labe|l widget|
|000024f0| 20 66 6f 72 20 74 68 69 | 73 20 72 6f 77 27 73 20 | for thi|s row's |
|00002500| 68 65 61 64 65 72 20 2a | 2f 0a 58 20 20 20 20 57 |header *|/.X W|
|00002510| 69 64 67 65 74 20 73 77 | 3b 09 09 2f 2a 20 70 75 |idget sw|;../* pu|
|00002520| 73 68 62 75 74 74 6f 6e | 20 77 69 64 67 65 74 20 |shbutton| widget |
|00002530| 66 6f 72 20 74 68 69 73 | 20 72 6f 77 20 69 6e 20 |for this| row in |
|00002540| 73 65 6c 65 63 74 69 6f | 6e 20 6d 65 6e 75 20 2a |selectio|n menu *|
|00002550| 2f 0a 58 7d 20 52 6f 77 | 48 64 72 3b 0a 58 0a 58 |/.X} Row|Hdr;.X.X|
|00002560| 73 74 61 74 69 63 20 52 | 6f 77 48 64 72 20 72 6f |static R|owHdr ro|
|00002570| 77 5b 4e 4f 42 4a 5d 20 | 3d 20 7b 0a 58 20 20 20 |w[NOBJ] |= {.X |
|00002580| 20 7b 53 55 4e 7d 2c 0a | 58 20 20 20 20 7b 4d 4f | {SUN},.|X {MO|
|00002590| 4f 4e 7d 2c 0a 58 20 20 | 20 20 7b 4d 45 52 43 55 |ON},.X | {MERCU|
|000025a0| 52 59 7d 2c 0a 58 20 20 | 20 20 7b 56 45 4e 55 53 |RY},.X | {VENUS|
|000025b0| 7d 2c 0a 58 20 20 20 20 | 7b 4d 41 52 53 7d 2c 0a |},.X |{MARS},.|
|000025c0| 58 20 20 20 20 7b 4a 55 | 50 49 54 45 52 7d 2c 0a |X {JU|PITER},.|
|000025d0| 58 20 20 20 20 7b 53 41 | 54 55 52 4e 7d 2c 0a 58 |X {SA|TURN},.X|
|000025e0| 20 20 20 20 7b 55 52 41 | 4e 55 53 7d 2c 0a 58 20 | {URA|NUS},.X |
|000025f0| 20 20 20 7b 4e 45 50 54 | 55 4e 45 7d 2c 0a 58 20 | {NEPT|UNE},.X |
|00002600| 20 20 20 7b 50 4c 55 54 | 4f 7d 2c 0a 58 20 20 20 | {PLUT|O},.X |
|00002610| 20 7b 4f 42 4a 58 7d 2c | 0a 58 20 20 20 20 7b 4f | {OBJX},|.X {O|
|00002620| 42 4a 59 7d 2c 0a 58 7d | 3b 0a 58 0a 58 74 79 70 |BJY},.X}|;.X.Xtyp|
|00002630| 65 64 65 66 20 73 74 72 | 75 63 74 20 7b 0a 58 20 |edef str|uct {.X |
|00002640| 20 20 20 69 6e 74 20 74 | 79 70 65 3b 09 09 2f 2a | int t|ype;../*|
|00002650| 20 6f 6e 65 20 6f 66 20 | 58 58 58 5f 43 4f 4c 2c | one of |XXX_COL,|
|00002660| 20 62 65 6c 6f 77 20 2a | 2f 0a 58 20 20 20 20 63 | below *|/.X c|
|00002670| 68 61 72 20 2a 6e 61 6d | 65 3b 09 09 2f 2a 20 6e |har *nam|e;../* n|
|00002680| 61 6d 65 20 6f 66 20 63 | 6f 6c 75 6d 6e 2c 20 75 |ame of c|olumn, u|
|00002690| 6e 6c 65 73 73 20 53 45 | 50 5f 43 4f 4c 20 74 68 |nless SE|P_COL th|
|000026a0| 65 6e 20 75 73 65 20 64 | 62 5f 6e 61 6d 65 20 2a |en use d|b_name *|
|000026b0| 2f 0a 58 20 20 20 20 69 | 6e 74 20 64 62 69 64 78 |/.X i|nt dbidx|
|000026c0| 3b 09 09 2f 2a 20 69 66 | 20 74 79 70 65 20 3d 3d |;../* if| type ==|
|000026d0| 20 53 45 50 5f 43 4f 4c | 2c 20 64 62 20 69 6e 64 | SEP_COL|, db ind|
|000026e0| 65 78 20 6f 66 20 63 72 | 6f 73 73 20 6f 62 6a 65 |ex of cr|oss obje|
|000026f0| 63 74 20 2a 2f 0a 58 20 | 20 20 20 69 6e 74 20 6f |ct */.X | int o|
|00002700| 6e 3b 09 09 2f 2a 20 77 | 68 65 74 68 65 72 20 74 |n;../* w|hether t|
|00002710| 68 69 73 20 63 6f 6c 75 | 6d 6e 20 69 73 20 63 75 |his colu|mn is cu|
|00002720| 72 72 65 6e 74 6c 79 20 | 74 6f 20 62 65 20 6f 6e |rrently |to be on|
|00002730| 20 2a 2f 0a 58 20 20 20 | 20 57 69 64 67 65 74 20 | */.X | Widget |
|00002740| 72 63 77 3b 09 09 2f 2a | 20 52 6f 77 43 6f 6c 75 |rcw;../*| RowColu|
|00002750| 6d 6e 20 77 69 64 67 65 | 74 20 66 6f 72 20 74 68 |mn widge|t for th|
|00002760| 69 73 20 63 6f 6c 75 6d | 6e 20 2a 2f 0a 58 20 20 |is colum|n */.X |
|00002770| 20 20 57 69 64 67 65 74 | 20 6c 77 3b 09 09 2f 2a | Widget| lw;../*|
|00002780| 20 6c 61 62 65 6c 20 77 | 69 64 67 65 74 20 66 6f | label w|idget fo|
|00002790| 72 20 74 68 69 73 20 63 | 6f 6c 75 6d 6e 27 73 20 |r this c|olumn's |
|000027a0| 68 65 61 64 65 72 20 2a | 2f 0a 58 20 20 20 20 57 |header *|/.X W|
|000027b0| 69 64 67 65 74 20 73 77 | 3b 09 09 2f 2a 20 70 75 |idget sw|;../* pu|
|000027c0| 73 68 62 75 74 74 6f 6e | 20 77 69 64 67 65 74 20 |shbutton| widget |
|000027d0| 66 6f 72 20 74 68 69 73 | 20 63 6f 6c 20 69 6e 20 |for this| col in |
|000027e0| 73 65 6c 65 63 74 69 6f | 6e 20 6d 65 6e 75 20 2a |selectio|n menu *|
|000027f0| 2f 0a 58 7d 20 43 6f 6c | 48 64 72 3b 0a 58 0a 58 |/.X} Col|Hdr;.X.X|
|00002800| 2f 2a 20 70 6f 73 73 69 | 62 6c 65 20 76 61 6c 75 |/* possi|ble valu|
|00002810| 65 73 20 66 6f 72 20 43 | 6f 6c 48 64 72 2e 74 79 |es for C|olHdr.ty|
|00002820| 70 65 2e 20 2a 2f 0a 58 | 65 6e 75 6d 20 7b 0a 58 |pe. */.X|enum {.X|
|00002830| 20 20 20 20 4d 49 53 43 | 5f 43 4f 4c 2c 20 52 49 | MISC|_COL, RI|
|00002840| 53 45 54 5f 43 4f 4c 2c | 20 53 45 50 5f 43 4f 4c |SET_COL,| SEP_COL|
|00002850| 0a 58 7d 3b 0a 58 0a 58 | 2f 2a 20 69 64 65 6e 74 |.X};.X.X|/* ident|
|00002860| 69 66 69 65 72 73 20 66 | 6f 72 20 65 61 63 68 20 |ifiers f|or each |
|00002870| 65 6e 74 72 79 20 69 6e | 20 63 6f 6c 5b 5d 2e 20 |entry in| col[]. |
|00002880| 74 68 65 73 65 20 6d 75 | 73 74 20 6d 61 74 63 68 |these mu|st match|
|00002890| 20 74 68 65 20 6f 72 64 | 65 72 20 74 68 65 72 65 | the ord|er there|
|000028a0| 69 6e 2e 0a 58 20 2a 2f | 0a 58 65 6e 75 6d 20 7b |in..X */|.Xenum {|
|000028b0| 0a 58 20 20 20 20 43 4f | 4e 53 54 45 4c 5f 49 44 |.X CO|NSTEL_ID|
|000028c0| 2c 20 52 41 5f 49 44 2c | 20 44 45 43 5f 49 44 2c |, RA_ID,| DEC_ID,|
|000028d0| 20 41 5a 5f 49 44 2c 20 | 41 4c 54 5f 49 44 2c 20 | AZ_ID, |ALT_ID, |
|000028e0| 48 4c 4f 4e 47 5f 49 44 | 2c 20 48 4c 41 54 5f 49 |HLONG_ID|, HLAT_I|
|000028f0| 44 2c 0a 58 20 20 20 20 | 45 44 53 54 5f 49 44 2c |D,.X |EDST_ID,|
|00002900| 20 53 44 53 54 5f 49 44 | 2c 20 45 4c 4f 4e 47 5f | SDST_ID|, ELONG_|
|00002910| 49 44 2c 20 53 49 5a 45 | 5f 49 44 2c 20 56 4d 41 |ID, SIZE|_ID, VMA|
|00002920| 47 5f 49 44 2c 20 50 48 | 53 5f 49 44 2c 20 52 53 |G_ID, PH|S_ID, RS|
|00002930| 54 49 4d 45 5f 49 44 2c | 0a 58 20 20 20 20 52 53 |TIME_ID,|.X RS|
|00002940| 41 5a 5f 49 44 2c 20 54 | 52 54 49 4d 45 5f 49 44 |AZ_ID, T|RTIME_ID|
|00002950| 2c 20 54 52 41 4c 54 5f | 49 44 2c 20 53 45 54 54 |, TRALT_|ID, SETT|
|00002960| 49 4d 45 5f 49 44 2c 20 | 53 45 54 41 5a 5f 49 44 |IME_ID, |SETAZ_ID|
|00002970| 2c 20 48 52 53 55 50 5f | 49 44 0a 58 7d 3b 0a 58 |, HRSUP_|ID.X};.X|
|00002980| 0a 58 2f 2a 20 74 61 67 | 73 20 66 6f 72 20 74 68 |.X/* tag|s for th|
|00002990| 65 20 76 61 72 69 6f 75 | 73 20 44 61 74 61 20 53 |e variou|s Data S|
|000029a0| 65 6c 65 63 74 69 6f 6e | 20 63 6f 6e 74 72 6f 6c |election| control|
|000029b0| 20 70 61 6e 65 6c 20 62 | 75 74 74 6f 6e 73 20 2a | panel b|uttons *|
|000029c0| 2f 0a 58 65 6e 75 6d 20 | 7b 4f 4b 2c 20 41 50 50 |/.Xenum |{OK, APP|
|000029d0| 4c 59 2c 20 43 41 4e 43 | 45 4c 2c 20 48 45 4c 50 |LY, CANC|EL, HELP|
|000029e0| 7d 3b 0a 58 0a 58 73 74 | 61 74 69 63 20 43 6f 6c |};.X.Xst|atic Col|
|000029f0| 48 64 72 20 63 6f 6c 5b | 5d 20 3d 20 7b 0a 58 20 |Hdr col[|] = {.X |
|00002a00| 20 20 20 7b 4d 49 53 43 | 5f 43 4f 4c 2c 09 22 43 | {MISC|_COL,."C|
|00002a10| 6e 73 22 7d 2c 0a 58 20 | 20 20 20 7b 4d 49 53 43 |ns"},.X | {MISC|
|00002a20| 5f 43 4f 4c 2c 09 22 52 | 5f 41 22 7d 2c 0a 58 20 |_COL,."R|_A"},.X |
|00002a30| 20 20 20 7b 4d 49 53 43 | 5f 43 4f 4c 2c 09 22 44 | {MISC|_COL,."D|
|00002a40| 65 63 22 7d 2c 0a 58 20 | 20 20 20 7b 4d 49 53 43 |ec"},.X | {MISC|
|00002a50| 5f 43 4f 4c 2c 09 22 41 | 7a 22 7d 2c 0a 58 20 20 |_COL,."A|z"},.X |
|00002a60| 20 20 7b 4d 49 53 43 5f | 43 4f 4c 2c 09 22 41 6c | {MISC_|COL,."Al|
|00002a70| 74 22 7d 2c 0a 58 20 20 | 20 20 7b 4d 49 53 43 5f |t"},.X | {MISC_|
|00002a80| 43 4f 4c 2c 09 22 48 65 | 4c 6f 6e 67 22 7d 2c 0a |COL,."He|Long"},.|
|00002a90| 58 20 20 20 20 7b 4d 49 | 53 43 5f 43 4f 4c 2c 09 |X {MI|SC_COL,.|
|00002aa0| 22 48 65 4c 61 74 22 7d | 2c 0a 58 20 20 20 20 7b |"HeLat"}|,.X {|
|00002ab0| 4d 49 53 43 5f 43 4f 4c | 2c 09 22 45 61 44 73 74 |MISC_COL|,."EaDst|
|00002ac0| 22 7d 2c 0a 58 20 20 20 | 20 7b 4d 49 53 43 5f 43 |"},.X | {MISC_C|
|00002ad0| 4f 4c 2c 09 22 53 6e 44 | 73 74 22 7d 2c 0a 58 20 |OL,."SnD|st"},.X |
|00002ae0| 20 20 20 7b 4d 49 53 43 | 5f 43 4f 4c 2c 09 22 45 | {MISC|_COL,."E|
|00002af0| 6c 6f 6e 67 22 7d 2c 0a | 58 20 20 20 20 7b 4d 49 |long"},.|X {MI|
|00002b00| 53 43 5f 43 4f 4c 2c 09 | 22 53 69 7a 65 22 7d 2c |SC_COL,.|"Size"},|
|00002b10| 0a 58 20 20 20 20 7b 4d | 49 53 43 5f 43 4f 4c 2c |.X {M|ISC_COL,|
|00002b20| 09 22 56 4d 61 67 22 7d | 2c 0a 58 20 20 20 20 7b |."VMag"}|,.X {|
|00002b30| 4d 49 53 43 5f 43 4f 4c | 2c 09 22 50 68 61 73 65 |MISC_COL|,."Phase|
|00002b40| 22 7d 2c 0a 58 20 20 20 | 20 7b 52 49 53 45 54 5f |"},.X | {RISET_|
|00002b50| 43 4f 4c 2c 09 22 52 69 | 73 65 54 6d 22 7d 2c 0a |COL,."Ri|seTm"},.|
|00002b60| 58 20 20 20 20 7b 52 49 | 53 45 54 5f 43 4f 4c 2c |X {RI|SET_COL,|
|00002b70| 09 22 52 69 73 65 41 7a | 22 7d 2c 0a 58 20 20 20 |."RiseAz|"},.X |
|00002b80| 20 7b 52 49 53 45 54 5f | 43 4f 4c 2c 09 22 54 72 | {RISET_|COL,."Tr|
|00002b90| 6e 54 6d 22 7d 2c 0a 58 | 20 20 20 20 7b 52 49 53 |nTm"},.X| {RIS|
|00002ba0| 45 54 5f 43 4f 4c 2c 09 | 22 54 72 6e 41 6c 74 22 |ET_COL,.|"TrnAlt"|
|00002bb0| 7d 2c 0a 58 20 20 20 20 | 7b 52 49 53 45 54 5f 43 |},.X |{RISET_C|
|00002bc0| 4f 4c 2c 09 22 53 65 74 | 54 6d 22 7d 2c 0a 58 20 |OL,."Set|Tm"},.X |
|00002bd0| 20 20 20 7b 52 49 53 45 | 54 5f 43 4f 4c 2c 09 22 | {RISE|T_COL,."|
|00002be0| 53 65 74 41 7a 22 7d 2c | 0a 58 20 20 20 20 7b 52 |SetAz"},|.X {R|
|00002bf0| 49 53 45 54 5f 43 4f 4c | 2c 09 22 48 72 73 55 70 |ISET_COL|,."HrsUp|
|00002c00| 22 7d 2c 0a 58 20 20 20 | 20 7b 53 45 50 5f 43 4f |"},.X | {SEP_CO|
|00002c10| 4c 2c 20 28 63 68 61 72 | 20 2a 29 30 2c 20 53 55 |L, (char| *)0, SU|
|00002c20| 4e 7d 2c 0a 58 20 20 20 | 20 7b 53 45 50 5f 43 4f |N},.X | {SEP_CO|
|00002c30| 4c 2c 20 28 63 68 61 72 | 20 2a 29 30 2c 20 4d 4f |L, (char| *)0, MO|
|00002c40| 4f 4e 7d 2c 0a 58 20 20 | 20 20 7b 53 45 50 5f 43 |ON},.X | {SEP_C|
|00002c50| 4f 4c 2c 20 28 63 68 61 | 72 20 2a 29 30 2c 20 4d |OL, (cha|r *)0, M|
|00002c60| 45 52 43 55 52 59 7d 2c | 0a 58 20 20 20 20 7b 53 |ERCURY},|.X {S|
|00002c70| 45 50 5f 43 4f 4c 2c 20 | 28 63 68 61 72 20 2a 29 |EP_COL, |(char *)|
|00002c80| 30 2c 20 56 45 4e 55 53 | 7d 2c 0a 58 20 20 20 20 |0, VENUS|},.X |
|00002c90| 7b 53 45 50 5f 43 4f 4c | 2c 20 28 63 68 61 72 20 |{SEP_COL|, (char |
|00002ca0| 2a 29 30 2c 20 4d 41 52 | 53 7d 2c 0a 58 20 20 20 |*)0, MAR|S},.X |
|00002cb0| 20 7b 53 45 50 5f 43 4f | 4c 2c 20 28 63 68 61 72 | {SEP_CO|L, (char|
|00002cc0| 20 2a 29 30 2c 20 4a 55 | 50 49 54 45 52 7d 2c 0a | *)0, JU|PITER},.|
|00002cd0| 58 20 20 20 20 7b 53 45 | 50 5f 43 4f 4c 2c 20 28 |X {SE|P_COL, (|
|00002ce0| 63 68 61 72 20 2a 29 30 | 2c 20 53 41 54 55 52 4e |char *)0|, SATURN|
|00002cf0| 7d 2c 0a 58 20 20 20 20 | 7b 53 45 50 5f 43 4f 4c |},.X |{SEP_COL|
|00002d00| 2c 20 28 63 68 61 72 20 | 2a 29 30 2c 20 55 52 41 |, (char |*)0, URA|
|00002d10| 4e 55 53 7d 2c 0a 58 20 | 20 20 20 7b 53 45 50 5f |NUS},.X | {SEP_|
|00002d20| 43 4f 4c 2c 20 28 63 68 | 61 72 20 2a 29 30 2c 20 |COL, (ch|ar *)0, |
|00002d30| 4e 45 50 54 55 4e 45 7d | 2c 0a 58 20 20 20 20 7b |NEPTUNE}|,.X {|
|00002d40| 53 45 50 5f 43 4f 4c 2c | 20 28 63 68 61 72 20 2a |SEP_COL,| (char *|
|00002d50| 29 30 2c 20 50 4c 55 54 | 4f 7d 2c 0a 58 20 20 20 |)0, PLUT|O},.X |
|00002d60| 20 7b 53 45 50 5f 43 4f | 4c 2c 20 28 63 68 61 72 | {SEP_CO|L, (char|
|00002d70| 20 2a 29 30 2c 20 4f 42 | 4a 58 7d 2c 0a 58 20 20 | *)0, OB|JX},.X |
|00002d80| 20 20 7b 53 45 50 5f 43 | 4f 4c 2c 20 28 63 68 61 | {SEP_C|OL, (cha|
|00002d90| 72 20 2a 29 30 2c 20 4f | 42 4a 59 7d 2c 0a 58 7d |r *)0, O|BJY},.X}|
|00002da0| 3b 0a 58 0a 58 23 64 65 | 66 69 6e 65 09 4e 52 09 |;.X.X#de|fine.NR.|
|00002db0| 58 74 4e 75 6d 62 65 72 | 28 72 6f 77 29 0a 58 23 |XtNumber|(row).X#|
|00002dc0| 64 65 66 69 6e 65 09 4e | 43 09 58 74 4e 75 6d 62 |define.N|C.XtNumb|
|00002dd0| 65 72 28 63 6f 6c 29 0a | 58 0a 58 73 74 61 74 69 |er(col).|X.Xstati|
|00002de0| 63 20 57 69 64 67 65 74 | 20 74 5f 77 5b 4e 52 5d |c Widget| t_w[NR]|
|00002df0| 5b 4e 43 5d 3b 09 2f 2a | 20 70 75 73 68 62 75 74 |[NC];./*| pushbut|
|00002e00| 74 6f 6e 73 20 77 69 74 | 68 69 6e 20 74 61 62 6c |tons wit|hin tabl|
|00002e10| 65 20 2a 2f 0a 58 73 74 | 61 74 69 63 20 57 69 64 |e */.Xst|atic Wid|
|00002e20| 67 65 74 20 64 61 74 61 | 66 6f 72 6d 5f 77 3b 09 |get data|form_w;.|
|00002e30| 2f 2a 20 74 68 65 20 6f | 76 65 72 61 6c 6c 20 74 |/* the o|verall t|
|00002e40| 61 62 6c 65 20 66 6f 72 | 6d 20 2a 2f 0a 58 73 74 |able for|m */.Xst|
|00002e50| 61 74 69 63 20 57 69 64 | 67 65 74 20 74 61 62 6c |atic Wid|get tabl|
|00002e60| 65 5f 77 3b 09 09 2f 2a | 20 74 68 65 20 6f 76 65 |e_w;../*| the ove|
|00002e70| 72 61 6c 6c 20 52 6f 77 | 43 6f 6c 75 6d 6e 20 74 |rall Row|Column t|
|00002e80| 61 62 6c 65 20 2a 2f 0a | 58 73 74 61 74 69 63 20 |able */.|Xstatic |
|00002e90| 57 69 64 67 65 74 20 63 | 6f 72 6e 65 72 5f 77 3b |Widget c|orner_w;|
|00002ea0| 09 09 2f 2a 20 75 70 70 | 65 72 20 6c 65 66 74 20 |../* upp|er left |
|00002eb0| 63 6f 72 6e 65 72 20 6f | 66 20 74 61 62 6c 65 20 |corner o|f table |
|00002ec0| 2a 2f 0a 58 73 74 61 74 | 69 63 20 57 69 64 67 65 |*/.Xstat|ic Widge|
|00002ed0| 74 20 68 64 72 63 6f 6c | 5f 77 3b 09 09 2f 2a 20 |t hdrcol|_w;../* |
|00002ee0| 52 6f 77 43 6f 6c 75 6d | 6e 20 66 6f 72 20 66 69 |RowColum|n for fi|
|00002ef0| 72 73 74 20 63 6f 6c 75 | 6d 6e 20 2a 2f 0a 58 73 |rst colu|mn */.Xs|
|00002f00| 74 61 74 69 63 20 57 69 | 64 67 65 74 20 73 65 6c |tatic Wi|dget sel|
|00002f10| 5f 77 3b 09 09 2f 2a 20 | 73 65 74 75 70 20 6d 65 |_w;../* |setup me|
|00002f20| 6e 75 20 2a 2f 0a 58 73 | 74 61 74 69 63 20 57 69 |nu */.Xs|tatic Wi|
|00002f30| 64 67 65 74 20 64 74 5f | 77 3b 09 09 2f 2a 20 64 |dget dt_|w;../* d|
|00002f40| 61 74 65 2f 74 69 6d 65 | 20 73 74 61 6d 70 20 6c |ate/time| stamp l|
|00002f50| 61 62 65 6c 20 77 69 64 | 67 65 74 20 2a 2f 0a 58 |abel wid|get */.X|
|00002f60| 0a 58 2f 2a 20 73 65 70 | 61 72 61 74 69 6f 6e 20 |.X/* sep|aration |
|00002f70| 70 65 72 73 70 65 63 74 | 69 76 65 20 2a 2f 0a 58 |perspect|ive */.X|
|00002f80| 65 6e 75 6d 20 7b 47 45 | 4f 5f 43 45 4e 2c 20 54 |enum {GE|O_CEN, T|
|00002f90| 4f 50 4f 5f 43 45 4e 7d | 3b 0a 58 0a 58 65 6e 75 |OPO_CEN}|;.X.Xenu|
|00002fa0| 6d 20 7b 53 54 44 52 45 | 46 52 2c 20 41 44 50 52 |m {STDRE|FR, ADPR|
|00002fb0| 45 46 52 7d 3b 0a 58 65 | 6e 75 6d 20 7b 4c 49 4d |EFR};.Xe|num {LIM|
|00002fc0| 42 2c 20 43 45 4e 54 45 | 52 7d 3b 0a 58 0a 58 73 |B, CENTE|R};.X.Xs|
|00002fd0| 74 61 74 69 63 20 57 69 | 64 67 65 74 20 73 74 64 |tatic Wi|dget std|
|00002fe0| 72 65 66 72 5f 77 3b 09 | 2f 2a 20 74 68 65 20 53 |refr_w;.|/* the S|
|00002ff0| 74 64 52 65 66 72 20 74 | 6f 67 67 6c 65 20 62 75 |tdRefr t|oggle bu|
|00003000| 74 74 6f 6e 20 2a 2f 0a | 58 73 74 61 74 69 63 20 |tton */.|Xstatic |
|00003010| 57 69 64 67 65 74 20 6c | 69 6d 62 5f 77 3b 09 09 |Widget l|imb_w;..|
|00003020| 2f 2a 20 74 68 65 20 43 | 65 6e 74 65 72 2f 4c 69 |/* the C|enter/Li|
|00003030| 6d 62 20 74 6f 67 67 6c | 65 20 62 75 74 74 6f 6e |mb toggl|e button|
|00003040| 20 2a 2f 0a 58 73 74 61 | 74 69 63 20 57 69 64 67 | */.Xsta|tic Widg|
|00003050| 65 74 20 72 65 66 72 5f | 77 3b 09 09 2f 2a 20 74 |et refr_|w;../* t|
|00003060| 68 65 20 68 6f 72 69 7a | 6f 6e 20 6c 61 62 65 6c |he horiz|on label|
|00003070| 20 6f 6e 20 74 68 65 20 | 64 61 74 61 20 74 61 62 | on the |data tab|
|00003080| 6c 65 20 2a 2f 0a 58 73 | 74 61 74 69 63 20 57 69 |le */.Xs|tatic Wi|
|00003090| 64 67 65 74 20 6c 69 6d | 62 6c 5f 77 3b 09 09 2f |dget lim|bl_w;../|
|000030a0| 2a 20 74 68 65 20 4c 69 | 6d 62 20 6c 61 62 65 6c |* the Li|mb label|
|000030b0| 20 6f 6e 20 74 68 65 20 | 64 61 74 61 20 74 61 62 | on the |data tab|
|000030c0| 6c 65 20 2a 2f 0a 58 73 | 74 61 74 69 63 20 69 6e |le */.Xs|tatic in|
|000030d0| 74 20 68 6f 72 69 7a 6f | 6e 3b 09 09 2f 2a 20 6f |t horizo|n;../* o|
|000030e0| 6e 65 20 6f 66 20 53 54 | 44 52 45 46 52 20 6f 72 |ne of ST|DREFR or|
|000030f0| 20 41 44 50 52 45 46 52 | 20 2a 2f 0a 58 73 74 61 | ADPREFR| */.Xsta|
|00003100| 74 69 63 20 69 6e 74 20 | 6c 69 6d 62 3b 09 09 2f |tic int |limb;../|
|00003110| 2a 20 6f 6e 65 20 6f 66 | 20 43 45 4e 54 45 52 20 |* one of| CENTER |
|00003120| 6f 72 20 4c 49 4d 42 20 | 2a 2f 0a 58 73 74 61 74 |or LIMB |*/.Xstat|
|00003130| 69 63 20 57 69 64 67 65 | 74 20 67 65 6f 63 65 6e |ic Widge|t geocen|
|00003140| 5f 77 3b 09 09 2f 2a 20 | 74 68 65 20 47 65 6f 63 |_w;../* |the Geoc|
|00003150| 65 6e 74 72 69 63 20 74 | 6f 67 67 6c 65 20 62 75 |entric t|oggle bu|
|00003160| 74 74 6f 6e 20 2a 2f 0a | 58 73 74 61 74 69 63 20 |tton */.|Xstatic |
|00003170| 57 69 64 67 65 74 20 63 | 65 6e 74 72 69 63 5f 77 |Widget c|entric_w|
|00003180| 3b 09 2f 2a 20 74 68 65 | 20 63 65 6e 74 72 69 63 |;./* the| centric|
|00003190| 20 6c 61 62 65 6c 20 6f | 6e 20 74 68 65 20 64 61 | label o|n the da|
|000031a0| 74 61 20 74 61 62 6c 65 | 20 2a 2f 0a 58 73 74 61 |ta table| */.Xsta|
|000031b0| 74 69 63 20 69 6e 74 20 | 63 65 6e 74 72 69 63 3b |tic int |centric;|
|000031c0| 09 09 2f 2a 20 6f 6e 65 | 20 6f 66 20 47 45 4f 5f |../* one| of GEO_|
|000031d0| 43 45 4e 20 6f 72 20 54 | 4f 50 4f 5f 43 45 4e 20 |CEN or T|OPO_CEN |
|000031e0| 2a 2f 0a 58 0a 58 73 74 | 61 74 69 63 20 69 6e 74 |*/.X.Xst|atic int|
|000031f0| 20 64 6d 5f 73 65 6c 65 | 63 74 69 6e 67 3b 09 2f | dm_sele|cting;./|
|00003200| 2a 20 73 65 74 20 77 68 | 69 6c 65 20 6f 75 72 20 |* set wh|ile our |
|00003210| 66 69 65 6c 64 73 20 61 | 72 65 20 62 65 69 6e 67 |fields a|re being|
|00003220| 20 73 65 6c 65 63 74 65 | 64 20 2a 2f 0a 58 0a 58 | selecte|d */.X.X|
|00003230| 2f 2a 20 63 61 6c 6c 65 | 64 20 77 68 65 6e 20 74 |/* calle|d when t|
|00003240| 68 65 20 64 61 74 61 20 | 6d 65 6e 75 20 69 73 20 |he data |menu is |
|00003250| 61 63 74 69 76 61 74 65 | 64 20 76 69 61 20 74 68 |activate|d via th|
|00003260| 65 20 6d 61 69 6e 20 6d | 65 6e 75 20 70 75 6c 6c |e main m|enu pull|
|00003270| 64 6f 77 6e 2e 0a 58 20 | 2a 20 69 66 20 6e 65 76 |down..X |* if nev|
|00003280| 65 72 20 63 61 6c 6c 65 | 64 20 62 65 66 6f 72 65 |er calle|d before|
|00003290| 2c 20 63 72 65 61 74 65 | 20 61 6c 6c 20 74 68 65 |, create| all the|
|000032a0| 20 77 69 64 67 65 74 73 | 20 66 6f 72 6d 3b 0a 58 | widgets| form;.X|
|000032b0| 20 2a 20 6f 74 68 65 72 | 77 69 73 65 2c 20 6a 75 | * other|wise, ju|
|000032c0| 73 74 20 74 6f 67 67 6c | 65 20 77 68 65 74 68 65 |st toggl|e whethe|
|000032d0| 72 20 74 68 65 20 66 6f | 72 6d 20 69 73 20 6d 61 |r the fo|rm is ma|
|000032e0| 6e 61 67 65 64 2e 0a 58 | 20 2a 2f 0a 58 76 6f 69 |naged..X| */.Xvoi|
|000032f0| 64 0a 58 64 6d 5f 6d 61 | 6e 61 67 65 20 28 29 0a |d.Xdm_ma|nage ().|
|00003300| 58 7b 0a 58 09 69 66 20 | 28 21 64 61 74 61 66 6f |X{.X.if |(!datafo|
|00003310| 72 6d 5f 77 29 0a 58 09 | 20 20 20 20 64 6d 5f 63 |rm_w).X.| dm_c|
|00003320| 72 65 61 74 65 5f 66 6f | 72 6d 28 29 3b 0a 58 09 |reate_fo|rm();.X.|
|00003330| 0a 58 09 69 66 20 28 58 | 74 49 73 4d 61 6e 61 67 |.X.if (X|tIsManag|
|00003340| 65 64 28 64 61 74 61 66 | 6f 72 6d 5f 77 29 29 20 |ed(dataf|orm_w)) |
|00003350| 7b 0a 58 09 20 20 20 20 | 58 74 55 6e 6d 61 6e 61 |{.X. |XtUnmana|
|00003360| 67 65 43 68 69 6c 64 20 | 28 64 61 74 61 66 6f 72 |geChild |(datafor|
|00003370| 6d 5f 77 29 3b 0a 58 09 | 20 20 20 20 69 66 20 28 |m_w);.X.| if (|
|00003380| 58 74 49 73 4d 61 6e 61 | 67 65 64 28 73 65 6c 5f |XtIsMana|ged(sel_|
|00003390| 77 29 29 0a 58 09 09 58 | 74 55 6e 6d 61 6e 61 67 |w)).X..X|tUnmanag|
|000033a0| 65 43 68 69 6c 64 28 73 | 65 6c 5f 77 29 3b 0a 58 |eChild(s|el_w);.X|
|000033b0| 09 7d 20 65 6c 73 65 20 | 7b 0a 58 09 20 20 20 20 |.} else |{.X. |
|000033c0| 58 74 4d 61 6e 61 67 65 | 43 68 69 6c 64 20 28 64 |XtManage|Child (d|
|000033d0| 61 74 61 66 6f 72 6d 5f | 77 29 3b 0a 58 09 20 20 |ataform_|w);.X. |
|000033e0| 20 20 64 6d 5f 75 70 64 | 61 74 65 20 28 6d 6d 5f | dm_upd|ate (mm_|
|000033f0| 67 65 74 5f 6e 6f 77 28 | 29 2c 20 31 29 3b 0a 58 |get_now(|), 1);.X|
|00003400| 09 20 20 20 20 64 6d 5f | 73 65 74 5f 62 75 74 74 |. dm_|set_butt|
|00003410| 6f 6e 73 20 28 64 6d 5f | 73 65 6c 65 63 74 69 6e |ons (dm_|selectin|
|00003420| 67 29 3b 0a 58 09 7d 0a | 58 7d 0a 58 0a 58 2f 2a |g);.X.}.|X}.X.X/*|
|00003430| 20 75 73 65 72 2d 64 65 | 66 69 6e 65 64 20 6f 62 | user-de|fined ob|
|00003440| 6a 65 63 74 20 64 62 69 | 64 78 20 68 61 73 20 63 |ject dbi|dx has c|
|00003450| 68 61 6e 67 65 64 2e 0a | 58 20 2a 20 6d 69 67 68 |hanged..|X * migh|
|00003460| 74 20 68 61 76 65 20 61 | 20 6e 65 77 20 6e 61 6d |t have a| new nam|
|00003470| 65 2c 20 6f 72 20 6d 69 | 67 68 74 20 62 65 20 64 |e, or mi|ght be d|
|00003480| 65 66 69 6e 65 64 20 6f | 72 20 75 6e 64 65 66 69 |efined o|r undefi|
|00003490| 6e 65 64 20 6e 6f 77 2e | 0a 58 20 2a 20 6d 75 73 |ned now.|.X * mus|
|000034a0| 74 20 63 68 65 63 6b 20 | 62 6f 74 68 20 74 68 65 |t check |both the|
|000034b0| 20 64 61 74 61 20 74 61 | 62 6c 65 20 61 6e 64 20 | data ta|ble and |
|000034c0| 74 68 65 20 73 65 6c 65 | 63 74 69 6f 6e 20 6d 65 |the sele|ction me|
|000034d0| 6e 75 2e 0a 58 20 2a 20 | 4e 2e 42 2e 20 6e 6f 20 |nu..X * |N.B. no |
|000034e0| 6e 65 65 64 20 74 6f 20 | 72 65 63 6f 6d 70 75 74 |need to |recomput|
|000034f0| 65 20 6d 61 74 68 20 2d | 2d 20 64 6d 5f 75 70 64 |e math -|- dm_upd|
|00003500| 61 74 65 28 29 20 77 69 | 6c 6c 20 62 65 20 63 61 |ate() wi|ll be ca|
|00003510| 6c 6c 65 64 20 66 6f 72 | 20 75 73 2e 0a 58 20 2a |lled for| us..X *|
|00003520| 2f 0a 58 76 6f 69 64 0a | 58 64 6d 5f 6e 65 77 6f |/.Xvoid.|Xdm_newo|
|00003530| 62 6a 28 64 62 69 64 78 | 29 0a 58 69 6e 74 20 64 |bj(dbidx|).Xint d|
|00003540| 62 69 64 78 3b 0a 58 7b | 0a 58 09 73 74 61 74 69 |bidx;.X{|.X.stati|
|00003550| 63 20 63 68 61 72 20 6d | 65 5b 5d 20 3d 20 22 64 |c char m|e[] = "d|
|00003560| 6d 5f 6e 65 77 6f 62 6a | 28 29 22 3b 0a 58 09 69 |m_newobj|()";.X.i|
|00003570| 6e 74 20 69 2c 20 63 3b | 0a 58 0a 58 09 2f 2a 20 |nt i, c;|.X.X./* |
|00003580| 6d 69 67 68 74 20 67 65 | 74 20 63 61 6c 6c 65 64 |might ge|t called|
|00003590| 20 62 65 66 6f 72 65 20 | 77 65 20 68 61 76 65 20 | before |we have |
|000035a0| 62 65 65 6e 20 6d 61 6e | 61 67 65 64 20 74 68 65 |been man|aged the|
|000035b0| 20 66 69 72 73 74 20 74 | 69 6d 65 20 2a 2f 0a 58 | first t|ime */.X|
|000035c0| 09 69 66 20 28 21 64 61 | 74 61 66 6f 72 6d 5f 77 |.if (!da|taform_w|
|000035d0| 29 0a 58 09 20 20 20 20 | 72 65 74 75 72 6e 3b 0a |).X. |return;.|
|000035e0| 58 0a 58 09 66 6f 72 20 | 28 69 20 3d 20 30 3b 20 |X.X.for |(i = 0; |
|000035f0| 69 20 3c 20 4e 52 3b 20 | 69 2b 2b 29 0a 58 09 20 |i < NR; |i++).X. |
|00003600| 20 20 20 69 66 20 28 72 | 6f 77 5b 69 5d 2e 64 62 | if (r|ow[i].db|
|00003610| 69 64 78 20 3d 3d 20 64 | 62 69 64 78 29 20 7b 0a |idx == d|bidx) {.|
|00003620| 58 09 09 4f 62 6a 20 2a | 6f 70 20 3d 20 64 62 5f |X..Obj *|op = db_|
|00003630| 62 61 73 69 63 20 28 64 | 62 69 64 78 29 3b 0a 58 |basic (d|bidx);.X|
|00003640| 09 09 69 66 20 28 6f 70 | 2d 3e 74 79 70 65 20 3d |..if (op|->type =|
|00003650| 3d 20 55 4e 44 45 46 4f | 42 4a 29 20 7b 0a 58 09 |= UNDEFO|BJ) {.X.|
|00003660| 09 20 20 20 20 2f 2a 20 | 69 74 27 73 20 6e 6f 77 |. /* |it's now|
|00003670| 20 75 6e 64 65 66 69 6e | 65 64 20 73 6f 20 74 75 | undefin|ed so tu|
|00003680| 72 6e 20 6f 66 66 20 2a | 2f 0a 58 09 09 20 20 20 |rn off *|/.X.. |
|00003690| 20 72 6f 77 5b 69 5d 2e | 6f 6e 20 3d 20 46 61 6c | row[i].|on = Fal|
|000036a0| 73 65 3b 0a 58 09 09 20 | 20 20 20 66 6f 72 20 28 |se;.X.. | for (|
|000036b0| 63 20 3d 20 30 3b 20 63 | 20 3c 20 4e 43 3b 20 63 |c = 0; c| < NC; c|
|000036c0| 2b 2b 29 0a 58 09 09 09 | 58 74 55 6e 6d 61 6e 61 |++).X...|XtUnmana|
|000036d0| 67 65 43 68 69 6c 64 20 | 28 74 5f 77 5b 69 5d 5b |geChild |(t_w[i][|
|000036e0| 63 5d 29 3b 0a 58 09 09 | 20 20 20 20 58 74 55 6e |c]);.X..| XtUn|
|000036f0| 6d 61 6e 61 67 65 43 68 | 69 6c 64 20 28 72 6f 77 |manageCh|ild (row|
|00003700| 5b 69 5d 2e 6c 77 29 3b | 0a 58 09 09 20 20 20 20 |[i].lw);|.X.. |
|00003710| 58 74 55 6e 6d 61 6e 61 | 67 65 43 68 69 6c 64 20 |XtUnmana|geChild |
|00003720| 28 72 6f 77 5b 69 5d 2e | 73 77 29 3b 0a 58 09 09 |(row[i].|sw);.X..|
|00003730| 20 20 20 20 58 6d 54 6f | 67 67 6c 65 42 75 74 74 | XmTo|ggleButt|
|00003740| 6f 6e 53 65 74 53 74 61 | 74 65 20 28 72 6f 77 5b |onSetSta|te (row[|
|00003750| 69 5d 2e 73 77 2c 20 46 | 61 6c 73 65 2c 20 46 61 |i].sw, F|alse, Fa|
|00003760| 6c 73 65 29 3b 0a 58 09 | 09 7d 20 65 6c 73 65 20 |lse);.X.|.} else |
|00003770| 7b 0a 58 09 09 20 20 20 | 20 66 5f 73 74 72 69 6e |{.X.. | f_strin|
|00003780| 67 20 28 72 6f 77 5b 69 | 5d 2e 6c 77 2c 20 6f 70 |g (row[i|].lw, op|
|00003790| 2d 3e 6f 5f 6e 61 6d 65 | 29 3b 0a 58 09 09 20 20 |->o_name|);.X.. |
|000037a0| 20 20 58 74 4d 61 6e 61 | 67 65 43 68 69 6c 64 20 | XtMana|geChild |
|000037b0| 28 72 6f 77 5b 69 5d 2e | 73 77 29 3b 0a 58 09 09 |(row[i].|sw);.X..|
|000037c0| 20 20 20 20 66 5f 73 74 | 72 69 6e 67 20 28 72 6f | f_st|ring (ro|
|000037d0| 77 5b 69 5d 2e 73 77 2c | 20 6f 70 2d 3e 6f 5f 6e |w[i].sw,| op->o_n|
|000037e0| 61 6d 65 29 3b 0a 58 09 | 09 7d 0a 58 09 09 62 72 |ame);.X.|.}.X..br|
|000037f0| 65 61 6b 3b 0a 58 09 20 | 20 20 20 7d 0a 58 09 69 |eak;.X. | }.X.i|
|00003800| 66 20 28 69 20 3d 3d 20 | 4e 52 29 20 7b 0a 58 09 |f (i == |NR) {.X.|
|00003810| 20 20 20 20 70 72 69 6e | 74 66 20 28 22 42 75 67 | prin|tf ("Bug|
|00003820| 3a 20 25 73 3a 20 64 62 | 69 64 78 20 6e 6f 74 20 |: %s: db|idx not |
|00003830| 69 6e 20 72 6f 77 5b 5d | 3a 20 30 78 25 78 5c 6e |in row[]|: 0x%x\n|
|00003840| 22 2c 20 6d 65 2c 20 64 | 62 69 64 78 29 3b 0a 58 |", me, d|bidx);.X|
|00003850| 09 20 20 20 20 65 78 69 | 74 20 28 31 29 3b 0a 58 |. exi|t (1);.X|
|00003860| 09 7d 0a 58 0a 58 09 66 | 6f 72 20 28 69 20 3d 20 |.}.X.X.f|or (i = |
|00003870| 30 3b 20 69 20 3c 20 4e | 43 3b 20 69 2b 2b 29 0a |0; i < N|C; i++).|
|00003880| 58 09 20 20 20 20 69 66 | 20 28 63 6f 6c 5b 69 5d |X. if| (col[i]|
|00003890| 2e 74 79 70 65 20 3d 3d | 20 53 45 50 5f 43 4f 4c |.type ==| SEP_COL|
|000038a0| 20 26 26 20 63 6f 6c 5b | 69 5d 2e 64 62 69 64 78 | && col[|i].dbidx|
|000038b0| 20 3d 3d 20 64 62 69 64 | 78 29 20 7b 0a 58 09 09 | == dbid|x) {.X..|
|000038c0| 4f 62 6a 20 2a 6f 70 20 | 3d 20 64 62 5f 62 61 73 |Obj *op |= db_bas|
|000038d0| 69 63 20 28 64 62 69 64 | 78 29 3b 0a 58 09 09 69 |ic (dbid|x);.X..i|
|000038e0| 66 20 28 6f 70 2d 3e 74 | 79 70 65 20 3d 3d 20 55 |f (op->t|ype == U|
|000038f0| 4e 44 45 46 4f 42 4a 29 | 20 7b 0a 58 09 09 20 20 |NDEFOBJ)| {.X.. |
|00003900| 20 20 2f 2a 20 69 74 27 | 73 20 6e 6f 77 20 75 6e | /* it'|s now un|
|00003910| 64 65 66 69 6e 65 64 20 | 73 6f 20 74 75 72 6e 20 |defined |so turn |
|00003920| 6f 66 66 20 2a 2f 0a 58 | 09 09 20 20 20 20 63 6f |off */.X|.. co|
|00003930| 6c 5b 69 5d 2e 6f 6e 20 | 3d 20 46 61 6c 73 65 3b |l[i].on |= False;|
|00003940| 0a 58 09 09 20 20 20 20 | 58 74 55 6e 6d 61 6e 61 |.X.. |XtUnmana|
|00003950| 67 65 43 68 69 6c 64 20 | 28 63 6f 6c 5b 69 5d 2e |geChild |(col[i].|
|00003960| 72 63 77 29 3b 0a 58 09 | 09 20 20 20 20 58 74 55 |rcw);.X.|. XtU|
|00003970| 6e 6d 61 6e 61 67 65 43 | 68 69 6c 64 20 28 63 6f |nmanageC|hild (co|
|00003980| 6c 5b 69 5d 2e 73 77 29 | 3b 0a 58 09 09 20 20 20 |l[i].sw)|;.X.. |
|00003990| 20 58 6d 54 6f 67 67 6c | 65 42 75 74 74 6f 6e 53 | XmToggl|eButtonS|
|000039a0| 65 74 53 74 61 74 65 20 | 28 63 6f 6c 5b 69 5d 2e |etState |(col[i].|
|000039b0| 73 77 2c 20 46 61 6c 73 | 65 2c 20 46 61 6c 73 65 |sw, Fals|e, False|
|000039c0| 29 3b 0a 58 09 09 7d 20 | 65 6c 73 65 20 7b 0a 58 |);.X..} |else {.X|
|000039d0| 09 09 20 20 20 20 66 5f | 73 74 72 69 6e 67 20 28 |.. f_|string (|
|000039e0| 63 6f 6c 5b 69 5d 2e 6c | 77 2c 20 6f 70 2d 3e 6f |col[i].l|w, op->o|
|000039f0| 5f 6e 61 6d 65 29 3b 0a | 58 09 09 20 20 20 20 58 |_name);.|X.. X|
|00003a00| 74 4d 61 6e 61 67 65 43 | 68 69 6c 64 20 28 63 6f |tManageC|hild (co|
|00003a10| 6c 5b 69 5d 2e 73 77 29 | 3b 0a 58 09 09 20 20 20 |l[i].sw)|;.X.. |
|00003a20| 20 66 5f 73 74 72 69 6e | 67 20 28 63 6f 6c 5b 69 | f_strin|g (col[i|
|00003a30| 5d 2e 73 77 2c 20 6f 70 | 2d 3e 6f 5f 6e 61 6d 65 |].sw, op|->o_name|
|00003a40| 29 3b 0a 58 09 09 7d 0a | 58 09 09 62 72 65 61 6b |);.X..}.|X..break|
|00003a50| 3b 0a 58 09 20 20 20 20 | 7d 0a 58 09 69 66 20 28 |;.X. |}.X.if (|
|00003a60| 69 20 3d 3d 20 4e 43 29 | 20 7b 0a 58 09 20 20 20 |i == NC)| {.X. |
|00003a70| 20 70 72 69 6e 74 66 20 | 28 22 42 75 67 3a 20 25 | printf |("Bug: %|
|00003a80| 73 3a 20 64 62 69 64 78 | 20 6e 6f 74 20 69 6e 20 |s: dbidx| not in |
|00003a90| 63 6f 6c 5b 5d 3a 20 30 | 78 25 78 5c 6e 22 2c 20 |col[]: 0|x%x\n", |
|00003aa0| 6d 65 2c 20 64 62 69 64 | 78 29 3b 0a 58 09 20 20 |me, dbid|x);.X. |
|00003ab0| 20 20 65 78 69 74 20 28 | 31 29 3b 0a 58 09 7d 0a | exit (|1);.X.}.|
|00003ac0| 58 7d 0a 58 0a 58 2f 2a | 20 63 61 6c 6c 65 64 20 |X}.X.X/*| called |
|00003ad0| 74 6f 20 72 65 63 6f 6d | 70 75 74 65 20 61 6e 64 |to recom|pute and|
|00003ae0| 20 66 69 6c 6c 20 69 6e | 20 76 61 6c 75 65 73 20 | fill in| values |
|00003af0| 66 6f 72 20 74 68 65 20 | 64 61 74 61 20 6d 65 6e |for the |data men|
|00003b00| 75 2e 0a 58 20 2a 20 64 | 6f 6e 27 74 20 62 6f 74 |u..X * d|on't bot|
|00003b10| 68 65 72 20 69 66 20 69 | 74 20 64 6f 65 73 6e 27 |her if i|t doesn'|
|00003b20| 74 20 65 78 69 73 74 20 | 6f 72 20 69 73 20 75 6e |t exist |or is un|
|00003b30| 6d 61 6e 61 67 65 64 20 | 6e 6f 77 20 6f 72 20 6e |managed |now or n|
|00003b40| 6f 20 6f 6e 65 20 69 73 | 20 6c 6f 67 67 69 6e 67 |o one is| logging|
|00003b50| 2e 0a 58 20 2a 2f 0a 58 | 76 6f 69 64 0a 58 64 6d |..X */.X|void.Xdm|
|00003b60| 5f 75 70 64 61 74 65 20 | 28 6e 70 2c 20 68 6f 77 |_update |(np, how|
|00003b70| 5f 6d 75 63 68 29 0a 58 | 4e 6f 77 20 2a 6e 70 3b |_much).X|Now *np;|
|00003b80| 0a 58 69 6e 74 20 68 6f | 77 5f 6d 75 63 68 3b 0a |.Xint ho|w_much;.|
|00003b90| 58 7b 0a 58 09 69 6e 74 | 20 69 3b 0a 58 0a 58 09 |X{.X.int| i;.X.X.|
|00003ba0| 69 66 20 28 21 64 61 74 | 61 66 6f 72 6d 5f 77 29 |if (!dat|aform_w)|
|00003bb0| 0a 58 09 20 20 20 20 72 | 65 74 75 72 6e 3b 0a 58 |.X. r|eturn;.X|
|00003bc0| 09 69 66 20 28 21 58 74 | 49 73 4d 61 6e 61 67 65 |.if (!Xt|IsManage|
|00003bd0| 64 28 64 61 74 61 66 6f | 72 6d 5f 77 29 20 26 26 |d(datafo|rm_w) &&|
|00003be0| 20 21 61 6e 79 5f 69 73 | 6f 6e 28 29 20 26 26 20 | !any_is|on() && |
|00003bf0| 21 68 6f 77 5f 6d 75 63 | 68 29 0a 58 09 20 20 20 |!how_muc|h).X. |
|00003c00| 20 72 65 74 75 72 6e 3b | 0a 58 0a 58 09 2f 2a 20 | return;|.X.X./* |
|00003c10| 75 70 64 61 74 65 20 65 | 61 63 68 20 72 6f 77 20 |update e|ach row |
|00003c20| 74 68 61 74 20 69 73 20 | 6f 6e 20 2a 2f 0a 58 09 |that is |on */.X.|
|00003c30| 66 6f 72 20 28 69 20 3d | 20 30 3b 20 69 20 3c 20 |for (i =| 0; i < |
|00003c40| 4e 52 3b 20 69 2b 2b 29 | 0a 58 09 20 20 20 20 69 |NR; i++)|.X. i|
|00003c50| 66 20 28 72 6f 77 5b 69 | 5d 2e 6f 6e 29 0a 58 09 |f (row[i|].on).X.|
|00003c60| 09 64 6d 5f 63 6f 6d 70 | 75 74 65 20 28 69 2c 20 |.dm_comp|ute (i, |
|00003c70| 68 6f 77 5f 6d 75 63 68 | 2c 20 6e 70 29 3b 0a 58 |how_much|, np);.X|
|00003c80| 0a 58 09 2f 2a 20 75 70 | 64 61 74 65 20 74 68 65 |.X./* up|date the|
|00003c90| 20 64 61 74 65 73 74 61 | 6d 70 20 2a 2f 0a 58 09 | datesta|mp */.X.|
|00003ca0| 74 69 6d 65 73 74 61 6d | 70 20 28 6e 70 2c 20 64 |timestam|p (np, d|
|00003cb0| 74 5f 77 29 3b 0a 58 7d | 0a 58 0a 58 2f 2a 20 63 |t_w);.X}|.X.X/* c|
|00003cc0| 61 6c 6c 65 64 20 62 79 | 20 6f 74 68 65 72 20 6d |alled by| other m|
|00003cd0| 65 6e 75 73 20 61 73 20 | 74 68 65 79 20 77 61 6e |enus as |they wan|
|00003ce0| 74 20 74 6f 20 68 65 61 | 72 20 66 72 6f 6d 20 6f |t to hea|r from o|
|00003cf0| 75 72 20 62 75 74 74 6f | 6e 73 20 6f 72 20 6e 6f |ur butto|ns or no|
|00003d00| 74 2e 0a 58 20 2a 20 74 | 68 65 20 22 6f 6e 22 73 |t..X * t|he "on"s|
|00003d10| 20 61 6e 64 20 22 6f 66 | 66 22 73 20 73 74 61 63 | and "of|f"s stac|
|00003d20| 6b 20 2d 20 6f 6e 6c 79 | 20 72 65 61 6c 6c 79 20 |k - only| really |
|00003d30| 72 65 64 6f 20 74 68 65 | 20 62 75 74 74 6f 6e 73 |redo the| buttons|
|00003d40| 20 69 66 20 69 74 27 73 | 20 74 68 65 0a 58 20 2a | if it's| the.X *|
|00003d50| 20 66 69 72 73 74 20 6f | 6e 20 6f 72 20 74 68 65 | first o|n or the|
|00003d60| 20 6c 61 73 74 20 6f 66 | 66 2e 0a 58 20 2a 2f 0a | last of|f..X */.|
|00003d70| 58 76 6f 69 64 0a 58 64 | 6d 5f 73 65 6c 65 63 74 |Xvoid.Xd|m_select|
|00003d80| 69 6f 6e 5f 6d 6f 64 65 | 20 28 77 68 65 74 68 65 |ion_mode| (whethe|
|00003d90| 72 29 0a 58 69 6e 74 20 | 77 68 65 74 68 65 72 3b |r).Xint |whether;|
|00003da0| 09 2f 2a 20 77 68 65 74 | 68 65 72 20 73 65 74 74 |./* whet|her sett|
|00003db0| 69 6e 67 20 75 70 20 66 | 6f 72 20 70 6c 6f 74 74 |ing up f|or plott|
|00003dc0| 69 6e 67 20 6f 72 20 66 | 6f 72 20 6e 6f 74 20 70 |ing or f|or not p|
|00003dd0| 6c 6f 74 74 69 6e 67 20 | 2a 2f 0a 58 7b 0a 58 09 |lotting |*/.X{.X.|
|00003de0| 64 6d 5f 73 65 6c 65 63 | 74 69 6e 67 20 2b 3d 20 |dm_selec|ting += |
|00003df0| 77 68 65 74 68 65 72 20 | 3f 20 31 20 3a 20 2d 31 |whether |? 1 : -1|
|00003e00| 3b 0a 58 0a 58 09 69 66 | 20 28 64 61 74 61 66 6f |;.X.X.if| (datafo|
|00003e10| 72 6d 5f 77 20 26 26 20 | 58 74 49 73 4d 61 6e 61 |rm_w && |XtIsMana|
|00003e20| 67 65 64 28 64 61 74 61 | 66 6f 72 6d 5f 77 29 29 |ged(data|form_w))|
|00003e30| 0a 58 09 20 20 20 20 69 | 66 20 28 77 68 65 74 68 |.X. i|f (wheth|
|00003e40| 65 72 20 26 26 20 64 6d | 5f 73 65 6c 65 63 74 69 |er && dm|_selecti|
|00003e50| 6e 67 20 3d 3d 20 31 20 | 20 20 20 20 2f 2a 20 66 |ng == 1 | /* f|
|00003e60| 69 72 73 74 20 6f 6e 65 | 20 74 6f 20 77 61 6e 74 |irst one| to want|
|00003e70| 20 6f 6e 20 2a 2f 0a 58 | 09 09 7c 7c 20 21 77 68 | on */.X|..|| !wh|
|00003e80| 65 74 68 65 72 20 26 26 | 20 64 6d 5f 73 65 6c 65 |ether &&| dm_sele|
|00003e90| 63 74 69 6e 67 20 3d 3d | 20 30 20 2f 2a 20 6c 61 |cting ==| 0 /* la|
|00003ea0| 73 74 20 6f 6e 65 20 74 | 6f 20 77 61 6e 74 20 6f |st one t|o want o|
|00003eb0| 66 66 20 2a 2f 29 0a 58 | 09 09 64 6d 5f 73 65 74 |ff */).X|..dm_set|
|00003ec0| 5f 62 75 74 74 6f 6e 73 | 20 28 77 68 65 74 68 65 |_buttons| (whethe|
|00003ed0| 72 29 3b 0a 58 7d 0a 58 | 0a 58 2f 2a 20 63 61 6c |r);.X}.X|.X/* cal|
|00003ee0| 6c 65 64 20 74 6f 20 70 | 75 74 20 75 70 20 6f 72 |led to p|ut up or|
|00003ef0| 20 72 65 6d 6f 76 65 20 | 74 68 65 20 77 61 74 63 | remove |the watc|
|00003f00| 68 20 63 75 72 73 6f 72 | 2e 20 20 2a 2f 0a 58 76 |h cursor|. */.Xv|
|00003f10| 6f 69 64 0a 58 64 6d 5f | 63 75 72 73 6f 72 20 28 |oid.Xdm_|cursor (|
|00003f20| 63 29 0a 58 43 75 72 73 | 6f 72 20 63 3b 0a 58 7b |c).XCurs|or c;.X{|
|00003f30| 0a 58 09 57 69 6e 64 6f | 77 20 77 69 6e 3b 0a 58 |.X.Windo|w win;.X|
|00003f40| 0a 58 09 69 66 20 28 64 | 61 74 61 66 6f 72 6d 5f |.X.if (d|ataform_|
|00003f50| 77 20 26 26 20 28 77 69 | 6e 20 3d 20 58 74 57 69 |w && (wi|n = XtWi|
|00003f60| 6e 64 6f 77 28 64 61 74 | 61 66 6f 72 6d 5f 77 29 |ndow(dat|aform_w)|
|00003f70| 29 29 20 7b 0a 58 09 20 | 20 20 20 44 69 73 70 6c |)) {.X. | Displ|
|00003f80| 61 79 20 2a 64 73 70 20 | 3d 20 58 74 44 69 73 70 |ay *dsp |= XtDisp|
|00003f90| 6c 61 79 28 64 61 74 61 | 66 6f 72 6d 5f 77 29 3b |lay(data|form_w);|
|00003fa0| 0a 58 09 20 20 20 20 69 | 66 20 28 63 29 0a 58 09 |.X. i|f (c).X.|
|00003fb0| 09 58 44 65 66 69 6e 65 | 43 75 72 73 6f 72 20 28 |.XDefine|Cursor (|
|00003fc0| 64 73 70 2c 20 77 69 6e | 2c 20 63 29 3b 0a 58 09 |dsp, win|, c);.X.|
|00003fd0| 20 20 20 20 65 6c 73 65 | 0a 58 09 09 58 55 6e 64 | else|.X..XUnd|
|00003fe0| 65 66 69 6e 65 43 75 72 | 73 6f 72 20 28 64 73 70 |efineCur|sor (dsp|
|00003ff0| 2c 20 77 69 6e 29 3b 0a | 58 09 7d 0a 58 0a 58 09 |, win);.|X.}.X.X.|
|00004000| 69 66 20 28 73 65 6c 5f | 77 20 26 26 20 28 77 69 |if (sel_|w && (wi|
|00004010| 6e 20 3d 20 58 74 57 69 | 6e 64 6f 77 28 73 65 6c |n = XtWi|ndow(sel|
|00004020| 5f 77 29 29 29 20 7b 0a | 58 09 20 20 20 20 44 69 |_w))) {.|X. Di|
|00004030| 73 70 6c 61 79 20 2a 64 | 73 70 20 3d 20 58 74 44 |splay *d|sp = XtD|
|00004040| 69 73 70 6c 61 79 28 73 | 65 6c 5f 77 29 3b 0a 58 |isplay(s|el_w);.X|
|00004050| 09 20 20 20 20 69 66 20 | 28 63 29 0a 58 09 09 58 |. if |(c).X..X|
|00004060| 44 65 66 69 6e 65 43 75 | 72 73 6f 72 20 28 64 73 |DefineCu|rsor (ds|
|00004070| 70 2c 20 77 69 6e 2c 20 | 63 29 3b 0a 58 09 20 20 |p, win, |c);.X. |
|00004080| 20 20 65 6c 73 65 0a 58 | 09 09 58 55 6e 64 65 66 | else.X|..XUndef|
|00004090| 69 6e 65 43 75 72 73 6f | 72 20 28 64 73 70 2c 20 |ineCurso|r (dsp, |
|000040a0| 77 69 6e 29 3b 0a 58 09 | 7d 0a 58 7d 0a 58 0a 58 |win);.X.|}.X}.X.X|
|000040b0| 73 74 61 74 69 63 20 76 | 6f 69 64 0a 58 64 6d 5f |static v|oid.Xdm_|
|000040c0| 63 72 65 61 74 65 5f 66 | 6f 72 6d 28 29 0a 58 7b |create_f|orm().X{|
|000040d0| 0a 58 09 57 69 64 67 65 | 74 20 63 74 6c 72 63 5f |.X.Widge|t ctlrc_|
|000040e0| 77 2c 20 77 3b 0a 58 09 | 41 72 67 20 61 72 67 73 |w, w;.X.|Arg args|
|000040f0| 5b 32 30 5d 3b 0a 58 09 | 69 6e 74 20 6e 3b 0a 58 |[20];.X.|int n;.X|
|00004100| 0a 58 09 2f 2a 20 63 72 | 65 61 74 65 20 74 68 65 |.X./* cr|eate the|
|00004110| 20 66 6f 72 6d 20 2a 2f | 0a 58 09 6e 20 3d 20 30 | form */|.X.n = 0|
|00004120| 3b 0a 58 09 58 74 53 65 | 74 41 72 67 20 28 61 72 |;.X.XtSe|tArg (ar|
|00004130| 67 73 5b 6e 5d 2c 20 58 | 6d 4e 61 6c 6c 6f 77 53 |gs[n], X|mNallowS|
|00004140| 68 65 6c 6c 52 65 73 69 | 7a 65 2c 20 54 72 75 65 |hellResi|ze, True|
|00004150| 29 3b 20 6e 2b 2b 3b 0a | 58 09 58 74 53 65 74 41 |); n++;.|X.XtSetA|
|00004160| 72 67 20 28 61 72 67 73 | 5b 6e 5d 2c 20 58 6d 4e |rg (args|[n], XmN|
|00004170| 61 75 74 6f 55 6e 6d 61 | 6e 61 67 65 2c 20 46 61 |autoUnma|nage, Fa|
|00004180| 6c 73 65 29 3b 20 6e 2b | 2b 3b 0a 58 09 58 74 53 |lse); n+|+;.X.XtS|
|00004190| 65 74 41 72 67 20 28 61 | 72 67 73 5b 6e 5d 2c 20 |etArg (a|rgs[n], |
|000041a0| 58 6d 4e 64 65 66 61 75 | 6c 74 50 6f 73 69 74 69 |XmNdefau|ltPositi|
|000041b0| 6f 6e 2c 20 46 61 6c 73 | 65 29 3b 20 6e 2b 2b 3b |on, Fals|e); n++;|
|000041c0| 0a 58 09 58 74 53 65 74 | 41 72 67 20 28 61 72 67 |.X.XtSet|Arg (arg|
|000041d0| 73 5b 6e 5d 2c 20 58 6d | 4e 61 6c 6c 6f 77 4f 76 |s[n], Xm|NallowOv|
|000041e0| 65 72 6c 61 70 2c 20 46 | 61 6c 73 65 29 3b 20 6e |erlap, F|alse); n|
|000041f0| 2b 2b 3b 0a 58 09 64 61 | 74 61 66 6f 72 6d 5f 77 |++;.X.da|taform_w|
|00004200| 20 3d 20 58 6d 43 72 65 | 61 74 65 46 6f 72 6d 44 | = XmCre|ateFormD|
|00004210| 69 61 6c 6f 67 20 28 74 | 6f 70 6c 65 76 65 6c 5f |ialog (t|oplevel_|
|00004220| 77 2c 20 22 44 61 74 61 | 22 2c 20 61 72 67 73 2c |w, "Data|", args,|
|00004230| 20 6e 29 3b 0a 58 0a 58 | 09 2f 2a 20 73 65 74 20 | n);.X.X|./* set |
|00004240| 73 6f 6d 65 20 73 74 75 | 66 66 20 69 6e 20 74 68 |some stu|ff in th|
|00004250| 65 20 70 61 72 65 6e 74 | 20 44 69 61 6c 6f 67 53 |e parent| DialogS|
|00004260| 68 65 6c 6c 2e 0a 58 09 | 20 2a 20 73 65 74 74 69 |hell..X.| * setti|
|00004270| 6e 67 20 58 6d 4e 64 69 | 61 6c 6f 67 54 69 74 6c |ng XmNdi|alogTitl|
|00004280| 65 20 69 6e 20 74 68 65 | 20 46 6f 72 6d 20 64 69 |e in the| Form di|
|00004290| 64 6e 27 74 20 77 6f 72 | 6b 2e 2e 0a 58 09 20 2a |dn't wor|k...X. *|
|000042a0| 2f 0a 58 09 6e 20 3d 20 | 30 3b 0a 58 09 58 74 53 |/.X.n = |0;.X.XtS|
|000042b0| 65 74 41 72 67 20 28 61 | 72 67 73 5b 6e 5d 2c 20 |etArg (a|rgs[n], |
|000042c0| 58 6d 4e 74 69 74 6c 65 | 2c 20 22 78 65 70 68 65 |XmNtitle|, "xephe|
|000042d0| 6d 20 47 65 6e 65 72 61 | 6c 20 44 61 74 61 20 54 |m Genera|l Data T|
|000042e0| 61 62 6c 65 22 29 3b 20 | 6e 2b 2b 3b 0a 58 09 58 |able"); |n++;.X.X|
|000042f0| 74 53 65 74 56 61 6c 75 | 65 73 20 28 58 74 50 61 |tSetValu|es (XtPa|
|00004300| 72 65 6e 74 28 64 61 74 | 61 66 6f 72 6d 5f 77 29 |rent(dat|aform_w)|
|00004310| 2c 20 61 72 67 73 2c 20 | 6e 29 3b 0a 58 0a 58 09 |, args, |n);.X.X.|
|00004320| 2f 2a 20 6d 61 6b 65 20 | 61 20 72 6f 77 63 6f 6c |/* make |a rowcol|
|00004330| 75 6d 6e 20 66 6f 72 20 | 74 68 65 20 62 6f 74 74 |umn for |the bott|
|00004340| 6f 6d 20 63 6f 6e 74 72 | 6f 6c 20 70 61 6e 65 6c |om contr|ol panel|
|00004350| 20 2a 2f 0a 58 0a 58 09 | 6e 20 3d 20 30 3b 0a 58 | */.X.X.|n = 0;.X|
|00004360| 09 58 74 53 65 74 41 72 | 67 20 28 61 72 67 73 5b |.XtSetAr|g (args[|
|00004370| 6e 5d 2c 20 58 6d 4e 6c | 65 66 74 41 74 74 61 63 |n], XmNl|eftAttac|
|00004380| 68 6d 65 6e 74 2c 20 58 | 6d 41 54 54 41 43 48 5f |hment, X|mATTACH_|
|00004390| 46 4f 52 4d 29 3b 20 6e | 2b 2b 3b 0a 58 09 58 74 |FORM); n|++;.X.Xt|
|000043a0| 53 65 74 41 72 67 20 28 | 61 72 67 73 5b 6e 5d 2c |SetArg (|args[n],|
|000043b0| 20 58 6d 4e 72 69 67 68 | 74 41 74 74 61 63 68 6d | XmNrigh|tAttachm|
|000043c0| 65 6e 74 2c 20 58 6d 41 | 54 54 41 43 48 5f 46 4f |ent, XmA|TTACH_FO|
|000043d0| 52 4d 29 3b 20 6e 2b 2b | 3b 0a 58 09 58 74 53 65 |RM); n++|;.X.XtSe|
|000043e0| 74 41 72 67 20 28 61 72 | 67 73 5b 6e 5d 2c 20 58 |tArg (ar|gs[n], X|
|000043f0| 6d 4e 62 6f 74 74 6f 6d | 41 74 74 61 63 68 6d 65 |mNbottom|Attachme|
|00004400| 6e 74 2c 20 58 6d 41 54 | 54 41 43 48 5f 46 4f 52 |nt, XmAT|TACH_FOR|
|00004410| 4d 29 3b 20 6e 2b 2b 3b | 0a 58 09 58 74 53 65 74 |M); n++;|.X.XtSet|
|00004420| 41 72 67 20 28 61 72 67 | 73 5b 6e 5d 2c 20 58 6d |Arg (arg|s[n], Xm|
|00004430| 4e 6f 72 69 65 6e 74 61 | 74 69 6f 6e 2c 20 58 6d |Norienta|tion, Xm|
|00004440| 48 4f 52 49 5a 4f 4e 54 | 41 4c 29 3b 20 6e 2b 2b |HORIZONT|AL); n++|
|00004450| 3b 0a 58 09 58 74 53 65 | 74 41 72 67 20 28 61 72 |;.X.XtSe|tArg (ar|
|00004460| 67 73 5b 6e 5d 2c 20 58 | 6d 4e 70 61 63 6b 69 6e |gs[n], X|mNpackin|
|00004470| 67 2c 20 58 6d 50 41 43 | 4b 5f 54 49 47 48 54 29 |g, XmPAC|K_TIGHT)|
|00004480| 3b 20 6e 2b 2b 3b 0a 58 | 09 58 74 53 65 74 41 72 |; n++;.X|.XtSetAr|
|00004490| 67 20 28 61 72 67 73 5b | 6e 5d 2c 20 58 6d 4e 65 |g (args[|n], XmNe|
|000044a0| 6e 74 72 79 41 6c 69 67 | 6e 6d 65 6e 74 2c 20 58 |ntryAlig|nment, X|
|000044b0| 6d 41 4c 49 47 4e 4d 45 | 4e 54 5f 43 45 4e 54 45 |mALIGNME|NT_CENTE|
|000044c0| 52 29 3b 20 6e 2b 2b 3b | 0a 58 09 63 74 6c 72 63 |R); n++;|.X.ctlrc|
|000044d0| 5f 77 20 3d 20 58 6d 43 | 72 65 61 74 65 52 6f 77 |_w = XmC|reateRow|
|000044e0| 43 6f 6c 75 6d 6e 20 28 | 64 61 74 61 66 6f 72 6d |Column (|dataform|
|000044f0| 5f 77 2c 20 22 44 61 74 | 61 54 62 6c 52 43 22 2c |_w, "Dat|aTblRC",|
|00004500| 20 61 72 67 73 2c 20 6e | 29 3b 0a 58 09 58 74 4d | args, n|);.X.XtM|
|00004510| 61 6e 61 67 65 43 68 69 | 6c 64 20 28 63 74 6c 72 |anageChi|ld (ctlr|
|00004520| 63 5f 77 29 3b 0a 58 0a | 58 09 20 20 20 20 2f 2a |c_w);.X.|X. /*|
|00004530| 20 6d 61 6b 65 20 74 68 | 65 20 53 65 74 75 70 20 | make th|e Setup |
|00004540| 62 75 74 74 6f 6e 20 2a | 2f 0a 58 0a 58 09 20 20 |button *|/.X.X. |
|00004550| 20 20 6e 20 3d 20 30 3b | 0a 58 09 20 20 20 20 77 | n = 0;|.X. w|
|00004560| 20 3d 20 58 6d 43 72 65 | 61 74 65 50 75 73 68 42 | = XmCre|atePushB|
|00004570| 75 74 74 6f 6e 20 28 63 | 74 6c 72 63 5f 77 2c 20 |utton (c|tlrc_w, |
|00004580| 22 53 65 74 75 70 22 2c | 20 61 72 67 73 2c 20 6e |"Setup",| args, n|
|00004590| 29 3b 0a 58 09 20 20 20 | 20 58 74 41 64 64 43 61 |);.X. | XtAddCa|
|000045a0| 6c 6c 62 61 63 6b 20 28 | 77 2c 20 58 6d 4e 61 63 |llback (|w, XmNac|
|000045b0| 74 69 76 61 74 65 43 61 | 6c 6c 62 61 63 6b 2c 20 |tivateCa|llback, |
|000045c0| 64 6d 5f 73 65 74 75 70 | 5f 63 62 2c 20 30 29 3b |dm_setup|_cb, 0);|
|000045d0| 0a 58 09 20 20 20 20 58 | 74 4d 61 6e 61 67 65 43 |.X. X|tManageC|
|000045e0| 68 69 6c 64 20 28 77 29 | 3b 0a 58 0a 58 09 20 20 |hild (w)|;.X.X. |
|000045f0| 20 20 2f 2a 20 6d 61 6b | 65 20 74 68 65 20 63 6c | /* mak|e the cl|
|00004600| 6f 73 65 20 62 75 74 74 | 6f 6e 20 2a 2f 0a 58 0a |ose butt|on */.X.|
|00004610| 58 09 20 20 20 20 6e 20 | 3d 20 30 3b 0a 58 09 20 |X. n |= 0;.X. |
|00004620| 20 20 20 77 20 3d 20 58 | 6d 43 72 65 61 74 65 50 | w = X|mCreateP|
|00004630| 75 73 68 42 75 74 74 6f | 6e 20 28 63 74 6c 72 63 |ushButto|n (ctlrc|
|00004640| 5f 77 2c 20 22 43 6c 6f | 73 65 22 2c 20 61 72 67 |_w, "Clo|se", arg|
|00004650| 73 2c 20 6e 29 3b 0a 58 | 09 20 20 20 20 58 74 41 |s, n);.X|. XtA|
|00004660| 64 64 43 61 6c 6c 62 61 | 63 6b 20 28 77 2c 20 58 |ddCallba|ck (w, X|
|00004670| 6d 4e 61 63 74 69 76 61 | 74 65 43 61 6c 6c 62 61 |mNactiva|teCallba|
|00004680| 63 6b 2c 20 64 6d 5f 63 | 6c 6f 73 65 5f 63 62 2c |ck, dm_c|lose_cb,|
|00004690| 20 30 29 3b 0a 58 09 20 | 20 20 20 58 74 4d 61 6e | 0);.X. | XtMan|
|000046a0| 61 67 65 43 68 69 6c 64 | 20 28 77 29 3b 0a 58 0a |ageChild| (w);.X.|
|000046b0| 58 09 20 20 20 20 2f 2a | 20 6d 61 6b 65 20 74 68 |X. /*| make th|
|000046c0| 65 20 68 65 6c 70 20 70 | 75 73 68 62 75 74 74 6f |e help p|ushbutto|
|000046d0| 6e 20 2a 2f 0a 58 0a 58 | 09 20 20 20 20 6e 20 3d |n */.X.X|. n =|
|000046e0| 20 30 3b 0a 58 09 20 20 | 20 20 77 20 3d 20 58 6d | 0;.X. | w = Xm|
|000046f0| 43 72 65 61 74 65 50 75 | 73 68 42 75 74 74 6f 6e |CreatePu|shButton|
|00004700| 20 28 63 74 6c 72 63 5f | 77 2c 20 22 48 65 6c 70 | (ctlrc_|w, "Help|
|00004710| 22 2c 20 61 72 67 73 2c | 20 6e 29 3b 0a 58 09 20 |", args,| n);.X. |
|00004720| 20 20 20 58 74 41 64 64 | 43 61 6c 6c 62 61 63 6b | XtAdd|Callback|
|00004730| 20 28 77 2c 20 58 6d 4e | 61 63 74 69 76 61 74 65 | (w, XmN|activate|
|00004740| 43 61 6c 6c 62 61 63 6b | 2c 20 64 6d 5f 68 65 6c |Callback|, dm_hel|
|00004750| 70 5f 63 62 2c 20 30 29 | 3b 0a 58 09 20 20 20 20 |p_cb, 0)|;.X. |
|00004760| 58 74 4d 61 6e 61 67 65 | 43 68 69 6c 64 20 28 77 |XtManage|Child (w|
|00004770| 29 3b 0a 58 0a 58 09 20 | 20 20 20 2f 2a 20 6d 61 |);.X.X. | /* ma|
|00004780| 6b 65 20 74 68 65 20 68 | 6f 72 69 7a 6f 6e 2c 20 |ke the h|orizon, |
|00004790| 6c 69 6d 62 20 61 6e 64 | 20 63 65 6e 74 72 69 63 |limb and| centric|
|000047a0| 20 69 6e 64 69 63 61 74 | 6f 72 73 20 69 6e 20 66 | indicat|ors in f|
|000047b0| 72 61 6d 65 73 2e 0a 58 | 09 20 20 20 20 20 2a 20 |rames..X|. * |
|000047c0| 74 75 72 6e 20 74 68 65 | 6d 20 6f 6e 20 61 6e 64 |turn the|m on and|
|000047d0| 20 6f 66 66 20 62 79 20 | 6d 61 6e 61 67 69 6e 67 | off by |managing|
|000047e0| 20 74 68 65 20 66 72 61 | 6d 65 73 20 2d 2d 20 62 | the fra|mes -- b|
|000047f0| 75 74 20 6e 6f 74 20 79 | 65 74 21 0a 58 09 20 20 |ut not y|et!.X. |
|00004800| 20 20 20 2a 2f 0a 58 0a | 58 09 20 20 20 20 6e 20 | */.X.|X. n |
|00004810| 3d 20 30 3b 0a 58 09 20 | 20 20 20 77 20 3d 20 58 |= 0;.X. | w = X|
|00004820| 6d 43 72 65 61 74 65 46 | 72 61 6d 65 20 28 63 74 |mCreateF|rame (ct|
|00004830| 6c 72 63 5f 77 2c 20 22 | 44 52 65 66 72 46 22 2c |lrc_w, "|DRefrF",|
|00004840| 20 61 72 67 73 2c 20 6e | 29 3b 0a 58 09 20 20 20 | args, n|);.X. |
|00004850| 20 6e 20 3d 20 30 3b 0a | 58 09 20 20 20 20 72 65 | n = 0;.|X. re|
|00004860| 66 72 5f 77 20 3d 20 58 | 6d 43 72 65 61 74 65 4c |fr_w = X|mCreateL|
|00004870| 61 62 65 6c 20 28 77 2c | 20 22 44 52 65 66 72 4c |abel (w,| "DRefrL|
|00004880| 22 2c 20 61 72 67 73 2c | 20 6e 29 3b 0a 58 09 20 |", args,| n);.X. |
|00004890| 20 20 20 58 74 4d 61 6e | 61 67 65 43 68 69 6c 64 | XtMan|ageChild|
|000048a0| 20 28 72 65 66 72 5f 77 | 29 3b 0a 58 09 20 20 20 | (refr_w|);.X. |
|000048b0| 20 6e 20 3d 20 30 3b 0a | 58 09 20 20 20 20 77 20 | n = 0;.|X. w |
|000048c0| 3d 20 58 6d 43 72 65 61 | 74 65 46 72 61 6d 65 20 |= XmCrea|teFrame |
|000048d0| 28 63 74 6c 72 63 5f 77 | 2c 20 22 44 4c 69 6d 62 |(ctlrc_w|, "DLimb|
|000048e0| 6c 46 22 2c 20 61 72 67 | 73 2c 20 6e 29 3b 0a 58 |lF", arg|s, n);.X|
|000048f0| 09 20 20 20 20 6e 20 3d | 20 30 3b 0a 58 09 20 20 |. n =| 0;.X. |
|00004900| 20 20 6c 69 6d 62 6c 5f | 77 20 3d 20 58 6d 43 72 | limbl_|w = XmCr|
|00004910| 65 61 74 65 4c 61 62 65 | 6c 20 28 77 2c 20 22 44 |eateLabe|l (w, "D|
|00004920| 4c 69 6d 62 6c 4c 22 2c | 20 61 72 67 73 2c 20 6e |LimblL",| args, n|
|00004930| 29 3b 0a 58 09 20 20 20 | 20 58 74 4d 61 6e 61 67 |);.X. | XtManag|
|00004940| 65 43 68 69 6c 64 20 28 | 6c 69 6d 62 6c 5f 77 29 |eChild (|limbl_w)|
|00004950| 3b 0a 58 09 20 20 20 20 | 6e 20 3d 20 30 3b 0a 58 |;.X. |n = 0;.X|
|00004960| 09 20 20 20 20 77 20 3d | 20 58 6d 43 72 65 61 74 |. w =| XmCreat|
|00004970| 65 46 72 61 6d 65 20 28 | 63 74 6c 72 63 5f 77 2c |eFrame (|ctlrc_w,|
|00004980| 20 22 44 43 65 6e 74 72 | 69 63 46 22 2c 20 61 72 | "DCentr|icF", ar|
|00004990| 67 73 2c 20 6e 29 3b 0a | 58 09 20 20 20 20 6e 20 |gs, n);.|X. n |
|000049a0| 3d 20 30 3b 0a 58 09 20 | 20 20 20 63 65 6e 74 72 |= 0;.X. | centr|
|000049b0| 69 63 5f 77 20 3d 20 58 | 6d 43 72 65 61 74 65 4c |ic_w = X|mCreateL|
|000049c0| 61 62 65 6c 20 28 77 2c | 20 22 44 43 65 6e 74 72 |abel (w,| "DCentr|
|000049d0| 69 63 4c 22 2c 20 61 72 | 67 73 2c 20 6e 29 3b 0a |icL", ar|gs, n);.|
|000049e0| 58 09 20 20 20 20 58 74 | 4d 61 6e 61 67 65 43 68 |X. Xt|ManageCh|
|000049f0| 69 6c 64 20 28 63 65 6e | 74 72 69 63 5f 77 29 3b |ild (cen|tric_w);|
|00004a00| 0a 58 0a 58 09 20 20 20 | 20 2f 2a 20 6d 61 6b 65 |.X.X. | /* make|
|00004a10| 20 61 20 6c 61 62 65 6c | 20 66 6f 72 20 74 68 65 | a label| for the|
|00004a20| 20 64 61 74 65 2f 74 69 | 6d 65 20 73 74 61 6d 70 | date/ti|me stamp|
|00004a30| 20 2a 2f 0a 58 0a 58 09 | 20 20 20 20 6e 20 3d 20 | */.X.X.| n = |
|00004a40| 30 3b 0a 58 09 20 20 20 | 20 64 74 5f 77 20 3d 20 |0;.X. | dt_w = |
|00004a50| 58 6d 43 72 65 61 74 65 | 4c 61 62 65 6c 20 28 63 |XmCreate|Label (c|
|00004a60| 74 6c 72 63 5f 77 2c 20 | 22 44 61 74 65 53 74 61 |tlrc_w, |"DateSta|
|00004a70| 6d 70 22 2c 20 61 72 67 | 73 2c 20 6e 29 3b 0a 58 |mp", arg|s, n);.X|
|00004a80| 09 20 20 20 20 74 69 6d | 65 73 74 61 6d 70 20 28 |. tim|estamp (|
|00004a90| 6d 6d 5f 67 65 74 5f 6e | 6f 77 28 29 2c 20 64 74 |mm_get_n|ow(), dt|
|00004aa0| 5f 77 29 3b 09 2f 2a 20 | 73 65 74 73 20 69 6e 69 |_w);./* |sets ini|
|00004ab0| 74 69 61 6c 20 73 69 7a | 65 20 63 6f 72 72 65 63 |tial siz|e correc|
|00004ac0| 74 6c 79 2a 2f 0a 58 09 | 20 20 20 20 58 74 4d 61 |tly*/.X.| XtMa|
|00004ad0| 6e 61 67 65 43 68 69 6c | 64 20 28 64 74 5f 77 29 |nageChil|d (dt_w)|
|00004ae0| 3b 0a 58 0a 58 09 2f 2a | 20 63 72 65 61 74 65 20 |;.X.X./*| create |
|00004af0| 74 68 65 20 74 61 62 6c | 65 20 2a 2f 0a 58 0a 58 |the tabl|e */.X.X|
|00004b00| 09 6e 20 3d 20 30 3b 0a | 58 09 58 74 53 65 74 41 |.n = 0;.|X.XtSetA|
|00004b10| 72 67 20 28 61 72 67 73 | 5b 6e 5d 2c 20 58 6d 4e |rg (args|[n], XmN|
|00004b20| 74 6f 70 41 74 74 61 63 | 68 6d 65 6e 74 2c 20 58 |topAttac|hment, X|
|00004b30| 6d 41 54 54 41 43 48 5f | 46 4f 52 4d 29 3b 20 6e |mATTACH_|FORM); n|
|00004b40| 2b 2b 3b 0a 58 09 58 74 | 53 65 74 41 72 67 20 28 |++;.X.Xt|SetArg (|
|00004b50| 61 72 67 73 5b 6e 5d 2c | 20 58 6d 4e 62 6f 74 74 |args[n],| XmNbott|
|00004b60| 6f 6d 41 74 74 61 63 68 | 6d 65 6e 74 2c 20 58 6d |omAttach|ment, Xm|
|00004b70| 41 54 54 41 43 48 5f 57 | 49 44 47 45 54 29 3b 20 |ATTACH_W|IDGET); |
|00004b80| 6e 2b 2b 3b 0a 58 09 58 | 74 53 65 74 41 72 67 20 |n++;.X.X|tSetArg |
|00004b90| 28 61 72 67 73 5b 6e 5d | 2c 20 58 6d 4e 62 6f 74 |(args[n]|, XmNbot|
|00004ba0| 74 6f 6d 57 69 64 67 65 | 74 2c 20 63 74 6c 72 63 |tomWidge|t, ctlrc|
|00004bb0| 5f 77 29 3b 20 6e 2b 2b | 3b 0a 58 09 58 74 53 65 |_w); n++|;.X.XtSe|
|00004bc0| 74 41 72 67 20 28 61 72 | 67 73 5b 6e 5d 2c 20 58 |tArg (ar|gs[n], X|
|00004bd0| 6d 4e 6c 65 66 74 41 74 | 74 61 63 68 6d 65 6e 74 |mNleftAt|tachment|
|00004be0| 2c 20 58 6d 41 54 54 41 | 43 48 5f 46 4f 52 4d 29 |, XmATTA|CH_FORM)|
|00004bf0| 3b 20 6e 2b 2b 3b 0a 58 | 09 58 74 53 65 74 41 72 |; n++;.X|.XtSetAr|
|00004c00| 67 20 28 61 72 67 73 5b | 6e 5d 2c 20 58 6d 4e 72 |g (args[|n], XmNr|
|00004c10| 69 67 68 74 41 74 74 61 | 63 68 6d 65 6e 74 2c 20 |ightAtta|chment, |
|00004c20| 58 6d 41 54 54 41 43 48 | 5f 46 4f 52 4d 29 3b 20 |XmATTACH|_FORM); |
|00004c30| 6e 2b 2b 3b 0a 58 09 58 | 74 53 65 74 41 72 67 20 |n++;.X.X|tSetArg |
|00004c40| 28 61 72 67 73 5b 6e 5d | 2c 20 58 6d 4e 6f 72 69 |(args[n]|, XmNori|
|00004c50| 65 6e 74 61 74 69 6f 6e | 2c 20 58 6d 48 4f 52 49 |entation|, XmHORI|
|00004c60| 5a 4f 4e 54 41 4c 29 3b | 20 6e 2b 2b 3b 0a 58 09 |ZONTAL);| n++;.X.|
|00004c70| 58 74 53 65 74 41 72 67 | 20 28 61 72 67 73 5b 6e |XtSetArg| (args[n|
|00004c80| 5d 2c 20 58 6d 4e 70 61 | 63 6b 69 6e 67 2c 20 58 |], XmNpa|cking, X|
|00004c90| 6d 50 41 43 4b 5f 54 49 | 47 48 54 29 3b 20 6e 2b |mPACK_TI|GHT); n+|
|00004ca0| 2b 3b 0a 58 09 74 61 62 | 6c 65 5f 77 20 3d 20 58 |+;.X.tab|le_w = X|
|00004cb0| 6d 43 72 65 61 74 65 52 | 6f 77 43 6f 6c 75 6d 6e |mCreateR|owColumn|
|00004cc0| 20 28 64 61 74 61 66 6f | 72 6d 5f 77 2c 20 22 44 | (datafo|rm_w, "D|
|00004cd0| 61 74 61 54 61 62 6c 65 | 22 2c 20 61 72 67 73 2c |ataTable|", args,|
|00004ce0| 20 6e 29 3b 0a 58 09 58 | 74 4d 61 6e 61 67 65 43 | n);.X.X|tManageC|
|00004cf0| 68 69 6c 64 20 28 74 61 | 62 6c 65 5f 77 29 3b 0a |hild (ta|ble_w);.|
|00004d00| 58 0a 58 09 64 6d 5f 63 | 72 65 61 74 65 5f 74 61 |X.X.dm_c|reate_ta|
|00004d10| 62 6c 65 20 28 74 61 62 | 6c 65 5f 77 29 3b 0a 58 |ble (tab|le_w);.X|
|00004d20| 0a 58 09 2f 2a 20 63 72 | 65 61 74 65 20 74 68 65 |.X./* cr|eate the|
|00004d30| 20 73 65 6c 65 63 74 69 | 6f 6e 20 64 69 61 6c 6f | selecti|on dialo|
|00004d40| 67 2e 0a 58 09 20 2a 20 | 64 6f 6e 27 74 20 6d 61 |g..X. * |don't ma|
|00004d50| 6e 61 67 65 20 69 74 20 | 79 65 74 20 62 75 74 20 |nage it |yet but |
|00004d60| 69 74 73 20 73 74 61 74 | 65 20 69 6e 66 6f 20 69 |its stat|e info i|
|00004d70| 73 20 75 73 65 64 20 72 | 69 67 68 74 20 6f 66 66 |s used r|ight off|
|00004d80| 2e 0a 58 09 20 2a 2f 0a | 58 09 64 73 5f 63 72 65 |..X. */.|X.ds_cre|
|00004d90| 61 74 65 5f 73 65 6c 65 | 63 74 69 6f 6e 28 74 6f |ate_sele|ction(to|
|00004da0| 70 6c 65 76 65 6c 5f 77 | 29 3b 0a 58 09 64 73 5f |plevel_w|);.X.ds_|
|00004db0| 61 70 70 6c 79 5f 73 65 | 6c 65 63 74 69 6f 6e 73 |apply_se|lections|
|00004dc0| 28 29 3b 0a 58 7d 0a 58 | 0a 58 2f 2a 20 67 6f 20 |();.X}.X|.X/* go |
|00004dd0| 74 68 72 6f 75 67 68 20 | 61 6c 6c 20 74 68 65 20 |through |all the |
|00004de0| 62 75 74 74 6f 6e 73 20 | 61 6e 64 20 73 65 74 20 |buttons |and set |
|00004df0| 77 68 65 74 68 65 72 20 | 74 68 65 79 0a 58 20 2a |whether |they.X *|
|00004e00| 20 73 68 6f 75 6c 64 20 | 61 70 70 65 61 72 20 74 | should |appear t|
|00004e10| 6f 20 6c 6f 6f 6b 20 6c | 69 6b 65 20 62 75 74 74 |o look l|ike butt|
|00004e20| 6f 6e 73 20 6f 72 20 6a | 75 73 74 20 66 6c 61 74 |ons or j|ust flat|
|00004e30| 20 6c 61 62 65 6c 73 2e | 0a 58 20 2a 2f 0a 58 73 | labels.|.X */.Xs|
|00004e40| 74 61 74 69 63 20 76 6f | 69 64 0a 58 64 6d 5f 73 |tatic vo|id.Xdm_s|
|00004e50| 65 74 5f 62 75 74 74 6f | 6e 73 20 28 77 68 65 74 |et_butto|ns (whet|
|00004e60| 68 65 72 29 0a 58 69 6e | 74 20 77 68 65 74 68 65 |her).Xin|t whethe|
|00004e70| 72 3b 09 2f 2a 20 77 68 | 65 74 68 65 72 20 73 65 |r;./* wh|ether se|
|00004e80| 74 74 69 6e 67 20 75 70 | 20 66 6f 72 20 70 6c 6f |tting up| for plo|
|00004e90| 74 74 69 6e 67 20 6f 72 | 20 66 6f 72 20 6e 6f 74 |tting or| for not|
|00004ea0| 20 70 6c 6f 74 74 69 6e | 67 20 2a 2f 0a 58 7b 0a | plottin|g */.X{.|
|00004eb0| 58 09 73 74 61 74 69 63 | 20 41 72 67 20 6c 6f 6f |X.static| Arg loo|
|00004ec0| 6b 5f 6c 69 6b 65 5f 62 | 75 74 74 6f 6e 5b 5d 20 |k_like_b|utton[] |
|00004ed0| 3d 20 7b 0a 58 09 20 20 | 20 20 7b 58 6d 4e 74 6f |= {.X. | {XmNto|
|00004ee0| 70 53 68 61 64 6f 77 43 | 6f 6c 6f 72 2c 20 28 58 |pShadowC|olor, (X|
|00004ef0| 74 41 72 67 56 61 6c 29 | 20 30 7d 2c 0a 58 09 20 |tArgVal)| 0},.X. |
|00004f00| 20 20 20 7b 58 6d 4e 62 | 6f 74 74 6f 6d 53 68 61 | {XmNb|ottomSha|
|00004f10| 64 6f 77 43 6f 6c 6f 72 | 2c 20 28 58 74 41 72 67 |dowColor|, (XtArg|
|00004f20| 56 61 6c 29 20 30 7d 2c | 0a 58 09 20 20 20 20 7b |Val) 0},|.X. {|
|00004f30| 58 6d 4e 66 69 6c 6c 4f | 6e 41 72 6d 2c 20 28 58 |XmNfillO|nArm, (X|
|00004f40| 74 41 72 67 56 61 6c 29 | 20 54 72 75 65 7d 2c 0a |tArgVal)| True},.|
|00004f50| 58 09 7d 3b 0a 58 09 73 | 74 61 74 69 63 20 41 72 |X.};.X.s|tatic Ar|
|00004f60| 67 20 6c 6f 6f 6b 5f 6c | 69 6b 65 5f 6c 61 62 65 |g look_l|ike_labe|
|00004f70| 6c 5b 5d 20 3d 20 7b 0a | 58 09 20 20 20 20 7b 58 |l[] = {.|X. {X|
|00004f80| 6d 4e 74 6f 70 53 68 61 | 64 6f 77 43 6f 6c 6f 72 |mNtopSha|dowColor|
|00004f90| 2c 20 28 58 74 41 72 67 | 56 61 6c 29 20 30 7d 2c |, (XtArg|Val) 0},|
|00004fa0| 0a 58 09 20 20 20 20 7b | 58 6d 4e 62 6f 74 74 6f |.X. {|XmNbotto|
|00004fb0| 6d 53 68 61 64 6f 77 43 | 6f 6c 6f 72 2c 20 28 58 |mShadowC|olor, (X|
|00004fc0| 74 41 72 67 56 61 6c 29 | 20 30 7d 2c 0a 58 09 20 |tArgVal)| 0},.X. |
|00004fd0| 20 20 20 7b 58 6d 4e 66 | 69 6c 6c 4f 6e 41 72 6d | {XmNf|illOnArm|
|00004fe0| 2c 20 28 58 74 41 72 67 | 56 61 6c 29 20 46 61 6c |, (XtArg|Val) Fal|
|00004ff0| 73 65 7d 2c 0a 58 09 7d | 3b 0a 58 09 73 74 61 74 |se},.X.}|;.X.stat|
|00005000| 69 63 20 69 6e 74 20 63 | 61 6c 6c 65 64 3b 0a 58 |ic int c|alled;.X|
|00005010| 09 69 6e 74 20 72 2c 20 | 63 3b 0a 58 09 41 72 67 |.int r, |c;.X.Arg|
|00005020| 20 2a 61 70 3b 0a 58 09 | 69 6e 74 20 6e 61 3b 0a | *ap;.X.|int na;.|
|00005030| 58 0a 58 09 69 66 20 28 | 21 63 61 6c 6c 65 64 29 |X.X.if (|!called)|
|00005040| 20 7b 0a 58 09 20 20 20 | 20 2f 2a 20 67 65 74 20 | {.X. | /* get |
|00005050| 62 61 73 65 6c 69 6e 65 | 20 6c 61 62 65 6c 20 61 |baseline| label a|
|00005060| 6e 64 20 73 68 61 64 6f | 77 20 61 70 70 65 61 72 |nd shado|w appear|
|00005070| 61 6e 63 65 73 2e 0a 58 | 09 20 20 20 20 20 2a 20 |ances..X|. * |
|00005080| 61 6c 73 6f 20 6d 61 6b | 65 20 74 68 65 20 63 6f |also mak|e the co|
|00005090| 72 6e 65 72 20 61 6e 64 | 20 68 65 61 64 65 72 73 |rner and| headers|
|000050a0| 20 6c 6f 6f 6b 20 6c 69 | 6b 65 20 6c 61 62 65 6c | look li|ke label|
|000050b0| 73 20 66 6f 72 65 76 65 | 72 2e 0a 58 09 20 20 20 |s foreve|r..X. |
|000050c0| 20 20 2a 2f 0a 58 09 20 | 20 20 20 50 69 78 65 6c | */.X. | Pixel|
|000050d0| 20 74 6f 70 73 68 61 64 | 2c 20 62 6f 74 73 68 61 | topshad|, botsha|
|000050e0| 64 2c 20 62 67 63 6f 6c | 3b 0a 58 09 20 20 20 20 |d, bgcol|;.X. |
|000050f0| 41 72 67 20 61 72 67 73 | 5b 32 30 5d 3b 0a 58 09 |Arg args|[20];.X.|
|00005100| 20 20 20 20 69 6e 74 20 | 6e 3b 0a 58 09 20 20 20 | int |n;.X. |
|00005110| 20 69 6e 74 20 69 3b 0a | 58 0a 58 09 20 20 20 20 | int i;.|X.X. |
|00005120| 6e 20 3d 20 30 3b 0a 58 | 09 20 20 20 20 58 74 53 |n = 0;.X|. XtS|
|00005130| 65 74 41 72 67 20 28 61 | 72 67 73 5b 6e 5d 2c 20 |etArg (a|rgs[n], |
|00005140| 58 6d 4e 74 6f 70 53 68 | 61 64 6f 77 43 6f 6c 6f |XmNtopSh|adowColo|
|00005150| 72 2c 20 26 74 6f 70 73 | 68 61 64 29 3b 20 6e 2b |r, &tops|had); n+|
|00005160| 2b 3b 0a 58 09 20 20 20 | 20 58 74 53 65 74 41 72 |+;.X. | XtSetAr|
|00005170| 67 20 28 61 72 67 73 5b | 6e 5d 2c 20 58 6d 4e 62 |g (args[|n], XmNb|
|00005180| 6f 74 74 6f 6d 53 68 61 | 64 6f 77 43 6f 6c 6f 72 |ottomSha|dowColor|
|00005190| 2c 20 26 62 6f 74 73 68 | 61 64 29 3b 20 6e 2b 2b |, &botsh|ad); n++|
|000051a0| 3b 0a 58 09 20 20 20 20 | 58 74 53 65 74 41 72 67 |;.X. |XtSetArg|
|000051b0| 20 28 61 72 67 73 5b 6e | 5d 2c 20 58 6d 4e 62 61 | (args[n|], XmNba|
|000051c0| 63 6b 67 72 6f 75 6e 64 | 2c 20 26 62 67 63 6f 6c |ckground|, &bgcol|
|000051d0| 29 3b 20 6e 2b 2b 3b 0a | 58 09 20 20 20 20 58 74 |); n++;.|X. Xt|
|000051e0| 47 65 74 56 61 6c 75 65 | 73 20 28 63 6f 72 6e 65 |GetValue|s (corne|
|000051f0| 72 5f 77 2c 20 61 72 67 | 73 2c 20 6e 29 3b 0a 58 |r_w, arg|s, n);.X|
|00005200| 0a 58 09 20 20 20 20 6c | 6f 6f 6b 5f 6c 69 6b 65 |.X. l|ook_like|
|00005210| 5f 62 75 74 74 6f 6e 5b | 30 5d 2e 76 61 6c 75 65 |_button[|0].value|
|00005220| 20 3d 20 74 6f 70 73 68 | 61 64 3b 0a 58 09 20 20 | = topsh|ad;.X. |
|00005230| 20 20 6c 6f 6f 6b 5f 6c | 69 6b 65 5f 62 75 74 74 | look_l|ike_butt|
|00005240| 6f 6e 5b 31 5d 2e 76 61 | 6c 75 65 20 3d 20 62 6f |on[1].va|lue = bo|
|00005250| 74 73 68 61 64 3b 0a 58 | 09 20 20 20 20 6c 6f 6f |tshad;.X|. loo|
|00005260| 6b 5f 6c 69 6b 65 5f 6c | 61 62 65 6c 5b 30 5d 2e |k_like_l|abel[0].|
|00005270| 76 61 6c 75 65 20 3d 20 | 62 67 63 6f 6c 3b 0a 58 |value = |bgcol;.X|
|00005280| 09 20 20 20 20 6c 6f 6f | 6b 5f 6c 69 6b 65 5f 6c |. loo|k_like_l|
|00005290| 61 62 65 6c 5b 31 5d 2e | 76 61 6c 75 65 20 3d 20 |abel[1].|value = |
|000052a0| 62 67 63 6f 6c 3b 0a 58 | 0a 58 09 20 20 20 20 61 |bgcol;.X|.X. a|
|000052b0| 70 20 3d 20 6c 6f 6f 6b | 5f 6c 69 6b 65 5f 6c 61 |p = look|_like_la|
|000052c0| 62 65 6c 3b 0a 58 09 20 | 20 20 20 6e 61 20 3d 20 |bel;.X. | na = |
|000052d0| 58 74 4e 75 6d 62 65 72 | 28 6c 6f 6f 6b 5f 6c 69 |XtNumber|(look_li|
|000052e0| 6b 65 5f 6c 61 62 65 6c | 29 3b 0a 58 09 20 20 20 |ke_label|);.X. |
|000052f0| 20 58 74 53 65 74 56 61 | 6c 75 65 73 20 28 63 6f | XtSetVa|lues (co|
|00005300| 72 6e 65 72 5f 77 2c 20 | 61 70 2c 20 6e 61 29 3b |rner_w, |ap, na);|
|00005310| 0a 58 09 20 20 20 20 66 | 6f 72 20 28 69 20 3d 20 |.X. f|or (i = |
|00005320| 30 3b 20 69 20 3c 20 4e | 52 3b 20 69 2b 2b 29 0a |0; i < N|R; i++).|
|00005330| 58 09 09 58 74 53 65 74 | 56 61 6c 75 65 73 20 28 |X..XtSet|Values (|
|00005340| 72 6f 77 5b 69 5d 2e 6c | 77 2c 20 61 70 2c 20 6e |row[i].l|w, ap, n|
|00005350| 61 29 3b 0a 58 09 20 20 | 20 20 66 6f 72 20 28 69 |a);.X. | for (i|
|00005360| 20 3d 20 30 3b 20 69 20 | 3c 20 4e 43 3b 20 69 2b | = 0; i |< NC; i+|
|00005370| 2b 29 0a 58 09 09 58 74 | 53 65 74 56 61 6c 75 65 |+).X..Xt|SetValue|
|00005380| 73 20 28 63 6f 6c 5b 69 | 5d 2e 6c 77 2c 20 61 70 |s (col[i|].lw, ap|
|00005390| 2c 20 6e 61 29 3b 0a 58 | 0a 58 09 20 20 20 20 63 |, na);.X|.X. c|
|000053a0| 61 6c 6c 65 64 20 3d 20 | 31 3b 0a 58 09 7d 0a 58 |alled = |1;.X.}.X|
|000053b0| 0a 58 09 69 66 20 28 77 | 68 65 74 68 65 72 29 20 |.X.if (w|hether) |
|000053c0| 7b 0a 58 09 20 20 20 20 | 61 70 20 3d 20 6c 6f 6f |{.X. |ap = loo|
|000053d0| 6b 5f 6c 69 6b 65 5f 62 | 75 74 74 6f 6e 3b 0a 58 |k_like_b|utton;.X|
|000053e0| 09 20 20 20 20 6e 61 20 | 3d 20 58 74 4e 75 6d 62 |. na |= XtNumb|
|000053f0| 65 72 28 6c 6f 6f 6b 5f | 6c 69 6b 65 5f 62 75 74 |er(look_|like_but|
|00005400| 74 6f 6e 29 3b 0a 58 09 | 7d 20 65 6c 73 65 20 7b |ton);.X.|} else {|
|00005410| 0a 58 09 20 20 20 20 61 | 70 20 3d 20 6c 6f 6f 6b |.X. a|p = look|
|00005420| 5f 6c 69 6b 65 5f 6c 61 | 62 65 6c 3b 0a 58 09 20 |_like_la|bel;.X. |
|00005430| 20 20 20 6e 61 20 3d 20 | 58 74 4e 75 6d 62 65 72 | na = |XtNumber|
|00005440| 28 6c 6f 6f 6b 5f 6c 69 | 6b 65 5f 6c 61 62 65 6c |(look_li|ke_label|
|00005450| 29 3b 0a 58 09 7d 0a 58 | 09 66 6f 72 20 28 72 20 |);.X.}.X|.for (r |
|00005460| 3d 20 30 3b 20 72 20 3c | 20 4e 52 3b 20 72 2b 2b |= 0; r <| NR; r++|
|00005470| 29 0a 58 09 20 20 20 20 | 66 6f 72 20 28 63 20 3d |).X. |for (c =|
|00005480| 20 30 3b 20 63 20 3c 20 | 4e 43 3b 20 63 2b 2b 29 | 0; c < |NC; c++)|
|00005490| 0a 58 09 09 69 66 20 28 | 74 5f 77 5b 72 5d 5b 63 |.X..if (|t_w[r][c|
|000054a0| 5d 29 0a 58 09 09 20 20 | 20 20 58 74 53 65 74 56 |]).X.. | XtSetV|
|000054b0| 61 6c 75 65 73 20 28 74 | 5f 77 5b 72 5d 5b 63 5d |alues (t|_w[r][c]|
|000054c0| 2c 20 61 70 2c 20 6e 61 | 29 3b 0a 58 7d 0a 58 0a |, ap, na|);.X}.X.|
|000054d0| 58 2f 2a 20 63 72 65 61 | 74 65 20 74 68 65 20 6d |X/* crea|te the m|
|000054e0| 61 69 6e 20 64 61 74 61 | 20 74 61 62 6c 65 20 2d |ain data| table -|
|000054f0| 20 65 76 65 72 79 74 68 | 69 6e 67 20 62 75 74 20 | everyth|ing but |
|00005500| 74 68 65 20 66 69 72 73 | 74 20 63 6f 6c 75 6d 6e |the firs|t column|
|00005510| 20 69 73 20 75 6e 6d 61 | 6e 61 67 65 64 2e 0a 58 | is unma|naged..X|
|00005520| 20 2a 2f 0a 58 73 74 61 | 74 69 63 20 76 6f 69 64 | */.Xsta|tic void|
|00005530| 0a 58 64 6d 5f 63 72 65 | 61 74 65 5f 74 61 62 6c |.Xdm_cre|ate_tabl|
|00005540| 65 28 70 61 72 65 6e 74 | 29 0a 58 57 69 64 67 65 |e(parent|).XWidge|
|00005550| 74 20 70 61 72 65 6e 74 | 3b 09 2f 2a 20 6f 76 65 |t parent|;./* ove|
|00005560| 72 61 6c 6c 20 52 6f 77 | 43 6f 6c 75 6d 6e 20 2a |rall Row|Column *|
|00005570| 2f 0a 58 7b 0a 58 09 41 | 72 67 20 61 72 67 73 5b |/.X{.X.A|rg args[|
|00005580| 32 30 5d 3b 0a 58 09 58 | 6d 53 74 72 69 6e 67 20 |20];.X.X|mString |
|00005590| 73 74 72 3b 0a 58 09 57 | 69 64 67 65 74 20 77 3b |str;.X.W|idget w;|
|000055a0| 0a 58 09 69 6e 74 20 72 | 2c 20 63 3b 0a 58 09 69 |.X.int r|, c;.X.i|
|000055b0| 6e 74 20 6e 3b 0a 58 0a | 58 09 2f 2a 20 66 69 72 |nt n;.X.|X./* fir|
|000055c0| 73 74 20 63 6f 6c 75 6d | 6e 20 69 73 20 74 68 65 |st colum|n is the|
|000055d0| 20 72 6f 77 20 68 65 61 | 64 65 72 73 2e 0a 58 09 | row hea|ders..X.|
|000055e0| 20 2a 20 69 74 27 73 20 | 61 6c 77 61 79 73 20 6d | * it's |always m|
|000055f0| 61 6e 61 67 65 64 20 73 | 6f 20 69 6e 69 74 20 77 |anaged s|o init w|
|00005600| 68 61 74 20 72 6f 77 73 | 20 77 65 20 63 61 6e 20 |hat rows| we can |
|00005610| 74 6f 6f 2e 0a 58 09 20 | 2a 2f 0a 58 09 6e 20 3d |too..X. |*/.X.n =|
|00005620| 20 30 3b 0a 58 09 68 64 | 72 63 6f 6c 5f 77 20 3d | 0;.X.hd|rcol_w =|
|00005630| 20 58 6d 43 72 65 61 74 | 65 52 6f 77 43 6f 6c 75 | XmCreat|eRowColu|
|00005640| 6d 6e 20 28 70 61 72 65 | 6e 74 2c 20 22 44 61 74 |mn (pare|nt, "Dat|
|00005650| 61 48 64 72 43 22 2c 20 | 61 72 67 73 2c 20 6e 29 |aHdrC", |args, n)|
|00005660| 3b 0a 58 09 58 74 4d 61 | 6e 61 67 65 43 68 69 6c |;.X.XtMa|nageChil|
|00005670| 64 20 28 68 64 72 63 6f | 6c 5f 77 29 3b 0a 58 0a |d (hdrco|l_w);.X.|
|00005680| 58 09 20 20 20 20 2f 2a | 20 66 69 72 73 74 20 72 |X. /*| first r|
|00005690| 6f 77 20 69 73 20 61 20 | 64 75 6d 6d 79 20 2a 2f |ow is a |dummy */|
|000056a0| 0a 58 09 20 20 20 20 6e | 20 3d 20 30 3b 0a 58 09 |.X. n| = 0;.X.|
|000056b0| 20 20 20 20 73 74 72 20 | 3d 20 58 6d 53 74 72 69 | str |= XmStri|
|000056c0| 6e 67 43 72 65 61 74 65 | 4c 74 6f 52 20 28 22 20 |ngCreate|LtoR (" |
|000056d0| 22 2c 20 58 6d 53 54 52 | 49 4e 47 5f 44 45 46 41 |", XmSTR|ING_DEFA|
|000056e0| 55 4c 54 5f 43 48 41 52 | 53 45 54 29 3b 0a 58 09 |ULT_CHAR|SET);.X.|
|000056f0| 20 20 20 20 6e 20 3d 20 | 30 3b 0a 58 09 20 20 20 | n = |0;.X. |
|00005700| 20 58 74 53 65 74 41 72 | 67 20 28 61 72 67 73 5b | XtSetAr|g (args[|
|00005710| 6e 5d 2c 20 58 6d 4e 6c | 61 62 65 6c 53 74 72 69 |n], XmNl|abelStri|
|00005720| 6e 67 2c 20 73 74 72 29 | 3b 20 6e 2b 2b 3b 0a 58 |ng, str)|; n++;.X|
|00005730| 09 20 20 20 20 63 6f 72 | 6e 65 72 5f 77 20 3d 20 |. cor|ner_w = |
|00005740| 58 6d 43 72 65 61 74 65 | 50 75 73 68 42 75 74 74 |XmCreate|PushButt|
|00005750| 6f 6e 20 28 68 64 72 63 | 6f 6c 5f 77 2c 20 22 44 |on (hdrc|ol_w, "D|
|00005760| 61 74 61 43 6f 72 6e 65 | 72 22 2c 20 61 72 67 73 |ataCorne|r", args|
|00005770| 2c 20 6e 29 3b 0a 58 09 | 20 20 20 20 58 6d 53 74 |, n);.X.| XmSt|
|00005780| 72 69 6e 67 46 72 65 65 | 20 28 73 74 72 29 3b 0a |ringFree| (str);.|
|00005790| 58 09 20 20 20 20 58 74 | 4d 61 6e 61 67 65 43 68 |X. Xt|ManageCh|
|000057a0| 69 6c 64 20 28 63 6f 72 | 6e 65 72 5f 77 29 3b 0a |ild (cor|ner_w);.|
|000057b0| 58 0a 58 09 20 20 20 20 | 2f 2a 20 72 65 6d 61 69 |X.X. |/* remai|
|000057c0| 6e 69 6e 67 20 72 6f 77 | 73 20 61 72 65 20 70 65 |ning row|s are pe|
|000057d0| 72 20 6f 62 6a 65 63 74 | 20 2a 2f 0a 58 09 20 20 |r object| */.X. |
|000057e0| 20 20 66 6f 72 20 28 72 | 20 3d 20 30 3b 20 72 20 | for (r| = 0; r |
|000057f0| 3c 20 4e 52 3b 20 72 2b | 2b 29 20 7b 0a 58 09 09 |< NR; r+|+) {.X..|
|00005800| 4f 62 6a 20 2a 6f 70 20 | 3d 20 64 62 5f 62 61 73 |Obj *op |= db_bas|
|00005810| 69 63 20 28 72 6f 77 5b | 72 5d 2e 64 62 69 64 78 |ic (row[|r].dbidx|
|00005820| 29 3b 0a 58 09 09 6e 20 | 3d 20 30 3b 0a 58 09 09 |);.X..n |= 0;.X..|
|00005830| 69 66 20 28 6f 70 2d 3e | 74 79 70 65 20 21 3d 20 |if (op->|type != |
|00005840| 55 4e 44 45 46 4f 42 4a | 29 0a 58 09 09 20 20 20 |UNDEFOBJ|).X.. |
|00005850| 20 77 20 3d 20 58 6d 43 | 72 65 61 74 65 50 75 73 | w = XmC|reatePus|
|00005860| 68 42 75 74 74 6f 6e 20 | 28 68 64 72 63 6f 6c 5f |hButton |(hdrcol_|
|00005870| 77 2c 20 6f 70 2d 3e 6f | 5f 6e 61 6d 65 2c 20 61 |w, op->o|_name, a|
|00005880| 72 67 73 2c 20 6e 29 3b | 0a 58 09 09 65 6c 73 65 |rgs, n);|.X..else|
|00005890| 0a 58 09 09 20 20 20 20 | 77 20 3d 20 58 6d 43 72 |.X.. |w = XmCr|
|000058a0| 65 61 74 65 50 75 73 68 | 42 75 74 74 6f 6e 20 28 |eatePush|Button (|
|000058b0| 68 64 72 63 6f 6c 5f 77 | 2c 20 22 44 52 6f 77 22 |hdrcol_w|, "DRow"|
|000058c0| 2c 20 61 72 67 73 2c 20 | 6e 29 3b 0a 58 09 09 72 |, args, |n);.X..r|
|000058d0| 6f 77 5b 72 5d 2e 6c 77 | 20 3d 20 77 3b 0a 58 0a |ow[r].lw| = w;.X.|
|000058e0| 58 09 20 20 20 20 7d 0a | 58 0a 58 09 2f 2a 20 72 |X. }.|X.X./* r|
|000058f0| 65 6d 61 69 6e 69 6e 67 | 20 63 6f 6c 75 6d 6e 73 |emaining| columns|
|00005900| 2e 0a 58 09 20 2a 20 64 | 6f 6e 27 74 20 6d 61 6e |..X. * d|on't man|
|00005910| 61 67 65 20 61 6e 79 20 | 62 75 74 20 73 65 74 20 |age any |but set |
|00005920| 6e 61 6d 65 73 20 6f 66 | 20 77 68 61 74 20 77 65 |names of| what we|
|00005930| 20 63 61 6e 20 6e 6f 77 | 20 74 6f 6f 2e 0a 58 09 | can now| too..X.|
|00005940| 20 2a 2f 0a 58 09 66 6f | 72 20 28 63 20 3d 20 30 | */.X.fo|r (c = 0|
|00005950| 3b 20 63 20 3c 20 4e 43 | 3b 20 63 2b 2b 29 20 7b |; c < NC|; c++) {|
|00005960| 0a 58 09 20 20 20 20 57 | 69 64 67 65 74 20 72 63 |.X. W|idget rc|
|00005970| 77 3b 0a 58 0a 58 09 20 | 20 20 20 6e 20 3d 20 30 |w;.X.X. | n = 0|
|00005980| 3b 0a 58 09 20 20 20 20 | 58 74 53 65 74 41 72 67 |;.X. |XtSetArg|
|00005990| 20 28 61 72 67 73 5b 6e | 5d 2c 20 58 6d 4e 61 64 | (args[n|], XmNad|
|000059a0| 6a 75 73 74 4d 61 72 67 | 69 6e 2c 20 46 61 6c 73 |justMarg|in, Fals|
|000059b0| 65 29 3b 20 6e 2b 2b 3b | 0a 58 09 20 20 20 20 58 |e); n++;|.X. X|
|000059c0| 74 53 65 74 41 72 67 20 | 28 61 72 67 73 5b 6e 5d |tSetArg |(args[n]|
|000059d0| 2c 20 58 6d 4e 69 73 41 | 6c 69 67 6e 65 64 2c 20 |, XmNisA|ligned, |
|000059e0| 46 61 6c 73 65 29 3b 20 | 6e 2b 2b 3b 0a 58 09 20 |False); |n++;.X. |
|000059f0| 20 20 20 72 63 77 20 3d | 20 63 6f 6c 5b 63 5d 2e | rcw =| col[c].|
|00005a00| 72 63 77 20 3d 20 58 6d | 43 72 65 61 74 65 52 6f |rcw = Xm|CreateRo|
|00005a10| 77 43 6f 6c 75 6d 6e 20 | 28 70 61 72 65 6e 74 2c |wColumn |(parent,|
|00005a20| 20 22 44 61 74 61 43 6f | 6c 22 2c 20 61 72 67 73 | "DataCo|l", args|
|00005a30| 2c 20 6e 29 3b 0a 58 0a | 58 09 20 20 20 20 2f 2a |, n);.X.|X. /*|
|00005a40| 20 66 69 72 73 74 20 72 | 6f 77 20 69 73 20 63 6f | first r|ow is co|
|00005a50| 6c 75 6d 6e 20 68 65 61 | 64 65 72 20 2a 2f 0a 58 |lumn hea|der */.X|
|00005a60| 09 20 20 20 20 6e 20 3d | 20 30 3b 0a 58 09 20 20 |. n =| 0;.X. |
|00005a70| 20 20 58 74 53 65 74 41 | 72 67 20 28 61 72 67 73 | XtSetA|rg (args|
|00005a80| 5b 6e 5d 2c 20 58 6d 4e | 61 6c 69 67 6e 6d 65 6e |[n], XmN|alignmen|
|00005a90| 74 2c 20 58 6d 41 4c 49 | 47 4e 4d 45 4e 54 5f 43 |t, XmALI|GNMENT_C|
|00005aa0| 45 4e 54 45 52 29 3b 20 | 6e 2b 2b 3b 0a 58 09 20 |ENTER); |n++;.X. |
|00005ab0| 20 20 20 69 66 20 28 63 | 6f 6c 5b 63 5d 2e 74 79 | if (c|ol[c].ty|
|00005ac0| 70 65 20 21 3d 20 53 45 | 50 5f 43 4f 4c 29 0a 58 |pe != SE|P_COL).X|
|00005ad0| 09 09 77 20 3d 20 58 6d | 43 72 65 61 74 65 50 75 |..w = Xm|CreatePu|
|00005ae0| 73 68 42 75 74 74 6f 6e | 20 28 72 63 77 2c 20 63 |shButton| (rcw, c|
|00005af0| 6f 6c 5b 63 5d 2e 6e 61 | 6d 65 2c 20 61 72 67 73 |ol[c].na|me, args|
|00005b00| 2c 20 6e 29 3b 0a 58 09 | 20 20 20 20 65 6c 73 65 |, n);.X.| else|
|00005b10| 20 7b 0a 58 09 09 4f 62 | 6a 20 2a 6f 70 20 3d 20 | {.X..Ob|j *op = |
|00005b20| 64 62 5f 62 61 73 69 63 | 20 28 63 6f 6c 5b 63 5d |db_basic| (col[c]|
|00005b30| 2e 64 62 69 64 78 29 3b | 0a 58 09 09 69 66 20 28 |.dbidx);|.X..if (|
|00005b40| 6f 70 2d 3e 74 79 70 65 | 20 21 3d 20 55 4e 44 45 |op->type| != UNDE|
|00005b50| 46 4f 42 4a 29 0a 58 09 | 09 20 20 20 20 77 20 3d |FOBJ).X.|. w =|
|00005b60| 20 58 6d 43 72 65 61 74 | 65 50 75 73 68 42 75 74 | XmCreat|ePushBut|
|00005b70| 74 6f 6e 20 28 72 63 77 | 2c 20 6f 70 2d 3e 6f 5f |ton (rcw|, op->o_|
|00005b80| 6e 61 6d 65 2c 20 61 72 | 67 73 2c 20 6e 29 3b 0a |name, ar|gs, n);.|
|00005b90| 58 09 09 65 6c 73 65 0a | 58 09 09 20 20 20 20 77 |X..else.|X.. w|
|00005ba0| 20 3d 20 58 6d 43 72 65 | 61 74 65 50 75 73 68 42 | = XmCre|atePushB|
|00005bb0| 75 74 74 6f 6e 20 28 72 | 63 77 2c 20 22 44 43 48 |utton (r|cw, "DCH|
|00005bc0| 64 72 22 2c 20 61 72 67 | 73 2c 20 6e 29 3b 0a 58 |dr", arg|s, n);.X|
|00005bd0| 09 20 20 20 20 7d 0a 58 | 09 20 20 20 20 63 6f 6c |. }.X|. col|
|00005be0| 5b 63 5d 2e 6c 77 20 3d | 20 77 3b 0a 58 09 20 20 |[c].lw =| w;.X. |
|00005bf0| 20 20 58 74 4d 61 6e 61 | 67 65 43 68 69 6c 64 20 | XtMana|geChild |
|00005c00| 28 77 29 3b 0a 58 0a 58 | 09 20 20 20 20 2f 2a 20 |(w);.X.X|. /* |
|00005c10| 72 65 6d 61 69 6e 69 6e | 67 20 72 6f 77 73 20 61 |remainin|g rows a|
|00005c20| 72 65 20 70 65 72 20 6f | 62 6a 65 63 74 20 2a 2f |re per o|bject */|
|00005c30| 0a 58 09 20 20 20 20 66 | 6f 72 20 28 72 20 3d 20 |.X. f|or (r = |
|00005c40| 30 3b 20 72 20 3c 20 4e | 52 3b 20 72 2b 2b 29 20 |0; r < N|R; r++) |
|00005c50| 7b 0a 58 09 09 6e 20 3d | 20 30 3b 0a 58 09 09 58 |{.X..n =| 0;.X..X|
|00005c60| 74 53 65 74 41 72 67 20 | 28 61 72 67 73 5b 6e 5d |tSetArg |(args[n]|
|00005c70| 2c 20 58 6d 4e 61 6c 69 | 67 6e 6d 65 6e 74 2c 20 |, XmNali|gnment, |
|00005c80| 58 6d 41 4c 49 47 4e 4d | 45 4e 54 5f 42 45 47 49 |XmALIGNM|ENT_BEGI|
|00005c90| 4e 4e 49 4e 47 29 3b 20 | 6e 2b 2b 3b 0a 58 09 09 |NNING); |n++;.X..|
|00005ca0| 77 20 3d 20 74 5f 77 5b | 72 5d 5b 63 5d 20 3d 20 |w = t_w[|r][c] = |
|00005cb0| 58 6d 43 72 65 61 74 65 | 50 75 73 68 42 75 74 74 |XmCreate|PushButt|
|00005cc0| 6f 6e 20 28 72 63 77 2c | 20 22 44 61 74 61 50 42 |on (rcw,| "DataPB|
|00005cd0| 22 2c 20 61 72 67 73 2c | 20 6e 29 3b 0a 58 09 09 |", args,| n);.X..|
|00005ce0| 58 74 41 64 64 43 61 6c | 6c 62 61 63 6b 28 77 2c |XtAddCal|lback(w,|
|00005cf0| 20 58 6d 4e 61 63 74 69 | 76 61 74 65 43 61 6c 6c | XmNacti|vateCall|
|00005d00| 62 61 63 6b 2c 20 64 6d | 5f 61 63 74 69 76 61 74 |back, dm|_activat|
|00005d10| 65 5f 63 62 2c 0a 58 09 | 09 09 09 09 28 58 74 50 |e_cb,.X.|....(XtP|
|00005d20| 6f 69 6e 74 65 72 29 28 | 28 63 3c 3c 38 29 7c 72 |ointer)(|(c<<8)|r|
|00005d30| 29 29 3b 0a 58 09 20 20 | 20 20 7d 0a 58 09 7d 0a |));.X. | }.X.}.|
|00005d40| 58 7d 0a 58 0a 58 2f 2a | 20 63 61 6c 6c 62 61 63 |X}.X.X/*| callbac|
|00005d50| 6b 20 66 72 6f 6d 20 61 | 6e 79 20 6f 66 20 74 68 |k from a|ny of th|
|00005d60| 65 20 64 61 74 61 20 6d | 65 6e 75 20 62 75 74 74 |e data m|enu butt|
|00005d70| 6f 6e 73 20 62 65 69 6e | 67 20 61 63 74 69 76 61 |ons bein|g activa|
|00005d80| 74 65 64 2e 0a 58 20 2a | 20 64 6f 20 6e 6f 74 68 |ted..X *| do noth|
|00005d90| 69 6e 67 20 75 6e 6c 65 | 73 73 20 77 65 20 61 72 |ing unle|ss we ar|
|00005da0| 65 20 62 65 69 6e 67 20 | 75 73 65 64 20 74 6f 20 |e being |used to |
|00005db0| 73 65 74 20 75 70 20 61 | 20 73 65 6c 65 63 74 69 |set up a| selecti|
|00005dc0| 6f 6e 20 63 6f 6c 6c 65 | 63 74 69 6f 6e 2e 0a 58 |on colle|ction..X|
|00005dd0| 20 2a 20 69 66 20 74 68 | 65 20 6c 61 74 74 65 72 | * if th|e latter|
|00005de0| 2c 20 6d 61 6b 65 20 61 | 20 6e 61 6d 65 20 66 6f |, make a| name fo|
|00005df0| 72 20 6f 75 72 20 66 69 | 65 6c 64 2c 20 70 75 74 |r our fi|eld, put|
|00005e00| 20 69 74 20 69 6e 20 55 | 73 65 72 44 61 74 61 20 | it in U|serData |
|00005e10| 61 6e 64 20 69 6e 66 6f | 72 6d 0a 58 20 2a 20 61 |and info|rm.X * a|
|00005e20| 6c 6c 20 69 6e 74 65 72 | 65 73 74 65 64 20 70 61 |ll inter|ested pa|
|00005e30| 72 74 69 65 73 2e 0a 58 | 20 2a 20 74 6f 20 66 6f |rties..X| * to fo|
|00005e40| 72 6d 20 74 68 65 20 6e | 61 6d 65 2c 20 63 6c 69 |rm the n|ame, cli|
|00005e50| 65 6e 74 20 64 61 74 61 | 20 69 73 20 28 63 6f 6c |ent data| is (col|
|00005e60| 3c 3c 38 29 7c 72 6f 77 | 0a 58 20 2a 20 4e 2e 42 |<<8)|row|.X * N.B|
|00005e70| 2e 20 77 65 20 61 73 73 | 75 6d 65 20 77 65 20 63 |. we ass|ume we c|
|00005e80| 61 6e 27 74 20 62 65 20 | 63 61 6c 6c 65 64 20 69 |an't be |called i|
|00005e90| 66 20 6f 75 72 20 72 6f | 77 20 61 6e 64 20 63 6f |f our ro|w and co|
|00005ea0| 6c 75 6d 6e 20 61 72 65 | 20 6e 6f 74 20 6f 6e 2e |lumn are| not on.|
|00005eb0| 0a 58 20 2a 2f 0a 58 73 | 74 61 74 69 63 20 76 6f |.X */.Xs|tatic vo|
|00005ec0| 69 64 0a 58 2f 2a 20 41 | 52 47 53 55 53 45 44 20 |id.X/* A|RGSUSED |
|00005ed0| 2a 2f 0a 58 64 6d 5f 61 | 63 74 69 76 61 74 65 5f |*/.Xdm_a|ctivate_|
|00005ee0| 63 62 20 28 77 2c 20 63 | 6c 69 65 6e 74 2c 20 63 |cb (w, c|lient, c|
|00005ef0| 61 6c 6c 29 0a 58 57 69 | 64 67 65 74 20 77 3b 0a |all).XWi|dget w;.|
|00005f00| 58 58 74 50 6f 69 6e 74 | 65 72 20 63 6c 69 65 6e |XXtPoint|er clien|
|00005f10| 74 3b 0a 58 58 74 50 6f | 69 6e 74 65 72 20 63 61 |t;.XXtPo|inter ca|
|00005f20| 6c 6c 3b 0a 58 7b 0a 58 | 09 73 74 61 74 69 63 20 |ll;.X{.X|.static |
|00005f30| 63 68 61 72 20 6d 65 5b | 5d 20 3d 20 22 64 6d 5f |char me[|] = "dm_|
|00005f40| 61 63 74 69 76 61 74 65 | 5f 63 62 28 29 22 3b 0a |activate|_cb()";.|
|00005f50| 58 0a 58 09 69 66 20 28 | 64 6d 5f 73 65 6c 65 63 |X.X.if (|dm_selec|
|00005f60| 74 69 6e 67 29 20 7b 0a | 58 09 20 20 20 20 69 6e |ting) {.|X. in|
|00005f70| 74 20 72 20 3d 20 28 75 | 6e 73 69 67 6e 65 64 29 |t r = (u|nsigned)|
|00005f80| 63 6c 69 65 6e 74 20 26 | 20 30 78 66 66 3b 0a 58 |client &| 0xff;.X|
|00005f90| 09 20 20 20 20 69 6e 74 | 20 63 20 3d 20 28 75 6e |. int| c = (un|
|00005fa0| 73 69 67 6e 65 64 29 63 | 6c 69 65 6e 74 20 3e 3e |signed)c|lient >>|
|00005fb0| 20 38 3b 0a 58 09 20 20 | 20 20 63 68 61 72 20 2a | 8;.X. | char *|
|00005fc0| 6e 61 6d 65 2c 20 2a 72 | 6e 61 6d 65 2c 20 2a 63 |name, *r|name, *c|
|00005fd0| 6e 61 6d 65 3b 0a 58 09 | 20 20 20 20 4f 62 6a 20 |name;.X.| Obj |
|00005fe0| 2a 6f 70 3b 0a 58 09 20 | 20 20 20 63 68 61 72 20 |*op;.X. | char |
|00005ff0| 2a 75 73 65 72 44 3b 20 | 20 20 2f 2a 20 48 65 6c |*userD; | /* Hel|
|00006000| 6c 65 72 2c 20 70 67 20 | 38 35 32 2c 20 73 61 79 |ler, pg |852, say|
|00006010| 27 73 20 74 68 69 73 20 | 69 73 20 74 79 70 65 20 |'s this |is type |
|00006020| 50 6f 69 6e 74 65 72 3f | 3f 20 2a 2f 0a 58 09 20 |Pointer?|? */.X. |
|00006030| 20 20 20 69 6e 74 20 6c | 65 6e 3b 0a 58 0a 58 09 | int l|en;.X.X.|
|00006040| 20 20 20 20 2f 2a 20 66 | 69 67 75 72 65 20 6f 75 | /* f|igure ou|
|00006050| 74 20 6f 75 72 20 72 6f | 77 20 6e 61 6d 65 20 2a |t our ro|w name *|
|00006060| 2f 0a 58 09 20 20 20 20 | 69 66 20 28 21 72 6f 77 |/.X. |if (!row|
|00006070| 5b 72 5d 2e 6f 6e 29 20 | 7b 0a 58 09 09 70 72 69 |[r].on) |{.X..pri|
|00006080| 6e 74 66 20 28 22 42 75 | 67 3a 20 25 73 3a 20 72 |ntf ("Bu|g: %s: r|
|00006090| 6f 77 5b 25 64 5d 20 6e | 6f 74 20 6f 6e 5c 6e 22 |ow[%d] n|ot on\n"|
|000060a0| 2c 20 6d 65 2c 20 72 29 | 3b 0a 58 09 09 65 78 69 |, me, r)|;.X..exi|
|000060b0| 74 20 28 31 29 3b 0a 58 | 09 20 20 20 20 7d 0a 58 |t (1);.X|. }.X|
|000060c0| 09 20 20 20 20 6f 70 20 | 3d 20 64 62 5f 62 61 73 |. op |= db_bas|
|000060d0| 69 63 20 28 72 6f 77 5b | 72 5d 2e 64 62 69 64 78 |ic (row[|r].dbidx|
|000060e0| 29 3b 0a 58 09 20 20 20 | 20 72 6e 61 6d 65 20 3d |);.X. | rname =|
|000060f0| 20 6f 70 2d 3e 6f 5f 6e | 61 6d 65 3b 0a 58 09 20 | op->o_n|ame;.X. |
|00006100| 20 20 20 6c 65 6e 20 3d | 20 73 74 72 6c 65 6e 20 | len =| strlen |
|00006110| 28 72 6e 61 6d 65 29 3b | 0a 58 0a 58 09 20 20 20 |(rname);|.X.X. |
|00006120| 20 2f 2a 20 66 69 67 75 | 72 65 20 6f 75 74 20 6f | /* figu|re out o|
|00006130| 75 72 20 63 6f 6c 20 6e | 61 6d 65 20 2a 2f 0a 58 |ur col n|ame */.X|
|00006140| 09 20 20 20 20 69 66 20 | 28 21 63 6f 6c 5b 63 5d |. if |(!col[c]|
|00006150| 2e 6f 6e 29 20 7b 0a 58 | 09 09 70 72 69 6e 74 66 |.on) {.X|..printf|
|00006160| 20 28 22 42 75 67 3a 20 | 25 73 3a 20 63 6f 6c 5b | ("Bug: |%s: col[|
|00006170| 25 64 5d 20 6e 6f 74 20 | 6f 6e 5c 6e 22 2c 20 6d |%d] not |on\n", m|
|00006180| 65 2c 20 63 29 3b 0a 58 | 09 09 65 78 69 74 20 28 |e, c);.X|..exit (|
|00006190| 31 29 3b 0a 58 09 20 20 | 20 20 7d 0a 58 09 20 20 |1);.X. | }.X. |
|000061a0| 20 20 69 66 20 28 63 6f | 6c 5b 63 5d 2e 74 79 70 | if (co|l[c].typ|
|000061b0| 65 20 3d 3d 20 53 45 50 | 5f 43 4f 4c 29 20 7b 0a |e == SEP|_COL) {.|
|000061c0| 58 09 09 6f 70 20 3d 20 | 64 62 5f 62 61 73 69 63 |X..op = |db_basic|
|000061d0| 20 28 63 6f 6c 5b 63 5d | 2e 64 62 69 64 78 29 3b | (col[c]|.dbidx);|
|000061e0| 0a 58 09 09 63 6e 61 6d | 65 20 3d 20 6f 70 2d 3e |.X..cnam|e = op->|
|000061f0| 6f 5f 6e 61 6d 65 3b 0a | 58 09 20 20 20 20 7d 20 |o_name;.|X. } |
|00006200| 65 6c 73 65 0a 58 09 09 | 63 6e 61 6d 65 20 3d 20 |else.X..|cname = |
|00006210| 63 6f 6c 5b 63 5d 2e 6e | 61 6d 65 3b 0a 58 09 20 |col[c].n|ame;.X. |
|00006220| 20 20 20 6c 65 6e 20 2b | 3d 20 73 74 72 6c 65 6e | len +|= strlen|
|00006230| 28 63 6e 61 6d 65 29 3b | 0a 58 0a 58 09 20 20 20 |(cname);|.X.X. |
|00006240| 20 6e 61 6d 65 20 3d 20 | 58 74 4d 61 6c 6c 6f 63 | name = |XtMalloc|
|00006250| 20 28 6c 65 6e 20 2b 20 | 32 29 3b 09 2f 2a 20 27 | (len + |2);./* '|
|00006260| 2e 27 20 70 6c 75 73 20 | 27 5c 30 27 20 2a 2f 0a |.' plus |'\0' */.|
|00006270| 58 09 20 20 20 20 28 76 | 6f 69 64 29 20 73 70 72 |X. (v|oid) spr|
|00006280| 69 6e 74 66 20 28 6e 61 | 6d 65 2c 20 22 25 73 2e |intf (na|me, "%s.|
|00006290| 25 73 22 2c 20 72 6e 61 | 6d 65 2c 20 63 6e 61 6d |%s", rna|me, cnam|
|000062a0| 65 29 3b 0a 58 0a 58 09 | 20 20 20 20 2f 2a 20 73 |e);.X.X.| /* s|
|000062b0| 65 74 20 58 6d 4e 75 73 | 65 72 44 61 74 61 20 74 |et XmNus|erData t|
|000062c0| 6f 20 62 65 20 74 68 65 | 20 6e 61 6d 65 20 77 65 |o be the| name we|
|000062d0| 20 77 61 6e 74 20 74 6f | 20 67 6f 20 62 79 20 2a | want to| go by *|
|000062e0| 2f 0a 58 09 20 20 20 20 | 67 65 74 5f 73 6f 6d 65 |/.X. |get_some|
|000062f0| 74 68 69 6e 67 20 28 77 | 2c 20 58 6d 4e 75 73 65 |thing (w|, XmNuse|
|00006300| 72 44 61 74 61 2c 20 28 | 63 68 61 72 20 2a 29 26 |rData, (|char *)&|
|00006310| 75 73 65 72 44 29 3b 0a | 58 09 20 20 20 20 69 66 |userD);.|X. if|
|00006320| 20 28 75 73 65 72 44 29 | 0a 58 09 09 58 74 46 72 | (userD)|.X..XtFr|
|00006330| 65 65 20 28 75 73 65 72 | 44 29 3b 0a 58 09 20 20 |ee (user|D);.X. |
|00006340| 20 20 75 73 65 72 44 20 | 3d 20 6e 61 6d 65 3b 0a | userD |= name;.|
|00006350| 58 09 20 20 20 20 73 65 | 74 5f 73 6f 6d 65 74 68 |X. se|t_someth|
|00006360| 69 6e 67 20 28 77 2c 20 | 58 6d 4e 75 73 65 72 44 |ing (w, |XmNuserD|
|00006370| 61 74 61 2c 20 75 73 65 | 72 44 29 3b 0a 58 0a 58 |ata, use|rD);.X.X|
|00006380| 09 20 20 20 20 2f 2a 20 | 74 65 6c 6c 20 74 68 65 |. /* |tell the|
|00006390| 20 77 6f 72 6c 64 20 6f | 75 72 20 6e 61 6d 65 20 | world o|ur name |
|000063a0| 2a 2f 0a 58 09 20 20 20 | 20 72 65 67 69 73 74 65 |*/.X. | registe|
|000063b0| 72 5f 73 65 6c 65 63 74 | 69 6f 6e 20 28 6e 61 6d |r_select|ion (nam|
|000063c0| 65 29 3b 0a 58 09 7d 0a | 58 7d 0a 58 0a 58 2f 2a |e);.X.}.|X}.X.X/*|
|000063d0| 20 63 61 6c 6c 62 61 63 | 6b 20 66 72 6f 6d 20 74 | callbac|k from t|
|000063e0| 68 65 20 44 61 74 61 20 | 74 61 62 6c 65 20 43 6c |he Data |table Cl|
|000063f0| 6f 73 65 20 62 75 74 74 | 6f 6e 0a 58 20 2a 2f 0a |ose butt|on.X */.|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.