/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */ /* time: April 21, 1992 12:42:11 pm PDT */ /* C2C version: October 16, 1990 (native) */ /* ref-counting: off */ /* file: XTkNotificationImpl, module: XTkNotificationImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [76824825,735568498] XTkNotificationImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1;} W2; #define SOURCE(p, l) /* source p, l */ static void NoName←Q432(); static void XTkNotificationImpl←P0(); static void RegisterGlobal←P60(); static void CallNotifierList←P120(); static void CallAll←P180(); static struct {unsigned f; char r[44];} string1 = {2752556, "\260\006\005\146\151\162\163\164\257\300\004\224\100\371\300\053\327\342\162\100\214\005\004\162\145\163\164\214\257\300\004\224\100\371\300\053\327\342\162\100\214\261\000"}; static struct {unsigned f; char r[4];} string2 = {131074, "\004\006\000"}; static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\004\224\100\371\300\053\327\342\162\100\164\000\000"}; static struct {unsigned f; char r[4];} string4 = {131074, "\003\010\000"}; static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\242\221\264\046\300\105\142\142\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string6 = {851984, "\257\300\242\021\151\152\300\254\342\070\173\100\150\000\000"}; static struct { word f0[12]; word f12; word f13; word f14; word f15; word f16; word f17; word f18; word f19[3]; } globalframe = { {0}, (word) CallAll←P180, 0, (word) CallNotifierList←P120, 0, (word) RegisterGlobal←P60, 0, (word) XTkNotificationImpl←P0, {0} }; static void NoName←Q432() { register ptr gf←c036 = (ptr) &globalframe; word var←c5508; (* (( (ptr) gf←c036)+10) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (void) XR←DeclareGlobalFrame((word) "XTkNotificationImpl", &globalframe, (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4) , (word) (( (bPt) gf←c036)+72)/* var←c5284 */ ); var←c5508 = (word) XR←ImportInterface((word) "RefTab", (word) XR←GetTypeIndexS((word) (&string5)), 16); (* (( (ptr) gf←c036)+20)/* var←c5316 */ ) = var←c5508; (void) XR←ImportProcS(var←c5508, 67896579); (void) XR←ImportProcS(var←c5508, 134742786); (void) XR←ImportProcS(var←c5508, 67895555); var←c5508 = (word) XR←ExportInterface((word) "XTkNotification", (word) XR←GetTypeIndexS((word) (&string6)), 2); (* (( (ptr) gf←c036)+21)/* var←c5540 */ ) = var←c5508; (void) XR←ExportProcS(var←c5508, (word) (( (bPt) gf←c036)+64)/* var←c5252 */ , 1048580); (void) XR←ExportProcS(var←c5508, (word) (( (bPt) gf←c036)+48)/* var←c5188 */ , 1048836); } static void XTkNotificationImpl←P0(formal←c012, formal←c011) word formal←c012; word formal←c011; { register ptr gf←c5572 = (ptr) &globalframe; /* XTkNotificationImpl: */ SOURCE(42, 1156) SOURCE(248, 38) { word pd7; pd7 = (* (( (ptr) (* (( (ptr) gf←c5572)+20)/* var←c5316 */ ))+5) ); (* (( (ptr) gf←c5572)+8)/* registry←v2580 */ ) = (word) ( *( (fPt) ((* (ptr) pd7 ))))(17, 0, 0, pd7); }; } static void RegisterGlobal←P60(key←v2916, proc←v2944, registerData←v2972, front←v3000) word key←v2916; word proc←v2944; word registerData←v2972; word front←v3000; { register ptr gf←c5604 = (ptr) &globalframe; word new←v3376; /* RegisterGlobal: */ SOURCE(289, 413) (void) (XR←MonitorEntry((word) (( (bPt) gf←c5604)+16)/* LOCK←v2496 */ )); SOURCE(404, 46) { word var←c5380; new←v3376 = XR←NewObject(12, (* (( (ptr) gf←c5604)+10) )); var←c5380 = new←v3376; (* (ptr) var←c5380 ) = XR←CheckProc(proc←v2944); (* (( (ptr) var←c5380)+1) ) = registerData←v2972; }; SOURCE(452, 181) { word var←c5412; W2 var←c020; { word pd8; pd8 = (* (( (ptr) (* (( (ptr) gf←c5604)+20)/* var←c5316 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd8 ))))((word) &var←c020, (* (( (ptr) gf←c5604)+8)/* registry←v2580 */ ), key←v2916, pd8); }; var←c5412 = var←c020.f1; if ((var←c5412 == 0)) { goto lab←L100000; }; if (((* (( (ptr) gf←c5604)+10) ) == XR←GetReferentType(var←c5412))) { { word nl←v3420; nl←v3420 = var←c5412; SOURCE(523, 110) if ((0 != front←v3000)) { SOURCE(538, 19) (* (( (ptr) new←v3376)+2) ) = nl←v3420; } else { SOURCE(559, 74) { register word l←v3464; l←v3464 = nl←v3420; lab←L100004: ; SOURCE(595, 38) if (((* (( (ptr) l←v3464)+2) ) == 0)) { SOURCE(615, 10) (* (( (ptr) l←v3464)+2) ) = new←v3376; SOURCE(627, 6) (void) (XR←MonitorExit((word) (( (bPt) gf←c5604)+16)/* LOCK←v2496 */ )); return; }; l←v3464 = (* (( (ptr) l←v3464)+2) ); goto lab←L100004; }; }; }; } else { lab←L100000: ; }; }; SOURCE(665, 37) { word var←c5444; word pd9; pd9 = (* (( (ptr) (* (( (ptr) gf←c5604)+20)/* var←c5316 */ ))+9) ); var←c5444 = (word) ( *( (fPt) ((* (ptr) pd9 ))))((* (( (ptr) gf←c5604)+8)/* registry←v2580 */ ), key←v2916, new←v3376, pd9) ; }; SOURCE(289, 413) (void) (XR←MonitorExit((word) (( (bPt) gf←c5604)+16)/* LOCK←v2496 */ )); return; } static void CallNotifierList←P120(list←v3084, widget←v3112, callData←v3140, event←v3168) word list←v3084; word widget←v3112; word callData←v3140; word event←v3168; { /* CallNotifierList: */ SOURCE(708, 261) SOURCE(821, 148) { register word l←v3508; l←v3508 = list←v3084; lab←L100008: ; if ((l←v3508 != 0)) { } else { goto lab←L100005; }; SOURCE(871, 98) { word pd10; pd10 = (* (ptr) l←v3508 ); (void) ( *( (fPt) ((* (ptr) pd10 ))))(widget←v3112, (* (( (ptr) l←v3508)+1) ), callData←v3140, event←v3168, pd10); }; l←v3508 = (* (( (ptr) l←v3508)+2) ); goto lab←L100008; lab←L100005: ; }; } static void CallAll←P180(key←v3240, widget←v3268, callData←v3296, event←v3324) word key←v3240; word widget←v3268; word callData←v3296; word event←v3324; { register ptr gf←c5636 = (ptr) &globalframe; /* CallAll: */ SOURCE(983, 215) SOURCE(1084, 114) { word var←c5476; W2 var←c034; { word pd11; pd11 = (* (( (ptr) (* (( (ptr) gf←c5636)+20)/* var←c5316 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd11 ))))((word) &var←c034, (* (( (ptr) gf←c5636)+8)/* registry←v2580 */ ), key←v3240, pd11) ; }; var←c5476 = var←c034.f1; if ((var←c5476 == 0)) { goto lab←L100009; }; if (((* (( (ptr) gf←c5636)+10) ) == XR←GetReferentType(var←c5476))) { { word nl←v3552; nl←v3552 = var←c5476; SOURCE(1153, 45) (void) CallNotifierList←P120(nl←v3552, widget←v3268, callData←v3296, event←v3324); }; } else { lab←L100009: ; }; }; } /* file: XTkNotificationImpl, module: XTkNotificationImpl, compiled at: April 21, 1992 12:42:11 pm PDT */ extern void XR←install←XTkNotificationImpl() { NoName←Q432(); } extern void XR←run←XTkNotificationImpl() { XR←Start(&globalframe); }