/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */ /* time: June 12, 1992 1:17:11 pm PDT */ /* C2C version: October 16, 1990 (native) */ /* ref-counting: off */ /* file: XTkXScrollerImpl, module: XTkXScrollerImpl */ /* switches: bcfhklnouw */ #include #include static char versionStamp[] = "@(#)mob_version [577989105,1250511228] XTkXScrollerImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {W8 f; W8 r;} W16; typedef struct {W8 f; word r;} W9; typedef struct {W16 f; W9 r;} W25; typedef word (*fPt)(); typedef struct {word f0, f1;} W2; typedef W2 *W2Pt; typedef struct {word f0, f1, f2, f3, f4;} W5; typedef struct {word f0, f1, f2;} W3; typedef struct {W8 f; W3 r;} W11; typedef W5 *W5Pt; typedef struct {W8 f; W2 r;} W10; #define SOURCE(p, l) /* source p, l */ #define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) ) #define MAX(cast, x, y) ( ( cast x) > ( cast y) ? (x) : (y) ) #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR_RaiseBoundsFault()) : (idx) ) #define IOP2(op, x, y) ( (word) ((x) op (y)) ) static void NoName_Q1668(); static void XTkXScrollerImpl_P0(); static word InitClass_P60(); static word EntrySetPos_P120(); static void EntryGetPos_P180(); static word CreateXScroller_P240(); static word IsXScroller_P300(); static void XScrollerInitInstPart_P420(); static word Child_P480(); static void GetOffset_P540(); static void SetOffset_P600(); static void SetBindXY_P660(); static void PleaseResizeChild_P720(); static word InternalEnumerateChildren_P780(); static void ConfigureLR_P840(); static void SizingLR_P1020(); static void ReplaceChild_P900(); static void action_P1224(); static void PreferredSizeLR_P960(); 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\042\163\151\361\300\112\211\111\174\100\214\000\000"}; static struct {unsigned f; char r[12];} string4 = {589836, "XScroller\000\000"}; static struct {unsigned f; char r[12];} string5 = {589836, "xScroller\000\000"}; static struct {unsigned f; char r[16];} string6 = {851984, "\257\300\042\163\151\361\300\112\211\111\174\100\164\000\000"}; static struct {unsigned f; char r[8];} string7 = {262148, "\004\200a\000\000\000\000"}; static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\351\276\264\273\300\115\104\320\264\100\164\000\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\033\115\307\000\300\214\060\055\310\100\150\000\000"}; static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\227\370\144\253\300\176\165\034\110\100\150\000\000"}; static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\143\260\340\122\300\057\146\075\005\100\150\000\000"}; static struct { word f0[15]; word f15; word f16; word f17; word f18; word f19; word f20; word f21; word f22; word f23; word f24; word f25; word f26; word f27; word f28; 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; word f47; word f48; word f49; word f50; word f51; word f52[4]; } globalframe = { {0}, (word) PreferredSizeLR_P960, 0, (word) ReplaceChild_P900, 0, (word) ConfigureLR_P840, 0, (word) InternalEnumerateChildren_P780, 0, (word) PleaseResizeChild_P720, 0, (word) SetBindXY_P660, 0, (word) SetOffset_P600, 0, (word) GetOffset_P540, 0, (word) Child_P480, 0, (word) XScrollerInitInstPart_P420, 0, (word) IsXScroller_P300, 0, (word) CreateXScroller_P240, 0, (word) EntryGetPos_P180, 0, (word) EntrySetPos_P120, 0, (word) InitClass_P60, 0, (word) XTkXScrollerImpl_P0, 0, 2147483648, 2147483648, 2147483648, 2147483648, 2147483648, {0} }; static void NoName_Q1668() { register ptr gf_c0113 = (ptr) &globalframe; word var_c17648; (* (( (ptr) gf_c0113)+10) ) = (word) XR_GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf_c0113)+11) ) = (word) XR_GetTypeIndex((word) &string3, 0, (word) &string2); (* (ptr) (( (bPt) gf_c0113)+52) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0113)+10) ), (word) &string4); (* (ptr) (( (bPt) gf_c0113)+56) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0113)+10) ), (word) &string5); (void) XR_DeclareGlobalFrame((word) "XTkXScrollerImpl", &globalframe, (word) XR_GetTypeIndex((word) &string6, 0, (word) &string7) , (word) (( (bPt) gf_c0113)+180)/* var_c17136 */ ); var_c17648 = (word) XR_ImportInterface((word) "Xl", (word) XR_GetTypeIndexS((word) (&string8)), 218); (* (( (ptr) gf_c0113)+54)/* var_c17584 */ ) = var_c17648; (void) XR_ImportProcS(var_c17648, 539906); var_c17648 = (word) XR_ImportInterface((word) "XTk", (word) XR_GetTypeIndexS((word) (&string9)), 50); (* (( (ptr) gf_c0113)+53)/* var_c17328 */ ) = var_c17648; (void) XR_ImportProcS(var_c17648, 274177); (void) XR_ImportProcS(var_c17648, 272641); (void) XR_ImportProcS(var_c17648, 786947); (void) XR_ImportProcS(var_c17648, 67642370); (void) XR_ImportProcS(var_c17648, 69992451); var_c17648 = (word) XR_ImportInterface((word) "XTkFriends", (word) XR_GetTypeIndexS((word) (&string10)), 33); (* (( (ptr) gf_c0113)+52)/* var_c17264 */ ) = var_c17648; (void) XR_ImportProcS(var_c17648, 265217); (void) XR_ImportProcS(var_c17648, 531970); (void) XR_ImportProcS(var_c17648, 531202); (void) XR_ImportProcS(var_c17648, 264961); (void) XR_ImportProcS(var_c17648, 2098180); (void) XR_ImportProcS(var_c17648, 337643012); (void) XR_ImportProcS(var_c17648, 2102532); (void) XR_ImportProcS(var_c17648, 530178); (void) XR_ImportProcS(var_c17648, 73666049); var_c17648 = (word) XR_ExportInterface((word) "XTkXScroller", (word) XR_GetTypeIndexS((word) (&string11)), 8); (* (( (ptr) gf_c0113)+55)/* var_c17680 */ ) = var_c17648; (void) XR_ExportVar(var_c17648, 0, (word) (( (bPt) gf_c0113)+32)/* xScrollerClass_v2664 */ ); (void) XR_ExportProcS(var_c17648, (word) (( (bPt) gf_c0113)+148)/* var_c17008 */ , 70254852); (void) XR_ExportProcS(var_c17648, (word) (( (bPt) gf_c0113)+140)/* var_c16976 */ , 67371521); (void) XR_ExportProcS(var_c17648, (word) (( (bPt) gf_c0113)+124)/* var_c16912 */ , 67371777); (void) XR_ExportProcS(var_c17648, (word) (( (bPt) gf_c0113)+68)/* var_c16688 */ , 1049604); (void) XR_ExportProcS(var_c17648, (word) (( (bPt) gf_c0113)+116)/* var_c16880 */ , 134481153); (void) XR_ExportProcS(var_c17648, (word) (( (bPt) gf_c0113)+108)/* var_c16848 */ , 787970); (void) XR_ExportProcS(var_c17648, (word) (( (bPt) gf_c0113)+100)/* var_c16816 */ , 788227); } static void XTkXScrollerImpl_P0(formal_c028, formal_c027) word formal_c028; word formal_c027; { register ptr gf_c17712 = (ptr) &globalframe; /* XTkXScrollerImpl: */ SOURCE(47, 6957) /* moved to installation proc */ /* moved to installation proc */ /* moved to installation proc */ /* moved to installation proc */ /* moved to installation proc */ SOURCE(263, 46) (* (( (ptr) gf_c17712)+8)/* xScrollerClass_v2664 */ ) = (word) InitClass_P60(); } static word InitClass_P60() { register ptr gf_c17744 = (ptr) &globalframe; word csc_v3248; /* InitClass: */ SOURCE(311, 359) SOURCE(311, 359) csc_v3248 = 0; SOURCE(370, 300) { W25 var_c031; (* (ptr) &var_c031 ) = (* (( (ptr) gf_c17744)+14) ); (* (( (ptr) &var_c031)+1) ) = (* (( (ptr) gf_c17744)+13) ); (* (( (ptr) &var_c031)+2) ) = 0; (* (( (ptr) &var_c031)+3) ) = 1; (* (( (ptr) &var_c031)+4) ) = 0; (* (( (ptr) &var_c031)+5) ) = 0; (* (( (ptr) &var_c031)+6) ) = (word) (( (bPt) gf_c17744)+60)/* var_c16656 */ ; (* (( (ptr) &var_c031)+7) ) = (word) (( (bPt) gf_c17744)+76)/* var_c16720 */ ; (* (( (ptr) &var_c031)+8) ) = XR_CheckProc(0); (* (( (ptr) &var_c031)+9) ) = XR_CheckProc(0); (* (( (ptr) &var_c031)+10) ) = XR_CheckProc(0); (* (( (ptr) &var_c031)+11) ) = (* (( (ptr) (* (( (ptr) gf_c17744)+52)/* var_c17264 */ ))+27) ); (* (( (ptr) &var_c031)+12) ) = XR_CheckProc(0); (* (( (ptr) &var_c031)+13) ) = XR_CheckProc(0); (* (( (ptr) &var_c031)+14) ) = XR_CheckProc(0); (* (( (ptr) &var_c031)+15) ) = XR_CheckProc(0); (* (( (ptr) &var_c031)+16) ) = XR_CheckProc(0); (* (( (ptr) &var_c031)+17) ) = (word) (( (bPt) gf_c17744)+84)/* var_c16752 */ ; (* (( (ptr) &var_c031)+18) ) = (word) (( (bPt) gf_c17744)+132)/* var_c16944 */ ; (* (( (ptr) &var_c031)+19) ) = 0; (* (( (ptr) &var_c031)+20) ) = 0; (* (( (ptr) &var_c031)+21) ) = 0; (* (( (ptr) &var_c031)+22) ) = 0; (* (( (ptr) &var_c031)+23) ) = XR_CheckProc(0); (* (( (ptr) &var_c031)+24) ) = XR_CheckProc(0); { word pd12; pd12 = (* (( (ptr) (* (( (ptr) gf_c17744)+52)/* var_c17264 */ ))+18) ); csc_v3248 = (word) ( *( (fPt) ((* (ptr) pd12 ))))((word) (&var_c031), pd12); }; }; SOURCE(311, 359) return(csc_v3248); } static word EntrySetPos_P120(xsd_v3448, p_v3476) word xsd_v3448; W2 p_v3476; { register ptr gf_c17776 = (ptr) &globalframe; word new_v3520; /* EntrySetPos: */ SOURCE(813, 272) (void) (XR_MonitorEntry((word) (( (bPt) gf_c17776)+16)/* LOCK_v2580 */ )); SOURCE(888, 66) if ((0 != (* (( (ptr) xsd_v3448)+1) ))) { SOURCE(907, 13) p_v3476.f0 = 0; } else { SOURCE(920, 34) { word x13; word x14; p_v3476.f0 = (x14 = (x13 = p_v3476.f0, MAX((int)(word), x13, 4294957296)), MIN((int)(word), x14, 10000)); }; }; SOURCE(956, 66) if ((0 != (* (( (ptr) xsd_v3448)+2) ))) { SOURCE(975, 13) p_v3476.f1 = 0; } else { SOURCE(988, 34) { word x15; word x16; p_v3476.f1 = (x16 = (x15 = p_v3476.f1, MAX((int)(word), x15, 4294957296)), MIN((int)(word), x16, 10000)); }; }; SOURCE(1024, 32) if (XR_EqualWords((( (ptr) xsd_v3448)+3), &p_v3476, 2)) { SOURCE(1042, 14) (void) (XR_MonitorExit((word) (( (bPt) gf_c17776)+16)/* LOCK_v2580 */ )); return(0); }; SOURCE(1058, 11) (* (W2Pt) (( (ptr) xsd_v3448)+3) ) = p_v3476; SOURCE(1071, 14) (void) (XR_MonitorExit((word) (( (bPt) gf_c17776)+16)/* LOCK_v2580 */ )); return(1); } static void EntryGetPos_P180(formal_c038, xsd_v3580) word formal_c038; word xsd_v3580; { register ptr gf_c17808 = (ptr) &globalframe; W2 p_v3624; /* EntryGetPos: */ SOURCE(1090, 81) (void) (XR_MonitorEntry((word) (( (bPt) gf_c17808)+16)/* LOCK_v2580 */ )); SOURCE(1154, 17) p_v3624 = (* (W2Pt) (( (ptr) xsd_v3580)+3) ); /* removed tail goto */ (void) (XR_MonitorExit((word) (( (bPt) gf_c17808)+16)/* LOCK_v2580 */ )); (* (W2Pt) formal_c038 ) = p_v3624; return; } static word CreateXScroller_P240(widgetSpec_v3684, child_v3712, bindx_v3740, bindy_v3768) W9 widgetSpec_v3684; word child_v3712; word bindx_v3740; word bindy_v3768; { register ptr gf_c17840 = (ptr) &globalframe; word xScroller_v3812; /* CreateXScroller: */ SOURCE(1176, 292) SOURCE(1176, 292) xScroller_v3812 = 0; SOURCE(1319, 56) { word pd17; pd17 = (* (( (ptr) (* (( (ptr) gf_c17840)+53)/* var_c17328 */ ))+4) ); xScroller_v3812 = (word) ( *( (fPt) ((* (ptr) pd17 ))))(widgetSpec_v3684, (* (( (ptr) gf_c17840)+8)/* xScrollerClass_v2664 */ ), 0, pd17) ; }; SOURCE(1377, 54) if ((child_v3712 != 0)) { SOURCE(1395, 36) (void) ReplaceChild_P900(xScroller_v3812, child_v3712, 1, 0); }; SOURCE(1433, 35) (void) SetBindXY_P660(xScroller_v3812, bindx_v3740, bindy_v3768); SOURCE(1176, 292) return(xScroller_v3812); } static word IsXScroller_P300(widget_v3872) word widget_v3872; { register ptr gf_c17872 = (ptr) &globalframe; word var_c3916; /* IsXScroller: */ SOURCE(1472, 111) SOURCE(1537, 46) { word var_c17392; word widget_v16580; word class_v16608; widget_v16580 = widget_v3872; class_v16608 = (* (( (ptr) gf_c17872)+8)/* xScrollerClass_v2664 */ ); { word pd18; if (((* (( (ptr) widget_v16580)+4) ) == class_v16608)) { var_c17392 = 1; } else { pd18 = (* (( (ptr) (* (( (ptr) gf_c17872)+53)/* var_c17328 */ ))+40) ); var_c17392 = (word) ( *( (fPt) ((* (ptr) pd18 ))))(widget_v16580, class_v16608, pd18); }; }; return(var_c17392); }; } static void XScrollerInitInstPart_P420(widget_v8160, arguments_v8188) word widget_v8160; word arguments_v8188; { register ptr gf_c17904 = (ptr) &globalframe; word xsd_v4604; /* XScrollerInitInstPart: */ SOURCE(1728, 256) SOURCE(1780, 33) xsd_v4604 = XR_NewObject(20, (* (( (ptr) gf_c17904)+11) )); SOURCE(1815, 54) { word val_v16532; val_v16532 = xsd_v4604; { word idx19; word limit20; (* ((( (ptr) widget_v8160)+49)+( idx19 = (* (( (ptr) (* (( (ptr) gf_c17904)+8)/* xScrollerClass_v2664 */ ))+4) ), limit20 = (* (( (ptr) widget_v8160)+48) ), BCK(idx19, limit20) )) ) = val_v16532; }; }; SOURCE(1871, 38) { word pd21; pd21 = (* (( (ptr) (* (( (ptr) gf_c17904)+53)/* var_c17328 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd21 ))))(widget_v8160, 6, 1, pd21); }; SOURCE(1911, 73) if (( (int)(* (( (ptr) widget_v8160)+9) ) < (int)0)) { SOURCE(1951, 33) (* (( (ptr) widget_v8160)+9) ) = 0; }; } static word Child_P480(xScroller_v4080) word xScroller_v4080; { register ptr gf_c17936 = (ptr) &globalframe; word var_c4124; word xsd_v4648; /* Child: */ SOURCE(1990, 135) SOURCE(1990, 135) var_c4124 = 0; SOURCE(2064, 41) { word idx22; word limit23; xsd_v4648 = XR_Narrow((* ((( (ptr) xScroller_v4080)+49)+( idx22 = (* (( (ptr) (* (( (ptr) gf_c17936)+8)/* xScrollerClass_v2664 */ ))+4) ), limit23 = (* (( (ptr) xScroller_v4080)+48) ), BCK(idx22, limit23) )) ), (* (( (ptr) gf_c17936)+11) )); }; SOURCE(2107, 18) return((* (ptr) xsd_v4648 )); } static void GetOffset_P540(formal_c060, xScroller_v4184) word formal_c060; word xScroller_v4184; { register ptr gf_c17968 = (ptr) &globalframe; W2 p_v4228; word xsd_v4692; /* GetOffset: */ SOURCE(2131, 135) SOURCE(2203, 41) { word idx24; word limit25; xsd_v4692 = XR_Narrow((* ((( (ptr) xScroller_v4184)+49)+( idx24 = (* (( (ptr) (* (( (ptr) gf_c17968)+8)/* xScrollerClass_v2664 */ ))+4) ), limit25 = (* (( (ptr) xScroller_v4184)+48) ), BCK(idx24, limit25) )) ), (* (( (ptr) gf_c17968)+11) )); }; SOURCE(2246, 20) (void) EntryGetPos_P180((word) &p_v4228, xsd_v4692); /* removed tail goto */ (* (W2Pt) formal_c060 ) = p_v4228; return; } static void SetOffset_P600(xScroller_v4288, p_v4316) word xScroller_v4288; W2 p_v4316; { register ptr gf_c18000 = (ptr) &globalframe; word xsd_v4736; word new_v4764; /* SetOffset: */ SOURCE(2273, 258) SOURCE(2336, 41) { word idx26; word limit27; xsd_v4736 = XR_Narrow((* ((( (ptr) xScroller_v4288)+49)+( idx26 = (* (( (ptr) (* (( (ptr) gf_c18000)+8)/* xScrollerClass_v2664 */ ))+4) ), limit27 = (* (( (ptr) xScroller_v4288)+48) ), BCK(idx26, limit27) )) ), (* (( (ptr) gf_c18000)+11) )); }; SOURCE(2379, 31) new_v4764 = (word) EntrySetPos_P120(xsd_v4736, p_v4316); SOURCE(2412, 119) if ((0 != new_v4764)) { SOURCE(2426, 30) { word pd28; pd28 = (* (( (ptr) (* (( (ptr) gf_c18000)+53)/* var_c17328 */ ))+45) ); (void) ( *( (fPt) ((* (ptr) pd28 ))))(xScroller_v4288, pd28); }; SOURCE(2458, 73) if (((* (( (ptr) xScroller_v4288)+38) ) == 0)) { SOURCE(2491, 40) { word pd29; pd29 = (* (( (ptr) (* (( (ptr) gf_c18000)+53)/* var_c17328 */ ))+51) ); (void) ( *( (fPt) ((* (ptr) pd29 ))))(xScroller_v4288, pd29); }; }; }; } static void SetBindXY_P660(xScroller_v4376, bindx_v4404, bindy_v4432) word xScroller_v4376; word bindx_v4404; word bindy_v4432; { register ptr gf_c18032 = (ptr) &globalframe; word xsd_v4808; word new_v4836; /* SetBindXY: */ SOURCE(2539, 318) SOURCE(2609, 41) { word idx30; word limit31; xsd_v4808 = XR_Narrow((* ((( (ptr) xScroller_v4376)+49)+( idx30 = (* (( (ptr) (* (( (ptr) gf_c18032)+8)/* xScrollerClass_v2664 */ ))+4) ), limit31 = (* (( (ptr) xScroller_v4376)+48) ), BCK(idx30, limit31) )) ), (* (( (ptr) gf_c18032)+11) )); }; SOURCE(2652, 46) new_v4836 = ( ((* (( (ptr) xsd_v4808)+1) ) != bindx_v4404) ? 1 : ((* (( (ptr) xsd_v4808)+2) ) != bindy_v4432) ) ; SOURCE(2700, 157) if ((0 != new_v4836)) { SOURCE(2714, 17) (* (( (ptr) xsd_v4808)+1) ) = bindx_v4404; SOURCE(2733, 17) (* (( (ptr) xsd_v4808)+2) ) = bindy_v4432; SOURCE(2752, 30) { word pd32; pd32 = (* (( (ptr) (* (( (ptr) gf_c18032)+53)/* var_c17328 */ ))+45) ); (void) ( *( (fPt) ((* (ptr) pd32 ))))(xScroller_v4376, pd32); }; SOURCE(2784, 73) if (((* (( (ptr) xScroller_v4376)+38) ) == 0)) { SOURCE(2817, 40) { word pd33; pd33 = (* (( (ptr) (* (( (ptr) gf_c18032)+53)/* var_c17328 */ ))+51) ); (void) ( *( (fPt) ((* (ptr) pd33 ))))(xScroller_v4376, pd33); }; }; }; } static void PleaseResizeChild_P720(widget_v8248, child_v8276) word widget_v8248; word child_v8276; { register ptr gf_c18064 = (ptr) &globalframe; /* PleaseResizeChild: */ SOURCE(2865, 110) SOURCE(2909, 27) { word pd34; pd34 = (* (( (ptr) (* (( (ptr) gf_c18064)+53)/* var_c17328 */ ))+45) ); (void) ( *( (fPt) ((* (ptr) pd34 ))))(widget_v8248, pd34); }; SOURCE(2938, 37) { word pd35; pd35 = (* (( (ptr) (* (( (ptr) gf_c18064)+53)/* var_c17328 */ ))+51) ); (void) ( *( (fPt) ((* (ptr) pd35 ))))(widget_v8248, pd35); }; } static word InternalEnumerateChildren_P780(self_v8336, classLevel_v8364, proc_v8392, data_v8420) word self_v8336; word classLevel_v8364; word proc_v8392; word data_v8420; { register ptr gf_c18096 = (ptr) &globalframe; word stop_v8464; word xsd_v4880; word c_v4908; /* InternalEnumerateChildren: */ SOURCE(2979, 217) SOURCE(2979, 217) stop_v8464 = 0; SOURCE(3044, 36) { word idx36; word limit37; xsd_v4880 = XR_Narrow((* ((( (ptr) self_v8336)+49)+( idx36 = (* (( (ptr) (* (( (ptr) gf_c18096)+8)/* xScrollerClass_v2664 */ ))+4) ), limit37 = (* (( (ptr) self_v8336)+48) ), BCK(idx36, limit37) )) ), (* (( (ptr) gf_c18096)+11) )); }; SOURCE(3082, 25) c_v4908 = (* (ptr) xsd_v4880 ); SOURCE(3109, 87) if ( ( (c_v4908 != 0) ? ((* (( (ptr) c_v4908)+38) ) < 4) : 0 ) ) { SOURCE(3143, 53) if ((0 != (word) ( *( (fPt) ((* (ptr) proc_v8392 ))))(self_v8336, c_v4908, data_v8420, proc_v8392))) { SOURCE(3177, 11) stop_v8464 = 1; SOURCE(3190, 6) return(stop_v8464); }; }; SOURCE(2979, 217) return(stop_v8464); } static void ConfigureLR_P840(widget_v8524, formal_c0138, mapping_v8580, reConsiderChildren_v8608) word widget_v8524; W5 formal_c0138; word mapping_v8580; word reConsiderChildren_v8608; { W11 var_c18128; /* declaration of geometry_v8552 skipped */ register ptr gf_c18160 = (ptr) &globalframe; /* declaration of var_c17488 skipped */ word existW_v4980; word createW_v5008; (* (W5Pt) (( (ptr) &var_c18128)+4)/* geometry_v8552 */ ) = formal_c0138; /* ConfigureLR: */ SOURCE(3206, 1639) { word tmpAddr38; tmpAddr38 = (word) (( (ptr) &var_c18128)+9)/* var_c17488 */ ; (* (ptr) tmpAddr38 ) = ( ((word) (fPt) SizingLR_P1020) ); (* (( (ptr) tmpAddr38) + 1) ) = 1; }; SOURCE(4421, 48) existW_v4980 = ((* (( (ptr) widget_v8524)+44) ) < 2); SOURCE(4471, 48) createW_v5008 = ( (mapping_v8580 < 2) ? (0 == existW_v4980) : 0 ) ; SOURCE(4521, 150) if ((0 != createW_v5008)) { SOURCE(4539, 132) if (((* (( (ptr) widget_v8524)+16) ) == (word) -1)) { SOURCE(4598, 73) (* (( (ptr) widget_v8524)+16) ) = (* (( (ptr) (* (( (ptr) (* (( (ptr) widget_v8524)+36) ))+1) ))+2) ); }; }; SOURCE(4674, 63) { word pd39; pd39 = (* (( (ptr) (* (( (ptr) gf_c18160)+52)/* var_c17264 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd39 ))))(widget_v8524, (* (W5Pt) (( (ptr) &var_c18128)+4)/* geometry_v8552 */ ), mapping_v8580, 0, pd39) ; }; SOURCE(4739, 106) if (((0 != existW_v4980) || (0 != createW_v5008))) { SOURCE(4765, 82) { word doChildren_v5140; SOURCE(4767, 48) doChildren_v5140 = ((0 != reConsiderChildren_v8608) || (0 != createW_v5008)); SOURCE(4817, 28) (void) SizingLR_P1020(widget_v8524, doChildren_v5140, (word) (( (bPt) &var_c18128)+36)/* var_c17488 */ ); }; }; } static void SizingLR_P1020(widget_v5084, reConsiderChildren_v5112, formal_c18224) word widget_v5084; word reConsiderChildren_v5112; word formal_c18224; { register ptr gf_c18192 = (ptr) &globalframe; word xsd_v5184; word child_v5212; formal_c18224 = (formal_c18224 - 36); /* SizingLR: */ SOURCE(3241, 1172) SOURCE(3307, 38) { word idx40; word limit41; xsd_v5184 = XR_Narrow((* ((( (ptr) widget_v5084)+49)+( idx40 = (* (( (ptr) (* (( (ptr) gf_c18192)+8)/* xScrollerClass_v2664 */ ))+4) ), limit41 = (* (( (ptr) widget_v5084)+48) ), BCK(idx40, limit41) )) ), (* (( (ptr) gf_c18192)+11) )); }; SOURCE(3347, 29) child_v5212 = (* (ptr) xsd_v5184 ); SOURCE(3378, 87) if ((0 != reConsiderChildren_v5112)) { SOURCE(3405, 60) { word pd42; pd42 = (* (( (ptr) (* (( (ptr) gf_c18192)+53)/* var_c17328 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd42 ))))(widget_v5084, 0, 0, pd42); }; }; SOURCE(3467, 946) if ((child_v5212 != 0)) { SOURCE(3485, 930) { W5 g_v5256; SOURCE(3487, 14) g_v5256.f0 = 2147483648; g_v5256.f1 = 2147483648; g_v5256.f2 = 2147483648; g_v5256.f3 = 2147483648; g_v5256.f4 = 2147483648; SOURCE(3503, 59) if ( ( ((* (( (ptr) child_v5212)+38) ) != 0) ? (0 == reConsiderChildren_v5112) : 0 ) ) { SOURCE(3556, 6) return; }; SOURCE(3564, 775) if (((* (( (ptr) child_v5212)+10) ) == 0)) { SOURCE(3595, 746) { W5 proposed_v5300; word ms_v5328 = 25; SOURCE(3598, 36) proposed_v5300 = (* (W5Pt) (( (ptr) child_v5212)+39) ); SOURCE(3672, 75) if ((0 != (* (( (ptr) xsd_v5184)+1) ))) { SOURCE(3692, 41) proposed_v5300.f2 = (* (( (ptr) formal_c18224)+6) ); SOURCE(3735, 12) ms_v5328 = (ms_v5328 & 4294967291) | (((1)) << 2); }; SOURCE(3752, 76) if ((0 != (* (( (ptr) xsd_v5184)+2) ))) { SOURCE(3772, 42) proposed_v5300.f3 = (* (( (ptr) formal_c18224)+6) ); SOURCE(3816, 12) ms_v5328 = (ms_v5328 & 4294967293) | (((1)) << 1); }; SOURCE(3833, 78) { word pd43; pd43 = (* (( (ptr) (* (( (ptr) gf_c18192)+52)/* var_c17264 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd43 ))))((word) &g_v5256, child_v5212, 0, proposed_v5300, ms_v5328, pd43); }; SOURCE(3913, 24) (void) EntryGetPos_P180((word) &g_v5256, xsd_v5184); SOURCE(3939, 41) if (( (int)g_v5256.f4 < (int)0)) { SOURCE(3963, 17) g_v5256.f4 = 0; }; SOURCE(3982, 130) if ((0 != (* (( (ptr) xsd_v5184)+1) ))) { SOURCE(4002, 39) g_v5256.f2 = (* (( (ptr) widget_v5084)+41) ); SOURCE(4043, 69) if (( (int)g_v5256.f2 > (int)0)) { SOURCE(4066, 46) g_v5256.f2 = (g_v5256.f2 - IOP2( * , (int)2, (int)g_v5256.f4)); }; }; SOURCE(4116, 135) if ((0 != (* (( (ptr) xsd_v5184)+2) ))) { SOURCE(4136, 41) g_v5256.f3 = (* (( (ptr) widget_v5084)+42) ); SOURCE(4179, 72) if (( (int)g_v5256.f3 > (int)0)) { SOURCE(4203, 48) g_v5256.f3 = (g_v5256.f3 - IOP2( * , (int)2, (int)g_v5256.f4)); }; }; SOURCE(4255, 40) if (( (int)g_v5256.f2 <= (int)0)) { SOURCE(4279, 16) g_v5256.f2 = 1; }; SOURCE(4297, 42) if (( (int)g_v5256.f3 <= (int)0)) { SOURCE(4322, 17) g_v5256.f3 = 1; }; }; }; SOURCE(4344, 69) { word pd44; pd44 = (* (( (ptr) (* (( (ptr) gf_c18192)+52)/* var_c17264 */ ))+8) ); (void) ( *( (fPt) ((* (ptr) pd44 ))))(child_v5212, g_v5256, (* (( (ptr) child_v5212)+10) ), reConsiderChildren_v5112, pd44) ; }; }; }; } static void ReplaceChild_P900(formal_c0139, formal_c0140, formal_c0141, formal_c0142) word formal_c0139; word formal_c0140; word formal_c0141; word formal_c0142; { W10 var_c18256; /* declaration of xScroller_v4492 skipped */ /* declaration of child_v4520 skipped */ /* declaration of delayed_v4548 skipped */ /* declaration of preventDestructionOfOldChild_v4576 skipped */ register ptr gf_c18288 = (ptr) &globalframe; /* declaration of var_c17552 skipped */ (* (( (ptr) &var_c18256)+4)/* xScroller_v4492 */ ) = formal_c0139; (* (( (ptr) &var_c18256)+5)/* child_v4520 */ ) = formal_c0140; (* (( (ptr) &var_c18256)+6)/* delayed_v4548 */ ) = formal_c0141; (* (( (ptr) &var_c18256)+7)/* preventDestructionOfOldChild_v4576 */ ) = formal_c0142; /* ReplaceChild: */ SOURCE(4854, 1016) { word tmpAddr45; tmpAddr45 = (word) (( (ptr) &var_c18256)+8)/* var_c17552 */ ; (* (ptr) tmpAddr45 ) = ( ((word) (fPt) action_P1224) ); (* (( (ptr) tmpAddr45) + 1) ) = 1; }; SOURCE(5755, 115) if (((* (( (ptr) (* (( (ptr) &var_c18256)+4)/* xScroller_v4492 */ ))+45) ) == 0) || ((* (( (ptr) (* (( (ptr) &var_c18256)+4) /* xScroller_v4492 */ ))+38) ) >= 2)) { SOURCE(5814, 15) (void) action_P1224((word) ((( (bPt) &var_c18256)+32)/* var_c17552 */ )); } else { SOURCE(5829, 41) { word pd46; pd46 = (* (( (ptr) (* (( (ptr) gf_c18288)+54)/* var_c17584 */ ))+65) ); (void) ( *( (fPt) ((* (ptr) pd46 ))))((* (( (ptr) (* (( (ptr) &var_c18256)+4)/* xScroller_v4492 */ ))+45) ), (word) (( (bPt) &var_c18256)+32) /* var_c17552 */ , pd46); }; }; } static void action_P1224(formal_c18352) word formal_c18352; { register ptr gf_c18320 = (ptr) &globalframe; word xsd_v5432; word oldChild_v5460; formal_c18352 = (formal_c18352 - 32); /* action: */ SOURCE(4994, 753) SOURCE(5014, 41) { word idx47; word limit48; xsd_v5432 = XR_Narrow((* ((( (ptr) (* (( (ptr) formal_c18352)+4) ))+49)+( idx47 = (* (( (ptr) (* (( (ptr) gf_c18320)+8)/* xScrollerClass_v2664 */ ))+4) ), limit48 = (* (( (ptr) (* (( (ptr) formal_c18352)+4) ))+48) ), BCK(idx47, limit48) )) ), (* (( (ptr) gf_c18320)+11) )); }; SOURCE(5057, 32) oldChild_v5460 = (* (ptr) xsd_v5432 ); SOURCE(5091, 29) if ((oldChild_v5460 == (* (( (ptr) formal_c18352)+5) ))) { SOURCE(5114, 6) return; }; SOURCE(5122, 275) if ((oldChild_v5460 != 0)) { SOURCE(5145, 34) if (((* (( (ptr) oldChild_v5460)+31) ) != (* (( (ptr) formal_c18352)+4) ))) { SOURCE(5179, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(5186, 89) if (((* (( (ptr) oldChild_v5460)+38) ) < 2)) { SOURCE(5219, 56) { word pd49; pd49 = (* (( (ptr) (* (( (ptr) gf_c18320)+52)/* var_c17264 */ ))+8) ); (void) ( *( (fPt) ((* (ptr) pd49 ))))(oldChild_v5460, (* (W5Pt) (( (ptr) gf_c18320)+47)/* var_c17200 */ ), 2, 1, pd49) ; }; }; SOURCE(5277, 120) if ((0 != (* (( (ptr) formal_c18352)+7) ))) { SOURCE(5315, 41) { word pd50; pd50 = (* (( (ptr) (* (( (ptr) gf_c18320)+52)/* var_c17264 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd50 ))))(oldChild_v5460, pd50); }; } else { SOURCE(5356, 41) { word pd51; pd51 = (* (( (ptr) (* (( (ptr) gf_c18320)+52)/* var_c17264 */ ))+31) ); (void) ( *( (fPt) ((* (ptr) pd51 ))))(oldChild_v5460, 0, pd51); }; }; }; SOURCE(5400, 196) if (((* (( (ptr) formal_c18352)+5) ) != 0)) { SOURCE(5420, 100) { word var_c17616; var_c17616 = (* (( (ptr) (* (( (ptr) formal_c18352)+5) ))+31) ); if ((var_c17616 == 0) || (var_c17616 == (* (( (ptr) formal_c18352)+4) ))) { SOURCE(5463, 57) { word pd52; pd52 = (* (( (ptr) (* (( (ptr) gf_c18320)+52)/* var_c17264 */ ))+34) ); (void) ( *( (fPt) ((* (ptr) pd52 ))))((* (( (ptr) formal_c18352)+5) ), (* (( (ptr) formal_c18352)+4) ), pd52); }; } else { SOURCE(5533, 5) (void) XR_RaiseUnnamedError(); }; }; SOURCE(5540, 56) if (((* (( (ptr) (* (( (ptr) formal_c18352)+5) ))+10) ) == 3)) { SOURCE(5572, 24) (* (( (ptr) (* (( (ptr) formal_c18352)+5) ))+10) ) = 0; }; }; SOURCE(5601, 17) (* (ptr) xsd_v5432 ) = (* (( (ptr) formal_c18352)+5) ); SOURCE(5620, 30) { word pd53; pd53 = (* (( (ptr) (* (( (ptr) gf_c18320)+53)/* var_c17328 */ ))+45) ); (void) ( *( (fPt) ((* (ptr) pd53 ))))((* ((( (ptr) formal_c18352)+4)) ), pd53); }; SOURCE(5652, 95) if (((* (( (ptr) (* (( (ptr) formal_c18352)+4) ))+38) ) == 0)) { SOURCE(5687, 60) if ((0 == (* (( (ptr) formal_c18352)+6) ))) { SOURCE(5704, 43) { word pd54; pd54 = (* (( (ptr) (* (( (ptr) gf_c18320)+52)/* var_c17264 */ ))+16) ); (void) ( *( (fPt) ((* (ptr) pd54 ))))((* ((( (ptr) formal_c18352)+4)) ), pd54); }; }; }; } static void PreferredSizeLR_P960(formal_c0112, widget_v8668, mode_v8696, proposed_v8724, maySkip_v8752) word formal_c0112; word widget_v8668; word mode_v8696; W5 proposed_v8724; word maySkip_v8752; { register ptr gf_c18384 = (ptr) &globalframe; W5 preferred_v8796; word xsd_v5504; /* PreferredSizeLR: */ SOURCE(5876, 1128) SOURCE(5876, 1128) preferred_v8796.f0 = 2147483648; preferred_v8796.f1 = 2147483648; preferred_v8796.f2 = 2147483648; preferred_v8796.f3 = 2147483648; preferred_v8796.f4 = 2147483648; SOURCE(5919, 38) { word idx55; word limit56; xsd_v5504 = XR_Narrow((* ((( (ptr) widget_v8668)+49)+( idx55 = (* (( (ptr) (* (( (ptr) gf_c18384)+8)/* xScrollerClass_v2664 */ ))+4) ), limit56 = (* (( (ptr) widget_v8668)+48) ), BCK(idx55, limit56) )) ), (* (( (ptr) gf_c18384)+11) )); }; SOURCE(5959, 157) (* (W2Pt) &preferred_v8796 ) = (* (W2Pt) (( (ptr) widget_v8668)+5) ); preferred_v8796.f2 = (* (( (ptr) widget_v8668)+7) ); preferred_v8796.f3 = (* (( (ptr) widget_v8668)+8) ); preferred_v8796.f4 = (* (( (ptr) widget_v8668)+9) ); SOURCE(6119, 643) if (((* (ptr) xsd_v5504 ) != 0)) { SOURCE(6143, 62) if (( (int)preferred_v8796.f2 > (int)0) || (0 == (* (( (ptr) xsd_v5504)+1) ))) { SOURCE(6188, 17) maySkip_v8752 = (maySkip_v8752 & 4294967291) | (((1)) << 2); }; SOURCE(6207, 63) if (( (int)preferred_v8796.f3 > (int)0) || (0 == (* (( (ptr) xsd_v5504)+2) ))) { SOURCE(6253, 17) maySkip_v8752 = (maySkip_v8752 & 4294967293) | (((1)) << 1); }; SOURCE(6272, 490) if ( ! (maySkip_v8752 & 04) || ! (maySkip_v8752 & 02)) { SOURCE(6307, 457) { W5 proposed_v5548; SOURCE(6309, 33) proposed_v5548 = preferred_v8796; SOURCE(6345, 24) proposed_v5548.f4 = 0; SOURCE(6371, 30) maySkip_v8752 = (maySkip_v8752 & 4294967287) | (((1)) << 3); maySkip_v8752 = (maySkip_v8752 & 4294967279) | (((1)) << 4); SOURCE(6403, 73) { word pd57; pd57 = (* (( (ptr) (* (( (ptr) gf_c18384)+52)/* var_c17264 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd57 ))))((word) &proposed_v5548, (* (ptr) xsd_v5504 ), mode_v8696, proposed_v5548, maySkip_v8752, pd57) ; }; SOURCE(6478, 55) if (( (int)proposed_v5548.f4 < (int)0)) { SOURCE(6509, 24) proposed_v5548.f4 = 0; }; SOURCE(6535, 111) if ( ( (0 != (* (( (ptr) xsd_v5504)+1) )) ? ( (int)proposed_v5548.f2 > (int)0) : 0 ) ) { SOURCE(6580, 66) preferred_v8796.f2 = (proposed_v5548.f2 + IOP2( * , (int)2, (int)proposed_v5548.f4)); }; SOURCE(6648, 114) if ( ( (0 != (* (( (ptr) xsd_v5504)+2) )) ? ( (int)proposed_v5548.f3 > (int)0) : 0 ) ) { SOURCE(6694, 68) preferred_v8796.f3 = (proposed_v5548.f3 + IOP2( * , (int)2, (int)proposed_v5548.f4)); }; }; }; }; SOURCE(6770, 53) preferred_v8796.f4 = (* (( (ptr) widget_v8668)+9) ); SOURCE(6825, 57) if (( (int)preferred_v8796.f4 < (int)0)) { SOURCE(6857, 25) preferred_v8796.f4 = 0; }; SOURCE(6884, 58) if (( (int)preferred_v8796.f2 <= (int)0)) { SOURCE(6916, 26) preferred_v8796.f2 = 300; }; SOURCE(6944, 60) if (( (int)preferred_v8796.f3 <= (int)0)) { SOURCE(6977, 27) preferred_v8796.f3 = 200; }; /* removed tail goto */ (* (W5Pt) formal_c0112 ) = preferred_v8796; return; } /* file: XTkXScrollerImpl, module: XTkXScrollerImpl, compiled at: June 12, 1992 1:17:10 pm PDT */ extern void XR_install_XTkXScrollerImpl() { NoName_Q1668(); } extern void XR_run_XTkXScrollerImpl() { XR_Start(&globalframe); }