/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */ /* time: February 27, 1992 5:58:09 pm PST */ /* C2C version: October 16, 1990 (native) */ /* ref-counting: off */ /* file: TEditTouchupImpl, module: TEditTouchupImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [3838666685,2393063922] TEditTouchupImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1;} W2; typedef struct {word f0, f1, f2, f3;} W4; #define SOURCE(p, l) /* source p, l */ static void NoName←Q828(); static void TEditTouchupImpl←P0(); static void RefreshOver←P60(); static word NoName←Q888(); static word LockAfterScroll←P120(); static word LockAfterRefresh←P180(); static word LockAfter←P240(); static void UnlockAfterRefresh←P300(); static void Refresh←P360(); static void ScrollToEndOfDoc←P420(); static void ScrollToEndOfSel←P480(); static void NoName←Q948(); static word NoName←Q1008(); static struct {unsigned f; char r[4];} string1 = {131076, "\216\251\000"}; static struct {unsigned f; char r[4];} string2 = {65537, "\001\000\000"}; static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\302\136\246\312\300\076\314\360\376\100\164\000\000"}; static struct {unsigned f; char r[4];} string4 = {196611, "\004A\377"}; static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\343\357\262\137\300\144\166\356\317\100\164\000\000"}; static struct {unsigned f; char r[16];} string6 = {851981, "\006\005\000\001\004\001\054\001\070\001\100\114\001\000\000"}; static struct {unsigned f; char r[16];} string7 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"}; static struct {unsigned f; char r[20];} string8 = {1048596, "LockAfterRefresh\000\000\000"}; static struct {unsigned f; char r[8];} string9 = {458760, "Refresh"}; static struct {unsigned f; char r[8];} string10 = {393224, "Update\000"}; static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\344\315\147\275\300\216\243\101\362\100\164\000\000"}; static struct {unsigned f; char r[16];} string12 = {851981, "\006\004\040\001\044\001\100\110\001\100\150\004\007\000\000"}; static struct {unsigned f; char r[16];} string13 = {851984, "\257\300\212\210\334\132\300\036\362\033\164\100\150\000\000"}; static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\237\211\044\154\300\046\105\033\126\100\150\000\000"}; static struct {unsigned f; char r[16];} string15 = {851984, "\257\300\240\236\274\315\300\111\163\325\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\343\357\262\137\300\144\166\356\317\100\150\000\000"}; static struct {unsigned f; char r[16];} string17 = {851984, "\257\300\312\253\314\243\300\267\126\271\104\100\150\000\000"}; static struct {unsigned f; char r[16];} string18 = {851984, "\257\300\071\221\120\257\300\230\321\322\204\100\150\000\000"}; static struct {unsigned f; char r[16];} string19 = {851984, "\257\300\174\107\267\236\300\027\127\205\140\100\150\000\000"}; static struct { word f0[29]; word f29; word f30; word f31; word f32; word f33; word f34; word f35; word f36; word f37; word f38; word f39; word f40; word f41; word f42; word f43; word f44; word f45; word f46[7]; } globalframe = { {0}, (word) ScrollToEndOfSel←P480, 0, (word) ScrollToEndOfDoc←P420, 0, (word) Refresh←P360, 0, (word) UnlockAfterRefresh←P300, 0, (word) LockAfter←P240, 0, (word) LockAfterRefresh←P180, 0, (word) LockAfterScroll←P120, 0, (word) RefreshOver←P60, 0, (word) TEditTouchupImpl←P0, {0} }; static void NoName←Q828() { register ptr gf←c066 = (ptr) &globalframe; word var←c12760; (* (( (ptr) gf←c066)+19) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf←c066)+20) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4); (* (( (ptr) gf←c066)+22) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string6); (* (( (ptr) gf←c066)+25) ) = (word) XR←GetTypeIndex((word) &string7, 0, (word) &string2); (* (ptr) (( (bPt) gf←c066)+104) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c066)+25) ), (word) &string8); (* (ptr) (( (bPt) gf←c066)+108) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c066)+19) ), (word) &string9); (* (ptr) (( (bPt) gf←c066)+112) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c066)+19) ), (word) &string10); (void) XR←DeclareGlobalFrame((word) "TEditTouchupImpl", &globalframe, (word) XR←GetTypeIndex((word) &string11, 0, (word) &string12) , (word) (( (bPt) gf←c066)+180)/* var←c12280 */ ); var←c12760 = (word) XR←ImportInterface((word) "CedarProcess", (word) XR←GetTypeIndexS((word) (&string13)), 10); (* (( (ptr) gf←c066)+50)/* var←c12568 */ ) = var←c12760; (void) XR←ImportProcS(var←c12760, 262145); var←c12760 = (word) XR←ImportInterface((word) "MonitoredQueue", (word) XR←GetTypeIndexS((word) (&string14)), 9); (* (( (ptr) gf←c066)+47)/* var←c12312 */ ) = var←c12760; (void) XR←ImportProcS(var←c12760, 67372545); (void) XR←ImportProcS(var←c12760, 67109120); var←c12760 = (word) XR←ImportInterface((word) "Process", (word) XR←GetTypeIndexS((word) (&string15)), 22); (* (( (ptr) gf←c066)+48)/* var←c12376 */ ) = var←c12760; (void) XR←ImportProcS(var←c12760, 526081); (void) XR←ImportProcS(var←c12760, 67371521); (void) XR←ImportProcS(var←c12760, 525570); var←c12760 = (word) XR←ImportInterface((word) "TEditDocument", (word) XR←GetTypeIndexS((word) (&string16)), 6); (* (( (ptr) gf←c066)+49)/* var←c12504 */ ) = var←c12760; (void) XR←ImportProcS(var←c12760, 67372289); (void) XR←ImportProcS(var←c12760, 262657); (void) XR←ImportProcS(var←c12760, 68157700); var←c12760 = (word) XR←ImportInterface((word) "ViewerForkers", (word) XR←GetTypeIndexS((word) (&string17)), 2); (* (( (ptr) gf←c066)+51)/* var←c12664 */ ) = var←c12760; (void) XR←ImportProcS(var←c12760, 1310725); var←c12760 = (word) XR←ExportInterface((word) "TEditRefresh", (word) XR←GetTypeIndexS((word) (&string18)), 3); (* (( (ptr) gf←c066)+52)/* var←c12792 */ ) = var←c12760; (void) XR←ExportVar(var←c12760, 0, (word) (( (bPt) gf←c066)+72)/* dirtyDocs←v3112 */ ); (void) XR←ExportProcS(var←c12760, (word) (( (bPt) gf←c066)+124)/* var←c12056 */ , 524546); (void) XR←ExportProcS(var←c12760, (word) (( (bPt) gf←c066)+116)/* var←c12024 */ , 786947); var←c12760 = (word) XR←ExportInterface((word) "TEditTouchup", (word) XR←GetTypeIndexS((word) (&string19)), 6); (* (( (ptr) gf←c066)+52)/* var←c12792 */ ) = var←c12760; (void) XR←ExportVar(var←c12760, 0, (word) (( (bPt) gf←c066)+32)/* fullUpdate←v2832 */ ); (void) XR←ExportVar(var←c12760, 1, (word) (( (bPt) gf←c066)+36)/* refresh←v2860 */ ); (void) XR←ExportProcS(var←c12760, (word) (( (bPt) gf←c066)+172)/* var←c12248 */ , 512); (void) XR←ExportProcS(var←c12760, (word) (( (bPt) gf←c066)+156)/* var←c12184 */ , 67633922); (void) XR←ExportProcS(var←c12760, (word) (( (bPt) gf←c066)+164)/* var←c12216 */ , 67634178); (void) XR←ExportProcS(var←c12760, (word) (( (bPt) gf←c066)+140)/* var←c12120 */ , 263425); } static void TEditTouchupImpl←P0(formal←c033, formal←c026) word formal←c033; word formal←c026; { register ptr gf←c12824 = (ptr) &globalframe; /* TEditTouchupImpl: */ SOURCE(381, 2348) SOURCE(533, 36) (* (( (ptr) gf←c12824)+8)/* fullUpdate←v2832 */ ) = (* (( (ptr) gf←c12824)+28) ); SOURCE(571, 34) (* (( (ptr) gf←c12824)+9)/* refresh←v2860 */ ) = (* (( (ptr) gf←c12824)+27) ); SOURCE(1543, 61) { word pd20; pd20 = (* (( (ptr) (* (( (ptr) gf←c12824)+47)/* var←c12312 */ ))+5) ); (* (( (ptr) gf←c12824)+18)/* dirtyDocs←v3112 */ ) = (word) ( *( (fPt) ((* (ptr) pd20 ))))(pd20); }; SOURCE(2636, 93) SOURCE(2638, 57) { word var←c12344; { word pd21; pd21 = (* (( (ptr) (* (( (ptr) gf←c12824)+48)/* var←c12376 */ ))+6) ); var←c12344 = (word) ( *( (fPt) ((* (ptr) pd21 ))))(50, pd21); }; { word pd22; pd22 = (* (( (ptr) (* (( (ptr) gf←c12824)+48)/* var←c12376 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd22 ))))((word) (( (bPt) gf←c12824)+44)/* refreshOver←v3056 */ , var←c12344, pd22); }; }; SOURCE(2697, 30) { W2 var←c12408; { W2 var←c030; word var←c029; var←c029 = XR←ExtensionAlloc(4); { word tmpAddr23; tmpAddr23 = (word) var←c029; (* (ptr) tmpAddr23 ) = ( ((word) (fPt) NoName←Q1008) ); (* (( (ptr) tmpAddr23) + 1) ) = 0; (* (( (ptr) tmpAddr23) + 2) ) = (word) (( (bPt) gf←c12824)+132)/* var←c12088 */ ; (* (( (ptr) tmpAddr23) + 3) ) = 0; }; (void) XR←Fork((word) &var←c030, var←c029); var←c12408 = var←c030; }; { word pd24; pd24 = (* (( (ptr) (* (( (ptr) gf←c12824)+48)/* var←c12376 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd24 ))))(var←c12408, pd24); }; }; } static void RefreshOver←P60() { W4 var←c12856; register ptr gf←c12888 = (ptr) &globalframe; /* RefreshOver: */ SOURCE(608, 80) (void) (XR←MonitorEntry((word) (( (bPt) gf←c12888)+16)/* LOCK←v2804 */ )); SOURCE(643, 45) { word var←c077; var←c077 = (word) &var←c12856; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q888) ), ( ((word) (fPt) NoName←Q948) ), var←c077); }; SOURCE(608, 80) (void) (XR←MonitorExit((word) (( (bPt) gf←c12888)+16)/* LOCK←v2804 */ )); return; } static word NoName←Q888(formal←c070) word formal←c070; { register ptr gf←c069 = (ptr) &globalframe; SOURCE(666, 22) (void) (XR←Broadcast((word) (( (bPt) gf←c069)+44)/* refreshOver←v3056 */ )); return(0); } static word LockAfterScroll←P120(tdd←v3320, who←v3348) word tdd←v3320; word who←v3348; { word ok←v3392; /* LockAfterScroll: */ SOURCE(692, 141) SOURCE(799, 34) return((word) LockAfter←P240(tdd←v3320, who←v3348, 1)); } static word LockAfterRefresh←P180(tdd←v3452, who←v3480) word tdd←v3452; word who←v3480; { word ok←v3524; /* LockAfterRefresh: */ SOURCE(839, 143) SOURCE(947, 35) return((word) LockAfter←P240(tdd←v3452, who←v3480, 0)); } static word LockAfter←P240(tdd←v3584, who←v3612, scroll←v3640) word tdd←v3584; word who←v3612; word scroll←v3640; { register ptr gf←c12920 = (ptr) &globalframe; word ok←v3684; /* LockAfter: */ SOURCE(988, 345) SOURCE(988, 345) ok←v3684 = 1; SOURCE(1103, 55) { word var←c12536; word pd25; pd25 = (* (( (ptr) (* (( (ptr) gf←c12920)+49)/* var←c12504 */ ))+5) ); var←c12536 = (word) ( *( (fPt) ((* (ptr) pd25 ))))(tdd←v3584, (* (( (ptr) gf←c12920)+26) ), 0, 0, pd25); }; if ((0 == (* (( (ptr) tdd←v3584)+9) ))) { SOURCE(1194, 9) ok←v3684 = 1; } else { if ((0 != (* (( (ptr) gf←c12920)+10)/* alwaysOK←v3000 */ ))) { SOURCE(1217, 9) ok←v3684 = 1; } else { if ((0 == scroll←v3640) || ((* (( (ptr) tdd←v3584)+17) ) == 0)) { SOURCE(1259, 10) ok←v3684 = 0; } else { SOURCE(1282, 9) ok←v3684 = 1; }; }; }; SOURCE(1293, 40) if ((0 == ok←v3684)) { SOURCE(1308, 25) { word pd26; pd26 = (* (( (ptr) (* (( (ptr) gf←c12920)+49)/* var←c12504 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd26 ))))(tdd←v3584, pd26); }; }; SOURCE(988, 345) return(ok←v3684); } static void UnlockAfterRefresh←P300(tdd←v3744) word tdd←v3744; { register ptr gf←c12952 = (ptr) &globalframe; /* UnlockAfterRefresh: */ SOURCE(1364, 116) SOURCE(1439, 41) if ((tdd←v3744 != 0)) { SOURCE(1455, 25) { word pd27; pd27 = (* (( (ptr) (* (( (ptr) gf←c12952)+49)/* var←c12504 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd27 ))))(tdd←v3744, pd27); }; }; } static void Refresh←P360() { register ptr gf←c12984 = (ptr) &globalframe; /* Refresh: */ SOURCE(1607, 471) SOURCE(1625, 32) { word pd28; pd28 = (* (( (ptr) (* (( (ptr) gf←c12984)+50)/* var←c12568 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd28 ))))(2, pd28); }; SOURCE(1659, 419) lab←L100004: ; SOURCE(1662, 416) { word var←c12600; { word pd29; pd29 = (* (( (ptr) (* (( (ptr) gf←c12984)+47)/* var←c12312 */ ))+10) ); var←c12600 = (word) ( *( (fPt) ((* (ptr) pd29 ))))((* ((( (ptr) gf←c12984)+18)/* dirtyDocs←v3112 */ ) ), pd29); }; if ((var←c12600 == 0)) { goto lab←L100005; }; if (((* (( (ptr) gf←c12984)+20) ) == XR←GetReferentType(var←c12600))) { { word doc←v3992; doc←v3992 = var←c12600; SOURCE(1733, 369) { word viewer←v4036; SOURCE(1735, 66) { word pd30; pd30 = (* (( (ptr) (* (( (ptr) gf←c12984)+49)/* var←c12504 */ ))+9) ); viewer←v4036 = (word) ( *( (fPt) ((* (ptr) pd30 ))))(doc←v3992, pd30); }; SOURCE(1803, 275) if ((viewer←v4036 != 0)) { SOURCE(1824, 254) { word var←c12632; var←c12632 = (* (( (ptr) viewer←v4036)+26) ); if ((var←c12632 == 0)) { goto lab←L100006; }; if (((* (( (ptr) gf←c12984)+22) ) == XR←GetReferentType(var←c12632))) { { word tdd←v4080; tdd←v4080 = var←c12632; SOURCE(1893, 185) { /*1*/ register word v←v4124; /*1*/ v←v4124 = viewer←v4036; /*1*/ lab←L100010: ; /*1*/ if ((v←v4124 != 0)) { /*1*/ } /*1*/ else { /*1*/ goto lab←L100007; /*1*/ }; SOURCE(1955, 97) /*1*/ if ( ( ( ! ((* (( (bPt) v←v4124)+76) ) & 020)) ? ! ((* (( (bPt) v←v4124)+77) ) & 0100) : 0 ) ) { SOURCE(1996, 56) /*1*/ { /*1*/ word pd31; /*1*/ pd31 = (* (( (ptr) (* (( (ptr) gf←c12984)+51)/* var←c12664 */ ))+4) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd31 ))))(v←v4124, 1, 0, (* (( (ptr) gf←c12984)+9)/* refresh←v2860 */ ), 1, pd31); /*1*/ }; /*1*/ }; SOURCE(2054, 24) /*1*/ if (((* (( (ptr) v←v4124)+21) ) == viewer←v4036)) { SOURCE(2078, 4) /*1*/ goto lab←L100008; /*1*/ }; /*1*/ v←v4124 = (* (( (ptr) v←v4124)+21) ); /*1*/ goto lab←L100010; /*1*/ lab←L100007: ; /*1*/ lab←L100008: ; /*1*/ }; }; } else { lab←L100006: ; }; }; }; }; }; } else { lab←L100005: ; }; }; goto lab←L100004; } static void ScrollToEndOfDoc←P420(viewer←v3820, glitch←v3848) word viewer←v3820; word glitch←v3848; { register ptr gf←c13016 = (ptr) &globalframe; /* ScrollToEndOfDoc: */ SOURCE(2127, 198) SOURCE(2206, 119) { word var←c12696; var←c12696 = (* (( (ptr) viewer←v3820)+26) ); if ((var←c12696 == 0)) { goto lab←L100011; }; if (((* (( (ptr) gf←c13016)+22) ) == XR←GetReferentType(var←c12696))) { { word tdd←v4168; tdd←v4168 = var←c12696; SOURCE(2277, 21) (* (( (ptr) tdd←v4168)+17) ) = 1; SOURCE(2300, 25) (* (( (ptr) tdd←v4168)+3) ) = glitch←v3848; }; } else { lab←L100011: ; }; }; } static void ScrollToEndOfSel←P480(viewer←v3908, glitch←v3936, id←v3964) word viewer←v3908; word glitch←v3936; word id←v3964; { register ptr gf←c13048 = (ptr) &globalframe; /* ScrollToEndOfSel: */ SOURCE(2343, 267) SOURCE(2463, 147) { word var←c12728; var←c12728 = (* (( (ptr) viewer←v3908)+26) ); if ((var←c12728 == 0)) { goto lab←L100012; }; if (((* (( (ptr) gf←c13048)+22) ) == XR←GetReferentType(var←c12728))) { { word tdd←v4212; tdd←v4212 = var←c12728; SOURCE(2534, 21) (* (( (ptr) tdd←v4212)+17) ) = 2; SOURCE(2557, 25) (* (( (ptr) tdd←v4212)+3) ) = glitch←v3936; SOURCE(2584, 26) (* (( (ptr) tdd←v4212)+4) ) = id←v3964; }; } else { lab←L100012: ; }; }; } static void NoName←Q948(formal←c065, formal←c200000, formal←c200001, formal←c200002, formal←c200003) word formal←c065; word formal←c200000; word formal←c200001; word formal←c200002; word formal←c200003; { register ptr gf←c076 = (ptr) &globalframe; if ((formal←c200001 == XR←Unwind)) { (void) (XR←MonitorExit((word) (( (bPt) gf←c076)+16)/* LOCK←v2804 */ )); }; (* (ptr) formal←c065 ) = 0; (* (( (ptr) formal←c065)+1) ) = 0; return; } static word NoName←Q1008(formal←c031) word formal←c031; { word var←c032; /* intermediary proc for a FORK, nArgs: 0, nRets: 0 */ var←c032 = (* (( (ptr) formal←c031)+2) ); formal←c031 = XR←ExtensionFree(formal←c031); (void) ( *( (fPt) ((* (ptr) var←c032 ))))(var←c032); return(0); } /* file: TEditTouchupImpl, module: TEditTouchupImpl, compiled at: February 27, 1992 5:58:08 pm PST */ extern void XR←install←TEditTouchupImpl() { NoName←Q828(); } extern void XR←run←TEditTouchupImpl() { XR←Start(&globalframe); }