/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */ /* time: December 16, 1992 11:03:05 am PST */ /* C2C version: October 7, 1992 (native) */ /* ref-counting: off */ /* file: XTkBitmapScrollerImpl, module: XTkBitmapScrollerImpl */ /* switches: bcfhklnouw */ #include #include static char versionStamp[] = "@(#)mob_version [1662744278,476171680] XTkBitmapScrollerImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {W8 f; word r;} W9; typedef struct {word f0, f1;} W2; typedef W9 *W9Pt; typedef struct {word f0, f1, f2, f3;} W4; typedef W4 *W4Pt; typedef W2 *W2Pt; typedef struct {W8 f; W2 r;} W10; #define SOURCE(p, l) /* source p, l */ #define MAX(cast, x, y) ( ( cast x) > ( cast y) ? (x) : (y) ) #define INEG(x) ( (word) ( - ((int) (word) (x)) ) ) #define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) ) #define FMAX(x, y, tx, ty) ( (tx=((float) x)) >= (ty=((float) y)) ? tx : ty ) static float fc67 = 0.0; static void NoName_Q1212(); static void XTkBitmapScrollerImpl_P0(); static word GetData_P60(); static word CreateBitmapScroller_P120(); static void PostRealize_P180(); static void BiScrollerProc_P240(); static void SetBitmap_P300(); static void GetBitmap_P360(); static void CreateAndSetBitmap_P420(); static word CreateContext_P480(); static void ShowScrollbars_P540(); static void ScrollTo_P600(); static void action_P1152(); static void GetScrollPos_P660(); static void Wait_P720(); static word GetImplData_P780(); static word GetImplWidget_P840(); static void GetVisibleBox_P900(); static struct {unsigned f; char r[4];} string1 = {65540, "\242\000\000"}; static struct {unsigned f; char r[16];} string2 = {851984, "\257\300\143\033\166\326\300\034\141\315\240\100\200\000\000"}; static struct {unsigned f; char r[4];} string3 = {196611, "\004L\003"}; static struct {unsigned f; char r[16];} string4 = {851984, "\257\300\033\115\307\000\300\214\060\055\310\100\244\000\000"}; static struct {unsigned f; char r[40];} string5 = {2555943, "\011\000\004\106\000\040\006\011\020\004\101\201\100\174\001\100\200\001\100\204\001\100\210\001\100\220\001\100\264\001\100\270\001\100\274\001\100\304\001"}; static struct {unsigned f; char r[16];} string6 = {851984, "\257\300\143\033\166\326\300\034\141\315\240\100\164\000\000"}; static struct {unsigned f; char r[4];} string7 = {131074, "\003\010\000"}; static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\246\205\220\035\300\344\000\142\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\243\162\130\311\300\344\000\142\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\256\061\211\265\300\052\170\134\271\100\150\000\000"}; static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\245\223\103\375\300\127\103\204\036\100\150\000\000"}; static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\114\360\325\157\300\264\322\230\211\100\150\000\000"}; static struct {unsigned f; char r[16];} string13 = {851984, "\257\300\351\276\264\273\300\115\104\320\264\100\164\000\000"}; static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\033\115\307\000\300\214\060\055\310\100\150\000\000"}; static struct {unsigned f; char r[16];} string15 = {851984, "\257\300\241\353\232\337\300\356\000\215\116\100\150\000\000"}; static struct { word f0[13]; word f13; word f14; 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[2]; word f46; word f47; word f48; word f49; word f50; word f51; word f52[2]; word f54; word f55; word f56; word f57; word f58[8]; } globalframe = { {0}, (word) GetVisibleBox_P900, 0, (word) GetImplWidget_P840, 0, (word) GetImplData_P780, 0, (word) Wait_P720, 0, (word) GetScrollPos_P660, 0, (word) ScrollTo_P600, 0, (word) ShowScrollbars_P540, 0, (word) CreateContext_P480, 0, (word) CreateAndSetBitmap_P420, 0, (word) GetBitmap_P360, 0, (word) SetBitmap_P300, 0, (word) BiScrollerProc_P240, 0, (word) PostRealize_P180, 0, (word) CreateBitmapScroller_P120, 0, (word) GetData_P60, 0, (word) XTkBitmapScrollerImpl_P0, {0}, (word) 2147483648, (word) 2147483648, (word) 2147483648, (word) 2147483648, (word) 2147483648, (word) 3, {0}, (word) 2147483648, (word) 2147483648, (word) 2147483647, (word) 2147483647, {0} }; static void NoName_Q1212() { register ptr gf_c0126 = (ptr) &globalframe; word var_c17652; (* (( (ptr) gf_c0126)+9) ) = (word) XR_GetTypeIndexS((word) (&string1)); (* (( (ptr) gf_c0126)+11) ) = (word) XR_GetTypeIndex((word) &string2, 0, (word) &string3); (* (( (ptr) gf_c0126)+12) ) = (word) XR_GetTypeIndex((word) &string4, 0, (word) &string5); (void) XR_DeclareGlobalFrame((word) "XTkBitmapScrollerImpl", &globalframe, (word) XR_GetTypeIndex((word) &string6, 0, (word) &string7) , (word) (( (bPt) gf_c0126)+172)/* var_c16820 */ ); var_c17652 = (word) XR_ImportInterface((word) "Real", (word) XR_GetTypeIndexS((word) (&string8)), 11); (* (( (ptr) gf_c0126)+62)/* var_c17268 */ ) = var_c17652; (void) XR_ImportProcS(var_c17652, 67371521); var_c17652 = (word) XR_ImportInterface((word) "SF", (word) XR_GetTypeIndexS((word) (&string9)), 19); (* (( (ptr) gf_c0126)+61)/* var_c17204 */ ) = var_c17652; (void) XR_ImportProcS(var_c17652, 135267842); (void) XR_ImportProcS(var_c17652, 135270145); var_c17652 = (word) XR_ImportInterface((word) "XlBitmap", (word) XR_GetTypeIndexS((word) (&string10)), 14); (* (( (ptr) gf_c0126)+63)/* var_c17332 */ ) = var_c17652; (void) XR_ImportProcS(var_c17652, 68158467); (void) XR_ImportProcS(var_c17652, 268699393); var_c17652 = (word) XR_ImportInterface((word) "XTkBiScrollerFrame", (word) XR_GetTypeIndexS((word) (&string11)), 10); (* (( (ptr) gf_c0126)+60)/* var_c17140 */ ) = var_c17652; (void) XR_ImportProcS(var_c17652, 1574403); (void) XR_ImportProcS(var_c17652, 1050884); (void) XR_ImportProcS(var_c17652, 70779141); var_c17652 = (word) XR_ImportInterface((word) "XTkBitmapWidgets", (word) XR_GetTypeIndexS((word) (&string12)), 8); (* (( (ptr) gf_c0126)+59)/* var_c17076 */ ) = var_c17652; (void) XR_ImportProcS(var_c17652, 67372801); (void) XR_ImportProcS(var_c17652, 525314); (void) XR_ImportProcS(var_c17652, 2621958); (void) XR_ImportProcS(var_c17652, 67634434); (void) XR_ImportProcS(var_c17652, 69992451); var_c17652 = (word) XR_ImportInterface((word) "Xl", (word) XR_GetTypeIndexS((word) (&string13)), 218); (* (( (ptr) gf_c0126)+64)/* var_c17492 */ ) = var_c17652; (void) XR_ImportProcS(var_c17652, 539906); var_c17652 = (word) XR_ImportInterface((word) "XTk", (word) XR_GetTypeIndexS((word) (&string14)), 50); (* (( (ptr) gf_c0126)+58)/* var_c17012 */ ) = var_c17652; (void) XR_ImportProcS(var_c17652, 1050628); (void) XR_ImportProcS(var_c17652, 788227); (void) XR_ImportProcS(var_c17652, 67634690); var_c17652 = (word) XR_ExportInterface((word) "XTkBitmapScroller", (word) XR_GetTypeIndexS((word) (&string15)), 11); (* (( (ptr) gf_c0126)+65)/* var_c17684 */ ) = var_c17652; (void) XR_ExportProcS(var_c17652, (word) (( (bPt) gf_c0126)+156)/* var_c16756 */ , 70778885); (void) XR_ExportProcS(var_c17652, (word) (( (bPt) gf_c0126)+132)/* var_c16660 */ , 1310980); (void) XR_ExportProcS(var_c17652, (word) (( (bPt) gf_c0126)+124)/* var_c16628 */ , 134480385); (void) XR_ExportProcS(var_c17652, (word) (( (bPt) gf_c0126)+116)/* var_c16596 */ , 1835781); (void) XR_ExportProcS(var_c17652, (word) (( (bPt) gf_c0126)+108)/* var_c16564 */ , 67372033); (void) XR_ExportProcS(var_c17652, (word) (( (bPt) gf_c0126)+92)/* var_c16500 */ , 787714); (void) XR_ExportProcS(var_c17652, (word) (( (bPt) gf_c0126)+84)/* var_c16468 */ , 134481409); (void) XR_ExportProcS(var_c17652, (word) (( (bPt) gf_c0126)+52)/* var_c16340 */ , 268699393); (void) XR_ExportProcS(var_c17652, (word) (( (bPt) gf_c0126)+76)/* var_c16436 */ , 526338); (void) XR_ExportProcS(var_c17652, (word) (( (bPt) gf_c0126)+68)/* var_c16404 */ , 67373313); (void) XR_ExportProcS(var_c17652, (word) (( (bPt) gf_c0126)+60)/* var_c16372 */ , 67373569); } static void XTkBitmapScrollerImpl_P0(formal_c032, formal_c031) word formal_c032; word formal_c031; { register ptr gf_c17716 = (ptr) &globalframe; /* XTkBitmapScrollerImpl: */ SOURCE(107, 5929) /* moved to installation proc */ /* moved to installation proc */ /* moved to installation proc */ /* moved to installation proc */ /* moved to installation proc */ /* moved to installation proc */ /* moved to installation proc */ /* moved to installation proc */ /* moved to installation proc */ /* moved to installation proc */ SOURCE(643, 25) (* (( (ptr) gf_c17716)+8)/* myKey_v2888 */ ) = XR_NewObject(4, (* (( (ptr) gf_c17716)+9) )); } static word GetData_P60(scroller_v3656) word scroller_v3656; { register ptr gf_c17748 = (ptr) &globalframe; word var_c3700; /* GetData: */ SOURCE(671, 124) SOURCE(744, 51) { word pd16; pd16 = (* (( (ptr) (* (( (ptr) gf_c17748)+58)/* var_c17012 */ ))+10) ); return(XR_Narrow((word) ( *( (fPt) ((* (ptr) pd16 ))))(scroller_v3656, (* (( (ptr) gf_c17748)+8)/* myKey_v2888 */ ), pd16) , (* (( (ptr) gf_c17748)+11) ))); }; } static word CreateBitmapScroller_P120(widgetSpec_v3772, scrolledCallBack_v3800, scrollTQ_v3828, scrollData_v3856, insideSize_v3884) W9 widgetSpec_v3772; word scrolledCallBack_v3800; word scrollTQ_v3828; word scrollData_v3856; W2 insideSize_v3884; { register ptr gf_c17780 = (ptr) &globalframe; word var_c3940; word data_v5252; word bitmap_v5280; word biScroller_v5308; /* CreateBitmapScroller: */ SOURCE(801, 878) SOURCE(989, 135) data_v5252 = XR_NewObject(48, (* (( (ptr) gf_c17780)+11) )); (* (( (ptr) data_v5252)+2) ) = 1; (* (( (ptr) data_v5252)+3) ) = 1; (* (( (ptr) data_v5252)+6) ) = 1; (* (( (ptr) data_v5252)+9) ) = XR_CheckProc(scrolledCallBack_v3800); (* (( (ptr) data_v5252)+10) ) = scrollTQ_v3828; (* (( (ptr) data_v5252)+11) ) = scrollData_v3856; SOURCE(1126, 72) { word pd17; pd17 = (* (( (ptr) (* (( (ptr) gf_c17780)+59)/* var_c17076 */ ))+4) ); bitmap_v5280 = (word) ( *( (fPt) ((* (ptr) pd17 ))))((* (W9Pt) (( (ptr) gf_c17780)+45)/* var_c16884 */ ), 0, 0, pd17); }; (* (( (ptr) data_v5252)+1) ) = bitmap_v5280; SOURCE(1200, 131) { word pd18; pd18 = (* (( (ptr) (* (( (ptr) gf_c17780)+60)/* var_c17140 */ ))+5) ); biScroller_v5308 = (word) ( *( (fPt) ((* (ptr) pd18 ))))(widgetSpec_v3772, bitmap_v5280, insideSize_v3884, 1, 1, pd18); }; SOURCE(1333, 42) { word pd19; pd19 = (* (( (ptr) (* (( (ptr) gf_c17780)+58)/* var_c17012 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd19 ))))(biScroller_v5308, (* (( (ptr) gf_c17780)+8)/* myKey_v2888 */ ), data_v5252, pd19) ; }; SOURCE(1377, 80) { word pd20; pd20 = (* (( (ptr) (* (( (ptr) gf_c17780)+58)/* var_c17012 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd20 ))))(bitmap_v5280, (* (ptr) (* (( (ptr) (* (( (ptr) gf_c17780)+58)/* var_c17012 */ ))+17) ) ), (word) (( (bPt) gf_c17780)+148)/* var_c16724 */ , biScroller_v5308, pd20); }; SOURCE(1459, 75) { word pd21; pd21 = (* (( (ptr) (* (( (ptr) gf_c17780)+58)/* var_c17012 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd21 ))))(bitmap_v5280, (* (ptr) (* (( (ptr) (* (( (ptr) gf_c17780)+58)/* var_c17012 */ ))+19) ) ), (word) (( (bPt) gf_c17780)+148)/* var_c16724 */ , biScroller_v5308, pd21); }; SOURCE(1536, 121) { word pd22; pd22 = (* (( (ptr) (* (( (ptr) gf_c17780)+60)/* var_c17140 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd22 ))))(biScroller_v5308, (word) (( (bPt) gf_c17780)+140)/* var_c16692 */ , data_v5252, scrollTQ_v3828, pd22) ; }; SOURCE(1659, 20) return(biScroller_v5308); } static void PostRealize_P180(widget_v8968, registerData_v8996, callData_v9024, event_v9052) word widget_v8968; word registerData_v8996; word callData_v9024; word event_v9052; { register ptr gf_c17812 = (ptr) &globalframe; word scroller_v5364; /* PostRealize: */ SOURCE(1683, 126) SOURCE(1721, 43) scroller_v5364 = XR_Narrow(registerData_v8996, (* (( (ptr) gf_c17812)+12) )); SOURCE(1766, 43) { W2 var_c17172; (void) GetScrollPos_P660((word) &var_c17172, scroller_v5364); (void) ScrollTo_P600(scroller_v5364, var_c17172); }; } static void BiScrollerProc_P240(biScrollerFrame_v9112, hAction_v9140, vAction_v9168, x_v9196, y_v9224, event_v9252, clientData_v9280) word biScrollerFrame_v9112; word hAction_v9140; word vAction_v9168; word x_v9196; word y_v9224; word event_v9252; word clientData_v9280; { register ptr gf_c17844 = (ptr) &globalframe; word data_v5408; W4 bmBox_v5436; W2 bmSize_v5464; W2 wPos_v5492; word windowH_v5520; word windowW_v5548; /* BiScrollerProc: */ SOURCE(1813, 1017) SOURCE(1863, 48) data_v5408 = XR_Narrow(clientData_v9280, (* (( (ptr) gf_c17844)+11) )); SOURCE(1913, 35) bmBox_v5436 = (* (W4Pt) (( (ptr) data_v5408)+2) ); SOURCE(1950, 31) { word pd23; pd23 = (* (( (ptr) (* (( (ptr) gf_c17844)+61)/* var_c17204 */ ))+19) ); (void) ( *( (fPt) ((* (ptr) pd23 ))))((word) &bmSize_v5464, bmBox_v5436, pd23); }; SOURCE(1983, 31) wPos_v5492 = (* (W2Pt) (( (ptr) data_v5408)+7) ); SOURCE(2016, 45) windowH_v5520 = (* (( (ptr) (* (( (ptr) data_v5408)+1) ))+42) ); SOURCE(2063, 44) windowW_v5548 = (* (( (ptr) (* (( (ptr) data_v5408)+1) ))+41) ); SOURCE(2109, 227) { word var_c17236; var_c17236 = hAction_v9140; switch (var_c17236) { case 2: SOURCE(2141, 37) { word pd24; word x25; float tf26; pd24 = (* (( (ptr) (* (( (ptr) gf_c17844)+62)/* var_c17268 */ ))+6) ); wPos_v5492.f0 = (word) ( *( (fPt) ((* (ptr) pd24 ))))(( tf26 = (float)(int)wPos_v5492.f0 - (( x25 = x_v9196, *(float*)&x25 ) * (float)(int)windowW_v5548), *(word*)&tf26 ), pd24); }; break; case 1: SOURCE(2194, 37) { word pd27; word x28; float tf29; pd27 = (* (( (ptr) (* (( (ptr) gf_c17844)+62)/* var_c17268 */ ))+6) ); wPos_v5492.f0 = (word) ( *( (fPt) ((* (ptr) pd27 ))))(( tf29 = (float)(int)wPos_v5492.f0 + (( x28 = x_v9196, *(float*)&x28 ) * (float)(int)windowW_v5548), *(word*)&tf29 ), pd27); }; break; case 3: SOURCE(2243, 93) { word thumbBaseX_v5604; SOURCE(2245, 42) { word x30; thumbBaseX_v5604 = (x30 = (bmSize_v5464.f1 - windowW_v5548), MAX((int)(word), x30, 0)); }; SOURCE(2289, 47) { word pd31; word x32; float tf33; pd31 = (* (( (ptr) (* (( (ptr) gf_c17844)+62)/* var_c17268 */ ))+6) ); wPos_v5492.f0 = INEG((word) ( *( (fPt) ((* (ptr) pd31 ))))(( tf33 = (float)(int)bmBox_v5436.f1 + (( /*1*/ x32 = x_v9196, *(float*)&x32 /*1*/ ) * (float)(int)thumbBaseX_v5604), *(word*)&tf33 ), pd31)); }; }; break; case 4: break; }; }; SOURCE(2371, 227) { word var_c17300; var_c17300 = vAction_v9168; switch (var_c17300) { case 2: SOURCE(2403, 37) { word pd34; word x35; float tf36; pd34 = (* (( (ptr) (* (( (ptr) gf_c17844)+62)/* var_c17268 */ ))+6) ); wPos_v5492.f1 = (word) ( *( (fPt) ((* (ptr) pd34 ))))(( tf36 = (float)(int)wPos_v5492.f1 - (( x35 = y_v9224, *(float*)&x35 ) * (float)(int)windowH_v5520), *(word*)&tf36 ), pd34); }; break; case 1: SOURCE(2456, 37) { word pd37; word x38; float tf39; pd37 = (* (( (ptr) (* (( (ptr) gf_c17844)+62)/* var_c17268 */ ))+6) ); wPos_v5492.f1 = (word) ( *( (fPt) ((* (ptr) pd37 ))))(( tf39 = (float)(int)wPos_v5492.f1 + (( x38 = y_v9224, *(float*)&x38 ) * (float)(int)windowH_v5520), *(word*)&tf39 ), pd37); }; break; case 3: SOURCE(2505, 93) { word thumbBaseY_v5648; SOURCE(2507, 42) { word x40; thumbBaseY_v5648 = (x40 = (bmSize_v5464.f0 - windowH_v5520), MAX((int)(word), x40, 0)); }; SOURCE(2551, 47) { word pd41; word x42; float tf43; pd41 = (* (( (ptr) (* (( (ptr) gf_c17844)+62)/* var_c17268 */ ))+6) ); wPos_v5492.f1 = INEG((word) ( *( (fPt) ((* (ptr) pd41 ))))(( tf43 = (float)(int)bmBox_v5436.f0 + (( /*1*/ x42 = y_v9224, *(float*)&x42 /*1*/ ) * (float)(int)thumbBaseY_v5648), *(word*)&tf43 ), pd41)); }; }; break; case 4: break; }; }; SOURCE(2633, 45) { word x44; word x45; wPos_v5492.f0 = (x44 = wPos_v5492.f0, x45 = INEG(bmBox_v5436.f1), MIN((int)(word), x44, x45)); }; SOURCE(2680, 34) { word x46; word x47; wPos_v5492.f0 = (x46 = wPos_v5492.f0, x47 = INEG(bmBox_v5436.f3), MAX((int)(word), x46, x47)); }; SOURCE(2716, 45) { word x48; word x49; wPos_v5492.f1 = (x48 = wPos_v5492.f1, x49 = INEG(bmBox_v5436.f0), MIN((int)(word), x48, x49)); }; SOURCE(2763, 34) { word x50; word x51; wPos_v5492.f1 = (x50 = wPos_v5492.f1, x51 = INEG(bmBox_v5436.f2), MAX((int)(word), x50, x51)); }; SOURCE(2799, 31) (void) ScrollTo_P600(biScrollerFrame_v9112, wPos_v5492); } static void SetBitmap_P300(scroller_v4000, bitmap_v4028, surfaceUnitsPerPixel_v4056, pos_v4084) word scroller_v4000; word bitmap_v4028; word surfaceUnitsPerPixel_v4056; W2 pos_v4084; { register ptr gf_c17876 = (ptr) &globalframe; word data_v5692; /* SetBitmap: */ SOURCE(2836, 333) SOURCE(2957, 72) { word pd52; pd52 = (* (( (ptr) (* (( (ptr) gf_c17876)+58)/* var_c17012 */ ))+10) ); data_v5692 = XR_Narrow((word) ( *( (fPt) ((* (ptr) pd52 ))))(scroller_v4000, (* (( (ptr) gf_c17876)+8)/* myKey_v2888 */ ), pd52) , (* (( (ptr) gf_c17876)+11) )); }; SOURCE(3031, 16) (* (ptr) data_v5692 ) = bitmap_v4028; SOURCE(3049, 45) { word pd53; pd53 = (* (( (ptr) (* (( (ptr) gf_c17876)+63)/* var_c17332 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd53 ))))((word) (( (bPt) data_v5692)+8), bitmap_v4028, pd53); }; SOURCE(3096, 48) (* (( (ptr) data_v5692)+6) ) = surfaceUnitsPerPixel_v4056; SOURCE(3146, 23) (void) ScrollTo_P600(scroller_v4000, pos_v4084); } static void GetBitmap_P360(formal_c079, scroller_v4144) word formal_c079; word scroller_v4144; { word bitmap_v4188; word surfaceUnitsPerPixel_v4216; word data_v5748; /* GetBitmap: */ SOURCE(3175, 226) SOURCE(3175, 226) bitmap_v4188 = 0; SOURCE(3286, 47) data_v5748 = (word) GetData_P60(scroller_v4144); SOURCE(3335, 16) bitmap_v4188 = (* (ptr) data_v5748 ); SOURCE(3353, 48) surfaceUnitsPerPixel_v4216 = (* (( (ptr) data_v5748)+6) ); /* removed tail goto */ (* (ptr) formal_c079 ) = bitmap_v4188; (* (( (ptr) formal_c079)+1) ) = surfaceUnitsPerPixel_v4216; return; } static void CreateAndSetBitmap_P420(scroller_v4276, size_v4304, bpp_v4332, surfaceUnitsPerPixel_v4360, pos_v4388) word scroller_v4276; W2 size_v4304; word bpp_v4332; word surfaceUnitsPerPixel_v4360; W2 pos_v4388; { register ptr gf_c17908 = (ptr) &globalframe; word bm_v5804; /* CreateAndSetBitmap: */ SOURCE(3407, 243) SOURCE(3549, 48) { word pd54; pd54 = (* (( (ptr) (* (( (ptr) gf_c17908)+63)/* var_c17332 */ ))+8) ); bm_v5804 = (word) ( *( (fPt) ((* (ptr) pd54 ))))(size_v4304, bpp_v4332, 1, pd54); }; SOURCE(3599, 51) (void) SetBitmap_P300(scroller_v4276, bm_v5804, surfaceUnitsPerPixel_v4360, pos_v4388); } static word CreateContext_P480(scroller_v4448) word scroller_v4448; { register ptr gf_c17940 = (ptr) &globalframe; word context_v4492; word data_v5848; /* CreateContext: */ SOURCE(3654, 216) SOURCE(3654, 216) context_v4492 = 0; SOURCE(3742, 47) data_v5848 = (word) GetData_P60(scroller_v4448); SOURCE(3791, 79) { word pd55; pd55 = (* (( (ptr) (* (( (ptr) gf_c17940)+59)/* var_c17076 */ ))+9) ); return((word) ( *( (fPt) ((* (ptr) pd55 ))))((* (( (ptr) data_v5848)+1) ), (* (( (ptr) data_v5848)+6) ), pd55)); }; } static void ShowScrollbars_P540(biScroller_v4552, data_v4580, pos_v4608) word biScroller_v4552; word data_v4580; W2 pos_v4608; { register ptr gf_c17972 = (ptr) &globalframe; W4 state2_v5904; W4 bmBox_v5932; W2 bmSz_v5960; word winW_v5988; word winH_v6016; word pX_v6044; word pY_v6072; /* ShowScrollbars: */ SOURCE(3876, 890) SOURCE(4005, 35) bmBox_v5932 = (* (W4Pt) (( (ptr) data_v4580)+2) ); SOURCE(4042, 45) { W2 var_c17396; { word pd56; pd56 = (* (( (ptr) (* (( (ptr) gf_c17972)+61)/* var_c17204 */ ))+19) ); (void) ( *( (fPt) ((* (ptr) pd56 ))))((word) &var_c17396, bmBox_v5932, pd56); }; { W2 var_c098; { W2 var_c17428; var_c17428.f0 = 1; var_c17428.f1 = 1; { word pd57; pd57 = (* (( (ptr) (* (( (ptr) gf_c17972)+61)/* var_c17204 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd57 ))))((word) &var_c098, var_c17396, var_c17428, pd57); }; }; bmSz_v5960 = var_c098; }; }; SOURCE(4089, 49) { word x58; winW_v5988 = (x58 = (* (( (ptr) (* (( (ptr) data_v4580)+1) ))+41) ), MAX((int)(word), x58, 1)); }; SOURCE(4140, 50) { word x59; winH_v6016 = (x59 = (* (( (ptr) (* (( (ptr) data_v4580)+1) ))+42) ), MAX((int)(word), x59, 1)); }; SOURCE(4192, 33) { float tf60; pX_v6044 = ( tf60 = (float)(int)INEG((pos_v4608.f0 + bmBox_v5932.f1)), *(word*)&tf60 ); }; SOURCE(4227, 33) { float tf61; pY_v6072 = ( tf61 = (float)(int)INEG((pos_v4608.f1 + bmBox_v5932.f0)), *(word*)&tf61 ); }; SOURCE(4262, 208) if (( (int)bmSz_v5960.f1 <= (int)winW_v5988)) { SOURCE(4287, 26) { word x62; *(float*)&state2_v5904.f0 = ( x62 = pX_v6044, *(float*)&x62 ) / (float)(int)bmSz_v5960.f1; }; SOURCE(4315, 59) { word x63; word x64; float tf65; float tf66; word x68; *(float*)&state2_v5904.f1 = ( x63 = state2_v5904.f0, *(float*)&x63 ) + (FMAX(((float)(int)bmSz_v5960.f1 - ( x64 = pX_v6044, *(float*)&x64 )), ( x68 = (* (ptr) &fc67 ), *(float*)&x68 ), tf65, tf66) / (float)(int)bmSz_v5960.f1); }; } else { SOURCE(4383, 89) { word w_v6116; SOURCE(4385, 14) { float tf69; w_v6116 = ( tf69 = (float)(int)winW_v5988, *(word*)&tf69 ); }; SOURCE(4401, 26) { word x70; *(float*)&state2_v5904.f0 = ( x70 = pX_v6044, *(float*)&x70 ) / (float)(int)bmSz_v5960.f1; }; SOURCE(4429, 41) { word x71; word x72; *(float*)&state2_v5904.f1 = ( x71 = state2_v5904.f0, *(float*)&x71 ) + (( x72 = w_v6116, *(float*)&x72 ) / (float)(int)bmSz_v5960.f1); }; }; }; SOURCE(4475, 207) if (( (int)bmSz_v5960.f0 <= (int)winH_v6016)) { SOURCE(4499, 26) { word x73; *(float*)&state2_v5904.f2 = ( x73 = pY_v6072, *(float*)&x73 ) / (float)(int)bmSz_v5960.f0; }; SOURCE(4527, 59) { word x74; word x75; float tf76; float tf77; word x78; *(float*)&state2_v5904.f3 = ( x74 = state2_v5904.f2, *(float*)&x74 ) + (FMAX(((float)(int)bmSz_v5960.f0 - ( x75 = pY_v6072, *(float*)&x75 )), ( x78 = (* (ptr) &fc67 ), *(float*)&x78 ), tf76, tf77) / (float)(int)bmSz_v5960.f0); }; } else { SOURCE(4595, 89) { word h_v6160; SOURCE(4597, 14) { float tf79; h_v6160 = ( tf79 = (float)(int)winH_v6016, *(word*)&tf79 ); }; SOURCE(4613, 26) { word x80; *(float*)&state2_v5904.f2 = ( x80 = pY_v6072, *(float*)&x80 ) / (float)(int)bmSz_v5960.f0; }; SOURCE(4641, 41) { word x81; word x82; *(float*)&state2_v5904.f3 = ( x81 = state2_v5904.f2, *(float*)&x81 ) + (( x82 = h_v6160, *(float*)&x82 ) / (float)(int)bmSz_v5960.f0); }; }; }; SOURCE(4687, 79) { word pd83; pd83 = (* (( (ptr) (* (( (ptr) gf_c17972)+60)/* var_c17140 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd83 ))))(biScroller_v4552, state2_v5904, 0, pd83); }; } static void ScrollTo_P600(formal_c0143, formal_c0144) word formal_c0143; W2 formal_c0144; { W10 var_c18004; /* declaration of scroller_v4680 skipped */ /* declaration of pos_v4708 skipped */ register ptr gf_c18036 = (ptr) &globalframe; /* declaration of var_c17460 skipped */ /* declaration of data_v6204 skipped */ (* (( (ptr) &var_c18004)+4)/* scroller_v4680 */ ) = formal_c0143; (* (W2Pt) (( (ptr) &var_c18004)+5)/* pos_v4708 */ ) = formal_c0144; /* ScrollTo: */ SOURCE(4772, 440) { word tmpAddr84; tmpAddr84 = (word) (( (ptr) &var_c18004)+7)/* var_c17460 */ ; (* (ptr) tmpAddr84 ) = ( ((word) (fPt) action_P1152) ); (* (( (ptr) tmpAddr84) + 1) ) = 1; }; SOURCE(4836, 47) (* (( (ptr) &var_c18004)+9)/* data_v6204 */ ) = (word) GetData_P60((* ((( (ptr) &var_c18004)+4)/* scroller_v4680 */ ) )) ; SOURCE(5132, 80) if (((* (( (ptr) (* (( (ptr) &var_c18004)+9)/* data_v6204 */ ))+10) ) == 0)) { SOURCE(5159, 14) (void) action_P1152((word) ((( (bPt) &var_c18004)+28)/* var_c17460 */ )); } else { SOURCE(5173, 39) { word pd85; pd85 = (* (( (ptr) (* (( (ptr) gf_c18036)+64)/* var_c17492 */ ))+65) ); (void) ( *( (fPt) ((* (ptr) pd85 ))))((* (( (ptr) (* (( (ptr) &var_c18004)+9)/* data_v6204 */ ))+10) ), (word) (( (bPt) &var_c18004)+28) /* var_c17460 */ , pd85); }; }; } static void action_P1152(formal_c18100) word formal_c18100; { register ptr gf_c18068 = (ptr) &globalframe; formal_c18100 = (formal_c18100 - 28); /* action: */ SOURCE(4885, 242) SOURCE(4902, 20) (* (W2Pt) (( (ptr) (* (( (ptr) formal_c18100)+9) ))+7) ) = (* (W2Pt) (( (ptr) formal_c18100)+5) ); SOURCE(4924, 77) { word pd86; pd86 = (* (( (ptr) (* (( (ptr) gf_c18068)+59)/* var_c17076 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd86 ))))((* (( (ptr) (* (( (ptr) formal_c18100)+9) ))+1) ), (* (ptr) (* (( (ptr) formal_c18100)+9) ) ), (* (W4Pt) (( (ptr) gf_c18068)+54)/* var_c16948 */ ), (* (W2Pt) (( (ptr) formal_c18100)+5) ), 1, 0, pd86); }; SOURCE(5003, 87) if (((* (( (ptr) (* (( (ptr) formal_c18100)+9) ))+9) ) != 0)) { SOURCE(5037, 53) { word pd87; pd87 = (* (( (ptr) (* (( (ptr) formal_c18100)+9) ))+9) ); (void) ( *( (fPt) ((* (ptr) pd87 ))))((* (( (ptr) formal_c18100)+4) ), (* (W2Pt) (( (ptr) formal_c18100)+5) ), (* (( (ptr) (* ( ( (ptr) formal_c18100)+9) ))+11) ), pd87); }; }; SOURCE(5092, 35) (void) ShowScrollbars_P540((* (( (ptr) formal_c18100)+4) ), (* (( (ptr) formal_c18100)+9) ), (* (W2Pt) (( (ptr) formal_c18100)+5) )); } static void GetScrollPos_P660(formal_c0112, scroller_v4768) word formal_c0112; word scroller_v4768; { W2 var_c4812; /* GetScrollPos: */ SOURCE(5216, 109) SOURCE(5288, 37) { W2 var_c17556; var_c17556 = (* (W2Pt) (( (ptr) GetData_P60(scroller_v4768))+7) ); var_c4812 = var_c17556; /* removed tail goto */ }; (* (W2Pt) formal_c0112 ) = var_c4812; return; } static void Wait_P720(scroller_v4872, server_v4900) word scroller_v4872; word server_v4900; { register ptr gf_c18132 = (ptr) &globalframe; /* Wait: */ SOURCE(5329, 121) SOURCE(5396, 54) { word var_c17588; var_c17588 = (word) GetImplWidget_P840(scroller_v4872); { word pd88; pd88 = (* (( (ptr) (* (( (ptr) gf_c18132)+59)/* var_c17076 */ ))+8) ); (void) ( *( (fPt) ((* (ptr) pd88 ))))(var_c17588, server_v4900, pd88); }; }; } static word GetImplData_P780(scroller_v4960) word scroller_v4960; { register ptr gf_c18164 = (ptr) &globalframe; word var_c5004; word w_v6304; /* GetImplData: */ SOURCE(5456, 147) SOURCE(5522, 39) w_v6304 = (word) GetImplWidget_P840(scroller_v4960); SOURCE(5563, 40) { word pd89; pd89 = (* (( (ptr) (* (( (ptr) gf_c18164)+59)/* var_c17076 */ ))+11) ); return((word) ( *( (fPt) ((* (ptr) pd89 ))))(w_v6304, pd89)); }; } static word GetImplWidget_P840(scroller_v5076) word scroller_v5076; { word var_c5120; word data_v6348; /* GetImplWidget: */ SOURCE(5608, 144) SOURCE(5683, 47) data_v6348 = (word) GetData_P60(scroller_v5076); SOURCE(5732, 20) return((* (( (ptr) data_v6348)+1) )); } static void GetVisibleBox_P900(formal_c0125, scroller_v5180) word formal_c0125; word scroller_v5180; { W4 b_v5224; word data_v6404; /* GetVisibleBox: */ SOURCE(5758, 278) SOURCE(5758, 278) b_v5224.f0 = 0; b_v5224.f1 = 0; b_v5224.f2 = 0; b_v5224.f3 = 0; SOURCE(5832, 47) data_v6404 = (word) GetData_P60(scroller_v5180); SOURCE(5881, 27) b_v5224.f1 = INEG((* (( (ptr) data_v6404)+7) )); SOURCE(5910, 27) b_v5224.f0 = INEG((* (( (ptr) data_v6404)+8) )); SOURCE(5939, 47) b_v5224.f3 = (b_v5224.f1 + (* (( (ptr) (* (( (ptr) data_v6404)+1) ))+41) )); SOURCE(5988, 48) b_v5224.f2 = (b_v5224.f1 + (* (( (ptr) (* (( (ptr) data_v6404)+1) ))+42) )); /* removed tail goto */ (* (W4Pt) formal_c0125 ) = b_v5224; return; } /* file: XTkBitmapScrollerImpl, module: XTkBitmapScrollerImpl, compiled at: December 16, 1992 11:03:04 am PST */ extern void XR_install_XTkBitmapScrollerImpl() { NoName_Q1212(); } extern void XR_run_XTkBitmapScrollerImpl() { XR_Start(&globalframe); }