/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: July 13, 1993 1:30:00 pm PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: GGMouseEventImplB, module: GGMouseEventImplB */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [1347982991,3122576754] GGMouseEventImplB"; 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, f4;} W5; typedef W2 *W2Pt; typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef struct {word f0, f1, f2, f3;} W4; typedef struct {word f0, f1, f2;} W3; #define SOURCE(p, l) /* source p, l */ static float fc127 = 0.0; static float fc129 = -1.0; static float fc220 = 1.0; #define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i ) static void NoName←Q3144(); static void GGMouseEventImplB←P0(); static void SetCaretAttractorEndpoint←P60(); static void SetStrokeColorRemote←P120(); static void SetFillColorRemote←P180(); static void SendColorToColorTool←P240(); static word NoName←Q3204(); static word StartSelect←P300(); static void DuringSelect←P360(); static void EndSelect←P420(); static word SelectModeFromAtom←P480(); static word RopeFromSelectMode←P540(); static void Select←P600(); static word GravTypeFromAtom←P660(); static void SelectFromFeature←P720(); static void EndSelectAux←P780(); static word SelectAndDescribeSlicePart←P840(); static word SelectSlicePart←P900(); static void SitTheCaret←P960(); static word StartDeselect←P1020(); static void DuringDeselect←P1080(); static void DuringDeselectAux←P1140(); static word SliceDeselectAux←P1200(); static void EndDeselect←P1260(); static void EndDeselectAux←P1320(); static word StartExtendSelect←P1380(); static word StartExtendSelection←P1440(); static void DuringExtendSelection←P1500(); static void DuringExtendSelectionFeedback←P1560(); static void EndExtendSelection←P1620(); static word StartAddBezier←P1680(); static void UpdateSceneForAddBezier←P1740(); static void DuringBezierDrag←P1800(); static word ContinueBezierAdd←P1860(); static void EndBezierAdd←P1920(); static void AbortBezierAdd←P1980(); static void NoName←Q3264(); 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[4];} string3 = {65540, "\251\000\000"}; static struct {unsigned f; char r[16];} string4 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\100\310\000\000"}; static struct {unsigned f; char r[4];} string5 = {131074, "\004\003\000"}; static struct {unsigned f; char r[16];} string6 = {851984, "\257\300\311\023\117\300\300\337\236\305\170\100\164\000\000"}; static struct {unsigned f; char r[4];} string7 = {196611, "\004A6"}; static struct {unsigned f; char r[16];} string8 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\107\050\000\000"}; static struct {unsigned f; char r[4];} string10 = {131074, "\004\007\000"}; static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\106\354\000\000"}; static struct {unsigned f; char r[8];} string12 = {262148, "\004\200@\034\000\000\000"}; static struct {unsigned f; char r[20];} string13 = {1179668, "\260\006\005\146\151\162\163\164\217\005\004\162\145\163\164\214\217\261\000"}; static struct {unsigned f; char r[44];} string14 = {2752556, "\260\006\005\146\151\162\163\164\257\300\015\277\004\146\300\034\367\146\045\112\114\005\004\162\145\163\164\214\257\300\015\277\004\146\300\034\367\146\045\112\114\261\000"}; static struct {unsigned f; char r[28];} string15 = {1572888, "\006\002\000\007\000\040\016\000\003\001\000\000\000\000\014\014\000\014\014\014\014\000\010\001\000\000\000"}; static struct {unsigned f; char r[4];} string16 = {65540, "\256\000\000"}; static struct {unsigned f; char r[16];} string17 = {851984, "\257\300\247\031\224\326\300\123\162\224\023\100\164\000\000"}; static struct {unsigned f; char r[24];} string18 = {1376280, "StartSelectTrajectory\000\000"}; static struct {unsigned f; char r[20];} string19 = {1245204, "StartSelectTopLevel"}; static struct {unsigned f; char r[12];} string20 = {589836, "Selecting\000\000"}; static struct {unsigned f; char r[16];} string21 = {786448, "DuringSelect\000\000\000"}; static struct {unsigned f; char r[12];} string22 = {524300, "Gargoyle\000\000\000"}; static struct {unsigned f; char r[12];} string23 = {720908, "DuringMouse"}; static struct {unsigned f; char r[12];} string24 = {655372, "%g nothing\000"}; static struct {unsigned f; char r[8];} string25 = {262152, "None\000\000\000"}; static struct {unsigned f; char r[8];} string26 = {327688, "Joint\000\000"}; static struct {unsigned f; char r[8];} string27 = {458760, "Segment"}; static struct {unsigned f; char r[8];} string28 = {262152, "Traj\000\000\000"}; static struct {unsigned f; char r[8];} string29 = {327688, "joint\000\000"}; static struct {unsigned f; char r[8];} string30 = {458760, "segment"}; static struct {unsigned f; char r[12];} string31 = {655372, "trajectory\000"}; static struct {unsigned f; char r[8];} string32 = {393224, "object\000"}; static struct {unsigned f; char r[20];} string33 = {1179668, "StartSelectSegment\000"}; static struct {unsigned f; char r[20];} string34 = {1048596, "StartSelectJoint\000\000\000"}; static struct {unsigned f; char r[12];} string35 = {720908, "PreferLines"}; static struct {unsigned f; char r[16];} string36 = {786448, "PreferPoints\000\000\000"}; static struct {unsigned f; char r[12];} string37 = {720908, "PreferFaces"}; static struct {unsigned f; char r[12];} string38 = {589836, "EndSelect\000\000"}; static struct {unsigned f; char r[76];} string39 = {4915276, "SelectFromFeature failed: unknown selection grain. Make a selection first."}; static struct {unsigned f; char r[12];} string40 = {524300, "Feedback\000\000\000"}; static struct {unsigned f; char r[20];} string41 = {1114132, "No near %g found.\000\000"}; static struct {unsigned f; char r[20];} string42 = {1245204, " selected (%g more)"}; static struct {unsigned f; char r[12];} string43 = {589836, " selected\000\000"}; static struct {unsigned f; char r[8];} string44 = {327688, "%g %g\000\000"}; static struct {unsigned f; char r[40];} string45 = {2359336, "NIL fill color\030not sent to ColorTool\000\000\000"}; static struct {unsigned f; char r[72];} string46 = {4456520, "SetFillColorRemote failed: Select an object with a unique fill color\000\000\000"}; static struct {unsigned f; char r[68];} string47 = {4259908, "SetFillColorRemote failed: Place input focus in a Gargoyle viewer\000\000"}; static struct {unsigned f; char r[28];} string48 = {1638428, "unimplemented result type\000\000"}; static struct {unsigned f; char r[20];} string49 = {1179668, "StartDeselectJoint\000"}; static struct {unsigned f; char r[24];} string50 = {1310744, "StartDeselectSegment\000\000\000"}; static struct {unsigned f; char r[24];} string51 = {1507352, "StartDeselectTrajectory"}; static struct {unsigned f; char r[24];} string52 = {1376280, "StartDeselectTopLevel\000\000"}; static struct {unsigned f; char r[12];} string53 = {720908, "Deselecting"}; static struct {unsigned f; char r[8];} string54 = {458760, "nothing"}; static struct {unsigned f; char r[20];} string55 = {1048596, "top level object\000\000\000"}; static struct {unsigned f; char r[20];} string56 = {1048596, "No near %g found\000\000\000"}; static struct {unsigned f; char r[12];} string57 = {655372, "deselected\000"}; static struct {unsigned f; char r[44];} string58 = {2621484, "Unexpected feature type for deselect %g.\000\000\000"}; static struct {unsigned f; char r[20];} string59 = {1048596, "SelectionChanged\000\000\000"}; static struct {unsigned f; char r[20];} string60 = {1245204, "StartExtSelectJoint"}; static struct {unsigned f; char r[24];} string61 = {1376280, "StartExtSelectSegment\000\000"}; static struct {unsigned f; char r[28];} string62 = {1572892, "StartExtSelectTrajectory\000\000\000"}; static struct {unsigned f; char r[24];} string63 = {1441816, "StartExtSelectTopLevel\000"}; static struct {unsigned f; char r[68];} string64 = {4259908, "SetStrokeColorRemote: Select an object with a unique stroke color\000\000"}; static struct {unsigned f; char r[24];} string65 = {1310744, "StartExtendSelection\000\000\000"}; static struct {unsigned f; char r[20];} string66 = {1179668, "EndExtendSelection\000"}; static struct {unsigned f; char r[12];} string67 = {720908, "Extended to"}; static struct {unsigned f; char r[16];} string68 = {786448, "Extending to\000\000\000"}; static struct {unsigned f; char r[8];} string69 = {458760, "Outline"}; static struct {unsigned f; char r[4];} string70 = {196612, "Set"}; static struct {unsigned f; char r[20];} string71 = {1114132, "Add Bezier spline\000\000"}; static struct {unsigned f; char r[4];} string72 = {196612, "add"}; static struct {unsigned f; char r[8];} string73 = {262152, "Drag\000\000\000"}; static struct {unsigned f; char r[60];} string74 = {3735612, "Start Bezier failed: caret required for adding new Bezier\000\000"}; static struct {unsigned f; char r[12];} string75 = {589836, "Dragging:\000\000"}; static struct {unsigned f; char r[68];} string76 = {4390980, "SetStrokeColorRemote failed: Place input focus in a Gargoyle viewer"}; static struct {unsigned f; char r[8];} string77 = {393224, "Bezier\000"}; static struct {unsigned f; char r[12];} string78 = {655372, "DuringDrag\000"}; static struct {unsigned f; char r[12];} string79 = {589836, "Complaint\000\000"}; static struct {unsigned f; char r[16];} string80 = {786448, "EndBezierAdd\000\000\000"}; static struct {unsigned f; char r[32];} string81 = {1900576, "ObjectChangedBoundBoxProvided\000\000"}; static struct {unsigned f; char r[20];} string82 = {1048596, "failed assertion\000\000\000"}; static struct {unsigned f; char r[8];} string83 = {393224, "Select\000"}; static struct {unsigned f; char r[16];} string84 = {851984, "\257\300\120\130\226\217\300\272\036\275\162\100\164\000\000"}; static struct {unsigned f; char r[12];} string85 = {655370, "\006\001\100\130\010\000\004\100\102\001\000"}; static struct {unsigned f; char r[16];} string86 = {851984, "\257\300\006<7[\300;CV\364@h\000\000"}; static struct {unsigned f; char r[16];} string87 = {851984, "\257\300\207\224\334\150\300\367\303\105\360\100\150\000\000"}; static struct {unsigned f; char r[16];} string88 = {851984, "\257\300\322\334\347\304\300\124\107\000\027\100\150\000\000"}; static struct {unsigned f; char r[16];} string89 = {851984, "\257\300\136\002\175\264\300\016\031\370\241\100\150\000\000"}; static struct {unsigned f; char r[16];} string90 = {851984, "\257\300\223\031\346\162\300\275\253\133\335\100\150\000\000"}; static struct {unsigned f; char r[16];} string91 = {851984, "\257\300\375\202\245\011\300\112\022\046\301\100\150\000\000"}; static struct {unsigned f; char r[16];} string92 = {851984, "\257\300\003\033\274\104\300\263\246\312\006\100\150\000\000"}; static struct {unsigned f; char r[16];} string93 = {851984, "\257\300\252\050\175\356\300\250\337\044\120\100\150\000\000"}; static struct {unsigned f; char r[12];} string94 = {1195855215, "useEvent"}; static struct {unsigned f; char r[16];} string95 = {851984, "\257\300\246\204\223\340\300\164\162\104\060\100\150\000\000"}; static struct {unsigned f; char r[16];} string96 = {851984, "\257\300\172\265\057\072\300\145\211\260\126\100\150\000\000"}; static struct {unsigned f; char r[16];} string97 = {851984, "\257\300\311\023\117\300\300\337\236\305\170\100\150\000\000"}; static struct {unsigned f; char r[16];} string98 = {851984, "\257\300\301\241\007\150\300\032\111\265\237\100\150\000\000"}; static struct {unsigned f; char r[16];} string99 = {851984, "\257\300\207\142\037\125\300\254\056\012\025\100\150\000\000"}; static struct {unsigned f; char r[16];} string100 = {851984, "\257\300\347\101\365\007\300\150\102\366\020\100\150\000\000"}; static struct {unsigned f; char r[16];} string101 = {851984, "\257\300\043\211\212\366\300\343\003\307\242\100\150\000\000"}; static struct {unsigned f; char r[16];} string102 = {851984, "\257\300\011\245\206\305\300\112\326\356\245\100\150\000\000"}; static struct {unsigned f; char r[16];} string103 = {851984, "\257\300\261\002\056\176\300\055\321\222\125\100\150\000\000"}; static struct {unsigned f; char r[16];} string104 = {851984, "\257\300U$)\337\300Xo9\243@t\000\000"}; static struct {unsigned f; char r[16];} string105 = {851984, "\257\300\336\025\013\356\300\216\115\352\271\100\150\000\000"}; static struct {unsigned f; char r[16];} string106 = {851984, "\257\300\206\055\004\241\300\261\334\001\116\100\150\000\000"}; static struct {unsigned f; char r[16];} string107 = {851984, "\257\300\050\310\006\072\300\004\273\314\121\100\150\000\000"}; static struct {unsigned f; char r[16];} string108 = {851984, "\257\300\355\324\264\170\300\276\334\312\210\100\150\000\000"}; static struct {unsigned f; char r[16];} string109 = {851984, "\257\300\370\132\042\205\300\045\133\011\125\100\150\000\000"}; static struct {unsigned f; char r[16];} string110 = {851984, "\257\300\356\024\243\250\300\175\157\203\227\100\150\000\000"}; static struct {unsigned f; char r[16];} string111 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"}; static struct {unsigned f; char r[16];} string112 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"}; static struct {unsigned f; char r[16];} string113 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"}; static struct {unsigned f; char r[16];} string114 = {851984, "\257\300\004\142\347\110\300\363\053\254\345\100\150\000\000"}; static struct {unsigned f; char r[16];} string115 = {851984, "\257\300\223\145\303\043\300\372\023\025\003\100\150\000\000"}; static struct {unsigned f; char r[28];} string116 = {1572892, "\211\014\013\104\162\141\147\104\141\164\141\117\142\152\300\223\145\303\043\300\372\023\025\003\000\000\000"}; static struct {unsigned f; char r[16];} string117 = {851984, "\257\300\333\030\273\126\300\173\036\033\131\100\200\000\000"}; static struct {unsigned f; char r[20];} string118 = {1114129, "\006\006\050\001\054\001\060\001\064\001\100\100\001\100\110\004\030\000\000"}; static struct {unsigned f; char r[28];} string119 = {1769500, "\211\017\016\122\145\146\162\145\163\150\104\141\164\141\117\142\152\300\223\145\303\043\300\372\023\025\003"}; static struct {unsigned f; char r[16];} string120 = {851984, "\257\300\026\355\016\312\300\171\207\041\370\100\200\000\000"}; static struct {unsigned f; char r[44];} string121 = {2752554, "\006\020\000\001\014\001\020\001\024\001\030\001\034\001\070\001\074\001\100\100\001\100\104\001\100\110\001\100\114\001\100\120\001\100\124\001\100\130\001\100\144\001\000"}; static struct { word f0[88]; word f88; word f89; word f90; word f91; word f92; word f93; word f94; word f95; word f96; word f97; word f98; word f99; word f100; word f101; word f102; word f103; word f104; word f105; word f106; word f107; word f108; word f109; word f110; word f111; word f112; word f113; word f114; word f115; word f116; word f117; word f118; word f119; word f120; word f121; word f122; word f123; word f124; word f125; word f126; word f127; word f128; word f129; word f130; word f131; word f132; word f133; word f134; word f135; word f136; word f137; word f138; word f139; word f140; word f141; word f142; word f143; word f144; word f145; word f146; word f147; word f148; word f149; word f150; word f151; word f152; word f153; word f154; word f155[31]; } globalframe = { {0}, (word) AbortBezierAdd←P1980, 0, (word) EndBezierAdd←P1920, 0, (word) ContinueBezierAdd←P1860, 0, (word) DuringBezierDrag←P1800, 0, (word) UpdateSceneForAddBezier←P1740, 0, (word) StartAddBezier←P1680, 0, (word) EndExtendSelection←P1620, 0, (word) DuringExtendSelectionFeedback←P1560, 0, (word) DuringExtendSelection←P1500, 0, (word) StartExtendSelection←P1440, 0, (word) StartExtendSelect←P1380, 0, (word) EndDeselectAux←P1320, 0, (word) EndDeselect←P1260, 0, (word) SliceDeselectAux←P1200, 0, (word) DuringDeselectAux←P1140, 0, (word) DuringDeselect←P1080, 0, (word) StartDeselect←P1020, 0, (word) SitTheCaret←P960, 0, (word) SelectSlicePart←P900, 0, (word) SelectAndDescribeSlicePart←P840, 0, (word) EndSelectAux←P780, 0, (word) SelectFromFeature←P720, 0, (word) GravTypeFromAtom←P660, 0, (word) Select←P600, 0, (word) RopeFromSelectMode←P540, 0, (word) SelectModeFromAtom←P480, 0, (word) EndSelect←P420, 0, (word) DuringSelect←P360, 0, (word) StartSelect←P300, 0, (word) SendColorToColorTool←P240, 0, (word) SetFillColorRemote←P180, 0, (word) SetStrokeColorRemote←P120, 0, (word) SetCaretAttractorEndpoint←P60, 0, (word) GGMouseEventImplB←P0, {0} }; static void NoName←Q3144() { register ptr gf←c0549 = (ptr) &globalframe; word var←c63040; (* (( (ptr) gf←c0549)+7) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf←c0549)+9) ) = (word) XR←GetTypeIndexS((word) (&string3)); (* (( (ptr) gf←c0549)+10) ) = (word) XR←GetTypeIndex((word) &string4, 0, (word) &string5); (* (( (ptr) gf←c0549)+11) ) = (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7); (* (( (ptr) gf←c0549)+13) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string2); (* (( (ptr) gf←c0549)+14) ) = (word) XR←GetTypeIndex((word) &string9, 0, (word) &string10); (* (( (ptr) gf←c0549)+15) ) = (word) XR←GetTypeIndex((word) &string11, 0, (word) &string12); (* (( (ptr) gf←c0549)+16) ) = (word) XR←GetTypeIndex((word) &string13, 0, (word) &string5); (* (( (ptr) gf←c0549)+19) ) = (word) XR←GetTypeIndex((word) &string14, 0, (word) &string15); (* (( (ptr) gf←c0549)+20) ) = (word) XR←GetTypeIndexS((word) (&string16)); (* (( (ptr) gf←c0549)+21) ) = (word) XR←GetTypeIndexS((word) (&string17)); (* (ptr) (( (bPt) gf←c0549)+88) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string18); (* (ptr) (( (bPt) gf←c0549)+92) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string19); (* (ptr) (( (bPt) gf←c0549)+96) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string20); (* (ptr) (( (bPt) gf←c0549)+100) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string21); (* (ptr) (( (bPt) gf←c0549)+104) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string22); (* (ptr) (( (bPt) gf←c0549)+108) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string23); (* (ptr) (( (bPt) gf←c0549)+112) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string24); (* (ptr) (( (bPt) gf←c0549)+116) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string25); (* (ptr) (( (bPt) gf←c0549)+120) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string26); (* (ptr) (( (bPt) gf←c0549)+124) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string27); (* (ptr) (( (bPt) gf←c0549)+128) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string28); (* (ptr) (( (bPt) gf←c0549)+132) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string29); (* (ptr) (( (bPt) gf←c0549)+136) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string30); (* (ptr) (( (bPt) gf←c0549)+140) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string31); (* (ptr) (( (bPt) gf←c0549)+144) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string32); (* (ptr) (( (bPt) gf←c0549)+148) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string33); (* (ptr) (( (bPt) gf←c0549)+152) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string34); (* (ptr) (( (bPt) gf←c0549)+156) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string35); (* (ptr) (( (bPt) gf←c0549)+160) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string36); (* (ptr) (( (bPt) gf←c0549)+164) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string37); (* (ptr) (( (bPt) gf←c0549)+168) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string38); (* (ptr) (( (bPt) gf←c0549)+172) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string39); (* (ptr) (( (bPt) gf←c0549)+176) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string40); (* (ptr) (( (bPt) gf←c0549)+180) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string41); (* (ptr) (( (bPt) gf←c0549)+184) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string42); (* (ptr) (( (bPt) gf←c0549)+188) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string43); (* (ptr) (( (bPt) gf←c0549)+192) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string44); (* (ptr) (( (bPt) gf←c0549)+196) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string45); (* (ptr) (( (bPt) gf←c0549)+200) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string46); (* (ptr) (( (bPt) gf←c0549)+204) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string47); (* (ptr) (( (bPt) gf←c0549)+208) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string48); (* (ptr) (( (bPt) gf←c0549)+212) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string49); (* (ptr) (( (bPt) gf←c0549)+216) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string50); (* (ptr) (( (bPt) gf←c0549)+220) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string51); (* (ptr) (( (bPt) gf←c0549)+224) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string52); (* (ptr) (( (bPt) gf←c0549)+228) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string53); (* (ptr) (( (bPt) gf←c0549)+232) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string54); (* (ptr) (( (bPt) gf←c0549)+236) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string55); (* (ptr) (( (bPt) gf←c0549)+240) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string56); (* (ptr) (( (bPt) gf←c0549)+244) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string57); (* (ptr) (( (bPt) gf←c0549)+248) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string58); (* (ptr) (( (bPt) gf←c0549)+252) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string59); (* (ptr) (( (bPt) gf←c0549)+256) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string60); (* (ptr) (( (bPt) gf←c0549)+260) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string61); (* (ptr) (( (bPt) gf←c0549)+264) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string62); (* (ptr) (( (bPt) gf←c0549)+268) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string63); (* (ptr) (( (bPt) gf←c0549)+272) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string64); (* (ptr) (( (bPt) gf←c0549)+276) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string65); (* (ptr) (( (bPt) gf←c0549)+280) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string66); (* (ptr) (( (bPt) gf←c0549)+284) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string67); (* (ptr) (( (bPt) gf←c0549)+288) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string68); (* (ptr) (( (bPt) gf←c0549)+292) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string69); (* (ptr) (( (bPt) gf←c0549)+296) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string70); (* (ptr) (( (bPt) gf←c0549)+300) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string71); (* (ptr) (( (bPt) gf←c0549)+304) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string72); (* (ptr) (( (bPt) gf←c0549)+308) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string73); (* (ptr) (( (bPt) gf←c0549)+312) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string74); (* (ptr) (( (bPt) gf←c0549)+316) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string75); (* (ptr) (( (bPt) gf←c0549)+320) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string76); (* (ptr) (( (bPt) gf←c0549)+324) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string77); (* (ptr) (( (bPt) gf←c0549)+328) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string78); (* (ptr) (( (bPt) gf←c0549)+332) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string79); (* (ptr) (( (bPt) gf←c0549)+336) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string80); (* (ptr) (( (bPt) gf←c0549)+340) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string81); (* (ptr) (( (bPt) gf←c0549)+344) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+13) ), (word) &string82); (* (ptr) (( (bPt) gf←c0549)+348) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0549)+7) ), (word) &string83); (void) XR←DeclareGlobalFrame((word) "GGMouseEventImplB", &globalframe, (word) XR←GetTypeIndex((word) &string84, 0, (word) &string85) , (word) (( (bPt) gf←c0549)+616)/* var←c57664 */ ); var←c63040 = (word) XR←ImportInterface((word) "CodeTimer", (word) XR←GetTypeIndexS((word) (&string86)), 21); (* (( (ptr) gf←c0549)+167)/* var←c58272 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 526850); (void) XR←ImportProcS(var←c63040, 526338); var←c63040 = (word) XR←ImportInterface((word) "ColorTool", (word) XR←GetTypeIndexS((word) (&string87)), 10); (* (( (ptr) gf←c0549)+164)/* var←c58144 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 525314); var←c63040 = (word) XR←ImportInterface((word) "Feedback", (word) XR←GetTypeIndexS((word) (&string88)), 25); (* (( (ptr) gf←c0549)+156)/* var←c57696 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 1313029); (void) XR←ImportProcS(var←c63040, 1575429); (void) XR←ImportProcS(var←c63040, 1050628); var←c63040 = (word) XR←ImportInterface((word) "GGAlign", (word) XR←GetTypeIndexS((word) (&string89)), 46); (* (( (ptr) gf←c0549)+168)/* var←c58336 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 68164612); var←c63040 = (word) XR←ImportInterface((word) "GGCaret", (word) XR←GetTypeIndexS((word) (&string90)), 13); (* (( (ptr) gf←c0549)+158)/* var←c57760 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 67372801); (void) XR←ImportProcS(var←c63040, 134482689); (void) XR←ImportProcS(var←c63040, 67371777); (void) XR←ImportProcS(var←c63040, 525570); (void) XR←ImportProcS(var←c63040, 1574916); var←c63040 = (word) XR←ImportInterface((word) "GGDescribe", (word) XR←GetTypeIndexS((word) (&string91)), 11); (* (( (ptr) gf←c0549)+162)/* var←c58016 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 67371265); var←c63040 = (word) XR←ImportInterface((word) "GGEvent", (word) XR←GetTypeIndexS((word) (&string92)), 38); (* (( (ptr) gf←c0549)+163)/* var←c58048 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 1313029); (void) XR←ImportProcS(var←c63040, 1313285); var←c63040 = (word) XR←ImportInterface((word) "GGHistory", (word) XR←GetTypeIndexS((word) (&string93)), 20); (* (( (ptr) gf←c0549)+182)/* var←c61568 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 262657); (void) XR←ImportProcS(var←c63040, 525058); var←c63040 = (word) XR←ImportInterface((word) &string94, (word) XR←GetTypeIndexS((word) (&string95)), 32); (* (( (ptr) gf←c0549)+166)/* var←c58240 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 269313); (void) XR←ImportProcS(var←c63040, 68688645); (void) XR←ImportProcS(var←c63040, 1055236); (void) XR←ImportProcS(var←c63040, 201595137); (void) XR←ImportProcS(var←c63040, 135272451); (void) XR←ImportProcS(var←c63040, 69736201); (void) XR←ImportProcS(var←c63040, 1316356); (void) XR←ImportProcS(var←c63040, 135271684); (void) XR←ImportProcS(var←c63040, 2366726); (void) XR←ImportProcS(var←c63040, 267265); var←c63040 = (word) XR←ImportInterface((word) "GGMultiGravity", (word) XR←GetTypeIndexS((word) (&string96)), 16); (* (( (ptr) gf←c0549)+169)/* var←c58368 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 402917633); (void) XR←ImportProcS(var←c63040, 68683525); (void) XR←ImportProcS(var←c63040, 68683269); (void) XR←ImportProcS(var←c63040, 69207303); (void) XR←ImportProcS(var←c63040, 404226821); (void) XR←ImportProcS(var←c63040, 404226565); (void) XR←ImportProcS(var←c63040, 404488454); var←c63040 = (word) XR←ImportInterface((word) "GGOutline", (word) XR←GetTypeIndexS((word) (&string97)), 19); (* (( (ptr) gf←c0549)+177)/* var←c60928 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 67633410); (void) XR←ImportProcS(var←c63040, 134482945); (void) XR←ImportProcS(var←c63040, 470027009); var←c63040 = (word) XR←ImportInterface((word) "GGParent", (word) XR←GetTypeIndexS((word) (&string98)), 83); (* (( (ptr) gf←c0549)+173)/* var←c59584 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 67913987); (void) XR←ImportProcS(var←c63040, 67391489); (void) XR←ImportProcS(var←c63040, 67386625); (void) XR←ImportProcS(var←c63040, 68176388); (void) XR←ImportProcS(var←c63040, 67385857); var←c63040 = (word) XR←ImportInterface((word) "GGRefresh", (word) XR←GetTypeIndexS((word) (&string99)), 30); (* (( (ptr) gf←c0549)+165)/* var←c58208 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 788227); (void) XR←ImportProcS(var←c63040, 264193); (void) XR←ImportProcS(var←c63040, 266241); (void) XR←ImportProcS(var←c63040, 69994763); (void) XR←ImportProcS(var←c63040, 2622986); (void) XR←ImportProcS(var←c63040, 67375361); var←c63040 = (word) XR←ImportInterface((word) "GGScene", (word) XR←GetTypeIndexS((word) (&string100)), 50); (* (( (ptr) gf←c0549)+175)/* var←c59840 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 134744834); (void) XR←ImportProcS(var←c63040, 67637506); (void) XR←ImportProcS(var←c63040, 787715); (void) XR←ImportProcS(var←c63040, 68165892); (void) XR←ImportProcS(var←c63040, 274177); var←c63040 = (word) XR←ImportInterface((word) "GGSegment", (word) XR←GetTypeIndexS((word) (&string101)), 47); (* (( (ptr) gf←c0549)+183)/* var←c61888 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 1056003); (void) XR←ImportProcS(var←c63040, 527874); (void) XR←ImportProcS(var←c63040, 527362); (void) XR←ImportProcS(var←c63040, 68419843); (void) XR←ImportProcS(var←c63040, 69468677); var←c63040 = (word) XR←ImportInterface((word) "GGSelect", (word) XR←GetTypeIndexS((word) (&string102)), 23); (* (( (ptr) gf←c0549)+170)/* var←c58496 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 1051396); (void) XR←ImportProcS(var←c63040, 67637250); (void) XR←ImportProcS(var←c63040, 786947); (void) XR←ImportProcS(var←c63040, 526594); var←c63040 = (word) XR←ImportInterface((word) "GGSequence", (word) XR←GetTypeIndexS((word) (&string103)), 58); (* (( (ptr) gf←c0549)+179)/* var←c61152 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 67637250); (void) XR←ImportProcS(var←c63040, 67634434); (void) XR←ImportProcS(var←c63040, 67634178); (void) XR←ImportProcS(var←c63040, 67640578); (void) XR←ImportProcS(var←c63040, 67639554); (void) XR←ImportProcS(var←c63040, 67895299); var←c63040 = (word) XR←ImportInterface((word) "GGSlice", (word) XR←GetTypeIndexS((word) (&string104)), 128); (* (( (ptr) gf←c0549)+180)/* var←c61216 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 67634178); var←c63040 = (word) XR←ImportInterface((word) "GGSliceOps", (word) XR←GetTypeIndexS((word) (&string105)), 73); (* (( (ptr) gf←c0549)+159)/* var←c57824 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 67633922); (void) XR←ImportProcS(var←c63040, 1062148); (void) XR←ImportProcS(var←c63040, 67376897); (void) XR←ImportProcS(var←c63040, 67640066); (void) XR←ImportProcS(var←c63040, 67901699); (void) XR←ImportProcS(var←c63040, 67375873); (void) XR←ImportProcS(var←c63040, 67371521); (void) XR←ImportProcS(var←c63040, 134756866); (void) XR←ImportProcS(var←c63040, 134756354); (void) XR←ImportProcS(var←c63040, 337127684); var←c63040 = (word) XR←ImportInterface((word) "GGState", (word) XR←GetTypeIndexS((word) (&string106)), 119); (* (( (ptr) gf←c0549)+161)/* var←c57920 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 67395585); (void) XR←ImportProcS(var←c63040, 67396609); (void) XR←ImportProcS(var←c63040, 549122); (void) XR←ImportProcS(var←c63040, 67397633); (void) XR←ImportProcS(var←c63040, 550146); (void) XR←ImportProcS(var←c63040, 551170); (void) XR←ImportProcS(var←c63040, 67396097); (void) XR←ImportProcS(var←c63040, 67109888); var←c63040 = (word) XR←ImportInterface((word) "GGTraj", (word) XR←GetTypeIndexS((word) (&string107)), 55); (* (( (ptr) gf←c0549)+178)/* var←c60992 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 134749698); (void) XR←ImportProcS(var←c63040, 134749186); (void) XR←ImportProcS(var←c63040, 67633153); (void) XR←ImportProcS(var←c63040, 68157956); (void) XR←ImportProcS(var←c63040, 67379457); (void) XR←ImportProcS(var←c63040, 67379969); (void) XR←ImportProcS(var←c63040, 67639554); (void) XR←ImportProcS(var←c63040, 402927873); var←c63040 = (word) XR←ImportInterface((word) "GGUserInput", (word) XR←GetTypeIndexS((word) (&string108)), 13); (* (( (ptr) gf←c0549)+157)/* var←c57728 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 1312261); var←c63040 = (word) XR←ImportInterface((word) "GGUtility", (word) XR←GetTypeIndexS((word) (&string109)), 42); (* (( (ptr) gf←c0549)+181)/* var←c61376 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 67643394); var←c63040 = (word) XR←ImportInterface((word) "GGWindow", (word) XR←GetTypeIndexS((word) (&string110)), 12); (* (( (ptr) gf←c0549)+171)/* var←c58592 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 262657); (void) XR←ImportProcS(var←c63040, 1572870); var←c63040 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string111)), 55); (* (( (ptr) gf←c0549)+174)/* var←c59680 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 67634689); (void) XR←ImportProcS(var←c63040, 67371777); var←c63040 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string112)), 103); (* (( (ptr) gf←c0549)+176)/* var←c60448 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 67910402); var←c63040 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string113)), 43); (* (( (ptr) gf←c0549)+172)/* var←c59296 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 67633666); var←c63040 = (word) XR←ImportInterface((word) "Vectors2d", (word) XR←GetTypeIndexS((word) (&string114)), 21); (* (( (ptr) gf←c0549)+160)/* var←c57888 */ ) = var←c63040; (void) XR←ImportProcS(var←c63040, 135268098); (void) XR←ImportProcS(var←c63040, 135270914); (void) XR←ImportProcS(var←c63040, 135267842); (void) XR←ImportProcS(var←c63040, 67637249); var←c63040 = (word) XR←ExportInterface((word) &string94, (word) XR←GetTypeIndexS((word) (&string95)), 32); (* (( (ptr) gf←c0549)+184)/* var←c63072 */ ) = var←c63040; (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+520)/* var←c57280 */ , 2360326, (word) "SelectFromFeature"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+576)/* var←c57504 */ , 68158723, (word) "StartSelect"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+568)/* var←c57472 */ , 1050115, (word) "DuringSelect"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+560)/* var←c57440 */ , 1050371, (word) "EndSelect"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+432)/* var←c56928 */ , 68159491, (word) "StartExtendSelect"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+424)/* var←c56896 */ , 68159747, (word) "StartExtendSelection") ; (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+416)/* var←c56864 */ , 1051139, (word) "DuringExtendSelection") ; (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+400)/* var←c56800 */ , 1051395, (word) "EndExtendSelection"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+480)/* var←c57120 */ , 68160515, (word) "StartDeselect"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+472)/* var←c57088 */ , 1051907, (word) "DuringDeselect"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+448)/* var←c56992 */ , 1052163, (word) "EndDeselect"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+392)/* var←c56768 */ , 68161283, (word) "StartAddBezier"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+376)/* var←c56704 */ , 1052675, (word) "DuringBezierDrag"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+360)/* var←c56640 */ , 1052931, (word) "EndBezierAdd"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+352)/* var←c56608 */ , 1053187, (word) "AbortBezierAdd"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+368)/* var←c56672 */ , 68162307, (word) "ContinueBezierAdd"); (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+608)/* var←c57632 */ , 2366726, (word) "SetCaretAttractorEndpoint") ; (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+600)/* var←c57600 */ , 134749698, (word) "SetStrokeColorRemote") ; (void) XR←ExportProcS(var←c63040, (word) (( (bPt) gf←c0549)+592)/* var←c57568 */ , 134749954, (word) "SetFillColorRemote") ; var←c63040 = (word) XR←ExportInterface((word) "GGInterfaceTypes", (word) XR←GetTypeIndexS((word) (&string115)), 6); (* (( (ptr) gf←c0549)+185)/* var←c63104 */ ) = var←c63040; (void) XR←ExportType((word) "DragDataObj", (word) XR←GetTypeIndexS((word) (&string116)), (word) XR←GetTypeIndex((word) &string117, 0, (word) &string118) ); (void) XR←ExportType((word) "RefreshDataObj", (word) XR←GetTypeIndexS((word) (&string119)), (word) XR←GetTypeIndex((word) &string120, 0, (word) &string121) ); } static void GGMouseEventImplB←P0(formal←c072, formal←c071) word formal←c072; word formal←c071; { register ptr gf←c63136 = (ptr) &globalframe; /* GGMouseEventImplB: */ SOURCE(484, 41897) SOURCE(2622, 17) (* (( (ptr) gf←c63136)+4)/* Problem←v5492 */ ) = (* (ptr) (* (( (ptr) (* (( (ptr) gf←c63136)+156)/* var←c57696 */ ))+28) ) ); SOURCE(42325, 56) { word pd122; pd122 = (* (( (ptr) (* (( (ptr) gf←c63136)+157)/* var←c57728 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd122 ))))((* (( (ptr) gf←c63136)+87) ), (word) (( (bPt) gf←c63136)+536)/* var←c57344 */ , 0, 0, 0, pd122) ; }; } static void SetCaretAttractorEndpoint←P60(ggData←v6612, mapPoint←v6640, normal←v6668, testPoint←v6696, feature←v6724, hitData←v6752) word ggData←v6612; W2 mapPoint←v6640; W2 normal←v6668; W2 testPoint←v6696; word feature←v6724; word hitData←v6752; { register ptr gf←c63168 = (ptr) &globalframe; /* SetCaretAttractorEndpoint: */ SOURCE(2676, 676) SOURCE(2827, 525) if ((feature←v6724 == 0)) { SOURCE(2847, 63) { word pd123; pd123 = (* (( (ptr) (* (( (ptr) gf←c63168)+158)/* var←c57760 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd123 ))))((* (( (ptr) ggData←v6612)+13) ), mapPoint←v6640, normal←v6668, 0, pd123); }; } else { SOURCE(2910, 444) { word shape←v9984; SOURCE(2912, 30) shape←v9984 = (* (( (ptr) feature←v6724)+1) ); SOURCE(2944, 408) { word var←c57792; var←c57792 = (* (ptr) feature←v6724 ); if ((var←c57792 == 0)) { SOURCE(2978, 303) { W2 pos←v10040; word sliceD←v10068; word jointD←v10096 = 0; SOURCE(2992, 39) sliceD←v10068 = XR←Narrow(shape←v9984, (* (( (ptr) gf←c63168)+10) )); SOURCE(3058, 94) { W5 var←c57856; { word pd124; pd124 = (* (( (ptr) (* (( (ptr) gf←c63168)+159)/* var←c57824 */ ))+45) ); (void) ( *( (fPt) ((* (ptr) pd124 ))))((word) &var←c57856, sliceD←v10068, mapPoint←v6640, testPoint←v6696, hitData←v6752, pd124) ; }; normal←v6668 = (* (W2Pt) (( (ptr) &var←c57856)+3) ); pos←v10040 = (* (W2Pt) (( (ptr) &var←c57856)+1) ); jointD←v10096 = var←c57856.f0; }; SOURCE(3154, 66) { word pd125; word x126; word x128; pd125 = (* (( (ptr) (* (( (ptr) gf←c63168)+160)/* var←c57888 */ ))+20) ); if ((( x126 = (word) ( *( (fPt) ((* (ptr) pd125 ))))(normal←v6668, pd125), *(float*)&x126 ) == ( x128 = (* (ptr) &fc127 ), *(float*)&x128 ))) { SOURCE(3204, 16) normal←v6668.f0 = (* (ptr) &fc127 ); normal←v6668.f1 = (* (ptr) &fc129 ); }; }; SOURCE(3224, 55) { word pd130; pd130 = (* (( (ptr) (* (( (ptr) gf←c63168)+158)/* var←c57760 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd130 ))))((* (( (ptr) ggData←v6612)+13) ), pos←v10040, normal←v6668, jointD←v10096, pd130); }; }; } else { SOURCE(3295, 57) { word pd131; pd131 = (* (( (ptr) (* (( (ptr) gf←c63168)+158)/* var←c57760 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd131 ))))((* (( (ptr) ggData←v6612)+13) ), mapPoint←v6640, normal←v6668, 0, pd131); }; }; }; }; }; } static void SetStrokeColorRemote←P120(formal←c097, ggData←v6828, sliceD←v6856) word formal←c097; word ggData←v6828; word sliceD←v6856; { register ptr gf←c63200 = (ptr) &globalframe; word doNormalBehavior←v6900; word done←v6928; word theirData←v10140; word theirScene←v10168 = 0; word ourColor←v10196 = 0; word success←v10224 = 0; /* SetStrokeColorRemote: */ SOURCE(3361, 804) SOURCE(3361, 804) doNormalBehavior←v6900 = 0; SOURCE(3361, 804) done←v6928 = 0; SOURCE(3502, 45) { word pd132; pd132 = (* (( (ptr) (* (( (ptr) gf←c63200)+161)/* var←c57920 */ ))+8) ); theirData←v10140 = (word) ( *( (fPt) ((* (ptr) pd132 ))))(pd132); }; SOURCE(3615, 194) if ((theirData←v10140 == 0)) { SOURCE(3641, 123) { word pd133; pd133 = (* (( (ptr) (* (( (ptr) gf←c63200)+156)/* var←c57696 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd133 ))))((* (( (ptr) ggData←v6828)+3) ), 0, (* (( (ptr) gf←c63200)+83) ), (* (( (ptr) gf←c63200)+80) ), pd133); }; SOURCE(3766, 6) goto lab←L100000; } else { SOURCE(3781, 28) theirScene←v10168 = (* (( (ptr) theirData←v10140)+11) ); }; SOURCE(3811, 75) { W2 var←c57952; { word pd134; pd134 = (* (( (ptr) (* (( (ptr) gf←c63200)+159)/* var←c57824 */ ))+60) ); (void) ( *( (fPt) ((* (ptr) pd134 ))))((word) &var←c57952, (* (ptr) sliceD←v6856 ), (* (( (ptr) sliceD←v6856)+1) ), pd134) ; }; success←v10224 = var←c57952.f1; ourColor←v10196 = var←c57952.f0; }; SOURCE(3888, 277) if ((0 != success←v10224)) { SOURCE(3906, 87) { word var←c57984; { word pd135; pd135 = (* (( (ptr) (* (( (ptr) gf←c63200)+162)/* var←c58016 */ ))+5) ); var←c57984 = (word) ( *( (fPt) ((* (ptr) pd135 ))))(ourColor←v10196, pd135); }; { word pd136; pd136 = (* (( (ptr) (* (( (ptr) gf←c63200)+163)/* var←c58048 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd136 ))))(theirData←v10140, ourColor←v10196, var←c57984, 1, (* (( (ptr) gf←c63200)+74) ), pd136) ; }; }; SOURCE(3995, 38) (void) SendColorToColorTool←P240(ggData←v6828, ourColor←v10196); } else { SOURCE(4044, 121) { word pd137; pd137 = (* (( (ptr) (* (( (ptr) gf←c63200)+156)/* var←c57696 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd137 ))))((* (( (ptr) ggData←v6828)+3) ), 0, (* (( (ptr) gf←c63200)+83) ), (* (( (ptr) gf←c63200)+68) ), pd137); }; }; /* removed tail goto */ lab←L100000: ; (* (ptr) formal←c097 ) = doNormalBehavior←v6900; (* (( (ptr) formal←c097)+1) ) = done←v6928; return; } static void SetFillColorRemote←P180(formal←c0109, ggData←v6988, sliceD←v7016) word formal←c0109; word ggData←v6988; word sliceD←v7016; { register ptr gf←c63232 = (ptr) &globalframe; word doNormalBehavior←v7060; word done←v7088; word theirData←v10268; word theirScene←v10296 = 0; word ourColor←v10324 = 0; word success←v10352 = 0; /* SetFillColorRemote: */ SOURCE(4174, 801) SOURCE(4174, 801) doNormalBehavior←v7060 = 0; SOURCE(4174, 801) done←v7088 = 0; SOURCE(4313, 45) { word pd138; pd138 = (* (( (ptr) (* (( (ptr) gf←c63232)+161)/* var←c57920 */ ))+8) ); theirData←v10268 = (word) ( *( (fPt) ((* (ptr) pd138 ))))(pd138); }; SOURCE(4426, 192) if ((theirData←v10268 == 0)) { SOURCE(4452, 121) { word pd139; pd139 = (* (( (ptr) (* (( (ptr) gf←c63232)+156)/* var←c57696 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd139 ))))((* (( (ptr) ggData←v6988)+3) ), 0, (* (( (ptr) gf←c63232)+83) ), (* (( (ptr) gf←c63232)+51) ), pd139); }; SOURCE(4575, 6) goto lab←L100001; } else { SOURCE(4590, 28) theirScene←v10296 = (* (( (ptr) theirData←v10268)+11) ); }; SOURCE(4620, 73) { W2 var←c58080; { word pd140; pd140 = (* (( (ptr) (* (( (ptr) gf←c63232)+159)/* var←c57824 */ ))+62) ); (void) ( *( (fPt) ((* (ptr) pd140 ))))((word) &var←c58080, (* (ptr) sliceD←v7016 ), (* (( (ptr) sliceD←v7016)+1) ), pd140) ; }; success←v10352 = var←c58080.f1; ourColor←v10324 = var←c58080.f0; }; SOURCE(4695, 280) if ((0 != success←v10352)) { SOURCE(4713, 87) { word var←c58112; { word pd141; pd141 = (* (( (ptr) (* (( (ptr) gf←c63232)+162)/* var←c58016 */ ))+5) ); var←c58112 = (word) ( *( (fPt) ((* (ptr) pd141 ))))(ourColor←v10324, pd141); }; { word pd142; pd142 = (* (( (ptr) (* (( (ptr) gf←c63232)+163)/* var←c58048 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd142 ))))(theirData←v10268, ourColor←v10324, var←c58112, 1, (* (( (ptr) gf←c63232)+74) ), pd142) ; }; }; SOURCE(4802, 38) (void) SendColorToColorTool←P240(ggData←v6988, ourColor←v10324); } else { SOURCE(4851, 124) { word pd143; pd143 = (* (( (ptr) (* (( (ptr) gf←c63232)+156)/* var←c57696 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd143 ))))((* (( (ptr) ggData←v6988)+3) ), 0, (* (( (ptr) gf←c63232)+83) ), (* (( (ptr) gf←c63232)+50) ), pd143); }; }; /* removed tail goto */ lab←L100001: ; (* (ptr) formal←c0109 ) = doNormalBehavior←v7060; (* (( (ptr) formal←c0109)+1) ) = done←v7088; return; } static void SendColorToColorTool←P240(ggData←v7288, formal←c0590) word ggData←v7288; word formal←c0590; { W7 var←c63264; /* declaration of color←v7316 skipped */ register ptr gf←c63296 = (ptr) &globalframe; var←c63264.f4/* color←v7316 */ = formal←c0590; /* SendColorToColorTool: */ SOURCE(5178, 335) SOURCE(5240, 273) if ((0 != (word) XR←IsBound((* ((( (ptr) (* (( (ptr) gf←c63296)+164)/* var←c58144 */ ))+8)) )))) { SOURCE(5285, 228) if ((var←c63264.f4/* color←v7316 */ == 0)) { SOURCE(5303, 98) { word pd144; pd144 = (* (( (ptr) (* (( (ptr) gf←c63296)+156)/* var←c57696 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd144 ))))((* (( (ptr) ggData←v7288)+3) ), 0, (* (( (ptr) gf←c63296)+83) ), (* (( (ptr) gf←c63296)+49) ), pd144); }; } else { SOURCE(5401, 127) { /* declaration of noColorTool←v10396 skipped */ SOURCE(5403, 25) var←c63264.f5/* noColorTool←v10396 */ = 0; SOURCE(5430, 83) SOURCE(5430, 83) { /* declaration of var←c01 skipped */ var←c63264.f6/* var←c01 */ = (* (( (ptr) (* (( (ptr) gf←c63296)+164)/* var←c58144 */ ))+8) ); { word var←c02; { word var←c0586; var←c0586 = (word) &var←c63264; var←c02 = (word) XR←Enable(( ((word) (fPt) NoName←Q3204) ), ( ((word) (fPt) NoName←Q3264) ), var←c0586); }; /* removed trivial cond node */ }; }; }; }; }; } static word NoName←Q3204(formal←c0555) word formal←c0555; { SOURCE(5430, 83) { word pd145; pd145 = (* (( (ptr) formal←c0555)+6) ); (void) ( *( (fPt) ((* (ptr) pd145 ))))((* (( (ptr) formal←c0555)+4) ), 0, pd145); }; return(0); } static word StartSelect←P300(input←v23300, ggData←v23328, worldPt←v23356) word input←v23300; word ggData←v23328; W2 worldPt←v23356; { register ptr gf←c63328 = (ptr) &globalframe; word success←v23400; /* StartSelect: */ SOURCE(5538, 427) SOURCE(5538, 427) success←v23400 = 1; SOURCE(5572, 252) { word var←c58176; var←c58176 = (* (ptr) input←v23300 ); if ((var←c58176 == (* (( (ptr) gf←c63328)+38) ))) { SOURCE(5617, 31) (* (( (ptr) (* (( (ptr) ggData←v23328)+16) ))+14) ) = 1; goto endif0146; }; if ((var←c58176 == (* (( (ptr) gf←c63328)+37) ))) { SOURCE(5673, 33) (* (( (ptr) (* (( (ptr) ggData←v23328)+16) ))+14) ) = 3; goto endif0146; }; if ((var←c58176 == (* (( (ptr) gf←c63328)+22) ))) { SOURCE(5734, 30) (* (( (ptr) (* (( (ptr) ggData←v23328)+16) ))+14) ) = 5; goto endif0146; }; if ((var←c58176 == (* (( (ptr) gf←c63328)+23) ))) { SOURCE(5790, 34) (* (( (ptr) (* (( (ptr) ggData←v23328)+16) ))+14) ) = 7; goto endif0146; }; SOURCE(5837, 5) (void) XR←RaiseUnnamedError(); goto endif0146; endif0146: ; }; SOURCE(5844, 43) { word pd147; pd147 = (* (( (ptr) (* (( (ptr) gf←c63328)+165)/* var←c58208 */ ))+21) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd147 ))))(ggData←v23328, pd147))) { SOURCE(5887, 5) (void) XR←RaiseUnnamedError(); }; }; SOURCE(5894, 35) { word pd148; pd148 = (* (( (ptr) (* (( (ptr) gf←c63328)+166)/* var←c58240 */ ))+24) ); (void) ( *( (fPt) ((* (ptr) pd148 ))))(ggData←v23328, pd148); }; SOURCE(5931, 34) (void) DuringSelect←P360(0, ggData←v23328, worldPt←v23356); SOURCE(5538, 427) return(success←v23400); } static void DuringSelect←P360(input←v23460, ggData←v23488, worldPt←v23516) word input←v23460; word ggData←v23488; W2 worldPt←v23516; { register ptr gf←c63360 = (ptr) &globalframe; W2 resultPoint←v10468; W2 normal←v10496; word feature←v10524 = 0; word hitData←v10552 = 0; /* DuringSelect: */ SOURCE(5971, 1521) SOURCE(6116, 44) { word pd149; pd149 = (* (( (ptr) (* (( (ptr) gf←c63360)+167)/* var←c58272 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd149 ))))((* (( (ptr) gf←c63360)+25) ), (* (( (ptr) gf←c63360)+26) ), pd149); }; SOURCE(6162, 109) { word pd150; pd150 = (* (( (ptr) (* (( (ptr) gf←c63360)+165)/* var←c58208 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd150 ))))(ggData←v23488, 0, 1, 0, 0, 0 , 1, 0, 1, 0, pd150); }; SOURCE(6273, 656) { word var←c58304; { word pd151; pd151 = (* (( (ptr) (* (( (ptr) gf←c63360)+161)/* var←c57920 */ ))+102) ); var←c58304 = (word) ( *( (fPt) ((* (ptr) pd151 ))))(ggData←v23488, pd151); }; switch (var←c58304) { case 1: SOURCE(6324, 162) { W6 var←c58400; { word pd152; pd152 = (* (( (ptr) (* (( (ptr) gf←c63360)+169)/* var←c58368 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd152 ))))((word) &var←c58400, worldPt←v23516, (* (ptr) (* (( (ptr) ggData←v23488)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63360)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23488)+18) ))+8) ), ggData←v23488 , 0, pd152); }; hitData←v10552 = var←c58400.f5; feature←v10524 = var←c58400.f4; normal←v10496 = (* (W2Pt) (( (ptr) &var←c58400)+2) ); resultPoint←v10468 = (* (W2Pt) &var←c58400 ); }; break; case 3: case 4: SOURCE(6513, 154) { W6 var←c58432; { word pd153; pd153 = (* (( (ptr) (* (( (ptr) gf←c63360)+169)/* var←c58368 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd153 ))))((word) &var←c58432, worldPt←v23516, (* (ptr) (* (( (ptr) ggData←v23488)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63360)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23488)+18) ))+8) ), ggData←v23488, pd153) ; }; hitData←v10552 = var←c58432.f5; feature←v10524 = var←c58432.f4; normal←v10496 = (* (W2Pt) (( (ptr) &var←c58432)+2) ); resultPoint←v10468 = (* (W2Pt) &var←c58432 ); }; break; case 5: case 7: case 6: SOURCE(6694, 154) { W6 var←c58464; { word pd154; pd154 = (* (( (ptr) (* (( (ptr) gf←c63360)+169)/* var←c58368 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd154 ))))((word) &var←c58464, worldPt←v23516, (* (ptr) (* (( (ptr) ggData←v23488)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63360)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23488)+18) ))+8) ), ggData←v23488, pd154) ; }; hitData←v10552 = var←c58464.f5; feature←v10524 = var←c58464.f4; normal←v10496 = (* (W2Pt) (( (ptr) &var←c58464)+2) ); resultPoint←v10468 = (* (W2Pt) &var←c58464 ); }; break; case 8: SOURCE(6860, 21) resultPoint←v10468 = worldPt←v23516; SOURCE(6883, 16) normal←v10496.f0 = (* (ptr) &fc127 ); normal←v10496.f1 = (* (ptr) &fc129 ); SOURCE(6901, 13) feature←v10524 = 0; SOURCE(6916, 13) hitData←v10552 = 0; break; default: SOURCE(6945, 5) (void) XR←RaiseUnnamedError(); break; }; }; SOURCE(6952, 94) { word pd155; pd155 = (* (( (ptr) (* (( (ptr) gf←c63360)+166)/* var←c58240 */ ))+33) ); (void) ( *( (fPt) ((* (ptr) pd155 ))))(ggData←v23488, resultPoint←v10468, normal←v10496, worldPt←v23516, feature←v10524, hitData←v10552, pd155) ; }; SOURCE(7048, 42) { word pd156; pd156 = (* (( (ptr) (* (( (ptr) gf←c63360)+170)/* var←c58496 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd156 ))))((* (( (ptr) ggData←v23488)+11) ), 0, pd156); }; SOURCE(7092, 198) if ((feature←v10524 != 0)) { SOURCE(7112, 96) { word var←c58528; var←c58528 = (word) SelectAndDescribeSlicePart←P840(feature←v10524, hitData←v10552, ggData←v23488, (* (( (ptr) (* (( (ptr) ggData←v23488)+16) ))+14) ), (* (( (ptr) gf←c63360)+24) )); }; } else { SOURCE(7208, 82) { W2 var←c58560; var←c58560.f0 = 11; var←c58560.f1 = (* (( (ptr) gf←c63360)+24) ); { word pd157; pd157 = (* (( (ptr) (* (( (ptr) gf←c63360)+156)/* var←c57696 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd157 ))))((* (( (ptr) ggData←v23488)+3) ), 0, (* (( (ptr) gf←c63360)+27) ), (* (( (ptr) gf←c63360)+28) ), var←c58560, pd157); }; }; }; SOURCE(7292, 155) { word pd158; pd158 = (* (( (ptr) (* (( (ptr) gf←c63360)+171)/* var←c58592 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd158 ))))((* (( (ptr) gf←c63360)+25) ), ggData←v23488, 4, 0, 1, 1, pd158); }; SOURCE(7449, 43) { word pd159; pd159 = (* (( (ptr) (* (( (ptr) gf←c63360)+167)/* var←c58272 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd159 ))))((* (( (ptr) gf←c63360)+25) ), (* (( (ptr) gf←c63360)+26) ), pd159); }; } static void EndSelect←P420(input←v23576, ggData←v23604, worldPt←v23632) word input←v23576; word ggData←v23604; W2 worldPt←v23632; { register ptr gf←c63392 = (ptr) &globalframe; W2 resultPoint←v10608; W2 normal←v10636; word feature←v10664 = 0; word hitData←v10692 = 0; word featureCycler←v10720 = 0; /* EndSelect: */ SOURCE(7518, 1199) SOURCE(7674, 487) { word var←c58624; { word pd160; pd160 = (* (( (ptr) (* (( (ptr) gf←c63392)+161)/* var←c57920 */ ))+102) ); var←c58624 = (word) ( *( (fPt) ((* (ptr) pd160 ))))(ggData←v23604, pd160); }; if ((var←c58624 == 1)) { SOURCE(7725, 142) { word pd161; pd161 = (* (( (ptr) (* (( (ptr) gf←c63392)+169)/* var←c58368 */ ))+9) ); featureCycler←v10720 = (word) ( *( (fPt) ((* (ptr) pd161 ))))(worldPt←v23632, (* (ptr) (* (( (ptr) ggData←v23604)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63392)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23604)+18) ))+8) ), ggData←v23604, 0 , 1, pd161); }; } else { if ((var←c58624 == 3)) { SOURCE(7880, 134) { word pd162; pd162 = (* (( (ptr) (* (( (ptr) gf←c63392)+169)/* var←c58368 */ ))+10) ); featureCycler←v10720 = (word) ( *( (fPt) ((* (ptr) pd162 ))))(worldPt←v23632, (* (ptr) (* (( (ptr) ggData←v23604)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63392)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23604)+18) ))+8) ), ggData←v23604, pd162) ; }; } else { SOURCE(8027, 134) { word pd163; pd163 = (* (( (ptr) (* (( (ptr) gf←c63392)+169)/* var←c58368 */ ))+11) ); featureCycler←v10720 = (word) ( *( (fPt) ((* (ptr) pd163 ))))(worldPt←v23632, (* (ptr) (* (( (ptr) ggData←v23604)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63392)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23604)+18) ))+8) ), ggData←v23604, pd163) ; }; }; }; }; SOURCE(8163, 49) { word pd164; pd164 = (* (( (ptr) (* (( (ptr) gf←c63392)+161)/* var←c57920 */ ))+109) ); (void) ( *( (fPt) ((* (ptr) pd164 ))))(ggData←v23604, featureCycler←v10720, pd164); }; SOURCE(8214, 84) { W6 var←c58656; { word pd165; pd165 = (* (( (ptr) (* (( (ptr) gf←c63392)+169)/* var←c58368 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd165 ))))((word) &var←c58656, featureCycler←v10720, pd165); }; hitData←v10692 = var←c58656.f5; feature←v10664 = var←c58656.f4; normal←v10636 = (* (W2Pt) (( (ptr) &var←c58656)+2) ); resultPoint←v10608 = (* (W2Pt) &var←c58656 ); }; SOURCE(8300, 94) { word pd166; pd166 = (* (( (ptr) (* (( (ptr) gf←c63392)+166)/* var←c58240 */ ))+33) ); (void) ( *( (fPt) ((* (ptr) pd166 ))))(ggData←v23604, resultPoint←v10608, normal←v10636, worldPt←v23632, feature←v10664, hitData←v10692, pd166) ; }; SOURCE(8396, 28) { word pd167; pd167 = (* (( (ptr) (* (( (ptr) gf←c63392)+171)/* var←c58592 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd167 ))))(ggData←v23604, pd167); }; SOURCE(8426, 42) { word pd168; pd168 = (* (( (ptr) (* (( (ptr) gf←c63392)+170)/* var←c58496 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd168 ))))((* (( (ptr) ggData←v23604)+11) ), 0, pd168); }; SOURCE(8470, 121) { word var←c58688; var←c58688 = (word) RopeFromSelectMode←P540((* ((( (ptr) (* (( (ptr) ggData←v23604)+16) ))+14)) )); (void) EndSelectAux←P780(ggData←v23604, resultPoint←v10608, feature←v10664, hitData←v10692, (* (( (ptr) (* (( (ptr) ggData←v23604)+16) ))+14) ), var←c58688); }; SOURCE(8593, 124) { word pd169; pd169 = (* (( (ptr) (* (( (ptr) gf←c63392)+171)/* var←c58592 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd169 ))))((* (( (ptr) gf←c63392)+29) ), ggData←v23604, 4, 0, 0, 0, pd169); }; } static word SelectModeFromAtom←P480(atom←v7376) word atom←v7376; { register ptr gf←c63424 = (ptr) &globalframe; word selectMode←v7420; /* SelectModeFromAtom: */ SOURCE(8810, 177) SOURCE(8885, 102) { word var←c58720; var←c58720 = atom←v7376; if ((var←c58720 == (* (( (ptr) gf←c63424)+30) ))) { selectMode←v7420 = 1; goto endif0170; }; if ((var←c58720 == (* (( (ptr) gf←c63424)+31) ))) { selectMode←v7420 = 3; goto endif0170; }; if ((var←c58720 == (* (( (ptr) gf←c63424)+32) ))) { selectMode←v7420 = 5; goto endif0170; }; selectMode←v7420 = 7; goto endif0170; endif0170: ; }; SOURCE(8810, 177) return(selectMode←v7420); } static word RopeFromSelectMode←P540(selectMode←v7480) word selectMode←v7480; { register ptr gf←c63456 = (ptr) &globalframe; word rope←v7524; /* RopeFromSelectMode: */ SOURCE(8993, 186) SOURCE(8993, 186) rope←v7524 = 0; SOURCE(9068, 111) { word var←c58752; var←c58752 = selectMode←v7480; switch (var←c58752) { case 1: rope←v7524 = (* (( (ptr) gf←c63456)+33) ); break; case 3: rope←v7524 = (* (( (ptr) gf←c63456)+34) ); break; case 5: rope←v7524 = (* (( (ptr) gf←c63456)+35) ); break; default: rope←v7524 = (* (( (ptr) gf←c63456)+36) ); break; }; }; SOURCE(8993, 186) return(rope←v7524); } static void Select←P600(ggData←v23692, event←v23720) word ggData←v23692; word event←v23720; { register ptr gf←c63488 = (ptr) &globalframe; W2 resultPoint←v10776; W2 normal←v10804; word feature←v10832 = 0; word hitData←v10860 = 0; word featureCycler←v10888 = 0; W2 worldPt←v10916; word selectMode←v10944 = 7; word gravExtent←v10972; word gravType←v11000; word gravTypeSpecified←v11028 = 0; word listIndex←v11056 = 0; /* Select: */ SOURCE(10923, 2624) SOURCE(11086, 22) worldPt←v10916.f0 = (* (ptr) &fc127 ); worldPt←v10916.f1 = (* (ptr) &fc127 ); SOURCE(11145, 35) gravExtent←v10972 = (* (ptr) (* (( (ptr) ggData←v23692)+18) ) ); SOURCE(11182, 50) gravType←v11000 = (* (( (ptr) (* (( (ptr) ggData←v23692)+18) ))+11) ); SOURCE(11288, 625) { register word loe←v11112; loe←v11112 = event←v23720; lab←L100009: ; if ((loe←v11112 != 0)) { } else { goto lab←L100006; }; { word el←v11252; SOURCE(11344, 19) el←v11252 = (* (ptr) loe←v11112 ); SOURCE(11365, 462) { word var←c58816; var←c58816 = listIndex←v11056; switch (var←c58816) { case 0: SOURCE(11392, 33) if ((XR←Narrow(el←v11252, (* (( (ptr) gf←c63488)+9) )) != (* (( (ptr) gf←c63488)+87) ))) { SOURCE(11425, 5) (void) XR←RaiseUnnamedError(); }; break; case 1: SOURCE(11439, 76) { word var←c58848; var←c58848 = el←v11252; if ((var←c58848 == 0)) { goto lab←L100010; }; if (((* (( (ptr) gf←c63488)+21) ) == XR←GetReferentType(var←c58848))) { { word p←v11308; p←v11308 = var←c58848; SOURCE(11475, 12) worldPt←v10916 = (* (W2Pt) p←v11308 ); }; } else { lab←L100010: ; SOURCE(11500, 15) worldPt←v10916.f0 = (* (ptr) &fc127 ); worldPt←v10916.f1 = (* (ptr) &fc127 ); }; }; break; case 2: SOURCE(11527, 99) { word var←c58880; var←c58880 = el←v11252; if ((var←c58880 == 0)) { goto lab←L100011; }; if (((* (( (ptr) gf←c63488)+9) ) == XR←GetReferentType(var←c58880))) { { word a←v11364; a←v11364 = var←c58880; SOURCE(11558, 34) selectMode←v10944 = (word) SelectModeFromAtom←P480(a←v11364); }; } else { lab←L100011: ; SOURCE(11605, 21) selectMode←v10944 = 7; }; }; break; case 3: SOURCE(11638, 87) { word var←c58912; var←c58912 = el←v11252; if ((var←c58912 == 0)) { goto lab←L100012; }; if (((* (( (ptr) gf←c63488)+9) ) == XR←GetReferentType(var←c58912))) { { word g←v11408; g←v11408 = var←c58912; SOURCE(11670, 30) gravType←v11000 = (word) GravTypeFromAtom←P660(g←v11408); SOURCE(11702, 23) gravTypeSpecified←v11028 = 1; }; } else { lab←L100012: ; }; }; break; case 4: SOURCE(11777, 50) { word var←c58944; var←c58944 = el←v11252; if ((var←c58944 == 0)) { goto lab←L100013; }; if (((* (( (ptr) gf←c63488)+20) ) == XR←GetReferentType(var←c58944))) { { word r←v11452; r←v11452 = var←c58944; SOURCE(11812, 15) gravExtent←v10972 = (* (ptr) r←v11452 ); }; } else { lab←L100013: ; }; }; break; default: SOURCE(11883, 4) goto lab←L100007; }; }; SOURCE(11889, 24) listIndex←v11056 = (listIndex←v11056 + 1); }; loe←v11112 = (* (( (ptr) loe←v11112)+1) ); goto lab←L100009; lab←L100006: ; lab←L100007: ; }; SOURCE(11925, 109) { word pd171; pd171 = (* (( (ptr) (* (( (ptr) gf←c63488)+165)/* var←c58208 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd171 ))))(ggData←v23692, 0, 1, 0, 0, 0 , 1, 0, 1, 0, pd171); }; SOURCE(12037, 948) if ((0 != gravTypeSpecified←v11028)) { SOURCE(12063, 472) { word var←c58976; var←c58976 = gravType←v11000; if ((var←c58976 == 1)) { SOURCE(12103, 136) { word pd172; pd172 = (* (( (ptr) (* (( (ptr) gf←c63488)+169)/* var←c58368 */ ))+9) ); featureCycler←v10888 = (word) ( *( (fPt) ((* (ptr) pd172 ))))(worldPt←v10916, gravExtent←v10972, (* (ptr) (* (( (ptr) (* ( ( (ptr) gf←c63488)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23692)+18) ))+8) ), ggData←v23692, 0 , 1, pd172); }; } else { if ((var←c58976 == 0)) { SOURCE(12259, 128) { word pd173; pd173 = (* (( (ptr) (* (( (ptr) gf←c63488)+169)/* var←c58368 */ ))+10) ); featureCycler←v10888 = (word) ( *( (fPt) ((* (ptr) pd173 ))))(worldPt←v10916, gravExtent←v10972, (* (ptr) (* (( (ptr) (* ( ( (ptr) gf←c63488)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23692)+18) ))+8) ), ggData←v23692, pd173) ; }; } else { SOURCE(12401, 134) { word pd174; pd174 = (* (( (ptr) (* (( (ptr) gf←c63488)+169)/* var←c58368 */ ))+11) ); featureCycler←v10888 = (word) ( *( (fPt) ((* (ptr) pd174 ))))(worldPt←v10916, gravExtent←v10972, (* (ptr) (* (( (ptr) (* ( ( (ptr) gf←c63488)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23692)+18) ))+8) ), ggData←v23692, pd174) ; }; }; }; }; } else { SOURCE(12535, 450) { word var←c59008; var←c59008 = selectMode←v10944; if ((var←c59008 == 1)) { SOURCE(12567, 136) { word pd175; pd175 = (* (( (ptr) (* (( (ptr) gf←c63488)+169)/* var←c58368 */ ))+9) ); featureCycler←v10888 = (word) ( *( (fPt) ((* (ptr) pd175 ))))(worldPt←v10916, gravExtent←v10972, (* (ptr) (* (( (ptr) (* ( ( (ptr) gf←c63488)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23692)+18) ))+8) ), ggData←v23692, 0 , 1, pd175); }; } else { if ((var←c59008 == 3)) { SOURCE(12716, 128) { word pd176; pd176 = (* (( (ptr) (* (( (ptr) gf←c63488)+169)/* var←c58368 */ ))+10) ); featureCycler←v10888 = (word) ( *( (fPt) ((* (ptr) pd176 ))))(worldPt←v10916, gravExtent←v10972, (* (ptr) (* (( (ptr) (* ( ( (ptr) gf←c63488)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23692)+18) ))+8) ), ggData←v23692, pd176) ; }; } else { SOURCE(12857, 128) { word pd177; pd177 = (* (( (ptr) (* (( (ptr) gf←c63488)+169)/* var←c58368 */ ))+11) ); featureCycler←v10888 = (word) ( *( (fPt) ((* (ptr) pd177 ))))(worldPt←v10916, gravExtent←v10972, (* (ptr) (* (( (ptr) (* ( ( (ptr) gf←c63488)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23692)+18) ))+8) ), ggData←v23692, pd177) ; }; }; }; }; }; SOURCE(12987, 49) { word pd178; pd178 = (* (( (ptr) (* (( (ptr) gf←c63488)+161)/* var←c57920 */ ))+109) ); (void) ( *( (fPt) ((* (ptr) pd178 ))))(ggData←v23692, featureCycler←v10888, pd178); }; SOURCE(13038, 84) { W6 var←c59040; { word pd179; pd179 = (* (( (ptr) (* (( (ptr) gf←c63488)+169)/* var←c58368 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd179 ))))((word) &var←c59040, featureCycler←v10888, pd179); }; hitData←v10860 = var←c59040.f5; feature←v10832 = var←c59040.f4; normal←v10804 = (* (W2Pt) (( (ptr) &var←c59040)+2) ); resultPoint←v10776 = (* (W2Pt) &var←c59040 ); }; SOURCE(13124, 94) { word pd180; pd180 = (* (( (ptr) (* (( (ptr) gf←c63488)+166)/* var←c58240 */ ))+33) ); (void) ( *( (fPt) ((* (ptr) pd180 ))))(ggData←v23692, resultPoint←v10776, normal←v10804, worldPt←v10916, feature←v10832, hitData←v10860, pd180) ; }; SOURCE(13220, 28) { word pd181; pd181 = (* (( (ptr) (* (( (ptr) gf←c63488)+171)/* var←c58592 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd181 ))))(ggData←v23692, pd181); }; SOURCE(13250, 42) { word pd182; pd182 = (* (( (ptr) (* (( (ptr) gf←c63488)+170)/* var←c58496 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd182 ))))((* (( (ptr) ggData←v23692)+11) ), 0, pd182); }; SOURCE(13294, 95) { word var←c59072; var←c59072 = (word) RopeFromSelectMode←P540(selectMode←v10944); (void) EndSelectAux←P780(ggData←v23692, resultPoint←v10776, feature←v10832, hitData←v10860, selectMode←v10944, var←c59072) ; }; SOURCE(13391, 156) { word pd183; pd183 = (* (( (ptr) (* (( (ptr) gf←c63488)+171)/* var←c58592 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd183 ))))((* (( (ptr) gf←c63488)+25) ), ggData←v23692, 4, 0, 1, 0, pd183); }; } static word GravTypeFromAtom←P660(atom←v7584) word atom←v7584; { register ptr gf←c63520 = (ptr) &globalframe; word gravType←v7628; /* GravTypeFromAtom: */ SOURCE(13633, 223) SOURCE(13705, 151) { word var←c59104; var←c59104 = atom←v7584; if ((var←c59104 == (* (( (ptr) gf←c63520)+39) ))) { gravType←v7628 = 0; goto endif0184; }; if ((var←c59104 == (* (( (ptr) gf←c63520)+40) ))) { gravType←v7628 = 1; goto endif0184; }; if ((var←c59104 == (* (( (ptr) gf←c63520)+41) ))) { gravType←v7628 = 2; goto endif0184; }; gravType←v7628 = 2; goto endif0184; endif0184: ; }; SOURCE(13633, 223) return(gravType←v7628); } static void SelectFromFeature←P720(ggData←v7688, testPoint←v7716, point←v7744, normal←v7772, feature←v7800, hitData←v7828) word ggData←v7688; W2 testPoint←v7716; W2 point←v7744; W2 normal←v7772; word feature←v7800; word hitData←v7828; { register ptr gf←c63552 = (ptr) &globalframe; /* SelectFromFeature: */ SOURCE(13863, 1182) SOURCE(14001, 1044) SOURCE(14003, 54) { word selectMode←v11508; SOURCE(14003, 54) { word pd185; pd185 = (* (( (ptr) (* (( (ptr) gf←c63552)+161)/* var←c57920 */ ))+102) ); selectMode←v11508 = (word) ( *( (fPt) ((* (ptr) pd185 ))))(ggData←v7688, pd185); }; SOURCE(14059, 26) if ((selectMode←v11508 == 8)) { SOURCE(14085, 17) goto lab←L100014; }; SOURCE(14104, 130) { word pd186; pd186 = (* (( (ptr) (* (( (ptr) gf←c63552)+165)/* var←c58208 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd186 ))))(ggData←v7688, 0, 1, 0, 1, 0 , 1, 0, 1, 0, pd186); }; SOURCE(14236, 73) (void) SetCaretAttractorEndpoint←P60(ggData←v7688, point←v7744, normal←v7772, point←v7744, feature←v7800, hitData←v7828); SOURCE(14311, 28) { word pd187; pd187 = (* (( (ptr) (* (( (ptr) gf←c63552)+171)/* var←c58592 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd187 ))))(ggData←v7688, pd187); }; SOURCE(14341, 42) { word pd188; pd188 = (* (( (ptr) (* (( (ptr) gf←c63552)+170)/* var←c58496 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd188 ))))((* (( (ptr) ggData←v7688)+11) ), 0, pd188); }; SOURCE(14385, 325) { word var←c59136; var←c59136 = selectMode←v11508; switch (var←c59136) { case 1: SOURCE(14417, 61) (void) EndSelectAux←P780(ggData←v7688, point←v7744, feature←v7800, hitData←v7828, 1, (* (( (ptr) gf←c63552)+33) )); break; case 3: SOURCE(14491, 65) (void) EndSelectAux←P780(ggData←v7688, point←v7744, feature←v7800, hitData←v7828, 3, (* (( (ptr) gf←c63552)+34) )); break; case 5: SOURCE(14566, 65) (void) EndSelectAux←P780(ggData←v7688, point←v7744, feature←v7800, hitData←v7828, 5, (* (( (ptr) gf←c63552)+35) )); break; case 7: SOURCE(14645, 65) (void) EndSelectAux←P780(ggData←v7688, point←v7744, feature←v7800, hitData←v7828, 7, (* (( (ptr) gf←c63552)+36) )); break; default: SOURCE(14723, 5) (void) XR←RaiseUnnamedError(); break; }; }; SOURCE(14730, 153) { word pd189; pd189 = (* (( (ptr) (* (( (ptr) gf←c63552)+171)/* var←c58592 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd189 ))))((* (( (ptr) gf←c63552)+42) ), ggData←v7688, 4, 0, 1, 0, pd189); }; }; goto lab←L100015; lab←L100014: ; SOURCE(14909, 131) { word pd190; pd190 = (* (( (ptr) (* (( (ptr) gf←c63552)+156)/* var←c57696 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd190 ))))((* (( (ptr) ggData←v7688)+3) ), 0, (* (( (ptr) gf←c63552)+83) ), (* (( (ptr) gf←c63552)+43) ), pd190); }; lab←L100015: ; } static void EndSelectAux←P780(ggData←v7900, resultPoint←v7928, feature←v7956, hitData←v7984, mode←v8012, opName←v8040) word ggData←v7900; W2 resultPoint←v7928; word feature←v7956; word hitData←v7984; word mode←v8012; word opName←v8040; { register ptr gf←c63584 = (ptr) &globalframe; /* EndSelectAux: */ SOURCE(15049, 1133) SOURCE(15186, 996) if ((feature←v7956 == 0)) { SOURCE(15210, 32) { word pd191; pd191 = (* (( (ptr) (* (( (ptr) gf←c63584)+158)/* var←c57760 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd191 ))))((* (( (ptr) ggData←v7900)+13) ), 0, pd191); }; SOURCE(15244, 86) { W2 var←c59168; var←c59168.f0 = 11; var←c59168.f1 = opName←v8040; { word pd192; pd192 = (* (( (ptr) (* (( (ptr) gf←c63584)+156)/* var←c57696 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd192 ))))((* (( (ptr) ggData←v7900)+3) ), 0, (* (( (ptr) gf←c63584)+44) ), (* (( (ptr) gf←c63584)+45) ), var←c59168, pd192); }; }; } else { SOURCE(15341, 216) { word var←c59200; var←c59200 = mode←v8012; switch (var←c59200) { case 1: SOURCE(15367, 36) { word pd193; pd193 = (* (( (ptr) (* (( (ptr) gf←c63584)+161)/* var←c57920 */ ))+105) ); (void) ( *( (fPt) ((* (ptr) pd193 ))))(ggData←v7900, 1, pd193); }; break; case 3: SOURCE(15416, 43) { word pd194; pd194 = (* (( (ptr) (* (( (ptr) gf←c63584)+161)/* var←c57920 */ ))+105) ); (void) ( *( (fPt) ((* (ptr) pd194 ))))(ggData←v7900, 4, pd194); }; break; case 5: SOURCE(15469, 35) { word pd195; pd195 = (* (( (ptr) (* (( (ptr) gf←c63584)+161)/* var←c57920 */ ))+105) ); (void) ( *( (fPt) ((* (ptr) pd195 ))))(ggData←v7900, 5, pd195); }; break; case 7: SOURCE(15518, 39) { word pd196; pd196 = (* (( (ptr) (* (( (ptr) gf←c63584)+161)/* var←c57920 */ ))+105) ); (void) ( *( (fPt) ((* (ptr) pd196 ))))(ggData←v7900, 7, pd196); }; break; default: SOURCE(15570, 5) (void) XR←RaiseUnnamedError(); break; }; }; SOURCE(15577, 607) { word sliceD←v11552; word featureCycler←v11580; word cycleCount←v11608; word sliceType←v11636; SOURCE(15583, 73) sliceD←v11552 = (word) SelectSlicePart←P900(feature←v7956, hitData←v7984, ggData←v7900, mode←v8012); SOURCE(15658, 65) { word pd197; pd197 = (* (( (ptr) (* (( (ptr) gf←c63584)+161)/* var←c57920 */ ))+108) ); featureCycler←v11580 = (word) ( *( (fPt) ((* (ptr) pd197 ))))(ggData←v7900, pd197); }; SOURCE(15725, 37) cycleCount←v11608 = (* (( (ptr) featureCycler←v11580)+1) ); SOURCE(15764, 50) { word pd198; pd198 = (* (( (ptr) (* (( (ptr) gf←c63584)+159)/* var←c57824 */ ))+6) ); sliceType←v11636 = (word) ( *( (fPt) ((* (ptr) pd198 ))))((* (ptr) (sliceD←v11552) ), pd198); }; SOURCE(15816, 48) (void) SitTheCaret←P960((* (( (ptr) ggData←v7900)+13) ), sliceD←v11552, hitData←v7984, mode←v8012); SOURCE(15866, 40) { word pd199; pd199 = (* (( (ptr) (* (( (ptr) gf←c63584)+161)/* var←c57920 */ ))+101) ); (void) ( *( (fPt) ((* (ptr) pd199 ))))(ggData←v7900, sliceD←v11552, pd199); }; SOURCE(15908, 274) if ((cycleCount←v11608 > 1)) { SOURCE(15931, 145) { word var←c59232; { word var←c59264; { word pd200; pd200 = (* (( (ptr) (* (( (ptr) gf←c63584)+159)/* var←c57824 */ ))+23) ); var←c59264 = (word) ( *( (fPt) ((* (ptr) pd200 ))))(sliceD←v11552, pd200); }; { word pd201; pd201 = (* (( (ptr) (* (( (ptr) gf←c63584)+172)/* var←c59296 */ ))+6) ); var←c59232 = (word) ( *( (fPt) ((* (ptr) pd201 ))))(var←c59264, (* (( (ptr) gf←c63584)+46) ), pd201); }; }; { W2 var←c59328; var←c59328.f0 = 5; var←c59328.f1 = (cycleCount←v11608 - 1); { word pd202; pd202 = (* (( (ptr) (* (( (ptr) gf←c63584)+156)/* var←c57696 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd202 ))))((* (( (ptr) ggData←v7900)+3) ), 0, (* (( (ptr) gf←c63584)+44) ), var←c59232, var←c59328, pd202) ; }; }; }; } else { SOURCE(16076, 106) { word var←c59360; { word var←c59392; { word pd203; pd203 = (* (( (ptr) (* (( (ptr) gf←c63584)+159)/* var←c57824 */ ))+23) ); var←c59392 = (word) ( *( (fPt) ((* (ptr) pd203 ))))(sliceD←v11552, pd203); }; { word pd204; pd204 = (* (( (ptr) (* (( (ptr) gf←c63584)+172)/* var←c59296 */ ))+6) ); var←c59360 = (word) ( *( (fPt) ((* (ptr) pd204 ))))(var←c59392, (* (( (ptr) gf←c63584)+47) ), pd204); }; }; { word pd205; pd205 = (* (( (ptr) (* (( (ptr) gf←c63584)+156)/* var←c57696 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd205 ))))((* (( (ptr) ggData←v7900)+3) ), 0, (* (( (ptr) gf←c63584)+44) ), var←c59360, pd205) ; }; }; }; }; }; } static word SelectAndDescribeSlicePart←P840(feature←v8112, hitData←v8140, ggData←v8168, mode←v8196, opRope←v8224) word feature←v8112; word hitData←v8140; word ggData←v8168; word mode←v8196; word opRope←v8224; { register ptr gf←c63616 = (ptr) &globalframe; word selectedD←v8280; /* SelectAndDescribeSlicePart: */ SOURCE(16216, 350) SOURCE(16216, 350) selectedD←v8280 = 0; SOURCE(16383, 59) selectedD←v8280 = (word) SelectSlicePart←P900(feature←v8112, hitData←v8140, ggData←v8168, mode←v8196); SOURCE(16444, 122) { word var←c59424; { word var←c59456; word var←c59488; var←c59456 = XR←NewObject(12, (* (( (ptr) gf←c63616)+19) )); var←c59488 = var←c59456; (* (ptr) var←c59488 ) = 11; (* (( (ptr) var←c59488)+1) ) = opRope←v8224; (* (( (ptr) var←c59488)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c63616)+19) )); var←c59488 = (* (( (ptr) var←c59488)+2) ); (* (ptr) var←c59488 ) = 11; { word pd206; pd206 = (* (( (ptr) (* (( (ptr) gf←c63616)+159)/* var←c57824 */ ))+23) ); (* (( (ptr) var←c59488)+1) ) = (word) ( *( (fPt) ((* (ptr) pd206 ))))(selectedD←v8280, pd206); }; var←c59424 = var←c59456; }; { word pd207; pd207 = (* (( (ptr) (* (( (ptr) gf←c63616)+156)/* var←c57696 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd207 ))))((* (( (ptr) ggData←v8168)+3) ), 0, (* (( (ptr) gf←c63616)+44) ), (* (( (ptr) gf←c63616)+48) ), var←c59424, pd207); }; }; SOURCE(16216, 350) return(selectedD←v8280); } static word SelectSlicePart←P900(feature←v8340, hitData←v8368, ggData←v8396, mode←v8424) word feature←v8340; word hitData←v8368; word ggData←v8396; word mode←v8424; { register ptr gf←c63648 = (ptr) &globalframe; word selectedD←v8480; /* SelectSlicePart: */ SOURCE(16572, 500) SOURCE(16572, 500) selectedD←v8480 = 0; SOURCE(16717, 355) { word var←c59552; var←c59552 = (* (ptr) feature←v8340 ); switch (var←c59552) { case 0: SOURCE(16751, 173) { word slice←v11680; SOURCE(16753, 59) slice←v11680 = (* (ptr) XR←Narrow((* (( (ptr) feature←v8340)+1) ), (* (( (ptr) gf←c63648)+10) )) ); SOURCE(16814, 53) { word pd208; pd208 = (* (( (ptr) (* (( (ptr) gf←c63648)+159)/* var←c57824 */ ))+29) ); selectedD←v8480 = (word) ( *( (fPt) ((* (ptr) pd208 ))))(slice←v11680, hitData←v8368, mode←v8424, pd208); }; SOURCE(16869, 53) { word pd209; pd209 = (* (( (ptr) (* (( (ptr) gf←c63648)+170)/* var←c58496 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd209 ))))(selectedD←v8480, (* (( (ptr) ggData←v8396)+11) ), 0, pd209); }; }; break; case 2: case 3: case 1: case 6: case 5: case 7: SOURCE(17007, 5) (void) XR←RaiseUnnamedError(); break; default: SOURCE(17025, 47) { word var←c0225; var←c0225 = (* (( (ptr) gf←c63648)+52) ); (void) XR←RaiseError((* (( (ptr) gf←c63648)+4)/* Problem←v5492 */ ), (word) &var←c0225); }; break; }; }; SOURCE(16572, 500) return(selectedD←v8480); } static void SitTheCaret←P960(caret←v8540, sliceD←v8568, hitData←v8596, mode←v8624) word caret←v8540; word sliceD←v8568; word hitData←v8596; word mode←v8624; { register ptr gf←c63680 = (ptr) &globalframe; word childD←v11724 = 0; /* SitTheCaret: */ SOURCE(17078, 543) SOURCE(17207, 119) { word pd210; pd210 = (* (( (ptr) (* (( (ptr) gf←c63680)+173)/* var←c59584 */ ))+62) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd210 ))))((* (ptr) (sliceD←v8568) ), pd210))) { SOURCE(17249, 77) { word pd211; pd211 = (* (( (ptr) (* (( (ptr) gf←c63680)+173)/* var←c59584 */ ))+78) ); childD←v11724 = (word) ( *( (fPt) ((* (ptr) pd211 ))))((* (ptr) sliceD←v8568 ), (* (( (ptr) sliceD←v8568)+1) ), 1, (* ( ( (ptr) gf←c63680)+32) ), pd211); }; }; }; SOURCE(17331, 290) if ((childD←v11724 == 0)) { SOURCE(17352, 31) { word pd212; pd212 = (* (( (ptr) (* (( (ptr) gf←c63680)+158)/* var←c57760 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd212 ))))(caret←v8540, 0, pd212); }; } else { SOURCE(17385, 236) { word var←c59616; var←c59616 = mode←v8624; switch (var←c59616) { case 1: SOURCE(17413, 28) { word pd213; pd213 = (* (( (ptr) (* (( (ptr) gf←c63680)+158)/* var←c57760 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd213 ))))(caret←v8540, sliceD←v8568, pd213); }; break; case 3: case 5: case 7: SOURCE(17473, 150) { word jointD←v11768 = 0; W5 var←c0233; SOURCE(17500, 91) { word pd214; pd214 = (* (( (ptr) (* (( (ptr) gf←c63680)+159)/* var←c57824 */ ))+45) ); (void) ( *( (fPt) ((* (ptr) pd214 ))))((word) &var←c0233, sliceD←v8568, (* (W2Pt) (( (ptr) caret←v8540)+1) ), (* (W2Pt) ( ( (ptr) caret←v8540)+1) ), hitData←v8596, pd214); }; jointD←v11768 = var←c0233.f0; SOURCE(17593, 28) { word pd215; pd215 = (* (( (ptr) (* (( (ptr) gf←c63680)+158)/* var←c57760 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd215 ))))(caret←v8540, jointD←v11768, pd215); }; }; break; default: SOURCE(17637, 5) (void) XR←RaiseUnnamedError(); break; }; }; }; } static word StartDeselect←P1020(input←v23780, ggData←v23808, worldPt←v23836) word input←v23780; word ggData←v23808; W2 worldPt←v23836; { register ptr gf←c63712 = (ptr) &globalframe; word success←v23880; /* StartDeselect: */ SOURCE(17650, 565) SOURCE(17650, 565) success←v23880 = 1; SOURCE(17686, 260) { word var←c59648; var←c59648 = (* (ptr) input←v23780 ); if ((var←c59648 == (* (( (ptr) gf←c63712)+53) ))) { SOURCE(17733, 31) (* (( (ptr) (* (( (ptr) ggData←v23808)+16) ))+14) ) = 1; goto endif0216; }; if ((var←c59648 == (* (( (ptr) gf←c63712)+54) ))) { SOURCE(17791, 33) (* (( (ptr) (* (( (ptr) ggData←v23808)+16) ))+14) ) = 3; goto endif0216; }; if ((var←c59648 == (* (( (ptr) gf←c63712)+55) ))) { SOURCE(17854, 30) (* (( (ptr) (* (( (ptr) ggData←v23808)+16) ))+14) ) = 5; goto endif0216; }; if ((var←c59648 == (* (( (ptr) gf←c63712)+56) ))) { SOURCE(17912, 34) (* (( (ptr) (* (( (ptr) ggData←v23808)+16) ))+14) ) = 7; goto endif0216; }; SOURCE(17959, 5) (void) XR←RaiseUnnamedError(); goto endif0216; endif0216: ; }; SOURCE(17966, 43) { word pd217; pd217 = (* (( (ptr) (* (( (ptr) gf←c63712)+165)/* var←c58208 */ ))+21) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd217 ))))(ggData←v23808, pd217))) { SOURCE(18009, 5) (void) XR←RaiseUnnamedError(); }; }; SOURCE(18039, 35) { word pd218; pd218 = (* (( (ptr) (* (( (ptr) gf←c63712)+166)/* var←c58240 */ ))+24) ); (void) ( *( (fPt) ((* (ptr) pd218 ))))(ggData←v23808, pd218); }; SOURCE(18076, 55) { word pd219; pd219 = (* (( (ptr) (* (( (ptr) gf←c63712)+174)/* var←c59680 */ ))+7) ); (* (( (ptr) (* (( (ptr) ggData←v23808)+16) ))+13) ) = (word) ( *( (fPt) ((* (ptr) pd219 ))))((* (ptr) (&fc220) ), pd219) ; }; SOURCE(18179, 36) (void) DuringDeselect←P1080(0, ggData←v23808, worldPt←v23836); SOURCE(17650, 565) return(success←v23880); } static void DuringDeselect←P1080(input←v23940, ggData←v23968, worldPt←v23996) word input←v23940; word ggData←v23968; W2 worldPt←v23996; { register ptr gf←c63744 = (ptr) &globalframe; W2 resultPoint←v11840; W2 normal←v11868; word feature←v11896 = 0; word hitData←v11924 = 0; /* DuringDeselect: */ SOURCE(18221, 1261) SOURCE(18370, 34) (* (W2Pt) (( (ptr) (* (( (ptr) ggData←v23968)+16) ))+8) ) = worldPt←v23996; SOURCE(18406, 130) { word pd221; pd221 = (* (( (ptr) (* (( (ptr) gf←c63744)+165)/* var←c58208 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd221 ))))(ggData←v23968, 0, 1, 0, 1, 0 , 1, 0, 1, 0, pd221); }; SOURCE(18538, 547) { word var←c59712; { word pd222; pd222 = (* (( (ptr) (* (( (ptr) gf←c63744)+161)/* var←c57920 */ ))+102) ); var←c59712 = (word) ( *( (fPt) ((* (ptr) pd222 ))))(ggData←v23968, pd222); }; if ((var←c59712 == 1)) { SOURCE(18589, 162) { W6 var←c59744; { word pd223; pd223 = (* (( (ptr) (* (( (ptr) gf←c63744)+169)/* var←c58368 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd223 ))))((word) &var←c59744, worldPt←v23996, (* (ptr) (* (( (ptr) ggData←v23968)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63744)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23968)+18) ))+8) ), ggData←v23968 , 0, pd223); }; hitData←v11924 = var←c59744.f5; feature←v11896 = var←c59744.f4; normal←v11868 = (* (W2Pt) (( (ptr) &var←c59744)+2) ); resultPoint←v11840 = (* (W2Pt) &var←c59744 ); }; } else { if ((var←c59712 == 3)) { SOURCE(18764, 154) { W6 var←c59776; { word pd224; pd224 = (* (( (ptr) (* (( (ptr) gf←c63744)+169)/* var←c58368 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd224 ))))((word) &var←c59776, worldPt←v23996, (* (ptr) (* (( (ptr) ggData←v23968)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63744)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23968)+18) ))+8) ), ggData←v23968, pd224) ; }; hitData←v11924 = var←c59776.f5; feature←v11896 = var←c59776.f4; normal←v11868 = (* (W2Pt) (( (ptr) &var←c59776)+2) ); resultPoint←v11840 = (* (W2Pt) &var←c59776 ); }; } else { SOURCE(18931, 154) { W6 var←c59808; { word pd225; pd225 = (* (( (ptr) (* (( (ptr) gf←c63744)+169)/* var←c58368 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd225 ))))((word) &var←c59808, worldPt←v23996, (* (ptr) (* (( (ptr) ggData←v23968)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63744)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v23968)+18) ))+8) ), ggData←v23968, pd225) ; }; hitData←v11924 = var←c59808.f5; feature←v11896 = var←c59808.f4; normal←v11868 = (* (W2Pt) (( (ptr) &var←c59808)+2) ); resultPoint←v11840 = (* (W2Pt) &var←c59808 ); }; }; }; }; SOURCE(19087, 39) { word pd226; pd226 = (* (( (ptr) (* (( (ptr) gf←c63744)+175)/* var←c59840 */ ))+51) ); (void) ( *( (fPt) ((* (ptr) pd226 ))))((* ((( (ptr) ggData←v23968)+11)) ), pd226); }; SOURCE(19128, 197) if ((feature←v11896 != 0)) { SOURCE(19148, 95) (void) DuringDeselectAux←P1140(feature←v11896, hitData←v11924, resultPoint←v11840, ggData←v23968, (* (( (ptr) (* (( (ptr) ggData←v23968)+16) ))+14) ), (* (( (ptr) gf←c63744)+57) )); } else { SOURCE(19243, 82) { W2 var←c59872; var←c59872.f0 = 11; var←c59872.f1 = (* (( (ptr) gf←c63744)+57) ); { word pd227; pd227 = (* (( (ptr) (* (( (ptr) gf←c63744)+156)/* var←c57696 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd227 ))))((* (( (ptr) ggData←v23968)+3) ), 0, (* (( (ptr) gf←c63744)+27) ), (* (( (ptr) gf←c63744)+28) ), var←c59872, pd227); }; }; }; SOURCE(19327, 155) { word pd228; pd228 = (* (( (ptr) (* (( (ptr) gf←c63744)+171)/* var←c58592 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd228 ))))((* (( (ptr) gf←c63744)+25) ), ggData←v23968, 4, 0, 1, 1, pd228); }; } static void DuringDeselectAux←P1140(feature←v8696, hitData←v8724, caretPt←v8752, ggData←v8780, mode←v8808, opRope←v8836) word feature←v8696; word hitData←v8724; W2 caretPt←v8752; word ggData←v8780; word mode←v8808; word opRope←v8836; { register ptr gf←c63776 = (ptr) &globalframe; word description←v11980 = 0; /* DuringDeselectAux: */ SOURCE(19510, 492) SOURCE(19685, 317) { word var←c59904; var←c59904 = (* (ptr) feature←v8696 ); switch (var←c59904) { case 0: SOURCE(19719, 285) { word deselectedD←v12024; SOURCE(19721, 86) deselectedD←v12024 = (word) SliceDeselectAux←P1200(feature←v8696, hitData←v8724, mode←v8808, (* (( (ptr) ggData←v8780)+11) )); SOURCE(19809, 85) { word pd229; if ((deselectedD←v12024 == 0)) { description←v11980 = (* (( (ptr) gf←c63776)+58) ); } else { pd229 = (* (( (ptr) (* (( (ptr) gf←c63776)+159)/* var←c57824 */ ))+23) ); description←v11980 = (word) ( *( (fPt) ((* (ptr) pd229 ))))(deselectedD←v12024, pd229); }; }; SOURCE(19896, 106) { word var←c59936; { word var←c59968; word var←c60000; var←c59968 = XR←NewObject(12, (* (( (ptr) gf←c63776)+19) )); var←c60000 = var←c59968; (* (ptr) var←c60000 ) = 11; (* (( (ptr) var←c60000)+1) ) = opRope←v8836; (* (( (ptr) var←c60000)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c63776)+19) )); var←c60000 = (* (( (ptr) var←c60000)+2) ); (* (ptr) var←c60000 ) = 11; (* (( (ptr) var←c60000)+1) ) = description←v11980; var←c59936 = var←c59968; }; { word pd230; pd230 = (* (( (ptr) (* (( (ptr) gf←c63776)+156)/* var←c57696 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd230 ))))((* (( (ptr) ggData←v8780)+3) ), 0, (* (( (ptr) gf←c63776)+27) ), (* (( (ptr) gf←c63776)+48) ), var←c59936, pd230); }; }; }; break; case 2: case 3: case 1: case 6: case 5: case 7: SOURCE(20087, 5) (void) XR←RaiseUnnamedError(); break; default: SOURCE(20105, 5) (void) XR←RaiseUnnamedError(); break; }; }; } static word SliceDeselectAux←P1200(feature←v8908, hitData←v8936, mode←v8964, scene←v8992) word feature←v8908; word hitData←v8936; word mode←v8964; word scene←v8992; { register ptr gf←c63808 = (ptr) &globalframe; word deselectedD←v9048; word shapeD←v12068; word sliceD←v12096; /* SliceDeselectAux: */ SOURCE(20116, 640) SOURCE(20116, 640) deselectedD←v9048 = 0; SOURCE(20268, 47) shapeD←v12068 = XR←Narrow((* (( (ptr) feature←v8908)+1) ), (* (( (ptr) gf←c63808)+10) )); SOURCE(20317, 74) { word pd231; pd231 = (* (( (ptr) (* (( (ptr) gf←c63808)+170)/* var←c58496 */ ))+20) ); sliceD←v12096 = (word) ( *( (fPt) ((* (ptr) pd231 ))))((* (ptr) shapeD←v12068 ), 0, pd231); }; SOURCE(20393, 363) if ((sliceD←v12096 != 0)) { SOURCE(20412, 317) { word newD←v12140; word diffD←v12168; SOURCE(20414, 72) { word pd232; pd232 = (* (( (ptr) (* (( (ptr) gf←c63808)+159)/* var←c57824 */ ))+29) ); newD←v12140 = (word) ( *( (fPt) ((* (ptr) pd232 ))))((* (ptr) sliceD←v12096 ), hitData←v8936, mode←v8964, pd232); }; SOURCE(20488, 65) { word pd233; pd233 = (* (( (ptr) (* (( (ptr) gf←c63808)+159)/* var←c57824 */ ))+31) ); diffD←v12168 = (word) ( *( (fPt) ((* (ptr) pd233 ))))(sliceD←v12096, newD←v12140, pd233); }; SOURCE(20555, 65) { word pd234; pd234 = (* (( (ptr) (* (( (ptr) gf←c63808)+170)/* var←c58496 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd234 ))))((* (ptr) sliceD←v12096 ), (* (( (ptr) sliceD←v12096)+1) ), scene←v8992, 0, pd234) ; }; SOURCE(20622, 85) { word pd235; pd235 = (* (( (ptr) (* (( (ptr) gf←c63808)+159)/* var←c57824 */ ))+27) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd235 ))))(diffD←v12168, pd235))) { SOURCE(20665, 42) { word pd236; pd236 = (* (( (ptr) (* (( (ptr) gf←c63808)+170)/* var←c58496 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd236 ))))(diffD←v12168, scene←v8992, 0, pd236); }; }; }; SOURCE(20709, 18) deselectedD←v9048 = newD←v12140; }; } else { SOURCE(20736, 20) deselectedD←v9048 = shapeD←v12068; }; SOURCE(20116, 640) return(deselectedD←v9048); } static void EndDeselect←P1260(input←v24056, ggData←v24084, worldPt←v24112) word input←v24056; word ggData←v24084; W2 worldPt←v24112; { register ptr gf←c63840 = (ptr) &globalframe; W2 resultPoint←v12212; W2 normal←v12240; word feature←v12268 = 0; word hitData←v12296 = 0; /* EndDeselect: */ SOURCE(20819, 1040) SOURCE(20930, 547) { word var←c60032; { word pd237; pd237 = (* (( (ptr) (* (( (ptr) gf←c63840)+161)/* var←c57920 */ ))+102) ); var←c60032 = (word) ( *( (fPt) ((* (ptr) pd237 ))))(ggData←v24084, pd237); }; if ((var←c60032 == 1)) { SOURCE(20981, 162) { W6 var←c60064; { word pd238; pd238 = (* (( (ptr) (* (( (ptr) gf←c63840)+169)/* var←c58368 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd238 ))))((word) &var←c60064, worldPt←v24112, (* (ptr) (* (( (ptr) ggData←v24084)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63840)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v24084)+18) ))+8) ), ggData←v24084 , 0, pd238); }; hitData←v12296 = var←c60064.f5; feature←v12268 = var←c60064.f4; normal←v12240 = (* (W2Pt) (( (ptr) &var←c60064)+2) ); resultPoint←v12212 = (* (W2Pt) &var←c60064 ); }; } else { if ((var←c60032 == 3)) { SOURCE(21156, 154) { W6 var←c60096; { word pd239; pd239 = (* (( (ptr) (* (( (ptr) gf←c63840)+169)/* var←c58368 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd239 ))))((word) &var←c60096, worldPt←v24112, (* (ptr) (* (( (ptr) ggData←v24084)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63840)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v24084)+18) ))+8) ), ggData←v24084, pd239) ; }; hitData←v12296 = var←c60096.f5; feature←v12268 = var←c60096.f4; normal←v12240 = (* (W2Pt) (( (ptr) &var←c60096)+2) ); resultPoint←v12212 = (* (W2Pt) &var←c60096 ); }; } else { SOURCE(21323, 154) { W6 var←c60128; { word pd240; pd240 = (* (( (ptr) (* (( (ptr) gf←c63840)+169)/* var←c58368 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd240 ))))((word) &var←c60128, worldPt←v24112, (* (ptr) (* (( (ptr) ggData←v24084)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63840)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v24084)+18) ))+8) ), ggData←v24084, pd240) ; }; hitData←v12296 = var←c60128.f5; feature←v12268 = var←c60128.f4; normal←v12240 = (* (W2Pt) (( (ptr) &var←c60128)+2) ); resultPoint←v12212 = (* (W2Pt) &var←c60128 ); }; }; }; }; SOURCE(21479, 380) { word var←c60160; var←c60160 = (* (( (ptr) (* (( (ptr) ggData←v24084)+16) ))+14) ); switch (var←c60160) { case 1: SOURCE(21524, 69) (void) EndDeselectAux←P1320(ggData←v24084, resultPoint←v12212, feature←v12268, hitData←v12296, 1, (* (( (ptr) gf←c63840)+33) )); break; case 3: SOURCE(21606, 73) (void) EndDeselectAux←P1320(ggData←v24084, resultPoint←v12212, feature←v12268, hitData←v12296, 3, (* (( (ptr) gf←c63840)+34) )); break; case 5: SOURCE(21689, 73) (void) EndDeselectAux←P1320(ggData←v24084, resultPoint←v12212, feature←v12268, hitData←v12296, 5, (* (( (ptr) gf←c63840)+35) )); break; case 7: SOURCE(21776, 83) (void) EndDeselectAux←P1320(ggData←v24084, resultPoint←v12212, feature←v12268, hitData←v12296, 7, (* (( (ptr) gf←c63840)+59) )); break; default: SOURCE(21872, 5) (void) XR←RaiseUnnamedError(); break; }; }; } static void EndDeselectAux←P1320(ggData←v9108, resultPoint←v9136, feature←v9164, hitData←v9192, mode←v9220, selectRope←v9248) word ggData←v9108; W2 resultPoint←v9136; word feature←v9164; word hitData←v9192; word mode←v9220; word selectRope←v9248; { register ptr gf←c63872 = (ptr) &globalframe; /* EndDeselectAux: */ SOURCE(21883, 883) SOURCE(22026, 32) { word pd241; pd241 = (* (( (ptr) (* (( (ptr) gf←c63872)+158)/* var←c57760 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd241 ))))((* (( (ptr) ggData←v9108)+13) ), 0, pd241); }; SOURCE(22060, 509) if ((feature←v9164 == 0)) { SOURCE(22084, 89) { W2 var←c60192; var←c60192.f0 = 11; var←c60192.f1 = selectRope←v9248; { word pd242; pd242 = (* (( (ptr) (* (( (ptr) gf←c63872)+156)/* var←c57696 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd242 ))))((* (( (ptr) ggData←v9108)+3) ), 0, (* (( (ptr) gf←c63872)+44) ), (* (( (ptr) gf←c63872)+60) ), var←c60192, pd242); }; }; } else { SOURCE(22184, 385) { word var←c60224; var←c60224 = (* (ptr) feature←v9164 ); if ((var←c60224 == 0)) { SOURCE(22218, 242) { word gone←v12352; SOURCE(22220, 78) gone←v12352 = (word) SliceDeselectAux←P1200(feature←v9164, hitData←v9192, mode←v9220, (* (( (ptr) ggData←v9108)+11) )); SOURCE(22300, 158) if ( ( (gone←v12352 != 0) ? ((* (( (ptr) gone←v12352)+1) ) != 0) : 0 ) ) { SOURCE(22336, 122) { word var←c60256; { word var←c60288; word var←c60320; var←c60288 = XR←NewObject(12, (* (( (ptr) gf←c63872)+19) )); var←c60320 = var←c60288; (* (ptr) var←c60320 ) = 11; { word pd243; pd243 = (* (( (ptr) (* (( (ptr) gf←c63872)+159)/* var←c57824 */ ))+23) ); (* (( (ptr) var←c60320)+1) ) = (word) ( *( (fPt) ((* (ptr) pd243 ))))(gone←v12352, pd243); }; (* (( (ptr) var←c60320)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c63872)+19) )); var←c60320 = (* (( (ptr) var←c60320)+2) ); (* (ptr) var←c60320 ) = 11; (* (( (ptr) var←c60320)+1) ) = (* (( (ptr) gf←c63872)+61) ); var←c60256 = var←c60288; }; { word pd244; pd244 = (* (( (ptr) (* (( (ptr) gf←c63872)+156)/* var←c57696 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd244 ))))((* (( (ptr) ggData←v9108)+3) ), 0, (* (( (ptr) gf←c63872)+44) ), (* (( (ptr) gf←c63872)+48) ), var←c60256, pd244); }; }; }; }; } else { SOURCE(22474, 95) { word var←c60384; { W2 var←c60416; var←c60416.f0 = 11; var←c60416.f1 = selectRope←v9248; { word pd245; pd245 = (* (( (ptr) (* (( (ptr) gf←c63872)+176)/* var←c60448 */ ))+63) ); var←c60384 = (word) ( *( (fPt) ((* (ptr) pd245 ))))((* (( (ptr) gf←c63872)+62) ), var←c60416, pd245); }; }; { word var←c0304; var←c0304 = var←c60384; (void) (XR←RaiseSignal((* (( (ptr) gf←c63872)+4)/* Problem←v5492 */ ), 0, (word) &var←c0304)); }; }; }; }; }; SOURCE(22574, 160) { word pd246; pd246 = (* (( (ptr) (* (( (ptr) gf←c63872)+171)/* var←c58592 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd246 ))))((* (( (ptr) gf←c63872)+63) ), ggData←v9108, 4, 0, 1, 0, pd246); }; SOURCE(22736, 30) (* (( (ptr) (* (( (ptr) ggData←v9108)+16) ))+14) ) = 8; } static word StartExtendSelect←P1380(input←v24172, ggData←v24200, worldPt←v24228) word input←v24172; word ggData←v24200; W2 worldPt←v24228; { register ptr gf←c63904 = (ptr) &globalframe; word success←v24272; /* StartExtendSelect: */ SOURCE(22815, 395) SOURCE(22815, 395) success←v24272 = 1; SOURCE(22855, 284) { word var←c60480; var←c60480 = (* (ptr) input←v24172 ); if ((var←c60480 == (* (( (ptr) gf←c63904)+64) ))) { SOURCE(22903, 36) { word pd248; pd248 = (* (( (ptr) (* (( (ptr) gf←c63904)+161)/* var←c57920 */ ))+105) ); (void) ( *( (fPt) ((* (ptr) pd248 ))))(ggData←v24200, 1, pd248); }; goto endif0247; }; if ((var←c60480 == (* (( (ptr) gf←c63904)+65) ))) { SOURCE(22967, 38) { word pd249; pd249 = (* (( (ptr) (* (( (ptr) gf←c63904)+161)/* var←c57920 */ ))+105) ); (void) ( *( (fPt) ((* (ptr) pd249 ))))(ggData←v24200, 3, pd249); }; goto endif0247; }; if ((var←c60480 == (* (( (ptr) gf←c63904)+66) ))) { SOURCE(23036, 35) { word pd250; pd250 = (* (( (ptr) (* (( (ptr) gf←c63904)+161)/* var←c57920 */ ))+105) ); (void) ( *( (fPt) ((* (ptr) pd250 ))))(ggData←v24200, 5, pd250); }; goto endif0247; }; if ((var←c60480 == (* (( (ptr) gf←c63904)+67) ))) { SOURCE(23100, 39) { word pd251; pd251 = (* (( (ptr) (* (( (ptr) gf←c63904)+161)/* var←c57920 */ ))+105) ); (void) ( *( (fPt) ((* (ptr) pd251 ))))(ggData←v24200, 7, pd251); }; goto endif0247; }; SOURCE(23152, 5) (void) XR←RaiseUnnamedError(); goto endif0247; endif0247: ; }; SOURCE(23159, 51) return((word) StartExtendSelection←P1440(input←v24172, ggData←v24200, worldPt←v24228)); } static word StartExtendSelection←P1440(input←v24332, ggData←v24360, worldPt←v24388) word input←v24332; word ggData←v24360; W2 worldPt←v24388; { register ptr gf←c63936 = (ptr) &globalframe; word success←v24432; /* StartExtendSelection: */ SOURCE(23216, 339) SOURCE(23216, 339) success←v24432 = 1; SOURCE(23259, 43) { word pd252; pd252 = (* (( (ptr) (* (( (ptr) gf←c63936)+165)/* var←c58208 */ ))+21) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd252 ))))(ggData←v24360, pd252))) { SOURCE(23302, 5) (void) XR←RaiseUnnamedError(); }; }; SOURCE(23309, 35) { word pd253; pd253 = (* (( (ptr) (* (( (ptr) gf←c63936)+166)/* var←c58240 */ ))+24) ); (void) ( *( (fPt) ((* (ptr) pd253 ))))(ggData←v24360, pd253); }; SOURCE(23395, 34) (* (W2Pt) (( (ptr) (* (( (ptr) ggData←v24360)+16) ))+8) ) = worldPt←v24388; SOURCE(23431, 55) { word pd254; pd254 = (* (( (ptr) (* (( (ptr) gf←c63936)+174)/* var←c59680 */ ))+7) ); (* (( (ptr) (* (( (ptr) ggData←v24360)+16) ))+13) ) = (word) ( *( (fPt) ((* (ptr) pd254 ))))((* (ptr) (&fc220) ), pd254) ; }; SOURCE(23488, 67) { word var←c60512; { word var←c60544; word var←c60576; var←c60544 = XR←NewObject(8, (* (( (ptr) gf←c63936)+16) )); var←c60576 = var←c60544; (* (ptr) var←c60576 ) = (* (( (ptr) gf←c63936)+69) ); var←c60512 = var←c60544; }; (void) DuringExtendSelection←P1500(var←c60512, ggData←v24360, worldPt←v24388); }; SOURCE(23216, 339) return(success←v24432); } static void DuringExtendSelection←P1500(input←v24492, ggData←v24520, worldPt←v24548) word input←v24492; word ggData←v24520; W2 worldPt←v24548; { register ptr gf←c63968 = (ptr) &globalframe; word opRope←v12396; W2 resultPoint←v12424; W2 normal←v12452; word feature←v12480 = 0; word hitData←v12508 = 0; word extendMode←v12536; /* DuringExtendSelection: */ SOURCE(23561, 1676) SOURCE(23604, 93) opRope←v12396 = ( ((* (ptr) input←v24492 ) == (* (( (ptr) gf←c63968)+70) )) ? (* (( (ptr) gf←c63968)+71) ) : (* (( (ptr) gf←c63968)+72) ) ) ; SOURCE(23775, 54) { word pd255; pd255 = (* (( (ptr) (* (( (ptr) gf←c63968)+161)/* var←c57920 */ ))+104) ); extendMode←v12536 = (word) ( *( (fPt) ((* (ptr) pd255 ))))(ggData←v24520, pd255); }; SOURCE(23831, 109) { word pd256; pd256 = (* (( (ptr) (* (( (ptr) gf←c63968)+165)/* var←c58208 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd256 ))))(ggData←v24520, 0, 1, 0, 0, 0 , 1, 0, 1, 0, pd256); }; SOURCE(23942, 637) { word var←c60608; var←c60608 = extendMode←v12536; switch (var←c60608) { case 1: SOURCE(23974, 162) { W6 var←c60640; { word pd257; pd257 = (* (( (ptr) (* (( (ptr) gf←c63968)+169)/* var←c58368 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd257 ))))((word) &var←c60640, worldPt←v24548, (* (ptr) (* (( (ptr) ggData←v24520)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63968)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v24520)+18) ))+8) ), ggData←v24520 , 0, pd257); }; hitData←v12508 = var←c60640.f5; feature←v12480 = var←c60640.f4; normal←v12452 = (* (W2Pt) (( (ptr) &var←c60640)+2) ); resultPoint←v12424 = (* (W2Pt) &var←c60640 ); }; break; case 3: case 4: SOURCE(24163, 154) { W6 var←c60672; { word pd258; pd258 = (* (( (ptr) (* (( (ptr) gf←c63968)+169)/* var←c58368 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd258 ))))((word) &var←c60672, worldPt←v24548, (* (ptr) (* (( (ptr) ggData←v24520)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63968)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v24520)+18) ))+8) ), ggData←v24520, pd258) ; }; hitData←v12508 = var←c60672.f5; feature←v12480 = var←c60672.f4; normal←v12452 = (* (W2Pt) (( (ptr) &var←c60672)+2) ); resultPoint←v12424 = (* (W2Pt) &var←c60672 ); }; break; case 5: case 7: case 6: SOURCE(24344, 154) { W6 var←c60704; { word pd259; pd259 = (* (( (ptr) (* (( (ptr) gf←c63968)+169)/* var←c58368 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd259 ))))((word) &var←c60704, worldPt←v24548, (* (ptr) (* (( (ptr) ggData←v24520)+18) ) ), (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c63968)+168)/* var←c58336 */ ))+16) ) ), (* (( (ptr) (* (( (ptr) ggData←v24520)+18) ))+8) ), ggData←v24520, pd259) ; }; hitData←v12508 = var←c60704.f5; feature←v12480 = var←c60704.f4; normal←v12452 = (* (W2Pt) (( (ptr) &var←c60704)+2) ); resultPoint←v12424 = (* (W2Pt) &var←c60704 ); }; break; case 8: SOURCE(24510, 21) resultPoint←v12424 = worldPt←v24548; SOURCE(24533, 16) normal←v12452.f0 = (* (ptr) &fc127 ); normal←v12452.f1 = (* (ptr) &fc129 ); SOURCE(24551, 13) feature←v12480 = 0; SOURCE(24566, 13) hitData←v12508 = 0; break; default: SOURCE(24595, 5) (void) XR←RaiseUnnamedError(); break; }; }; SOURCE(24602, 81) (void) SetCaretAttractorEndpoint←P60(ggData←v24520, resultPoint←v12424, normal←v12452, worldPt←v24548, feature←v12480, hitData←v12508) ; SOURCE(24685, 42) { word pd260; pd260 = (* (( (ptr) (* (( (ptr) gf←c63968)+170)/* var←c58496 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd260 ))))((* (( (ptr) ggData←v24520)+11) ), 0, pd260); }; SOURCE(24729, 39) { word pd261; pd261 = (* (( (ptr) (* (( (ptr) gf←c63968)+175)/* var←c59840 */ ))+51) ); (void) ( *( (fPt) ((* (ptr) pd261 ))))((* ((( (ptr) ggData←v24520)+11)) ), pd261); }; SOURCE(24770, 310) if ((feature←v12480 != 0)) { SOURCE(24792, 148) { word var←c60736; var←c60736 = extendMode←v12536; switch (var←c60736) { case 1: case 3: case 4: case 5: case 7: SOURCE(24864, 76) (void) DuringExtendSelectionFeedback←P1560(feature←v12480, hitData←v12508, resultPoint←v12424, ggData←v24520, opRope←v12396) ; break; case 6: case 8: break; default: SOURCE(24984, 5) (void) XR←RaiseUnnamedError(); break; }; }; } else { SOURCE(24998, 82) { W2 var←c60768; var←c60768.f0 = 11; var←c60768.f1 = opRope←v12396; { word pd262; pd262 = (* (( (ptr) (* (( (ptr) gf←c63968)+156)/* var←c57696 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd262 ))))((* (( (ptr) ggData←v24520)+3) ), 0, (* (( (ptr) gf←c63968)+27) ), (* (( (ptr) gf←c63968)+28) ), var←c60768, pd262); }; }; }; SOURCE(25082, 155) { word pd263; pd263 = (* (( (ptr) (* (( (ptr) gf←c63968)+171)/* var←c58592 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd263 ))))((* (( (ptr) gf←c63968)+25) ), ggData←v24520, 4, 0, 1, 1, pd263); }; } static void DuringExtendSelectionFeedback←P1560(feature←v9320, hitData←v9348, caretPt←v9376, ggData←v9404, opRope←v9432) word feature←v9320; word hitData←v9348; W2 caretPt←v9376; word ggData←v9404; word opRope←v9432; { register ptr gf←c64000 = (ptr) &globalframe; word extendMode←v12592; /* DuringExtendSelectionFeedback: */ SOURCE(25272, 1829) SOURCE(25404, 54) { word pd264; pd264 = (* (( (ptr) (* (( (ptr) gf←c64000)+161)/* var←c57920 */ ))+104) ); extendMode←v12592 = (word) ( *( (fPt) ((* (ptr) pd264 ))))(ggData←v9404, pd264); }; SOURCE(25460, 1641) { word var←c60800; var←c60800 = extendMode←v12592; switch (var←c60800) { case 1: case 3: case 5: case 7: SOURCE(25517, 77) { word var←c60832; var←c60832 = (word) SelectAndDescribeSlicePart←P840(feature←v9320, hitData←v9348, ggData←v9404, extendMode←v12592, opRope←v9432) ; }; break; case 4: SOURCE(25612, 1489) { word var←c60864; SOURCE(25614, 1303) var←c60864 = (* (( (ptr) feature←v9320)+1) ); if ( ( (var←c60864 == 0) ? 1 : ((* (( (ptr) gf←c64000)+10) ) == XR←GetReferentType(var←c60864)) ) ) { SOURCE(25661, 1296) { word sliceD←v12636; word traj←v12664 = 0; word trajToExtend←v12692 = 0; word hitType←v12720; word segNum←v12748; word cpNum←v12776; word jointNum←v12804; word segToExtendNum←v12832; W2 hitPoint←v12860; SOURCE(25663, 47) sliceD←v12636 = XR←Narrow((* (( (ptr) feature←v9320)+1) ), (* (( (ptr) gf←c64000)+10) )); SOURCE(25869, 252) { word var←c60896; { word pd265; pd265 = (* (( (ptr) (* (( (ptr) gf←c64000)+159)/* var←c57824 */ ))+6) ); var←c60896 = (word) ( *( (fPt) ((* (ptr) pd265 ))))((* (ptr) (sliceD←v12636) ), pd265); }; if ((var←c60896 == (* (( (ptr) gf←c64000)+73) ))) { SOURCE(25926, 85) { /*1*/ W7 var←c60960; /*1*/ { /*1*/ word pd266; /*1*/ pd266 = (* (( (ptr) (* (( (ptr) gf←c64000)+177)/* var←c60928 */ ))+15) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd266 ))))((word) &var←c60960, hitData←v9348, pd266); /*1*/ }; /*1*/ hitPoint←v12860 = (* (W2Pt) (( (ptr) &var←c60960)+5) ); /*1*/ jointNum←v12804 = var←c60960.f4; /*1*/ cpNum←v12776 = var←c60960.f3; /*1*/ segNum←v12748 = var←c60960.f2; /*1*/ hitType←v12720 = var←c60960.f1; /*1*/ traj←v12664 = var←c60960.f0; /*1*/ }; } else { if ((var←c60896 == (* (( (ptr) gf←c64000)+32) ))) { SOURCE(26024, 19) /*1*/ traj←v12664 = (* (ptr) sliceD←v12636 ); SOURCE(26045, 76) /*1*/ { /*1*/ W6 var←c61024; /*1*/ { /*1*/ word pd267; /*1*/ pd267 = (* (( (ptr) (* (( (ptr) gf←c64000)+178)/* var←c60992 */ ))+53) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd267 ))))((word) &var←c61024, hitData←v9348, pd267); /*1*/ }; /*1*/ hitPoint←v12860 = (* (W2Pt) (( (ptr) &var←c61024)+4) ); /*1*/ jointNum←v12804 = var←c61024.f3; /*1*/ cpNum←v12776 = var←c61024.f2; /*1*/ segNum←v12748 = var←c61024.f1; /*1*/ hitType←v12720 = var←c61024.f0; /*1*/ }; /*1*/ } else { SOURCE(26137, 27) /*1*/ goto lab←L100016; /*1*/ }; }; }; SOURCE(26166, 751) if ((hitType←v12720 == 3) || (hitType←v12720 == 2)) { SOURCE(26222, 103) { W2 var←c61088; { /*1*/ word var←c61056; /*1*/ { /*1*/ word pd268; /*1*/ pd268 = (* (( (ptr) (* (( (ptr) gf←c64000)+161)/* var←c57920 */ ))+100) ); /*1*/ var←c61056 = (word) ( *( (fPt) ((* (ptr) pd268 ))))(ggData←v9404, pd268); /*1*/ }; /*1*/ { /*1*/ word pd269; /*1*/ pd269 = (* (( (ptr) (* (( (ptr) gf←c64000)+177)/* var←c60928 */ ))+16) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd269 ))))((word) &var←c61088, var←c61056, pd269); /*1*/ }; /*1*/ }; segToExtendNum←v12832 = var←c61088.f1; trajToExtend←v12692 = var←c61088.f0; }; SOURCE(26327, 590) if ( ( (trajToExtend←v12692 != 0) ? ((* (ptr) trajToExtend←v12692 ) == traj←v12664) : 0 ) ) { SOURCE(26382, 387) { /*1*/ word seq←v12904; SOURCE(26435, 89) /*1*/ { /*1*/ word var←c61120; /*1*/ var←c61120 = XR←Narrow((* (( (ptr) traj←v12664)+1) ), (* (( (ptr) gf←c64000)+15) )); /*1*/ { /*1*/ word pd270; /*1*/ pd270 = (* (( (ptr) (* (( (ptr) gf←c64000)+179)/* var←c61152 */ ))+4) ); /*1*/ seq←v12904 = (word) ( *( (fPt) ((* (ptr) pd270 ))))(var←c61120, SGNCK(segToExtendNum←v12832), SGNCK(segNum←v12748), pd270) /*1*/ ; /*1*/ }; /*1*/ }; SOURCE(26526, 82) /*1*/ { /*1*/ word var←c61184; /*1*/ { /*1*/ word pd271; /*1*/ pd271 = (* (( (ptr) (* (( (ptr) gf←c64000)+180)/* var←c61216 */ ))+8) ); /*1*/ var←c61184 = (word) ( *( (fPt) ((* (ptr) pd271 ))))(traj←v12664, seq←v12904, pd271); /*1*/ }; /*1*/ { /*1*/ word pd272; /*1*/ pd272 = (* (( (ptr) (* (( (ptr) gf←c64000)+170)/* var←c58496 */ ))+6) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd272 ))))(var←c61184, (* (( (ptr) ggData←v9404)+11) ), 0, pd272); /*1*/ }; /*1*/ }; SOURCE(26632, 135) /*1*/ { /*1*/ word var←c61248; /*1*/ { /*1*/ word var←c61280; /*1*/ word var←c61312; /*1*/ var←c61280 = XR←NewObject(12, (* (( (ptr) gf←c64000)+19) )); /*1*/ var←c61312 = var←c61280; /*1*/ (* (ptr) var←c61312 ) = 11; /*1*/ (* (( (ptr) var←c61312)+1) ) = opRope←v9432; /*1*/ (* (( (ptr) var←c61312)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c64000)+19) )); /*1*/ var←c61312 = (* (( (ptr) var←c61312)+2) ); /*1*/ (* (ptr) var←c61312 ) = 11; /*1*/ { /*1*/ word pd273; /*1*/ pd273 = (* (( (ptr) (* (( (ptr) gf←c64000)+181)/* var←c61376 */ ))+44) ); /*1*/ (* (( (ptr) var←c61312)+1) ) = (word) ( *( (fPt) ((* (ptr) pd273 ))))(traj←v12664, SGNCK(segNum←v12748), pd273); /*1*/ }; /*1*/ var←c61248 = var←c61280; /*1*/ }; /*1*/ { /*1*/ word pd274; /*1*/ pd274 = (* (( (ptr) (* (( (ptr) gf←c64000)+156)/* var←c57696 */ ))+13) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd274 ))))((* (( (ptr) ggData←v9404)+3) ), 0, (* (( (ptr) gf←c64000)+27) ), (* (( (ptr) gf←c64000)+48) /*1*/ ), var←c61248, pd274); /*1*/ }; /*1*/ }; /*1*/ }; } else { SOURCE(26814, 103) { /*1*/ word var←c61408; /*1*/ var←c61408 = (word) SelectAndDescribeSlicePart←P840(feature←v9320, hitData←v9348, ggData←v9404, 3, opRope←v9432); /*1*/ { /*1*/ word pd275; /*1*/ pd275 = (* (( (ptr) (* (( (ptr) gf←c64000)+161)/* var←c57920 */ ))+101) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd275 ))))(ggData←v9404, var←c61408, pd275); /*1*/ }; /*1*/ }; }; } else { SOURCE(26928, 27) goto lab←L100016; }; }; } else { SOURCE(26964, 27) goto lab←L100016; }; goto lab←L100017; lab←L100016: ; SOURCE(27025, 74) { word var←c61440; var←c61440 = (word) SelectAndDescribeSlicePart←P840(feature←v9320, hitData←v9348, ggData←v9404, 3, opRope←v9432); }; lab←L100017: ; }; break; default: SOURCE(27115, 5) (void) XR←RaiseUnnamedError(); break; }; }; } static void EndExtendSelection←P1620(input←v24608, ggData←v24636, worldPt←v24664) word input←v24608; word ggData←v24636; W2 worldPt←v24664; { register ptr gf←c64032 = (ptr) &globalframe; /* EndExtendSelection: */ SOURCE(27184, 232) SOURCE(27225, 65) { word var←c61472; { word var←c61504; word var←c61536; var←c61504 = XR←NewObject(8, (* (( (ptr) gf←c64032)+16) )); var←c61536 = var←c61504; (* (ptr) var←c61536 ) = (* (( (ptr) gf←c64032)+70) ); var←c61472 = var←c61504; }; (void) DuringExtendSelection←P1500(var←c61472, ggData←v24636, worldPt←v24664); }; SOURCE(27292, 124) { word pd276; pd276 = (* (( (ptr) (* (( (ptr) gf←c64032)+171)/* var←c58592 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd276 ))))((* (( (ptr) gf←c64032)+29) ), ggData←v24636, 4, 0, 0, 0, pd276); }; } static word StartAddBezier←P1680(input←v24724, ggData←v24752, worldPt←v24780) word input←v24724; word ggData←v24752; W2 worldPt←v24780; { register ptr gf←c64064 = (ptr) &globalframe; word success←v24824; /* StartAddBezier: */ SOURCE(27495, 1365) SOURCE(27495, 1365) success←v24824 = 1; SOURCE(27533, 1327) { word pd277; pd277 = (* (( (ptr) (* (( (ptr) gf←c64064)+158)/* var←c57760 */ ))+7) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd277 ))))((* ((( (ptr) ggData←v24752)+13)) ), pd277))) { SOURCE(27570, 1170) { word caret←v12948 = 0; word oldTraj←v12976 = 0; word newTraj←v13004 = 0; word ancestor←v13032 = 0; word oldOutline←v13060 = 0; word trajEnd←v13088; word newNormalD←v13116 = 0; word newHotD←v13144 = 0; word startBox←v13172; SOURCE(27695, 106) { word pd278; pd278 = (* (( (ptr) (* (( (ptr) gf←c64064)+165)/* var←c58208 */ ))+13) ); startBox←v13172 = (word) ( *( (fPt) ((* (ptr) pd278 ))))(ggData←v24752, 1, 0, 0, 0, 0 , 1, 0, 0, 0, 0, pd278); }; SOURCE(27856, 49) { word pd279; pd279 = (* (( (ptr) (* (( (ptr) gf←c64064)+182)/* var←c61568 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd279 ))))((* (( (ptr) gf←c64064)+75) ), ggData←v24752, pd279); }; SOURCE(27938, 20) caret←v12948 = (* (( (ptr) ggData←v24752)+13) ); SOURCE(27960, 35) { word pd280; pd280 = (* (( (ptr) (* (( (ptr) gf←c64064)+166)/* var←c58240 */ ))+24) ); (void) ( *( (fPt) ((* (ptr) pd280 ))))(ggData←v24752, pd280); }; SOURCE(28015, 118) { W4 var←c61600; (void) UpdateSceneForAddBezier←P1740((word) &var←c61600, (* (( (ptr) ggData←v24752)+11) ), worldPt←v24780, caret←v12948, (* ( ( (ptr) ggData←v24752)+30) ), ggData←v24752); ancestor←v13032 = var←c61600.f3; trajEnd←v13088 = var←c61600.f2; newTraj←v13004 = var←c61600.f1; oldTraj←v12976 = var←c61600.f0; }; SOURCE(28135, 79) { word pd281; if ((oldTraj←v12976 == 0)) { oldOutline←v13060 = 0; } else { pd281 = (* (( (ptr) (* (( (ptr) gf←c64064)+173)/* var←c59584 */ ))+65) ); oldOutline←v13060 = (word) ( *( (fPt) ((* (ptr) pd281 ))))(oldTraj←v12976, pd281); }; }; SOURCE(28216, 100) { W2 var←c61632; { word pd282; pd282 = (* (( (ptr) (* (( (ptr) gf←c64064)+166)/* var←c58240 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd282 ))))((word) &var←c61632, (* (( (ptr) ggData←v24752)+11) ), oldTraj←v12976, newTraj←v13004, trajEnd←v13088, pd282) ; }; newHotD←v13144 = var←c61632.f1; newNormalD←v13116 = var←c61632.f0; }; SOURCE(28318, 68) { word pd283; pd283 = (* (( (ptr) (* (( (ptr) gf←c64064)+166)/* var←c58240 */ ))+26) ); (void) ( *( (fPt) ((* (ptr) pd283 ))))(caret←v12948, ancestor←v13032, newNormalD←v13116, worldPt←v24780, pd283); }; SOURCE(28388, 70) { word var←c61664; word pd284; pd284 = (* (( (ptr) (* (( (ptr) gf←c64064)+168)/* var←c58336 */ ))+32) ); var←c61664 = (word) ( *( (fPt) ((* (ptr) pd284 ))))(oldOutline←v13060, newNormalD←v13116, trajEnd←v13088, ggData←v24752, pd284) ; }; SOURCE(28476, 171) { word var←c61696; word pd285; pd285 = (* (( (ptr) (* (( (ptr) gf←c64064)+166)/* var←c58240 */ ))+27) ); var←c61696 = (word) ( *( (fPt) ((* (ptr) pd285 ))))(ggData←v24752, (* (( (ptr) gf←c64064)+76) ), (* (( (ptr) gf←c64064)+77) ), worldPt←v24780, 0, 0 , 1, 1, startBox←v13172, pd285); }; SOURCE(28674, 38) (void) DuringBezierDrag←P1800(0, ggData←v24752, worldPt←v24780); }; } else { SOURCE(28747, 113) { word pd286; pd286 = (* (( (ptr) (* (( (ptr) gf←c64064)+156)/* var←c57696 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd286 ))))((* (( (ptr) ggData←v24752)+3) ), 0, (* (( (ptr) gf←c64064)+83) ), (* (( (ptr) gf←c64064)+78) ), pd286); }; }; }; SOURCE(27495, 1365) return(success←v24824); } static void UpdateSceneForAddBezier←P1740(formal←c0442, scene←v9504, worldPt←v9532, caret←v9560, defaults←v9588, ggData←v9616) word formal←c0442; word scene←v9504; W2 worldPt←v9532; word caret←v9560; word defaults←v9588; word ggData←v9616; { register ptr gf←c64096 = (ptr) &globalframe; word oldTraj←v9660; word newTraj←v9688; word trajEnd←v9716; word newOutline←v9744; W2 caretPoint←v13216; W2 newCaretPoint←v13244; word jointNum←v13272; word newSeg←v13300 = 0; word extendFromSeg←v13328 = 0; word newBezier←v13356 = 0; word chair←v13384 = 0; word thisTraj←v13412 = 0; word thisTrajParts←v13440 = 0; word thisTrajData←v13468 = 0; word thisOutlineSlice←v13496 = 0; word addToBezier←v13524 = 0; word sliceDesc←v13552; /* UpdateSceneForAddBezier: */ SOURCE(28866, 4147) SOURCE(28866, 4147) oldTraj←v9660 = 0; SOURCE(28866, 4147) newTraj←v9688 = 0; SOURCE(28866, 4147) newOutline←v9744 = 0; SOURCE(29300, 86) { word pd287; pd287 = (* (( (ptr) (* (( (ptr) gf←c64096)+175)/* var←c59840 */ ))+37) ); sliceDesc←v13552 = (word) ( *( (fPt) ((* (ptr) pd287 ))))(scene←v9504, 1, 0, (* (( (ptr) gf←c64096)+73) ), pd287); }; SOURCE(29388, 36) { word pd288; pd288 = (* (( (ptr) (* (( (ptr) gf←c64096)+158)/* var←c57760 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd288 ))))((word) &caretPoint←v13216, caret←v9560, pd288); }; SOURCE(29426, 71) { word pd289; pd289 = (* (( (ptr) (* (( (ptr) gf←c64096)+166)/* var←c58240 */ ))+28) ); (void) ( *( (fPt) ((* (ptr) pd289 ))))((word) &newCaretPoint←v13244, worldPt←v9532, ggData←v9616, (* (( (ptr) gf←c64096)+79) ), pd289); }; SOURCE(29499, 709) if ((sliceDesc←v13552 != 0)) { { word var←c61728; word var←c61760; word var←c0587; SOURCE(29557, 34) thisOutlineSlice←v13496 = (* (ptr) sliceDesc←v13552 ); SOURCE(29593, 86) { word pd290; pd290 = (* (( (ptr) (* (( (ptr) gf←c64096)+173)/* var←c59584 */ ))+78) ); thisTraj←v13412 = (word) ( *( (fPt) ((* (ptr) pd290 ))))((* (ptr) sliceDesc←v13552 ), (* (( (ptr) sliceDesc←v13552)+1) ), 0, (* ( ( (ptr) gf←c64096)+32) ), pd290); }; SOURCE(29681, 38) thisTrajParts←v13440 = XR←Narrow((* (( (ptr) thisTraj←v13412)+1) ), (* (( (ptr) gf←c64096)+14) )); SOURCE(29721, 42) thisTrajData←v13468 = XR←Narrow((* (( (ptr) (* (ptr) thisTraj←v13412 ))+1) ), (* (( (ptr) gf←c64096)+15) )); SOURCE(29765, 443) { word tc291; word pd292; if (((* (ptr) thisTrajData←v13468 ) == 2)) { pd292 = (* (( (ptr) (* (( (ptr) gf←c64096)+179)/* var←c61152 */ ))+29) ); tc291 = (word) (0 != (word) ( *( (fPt) ((* (ptr) pd292 ))))(thisTrajParts←v13440, 0, pd292)); } else { tc291 = (word) 0; }; if (tc291) { SOURCE(29847, 102) { word pd293; pd293 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+29) ); if (((* (ptr) (* (ptr) ( *( (fPt) ((* (ptr) pd293 ))))((* (ptr) thisTraj←v13412 ), 0, pd293) ) ) == (* (( (ptr) gf←c64096)+81) ))) { SOURCE(29917, 12) trajEnd←v9716 = 0; SOURCE(29931, 18) addToBezier←v13524 = 1; }; }; } else { SOURCE(29964, 244) { word tc294; word pd296; if (((* (ptr) thisTrajData←v13468 ) == 2)) { { word pd295; pd295 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+39) ); var←c61728 = (word) ( *( (fPt) ((* (ptr) pd295 ))))((* (ptr) (thisTraj←v13412) ), pd295); }; pd296 = (* (( (ptr) (* (( (ptr) gf←c64096)+179)/* var←c61152 */ ))+29) ); tc294 = (word) (0 != (word) ( *( (fPt) ((* (ptr) pd296 ))))(thisTrajParts←v13440, var←c61728, pd296)); } else { tc294 = (word) 0; }; if (tc294) { SOURCE(30075, 133) { word pd298; { word pd297; pd297 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+37) ); var←c61760 = (word) ( *( (fPt) ((* (ptr) pd297 ))))((* (ptr) (thisTraj←v13412) ), pd297); }; pd298 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+29) ); var←c0587 = (* (ptr) (* (ptr) ( *( (fPt) ((* (ptr) pd298 ))))((* (ptr) thisTraj←v13412 ), var←c61760, pd298) ) ); }; if ((var←c0587 == (* (( (ptr) gf←c64096)+81) ))) { SOURCE(30176, 12) trajEnd←v9716 = 1; SOURCE(30190, 18) addToBezier←v13524 = 1; }; }; }; }; }; }; }; SOURCE(30222, 2791) if ( ( (0 != addToBezier←v13524) ? ((* (( (ptr) (* (( (ptr) ggData←v9616)+16) ))+17) ) != 0) : 0 ) ) { SOURCE(30281, 1482) { W2 oldCtrlPt←v13596; W2 newCtrlPt←v13624; SOURCE(30358, 34) { word var←c61792; var←c61792 = (* (ptr) thisTraj←v13412 ); newTraj←v9688 = var←c61792; oldTraj←v9660 = var←c61792; }; SOURCE(30434, 97) { word var←c61824; { word pd299; if ((trajEnd←v9716 == 0)) { var←c61824 = 0; } else { pd299 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+37) ); var←c61824 = (word) ( *( (fPt) ((* (ptr) pd299 ))))(newTraj←v9688, pd299); }; }; { word pd300; pd300 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+29) ); extendFromSeg←v13328 = (word) ( *( (fPt) ((* (ptr) pd300 ))))(newTraj←v9688, var←c61824, pd300); }; }; SOURCE(30533, 592) if ((trajEnd←v9716 == 0)) { SOURCE(30556, 65) { word pd301; pd301 = (* (( (ptr) (* (ptr) extendFromSeg←v13328 ))+16) ); (void) ( *( (fPt) ((* (ptr) pd301 ))))((word) &oldCtrlPt←v13596, extendFromSeg←v13328, 0, pd301); }; SOURCE(30623, 100) { W2 var←c61856; { word pd302; pd302 = (* (( (ptr) (* (( (ptr) gf←c64096)+160)/* var←c57888 */ ))+22) ); (void) ( *( (fPt) ((* (ptr) pd302 ))))((word) &var←c61856, oldCtrlPt←v13596, (* (W2Pt) (( (ptr) extendFromSeg←v13328)+9) ), pd302); }; { W2 var←c0427; { word pd303; pd303 = (* (( (ptr) (* (( (ptr) gf←c64096)+160)/* var←c57888 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd303 ))))((word) &var←c0427, (* (W2Pt) (( (ptr) extendFromSeg←v13328)+9) ), var←c61856, pd303) ; }; newCtrlPt←v13624 = var←c0427; }; }; SOURCE(30725, 96) { word pd304; pd304 = (* (( (ptr) (* (( (ptr) gf←c64096)+183)/* var←c61888 */ ))+6) ); newBezier←v13356 = (word) ( *( (fPt) ((* (ptr) pd304 ))))((* (W2Pt) (( (ptr) extendFromSeg←v13328)+9) ), newCtrlPt←v13624, newCaretPoint←v13244, newCaretPoint←v13244, 0, pd304) ; }; } else { SOURCE(30860, 65) { word pd305; pd305 = (* (( (ptr) (* (ptr) extendFromSeg←v13328 ))+16) ); (void) ( *( (fPt) ((* (ptr) pd305 ))))((word) &oldCtrlPt←v13596, extendFromSeg←v13328, 1, pd305); }; SOURCE(30927, 100) { W2 var←c61920; { word pd306; pd306 = (* (( (ptr) (* (( (ptr) gf←c64096)+160)/* var←c57888 */ ))+22) ); (void) ( *( (fPt) ((* (ptr) pd306 ))))((word) &var←c61920, oldCtrlPt←v13596, (* (W2Pt) (( (ptr) extendFromSeg←v13328)+11) ), pd306); }; { W2 var←c0431; { word pd307; pd307 = (* (( (ptr) (* (( (ptr) gf←c64096)+160)/* var←c57888 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd307 ))))((word) &var←c0431, (* (W2Pt) (( (ptr) extendFromSeg←v13328)+11) ), var←c61920, pd307) ; }; newCtrlPt←v13624 = var←c0431; }; }; SOURCE(31029, 96) { word pd308; pd308 = (* (( (ptr) (* (( (ptr) gf←c64096)+183)/* var←c61888 */ ))+6) ); newBezier←v13356 = (word) ( *( (fPt) ((* (ptr) pd308 ))))((* (W2Pt) (( (ptr) extendFromSeg←v13328)+11) ), newCtrlPt←v13624, newCaretPoint←v13244, newCaretPoint←v13244, 0, pd308) ; }; }; SOURCE(31131, 56) { word pd309; pd309 = (* (( (ptr) (* (( (ptr) gf←c64096)+183)/* var←c61888 */ ))+5) ); newSeg←v13300 = (word) ( *( (fPt) ((* (ptr) pd309 ))))(newCaretPoint←v13244, worldPt←v9532, 0, pd309); }; SOURCE(31206, 39) { word pd310; pd310 = (* (( (ptr) (* (( (ptr) gf←c64096)+183)/* var←c61888 */ ))+16) ); (void) ( *( (fPt) ((* (ptr) pd310 ))))(newSeg←v13300, defaults←v9588, pd310); }; SOURCE(31247, 45) { word pd311; pd311 = (* (( (ptr) (* (( (ptr) gf←c64096)+183)/* var←c61888 */ ))+18) ); (void) ( *( (fPt) ((* (ptr) pd311 ))))(extendFromSeg←v13328, newBezier←v13356, pd311); }; SOURCE(31294, 22) (* (( (ptr) newSeg←v13300)+2) ) = (* (ptr) &fc220 ); SOURCE(31318, 55) { word var←c61952; word pd312; pd312 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+6) ); var←c61952 = (word) ( *( (fPt) ((* (ptr) pd312 ))))(newTraj←v9688, trajEnd←v9716, newBezier←v13356, 0, pd312); }; SOURCE(31375, 52) { word var←c61984; word pd313; pd313 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+6) ); var←c61984 = (word) ( *( (fPt) ((* (ptr) pd313 ))))(newTraj←v9688, trajEnd←v9716, newSeg←v13300, 0, pd313); }; SOURCE(31430, 44) (* (( (ptr) (* (( (ptr) ggData←v9616)+16) ))+18) ) = 1; SOURCE(31476, 40) (* (( (ptr) (* (( (ptr) ggData←v9616)+16) ))+19) ) = trajEnd←v9716; SOURCE(31518, 90) { word var←c62016; { word tc314; word pd315; word idx316; if ((trajEnd←v9716 == 0)) { tc314 = (word) 1; } else { pd315 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+37) ); tc314 = (word) ((word) ( *( (fPt) ((* (ptr) pd315 ))))(newTraj←v9688, pd315) - 1); }; var←c62016 = ( idx316 = (word) tc314, SGNCK(idx316) ); }; (* (( (ptr) (* (( (ptr) ggData←v9616)+16) ))+20) ) = var←c62016; }; SOURCE(31610, 37) (* (( (ptr) (* (( (ptr) ggData←v9616)+16) ))+21) ) = newTraj←v9688; SOURCE(31649, 54) (* (( (ptr) (* (( (ptr) ggData←v9616)+16) ))+22) ) = thisOutlineSlice←v13496; SOURCE(31705, 29) newOutline←v9744 = thisOutlineSlice←v13496; }; } else { SOURCE(31864, 53) { word pd317; pd317 = (* (( (ptr) (* (( (ptr) gf←c64096)+183)/* var←c61888 */ ))+5) ); newSeg←v13300 = (word) ( *( (fPt) ((* (ptr) pd317 ))))(caretPoint←v13216, worldPt←v9532, 0, pd317); }; SOURCE(31949, 39) { word pd318; pd318 = (* (( (ptr) (* (( (ptr) gf←c64096)+183)/* var←c61888 */ ))+16) ); (void) ( *( (fPt) ((* (ptr) pd318 ))))(newSeg←v13300, defaults←v9588, pd318); }; SOURCE(31990, 22) (* (( (ptr) newSeg←v13300)+2) ) = (* (ptr) &fc220 ); SOURCE(32014, 746) { word pd319; pd319 = (* (( (ptr) (* (( (ptr) gf←c64096)+158)/* var←c57760 */ ))+11) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd319 ))))(caret←v9560, pd319))) { SOURCE(32073, 67) { W3 var←c62048; { word pd320; pd320 = (* (( (ptr) (* (( (ptr) gf←c64096)+166)/* var←c58240 */ ))+29) ); (void) ( *( (fPt) ((* (ptr) pd320 ))))((word) &var←c62048, caret←v9560, pd320); }; jointNum←v13272 = var←c62048.f2; newTraj←v9688 = var←c62048.f1; chair←v13384 = var←c62048.f0; }; SOURCE(32142, 17) oldTraj←v9660 = newTraj←v9688; SOURCE(32161, 87) { word var←c62080; var←c62080 = jointNum←v13272; { word pd321; if ((var←c62080 == 0)) { trajEnd←v9716 = 0; } else { pd321 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+39) ); if ((var←c62080 == (word) ( *( (fPt) ((* (ptr) pd321 ))))(newTraj←v9688, pd321))) { trajEnd←v9716 = 1; } else { trajEnd←v9716 = (unsigned) ( XR←RaiseUnnamedError(), 0 ); }; }; }; }; SOURCE(32250, 97) { word var←c62112; { word pd322; if ((trajEnd←v9716 == 0)) { var←c62112 = 0; } else { pd322 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+37) ); var←c62112 = (word) ( *( (fPt) ((* (ptr) pd322 ))))(newTraj←v9688, pd322); }; }; { word pd323; pd323 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+29) ); extendFromSeg←v13328 = (word) ( *( (fPt) ((* (ptr) pd323 ))))(newTraj←v9688, var←c62112, pd323); }; }; SOURCE(32349, 52) { word var←c62144; word pd324; pd324 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+6) ); var←c62144 = (word) ( *( (fPt) ((* (ptr) pd324 ))))(newTraj←v9688, trajEnd←v9716, newSeg←v13300, 0, pd324); }; SOURCE(32403, 24) newOutline←v9744 = (* (ptr) chair←v13384 ); } else { SOURCE(32462, 13) oldTraj←v9660 = 0; SOURCE(32477, 12) trajEnd←v9716 = 1; SOURCE(32491, 39) { word pd325; pd325 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+4) ); newTraj←v9688 = (word) ( *( (fPt) ((* (ptr) pd325 ))))(caretPoint←v13216, pd325); }; SOURCE(32532, 66) { word pd326; pd326 = (* (( (ptr) (* (( (ptr) gf←c64096)+159)/* var←c57824 */ ))+57) ); (void) ( *( (fPt) ((* (ptr) pd326 ))))(newTraj←v9688, 0, (* (( (ptr) defaults←v9588)+1) ), 0, pd326); }; SOURCE(32600, 52) { word var←c62176; word pd327; pd327 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+6) ); var←c62176 = (word) ( *( (fPt) ((* (ptr) pd327 ))))(newTraj←v9688, trajEnd←v9716, newSeg←v13300, 0, pd327); }; SOURCE(32654, 65) { word pd328; pd328 = (* (( (ptr) (* (( (ptr) gf←c64096)+177)/* var←c60928 */ ))+5) ); newOutline←v9744 = (word) ( *( (fPt) ((* (ptr) pd328 ))))(newTraj←v9688, (* (( (ptr) defaults←v9588)+8) ), pd328); }; SOURCE(32721, 39) { word pd329; pd329 = (* (( (ptr) (* (( (ptr) gf←c64096)+175)/* var←c59840 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd329 ))))(scene←v9504, newOutline←v9744, (word) -1, pd329); }; }; }; SOURCE(32765, 40) (* (( (ptr) (* (( (ptr) ggData←v9616)+16) ))+19) ) = trajEnd←v9716; SOURCE(32838, 86) { word var←c62208; { word pd330; if ((trajEnd←v9716 == 0)) { var←c62208 = 0; } else { pd330 = (* (( (ptr) (* (( (ptr) gf←c64096)+178)/* var←c60992 */ ))+37) ); var←c62208 = (word) ( *( (fPt) ((* (ptr) pd330 ))))(newTraj←v9688, pd330); }; }; (* (( (ptr) (* (( (ptr) ggData←v9616)+16) ))+20) ) = var←c62208; }; SOURCE(32926, 37) (* (( (ptr) (* (( (ptr) ggData←v9616)+16) ))+21) ) = newTraj←v9688; SOURCE(32965, 48) (* (( (ptr) (* (( (ptr) ggData←v9616)+16) ))+22) ) = newOutline←v9744; }; /* removed tail goto */ (* (ptr) formal←c0442 ) = oldTraj←v9660; (* (( (ptr) formal←c0442)+1) ) = newTraj←v9688; (* (( (ptr) formal←c0442)+2) ) = trajEnd←v9716; (* (( (ptr) formal←c0442)+3) ) = newOutline←v9744; return; } static void DuringBezierDrag←P1800(input←v24884, ggData←v24912, worldPt←v24940) word input←v24884; word ggData←v24912; W2 worldPt←v24940; { register ptr gf←c64128 = (ptr) &globalframe; W2 totalDragVector←v13668; W2 mapPoint←v13696; /* DuringBezierDrag: */ SOURCE(33022, 959) SOURCE(33104, 66) { word pd331; pd331 = (* (( (ptr) (* (( (ptr) gf←c64128)+166)/* var←c58240 */ ))+28) ); (void) ( *( (fPt) ((* (ptr) pd331 ))))((word) &mapPoint←v13696, worldPt←v24940, ggData←v24912, (* (( (ptr) gf←c64128)+79) ), pd331); }; SOURCE(33172, 65) { word pd332; pd332 = (* (( (ptr) (* (( (ptr) gf←c64128)+160)/* var←c57888 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd332 ))))((word) &totalDragVector←v13668, mapPoint←v13696, (* (W2Pt) (( (ptr) (* (( (ptr) ggData←v24912)+16) ))+2) ), pd332); }; SOURCE(33239, 94) { W2 var←c62240; var←c62240.f0 = totalDragVector←v13668.f0; var←c62240.f1 = totalDragVector←v13668.f1; { word pd333; pd333 = (* (( (ptr) (* (( (ptr) gf←c64128)+174)/* var←c59680 */ ))+10) ); (* (( (ptr) (* (( (ptr) ggData←v24912)+16) ))+13) ) = (word) ( *( (fPt) ((* (ptr) pd333 ))))(var←c62240, pd333); }; }; SOURCE(33335, 511) if ((0 != (* (( (ptr) (* (( (ptr) ggData←v24912)+16) ))+18) ))) { SOURCE(33381, 467) { W2 newCP←v13740; W2 dragCP←v13768; word bezier←v13796; SOURCE(33413, 100) { word pd334; pd334 = (* (( (ptr) (* (( (ptr) gf←c64128)+178)/* var←c60992 */ ))+29) ); bezier←v13796 = (word) ( *( (fPt) ((* (ptr) pd334 ))))((* (( (ptr) (* (( (ptr) ggData←v24912)+16) ))+21) ), (* (( (ptr) (* ( ( (ptr) ggData←v24912)+16) ))+20) ), pd334); }; SOURCE(33515, 226) if (((* (( (ptr) (* (( (ptr) ggData←v24912)+16) ))+19) ) == 0)) { SOURCE(33561, 43) { word pd335; pd335 = (* (( (ptr) (* (( (ptr) gf←c64128)+160)/* var←c57888 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd335 ))))((word) &dragCP←v13768, mapPoint←v13696, (* (W2Pt) (( (ptr) bezier←v13796)+9) ), pd335) ; }; SOURCE(33606, 41) { word pd336; pd336 = (* (( (ptr) (* (( (ptr) gf←c64128)+160)/* var←c57888 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd336 ))))((word) &newCP←v13740, (* (W2Pt) (( (ptr) bezier←v13796)+9) ), dragCP←v13768, pd336) ; }; } else { SOURCE(33656, 43) { word pd337; pd337 = (* (( (ptr) (* (( (ptr) gf←c64128)+160)/* var←c57888 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd337 ))))((word) &dragCP←v13768, mapPoint←v13696, (* (W2Pt) (( (ptr) bezier←v13796)+11) ), pd337) ; }; SOURCE(33701, 40) { word pd338; pd338 = (* (( (ptr) (* (( (ptr) gf←c64128)+160)/* var←c57888 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd338 ))))((word) &newCP←v13740, (* (W2Pt) (( (ptr) bezier←v13796)+11) ), dragCP←v13768, pd338) ; }; }; SOURCE(33746, 100) { word pd339; pd339 = (* (( (ptr) (* (( (ptr) gf←c64128)+183)/* var←c61888 */ ))+33) ); (void) ( *( (fPt) ((* (ptr) pd339 ))))(bezier←v13796, newCP←v13740, ( ((* (( (ptr) (* (( (ptr) ggData←v24912)+16) ))+19) ) == 0) ? 0 : 1 ) , pd339); }; }; }; SOURCE(33852, 129) { word pd340; pd340 = (* (( (ptr) (* (( (ptr) gf←c64128)+171)/* var←c58592 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd340 ))))((* (( (ptr) gf←c64128)+82) ), ggData←v24912, 4, 0, 0, 1, pd340); }; } static word ContinueBezierAdd←P1860(input←v25000, ggData←v25028, worldPt←v25056) word input←v25000; word ggData←v25028; W2 worldPt←v25056; { register ptr gf←c64160 = (ptr) &globalframe; word success←v25100; W2 bezierSetCP←v13840; W2 bezierSetJoint←v13868; W2 caretPoint←v13896; W2 newCaretPoint←v13924; word trajEnd←v13952; word extendFromSeg←v13980 = 0; word newBezier←v14008 = 0; word newSeg←v14036 = 0; word oldTraj←v14064; word tangentSeg←v14092 = 0; word thisTraj←v14120 = 0; word hiSegNum←v14148; word priority←v14176; word newNormal←v14204 = 0; word newHot←v14232 = 0; word delSeq←v14260 = 0; word newOutlines←v14288 = 0; word thisOutlineSlice←v14316 = 0; word oldOutlineSlice←v14344 = 0; word thisOutline←v14372 = 0; word ancestorD←v14400 = 0; /* ContinueBezierAdd: */ SOURCE(34011, 4072) SOURCE(34011, 4072) success←v25100 = 1; SOURCE(34175, 43) oldTraj←v14064 = (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+21) ); SOURCE(34257, 41) { word pd341; pd341 = (* (( (ptr) (* (( (ptr) gf←c64160)+178)/* var←c60992 */ ))+37) ); hiSegNum←v14148 = (word) ( *( (fPt) ((* (ptr) pd341 ))))(oldTraj←v14064, pd341); }; { word var←c62304; W2 var←c0487; SOURCE(34498, 109) { word pd342; pd342 = (* (( (ptr) (* (( (ptr) gf←c64160)+166)/* var←c58240 */ ))+30) ); (void) ( *( (fPt) ((* (ptr) pd342 ))))((* (( (ptr) ggData←v25028)+11) ), (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+13) ), (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+17) ), 0, pd342); }; SOURCE(34722, 29) { word pd343; pd343 = (* (( (ptr) (* (( (ptr) gf←c64160)+182)/* var←c61568 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd343 ))))(ggData←v25028, pd343); }; SOURCE(34803, 41) { word pd344; pd344 = (* (( (ptr) (* (( (ptr) gf←c64160)+165)/* var←c58208 */ ))+20) ); (void) ( *( (fPt) ((* (ptr) pd344 ))))(ggData←v25028, pd344); }; SOURCE(34846, 28) { word pd345; pd345 = (* (( (ptr) (* (( (ptr) gf←c64160)+171)/* var←c58592 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd345 ))))(ggData←v25028, pd345); }; SOURCE(34876, 35) { word pd346; pd346 = (* (( (ptr) (* (( (ptr) gf←c64160)+166)/* var←c58240 */ ))+24) ); (void) ( *( (fPt) ((* (ptr) pd346 ))))(ggData←v25028, pd346); }; SOURCE(34932, 71) { word pd347; pd347 = (* (( (ptr) (* (( (ptr) gf←c64160)+166)/* var←c58240 */ ))+28) ); (void) ( *( (fPt) ((* (ptr) pd347 ))))((word) &newCaretPoint←v13924, worldPt←v25056, ggData←v25028, (* (( (ptr) gf←c64160)+79) ), pd347); }; SOURCE(35030, 43) { word pd348; pd348 = (* (( (ptr) (* (( (ptr) gf←c64160)+158)/* var←c57760 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd348 ))))((word) &caretPoint←v13896, (* (( (ptr) ggData←v25028)+13) ), pd348); }; SOURCE(35076, 305) if ((0 != (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+18) ))) { SOURCE(35124, 173) if (((* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+19) ) == 1)) { SOURCE(35168, 85) { word pd349; pd349 = (* (( (ptr) (* (( (ptr) gf←c64160)+178)/* var←c60992 */ ))+29) ); tangentSeg←v14092 = (word) ( *( (fPt) ((* (ptr) pd349 ))))(oldTraj←v14064, ((* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+20) ) + 1), pd349); }; } else { SOURCE(35253, 44) { word pd350; pd350 = (* (( (ptr) (* (( (ptr) gf←c64160)+178)/* var←c60992 */ ))+29) ); tangentSeg←v14092 = (word) ( *( (fPt) ((* (ptr) pd350 ))))(oldTraj←v14064, 0, pd350); }; }; } else { SOURCE(35306, 75) { word pd351; pd351 = (* (( (ptr) (* (( (ptr) gf←c64160)+178)/* var←c60992 */ ))+29) ); tangentSeg←v14092 = (word) ( *( (fPt) ((* (ptr) pd351 ))))(oldTraj←v14064, (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+20) ), pd351); }; }; SOURCE(35384, 360) if (((* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+19) ) == 1)) { SOURCE(35430, 12) trajEnd←v13952 = 1; SOURCE(35444, 30) bezierSetJoint←v13868 = (* (W2Pt) (( (ptr) tangentSeg←v14092)+9) ); SOURCE(35476, 27) bezierSetCP←v13840 = (* (W2Pt) (( (ptr) tangentSeg←v14092)+11) ); SOURCE(35505, 80) if ((hiSegNum←v14148 != 0)) { SOURCE(35528, 57) { word pd352; pd352 = (* (( (ptr) (* (( (ptr) gf←c64160)+178)/* var←c60992 */ ))+29) ); extendFromSeg←v13980 = (word) ( *( (fPt) ((* (ptr) pd352 ))))(oldTraj←v14064, SGNCK((hiSegNum←v14148 - 1)), pd352); }; }; } else { SOURCE(35599, 12) trajEnd←v13952 = 0; SOURCE(35613, 30) bezierSetJoint←v13868 = (* (W2Pt) (( (ptr) tangentSeg←v14092)+11) ); SOURCE(35645, 27) bezierSetCP←v13840 = (* (W2Pt) (( (ptr) tangentSeg←v14092)+9) ); SOURCE(35674, 70) if ((hiSegNum←v14148 != 0)) { SOURCE(35697, 47) { word pd353; pd353 = (* (( (ptr) (* (( (ptr) gf←c64160)+178)/* var←c60992 */ ))+29) ); extendFromSeg←v13980 = (word) ( *( (fPt) ((* (ptr) pd353 ))))(oldTraj←v14064, 1, pd353); }; }; }; SOURCE(35752, 53) oldOutlineSlice←v14344 = (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+22) ); SOURCE(35807, 75) { word pd354; pd354 = (* (( (ptr) (* (( (ptr) gf←c64160)+175)/* var←c59840 */ ))+21) ); priority←v14176 = (word) ( *( (fPt) ((* (ptr) pd354 ))))((* (( (ptr) ggData←v25028)+11) ), oldOutlineSlice←v14344, pd354) ; }; SOURCE(35884, 96) { word pd355; pd355 = (* (( (ptr) (* (( (ptr) gf←c64160)+183)/* var←c61888 */ ))+6) ); newBezier←v14008 = (word) ( *( (fPt) ((* (ptr) pd355 ))))(bezierSetJoint←v13868, bezierSetCP←v13840, newCaretPoint←v13924, newCaretPoint←v13924, 0, pd355) ; }; SOURCE(35982, 56) { word pd356; pd356 = (* (( (ptr) (* (( (ptr) gf←c64160)+183)/* var←c61888 */ ))+5) ); newSeg←v14036 = (word) ( *( (fPt) ((* (ptr) pd356 ))))(newCaretPoint←v13924, worldPt←v25056, 0, pd356); }; SOURCE(36040, 176) if ((hiSegNum←v14148 != 0)) { SOURCE(36115, 45) { word pd357; pd357 = (* (( (ptr) (* (( (ptr) gf←c64160)+183)/* var←c61888 */ ))+18) ); (void) ( *( (fPt) ((* (ptr) pd357 ))))(extendFromSeg←v13980, newBezier←v14008, pd357); }; } else { SOURCE(36167, 49) { word pd358; pd358 = (* (( (ptr) (* (( (ptr) gf←c64160)+183)/* var←c61888 */ ))+16) ); (void) ( *( (fPt) ((* (ptr) pd358 ))))(newBezier←v14008, (* (( (ptr) ggData←v25028)+30) ), pd358); }; }; SOURCE(36218, 46) { word pd359; pd359 = (* (( (ptr) (* (( (ptr) gf←c64160)+183)/* var←c61888 */ ))+16) ); (void) ( *( (fPt) ((* (ptr) pd359 ))))(newSeg←v14036, (* (( (ptr) ggData←v25028)+30) ), pd359); }; SOURCE(36266, 22) (* (( (ptr) newSeg←v14036)+2) ) = (* (ptr) &fc220 ); SOURCE(36290, 109) { word var←c62272; var←c62272 = XR←Narrow((* (( (ptr) (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+21) ))+1) ), (* (( (ptr) gf←c64160)+15) )) ; { word pd360; pd360 = (* (( (ptr) (* (( (ptr) gf←c64160)+179)/* var←c61152 */ ))+33) ); delSeq←v14260 = (word) ( *( (fPt) ((* (ptr) pd360 ))))(var←c62272, (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+19) ), pd360) ; }; }; SOURCE(36426, 128) { word pd361; pd361 = (* (( (ptr) (* (( (ptr) gf←c64160)+180)/* var←c61216 */ ))+8) ); var←c62304 = (word) ( *( (fPt) ((* (ptr) pd361 ))))((* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+21) ), delSeq←v14260, pd361) ; }; { word pd362; pd362 = (* (( (ptr) (* (( (ptr) gf←c64160)+175)/* var←c59840 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd362 ))))((word) &var←c0487, var←c62304, (* (( (ptr) ggData←v25028)+11) ), pd362); }; newOutlines←v14288 = var←c0487.f1; SOURCE(36556, 124) { word var←c62336; { word pd363; pd363 = (* (( (ptr) (* (( (ptr) gf←c64160)+180)/* var←c61216 */ ))+8) ); var←c62336 = (word) ( *( (fPt) ((* (ptr) pd363 ))))((* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+21) ), delSeq←v14260, pd363) ; }; { word pd364; pd364 = (* (( (ptr) (* (( (ptr) gf←c64160)+173)/* var←c59584 */ ))+84) ); ancestorD←v14400 = (word) ( *( (fPt) ((* (ptr) pd364 ))))(var←c62336, pd364); }; }; SOURCE(36682, 686) if ((newOutlines←v14288 == 0)) { SOURCE(36752, 42) { word pd365; pd365 = (* (( (ptr) (* (( (ptr) gf←c64160)+178)/* var←c60992 */ ))+4) ); thisTraj←v14120 = (word) ( *( (fPt) ((* (ptr) pd365 ))))((* (W2Pt) ((( (ptr) newBezier←v14008)+9)) ), pd365); }; SOURCE(36796, 79) { word pd366; pd366 = (* (( (ptr) (* (( (ptr) gf←c64160)+177)/* var←c60928 */ ))+5) ); thisOutlineSlice←v14316 = (word) ( *( (fPt) ((* (ptr) pd366 ))))(thisTraj←v14120, (* (( (ptr) (* (( (ptr) ggData←v25028)+30) ))+8) ), pd366); }; SOURCE(36877, 74) { word pd367; pd367 = (* (( (ptr) (* (( (ptr) gf←c64160)+159)/* var←c57824 */ ))+57) ); (void) ( *( (fPt) ((* (ptr) pd367 ))))(thisTraj←v14120, 0, (* (( (ptr) (* (( (ptr) ggData←v25028)+30) ))+1) ), 0, pd367) ; }; SOURCE(36953, 56) { word var←c62368; word pd368; pd368 = (* (( (ptr) (* (( (ptr) gf←c64160)+178)/* var←c60992 */ ))+6) ); var←c62368 = (word) ( *( (fPt) ((* (ptr) pd368 ))))(thisTraj←v14120, trajEnd←v13952, newBezier←v14008, 0, pd368); }; SOURCE(37011, 53) { word var←c62400; word pd369; pd369 = (* (( (ptr) (* (( (ptr) gf←c64160)+178)/* var←c60992 */ ))+6) ); var←c62400 = (word) ( *( (fPt) ((* (ptr) pd369 ))))(thisTraj←v14120, trajEnd←v13952, newSeg←v14036, 0, pd369); }; SOURCE(37066, 58) { word pd370; pd370 = (* (( (ptr) (* (( (ptr) gf←c64160)+175)/* var←c59840 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd370 ))))((* (( (ptr) ggData←v25028)+11) ), thisOutlineSlice←v14316, priority←v14176, pd370) ; }; } else { SOURCE(37135, 36) thisOutlineSlice←v14316 = (* (ptr) newOutlines←v14288 ); SOURCE(37173, 43) thisOutline←v14372 = XR←Narrow((* (( (ptr) thisOutlineSlice←v14316)+1) ), (* (( (ptr) gf←c64160)+11) )); SOURCE(37218, 37) thisTraj←v14120 = (* (ptr) (* (( (ptr) thisOutline←v14372)+4) ) ); SOURCE(37257, 56) { word var←c62432; word pd371; pd371 = (* (( (ptr) (* (( (ptr) gf←c64160)+178)/* var←c60992 */ ))+6) ); var←c62432 = (word) ( *( (fPt) ((* (ptr) pd371 ))))(thisTraj←v14120, trajEnd←v13952, newBezier←v14008, 0, pd371); }; SOURCE(37315, 53) { word var←c62464; word pd372; pd372 = (* (( (ptr) (* (( (ptr) gf←c64160)+178)/* var←c60992 */ ))+6) ); var←c62464 = (word) ( *( (fPt) ((* (ptr) pd372 ))))(thisTraj←v14120, trajEnd←v13952, newSeg←v14036, 0, pd372); }; }; SOURCE(37373, 44) (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+18) ) = 1; SOURCE(37419, 69) if ((trajEnd←v13952 == 0)) { (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+20) ) = 1; } else { (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+20) ) = hiSegNum←v14148; }; SOURCE(37490, 38) (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+21) ) = thisTraj←v14120; SOURCE(37530, 54) (* (( (ptr) (* (( (ptr) ggData←v25028)+16) ))+22) ) = thisOutlineSlice←v14316; SOURCE(37587, 49) { word pd373; pd373 = (* (( (ptr) (* (( (ptr) gf←c64160)+182)/* var←c61568 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd373 ))))((* (( (ptr) gf←c64160)+75) ), ggData←v25028, pd373); }; SOURCE(37670, 99) { W2 var←c62496; { word pd374; pd374 = (* (( (ptr) (* (( (ptr) gf←c64160)+166)/* var←c58240 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd374 ))))((word) &var←c62496, (* (( (ptr) ggData←v25028)+11) ), oldTraj←v14064, thisTraj←v14120, trajEnd←v13952, pd374) ; }; newHot←v14232 = var←c62496.f1; newNormal←v14204 = var←c62496.f0; }; SOURCE(37771, 82) { word pd375; pd375 = (* (( (ptr) (* (( (ptr) gf←c64160)+166)/* var←c58240 */ ))+26) ); (void) ( *( (fPt) ((* (ptr) pd375 ))))((* (( (ptr) ggData←v25028)+13) ), thisOutlineSlice←v14316, newNormal←v14204, worldPt←v25056, pd375) ; }; SOURCE(37855, 74) { word var←c62528; word pd376; pd376 = (* (( (ptr) (* (( (ptr) gf←c64160)+168)/* var←c58336 */ ))+32) ); var←c62528 = (word) ( *( (fPt) ((* (ptr) pd376 ))))(oldOutlineSlice←v14344, ancestorD←v14400, trajEnd←v13952, ggData←v25028, pd376) ; }; SOURCE(37931, 112) { word var←c62560; word pd377; pd377 = (* (( (ptr) (* (( (ptr) gf←c64160)+166)/* var←c58240 */ ))+31) ); var←c62560 = (word) ( *( (fPt) ((* (ptr) pd377 ))))(ggData←v25028, (* (( (ptr) gf←c64160)+76) ), (* (( (ptr) gf←c64160)+77) ), worldPt←v25056, 0, pd377); }; SOURCE(38045, 38) (void) DuringBezierDrag←P1800(0, ggData←v25028, worldPt←v25056); }; SOURCE(34011, 4072) return(success←v25100); } static void EndBezierAdd←P1920(input←v25160, ggData←v25188, worldPt←v25216) word input←v25160; word ggData←v25188; W2 worldPt←v25216; { register ptr gf←c64192 = (ptr) &globalframe; word delSeq←v14528 = 0; word newOutlines←v14556 = 0; W2 point←v14584; W2 normal←v14612; word newEndJoint←v14640; /* EndBezierAdd: */ SOURCE(38115, 2094) SOURCE(38246, 44) { word pd378; pd378 = (* (( (ptr) (* (( (ptr) gf←c64192)+167)/* var←c58272 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd378 ))))((* (( (ptr) gf←c64192)+84) ), (* (( (ptr) gf←c64192)+26) ), pd378); }; SOURCE(38292, 132) { word var←c62592; var←c62592 = (* (( (ptr) (* (( (ptr) ggData←v25188)+16) ))+19) ); if ((var←c62592 == 0)) { SOURCE(38341, 15) newEndJoint←v14640 = 1; } else { if ((var←c62592 == 1)) { SOURCE(38364, 60) { word pd379; word idx380; pd379 = (* (( (ptr) (* (( (ptr) gf←c64192)+178)/* var←c60992 */ ))+39) ); newEndJoint←v14640 = ( idx380 = (word) ((word) ( *( (fPt) ((* (ptr) pd379 ))))((* ((( (ptr) (* (( (ptr) ggData←v25188)+16) ))+21)) ), pd379) - 1), SGNCK(idx380) ); }; }; }; }; SOURCE(38435, 70) { word pd381; pd381 = (* (( (ptr) (* (( (ptr) gf←c64192)+178)/* var←c60992 */ ))+32) ); (void) ( *( (fPt) ((* (ptr) pd381 ))))((word) &point←v14584, (* (( (ptr) (* (( (ptr) ggData←v25188)+16) ))+21) ), newEndJoint←v14640, pd381) ; }; SOURCE(38507, 74) { word pd382; pd382 = (* (( (ptr) (* (( (ptr) gf←c64192)+178)/* var←c60992 */ ))+34) ); (void) ( *( (fPt) ((* (ptr) pd382 ))))((word) &normal←v14612, (* (( (ptr) (* (( (ptr) ggData←v25188)+16) ))+21) ), newEndJoint←v14640, pd382) ; }; SOURCE(38583, 109) { word var←c62624; var←c62624 = XR←Narrow((* (( (ptr) (* (( (ptr) (* (( (ptr) ggData←v25188)+16) ))+21) ))+1) ), (* (( (ptr) gf←c64192)+15) )) ; { word pd383; pd383 = (* (( (ptr) (* (( (ptr) gf←c64192)+179)/* var←c61152 */ ))+33) ); delSeq←v14528 = (word) ( *( (fPt) ((* (ptr) pd383 ))))(var←c62624, (* (( (ptr) (* (( (ptr) ggData←v25188)+16) ))+19) ), pd383) ; }; }; SOURCE(38719, 124) { W2 var←c62688; { word var←c62656; { word pd384; pd384 = (* (( (ptr) (* (( (ptr) gf←c64192)+180)/* var←c61216 */ ))+8) ); var←c62656 = (word) ( *( (fPt) ((* (ptr) pd384 ))))((* (( (ptr) (* (( (ptr) ggData←v25188)+16) ))+21) ), delSeq←v14528, pd384) ; }; { word pd385; pd385 = (* (( (ptr) (* (( (ptr) gf←c64192)+175)/* var←c59840 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd385 ))))((word) &var←c62688, var←c62656, (* (( (ptr) ggData←v25188)+11) ), pd385); }; }; newOutlines←v14556 = var←c62688.f1; }; SOURCE(38845, 709) if ((newOutlines←v14556 == 0)) { SOURCE(38904, 32) { word pd386; pd386 = (* (( (ptr) (* (( (ptr) gf←c64192)+158)/* var←c57760 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd386 ))))((* (( (ptr) ggData←v25188)+13) ), 0, pd386); }; } else { SOURCE(38945, 611) { word jointParts←v14768 = 0; word jointD←v14796 = 0; word outD←v14824 = 0; word shortOutline←v14852 = 0; word shortTraj←v14880 = 0; SOURCE(39039, 32) shortOutline←v14852 = (* (ptr) newOutlines←v14556 ); SOURCE(39073, 59) { word pd387; pd387 = (* (( (ptr) (* (( (ptr) gf←c64192)+173)/* var←c59584 */ ))+77) ); shortTraj←v14880 = (word) ( *( (fPt) ((* (ptr) pd387 ))))(shortOutline←v14852, 0, (* (( (ptr) gf←c64192)+32) ), pd387); }; SOURCE(39134, 127) { word var←c62720; var←c62720 = XR←Narrow((* (( (ptr) shortTraj←v14880)+1) ), (* (( (ptr) gf←c64192)+15) )); { word pd388; pd388 = (* (( (ptr) (* (( (ptr) gf←c64192)+179)/* var←c61152 */ ))+8) ); jointParts←v14768 = (word) ( *( (fPt) ((* (ptr) pd388 ))))(var←c62720, ( ((* (( (ptr) (* (( (ptr) ggData←v25188)+16) ))+19) ) == 0) ? 0 : newEndJoint←v14640 ) , pd388); }; }; SOURCE(39263, 59) { word pd389; pd389 = (* (( (ptr) (* (( (ptr) gf←c64192)+180)/* var←c61216 */ ))+8) ); jointD←v14796 = (word) ( *( (fPt) ((* (ptr) pd389 ))))(shortTraj←v14880, jointParts←v14768, pd389); }; SOURCE(39380, 61) { word pd390; pd390 = (* (( (ptr) (* (( (ptr) gf←c64192)+173)/* var←c59584 */ ))+84) ); outD←v14824 = (word) ( *( (fPt) ((* (ptr) pd390 ))))(jointD←v14796, pd390); }; SOURCE(39443, 33) { word pd391; pd391 = (* (( (ptr) (* (( (ptr) gf←c64192)+158)/* var←c57760 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd391 ))))((* (( (ptr) ggData←v25188)+13) ), outD←v14824, pd391); }; SOURCE(39478, 76) { word pd392; pd392 = (* (( (ptr) (* (( (ptr) gf←c64192)+170)/* var←c58496 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd392 ))))(outD←v14824, (* (( (ptr) ggData←v25188)+11) ), 0, pd392); }; }; }; SOURCE(39559, 54) { word pd393; pd393 = (* (( (ptr) (* (( (ptr) gf←c64192)+158)/* var←c57760 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd393 ))))((* (( (ptr) ggData←v25188)+13) ), point←v14584, normal←v14612, 0, pd393); }; SOURCE(39615, 30) { word pd394; pd394 = (* (( (ptr) (* (( (ptr) gf←c64192)+165)/* var←c58208 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd394 ))))(ggData←v25188, pd394); }; SOURCE(39647, 91) { word var←c62752; { word pd395; pd395 = (* (( (ptr) (* (( (ptr) gf←c64192)+159)/* var←c57824 */ ))+7) ); var←c62752 = (word) ( *( (fPt) ((* (ptr) pd395 ))))((* (( (ptr) (* (( (ptr) ggData←v25188)+16) ))+21) ), 0, pd395); }; { word pd396; pd396 = (* (( (ptr) (* (( (ptr) gf←c64192)+165)/* var←c58208 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd396 ))))(ggData←v25188, var←c62752, 0, pd396); }; }; SOURCE(39740, 45) (* (( (ptr) (* (( (ptr) ggData←v25188)+16) ))+18) ) = 0; SOURCE(39787, 41) (* (( (ptr) (* (( (ptr) ggData←v25188)+16) ))+22) ) = 0; SOURCE(39830, 33) (* (( (ptr) (* (( (ptr) ggData←v25188)+16) ))+21) ) = 0; SOURCE(39866, 29) { word pd397; pd397 = (* (( (ptr) (* (( (ptr) gf←c64192)+182)/* var←c61568 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd397 ))))(ggData←v25188, pd397); }; SOURCE(39937, 41) { word pd398; pd398 = (* (( (ptr) (* (( (ptr) gf←c64192)+165)/* var←c58208 */ ))+20) ); (void) ( *( (fPt) ((* (ptr) pd398 ))))(ggData←v25188, pd398); }; SOURCE(39980, 28) { word pd399; pd399 = (* (( (ptr) (* (( (ptr) gf←c64192)+171)/* var←c58592 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd399 ))))(ggData←v25188, pd399); }; SOURCE(40010, 154) { word pd400; pd400 = (* (( (ptr) (* (( (ptr) gf←c64192)+171)/* var←c58592 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd400 ))))((* (( (ptr) gf←c64192)+85) ), ggData←v25188, 0, 1, 0, 0, pd400); }; SOURCE(40166, 43) { word pd401; pd401 = (* (( (ptr) (* (( (ptr) gf←c64192)+167)/* var←c58272 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd401 ))))((* (( (ptr) gf←c64192)+84) ), (* (( (ptr) gf←c64192)+26) ), pd401); }; } static void AbortBezierAdd←P1980(input←v9804, ggData←v9832, worldPt←v9860) word input←v9804; word ggData←v9832; W2 worldPt←v9860; { register ptr gf←c64224 = (ptr) &globalframe; word delSeq←v14924 = 0; word partSeq←v14952 = 0; word delD←v14980 = 0; word newOutlines←v15008 = 0; word newEndJoint←v15036; /* AbortBezierAdd: */ SOURCE(40235, 2084) SOURCE(40422, 132) { word var←c62784; var←c62784 = (* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+19) ); if ((var←c62784 == 0)) { SOURCE(40471, 15) newEndJoint←v15036 = 1; } else { if ((var←c62784 == 1)) { SOURCE(40494, 60) { word pd402; word idx403; pd402 = (* (( (ptr) (* (( (ptr) gf←c64224)+178)/* var←c60992 */ ))+39) ); newEndJoint←v15036 = ( idx403 = (word) ((word) ( *( (fPt) ((* (ptr) pd402 ))))((* ((( (ptr) (* (( (ptr) ggData←v9832)+16) ))+21)) ), pd402) - 1), SGNCK(idx403) ); }; }; }; }; SOURCE(40565, 109) { word var←c62816; var←c62816 = XR←Narrow((* (( (ptr) (* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+21) ))+1) ), (* (( (ptr) gf←c64224)+15) )) ; { word pd404; pd404 = (* (( (ptr) (* (( (ptr) gf←c64224)+179)/* var←c61152 */ ))+33) ); delSeq←v14924 = (word) ( *( (fPt) ((* (ptr) pd404 ))))(var←c62816, (* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+19) ), pd404) ; }; }; SOURCE(40701, 71) { word pd405; pd405 = (* (( (ptr) (* (( (ptr) gf←c64224)+180)/* var←c61216 */ ))+8) ); delD←v14980 = (word) ( *( (fPt) ((* (ptr) pd405 ))))((* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+21) ), delSeq←v14924, pd405) ; }; SOURCE(40774, 442) if ((0 != (* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+18) ))) { SOURCE(40849, 45) (* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+18) ) = 0; SOURCE(40896, 114) { word var←c62848; var←c62848 = XR←Narrow((* (( (ptr) (* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+21) ))+1) ), (* (( (ptr) gf←c64224)+15) )) ; { word pd406; pd406 = (* (( (ptr) (* (( (ptr) gf←c64224)+179)/* var←c61152 */ ))+9) ); partSeq←v14952 = (word) ( *( (fPt) ((* (ptr) pd406 ))))(var←c62848, (* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+20) ), pd406) ; }; }; SOURCE(41012, 96) { word var←c62880; { word pd407; pd407 = (* (( (ptr) (* (( (ptr) gf←c64224)+180)/* var←c61216 */ ))+8) ); var←c62880 = (word) ( *( (fPt) ((* (ptr) pd407 ))))((* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+21) ), partSeq←v14952, pd407) ; }; { word pd408; pd408 = (* (( (ptr) (* (( (ptr) gf←c64224)+179)/* var←c61152 */ ))+20) ); delD←v14980 = (word) ( *( (fPt) ((* (ptr) pd408 ))))(delD←v14980, var←c62880, pd408); }; }; SOURCE(41110, 106) if (((* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+19) ) == 1)) { SOURCE(41154, 34) newEndJoint←v15036 = SGNCK((newEndJoint←v15036 - 1)); } else { SOURCE(41188, 28) newEndJoint←v15036 = (newEndJoint←v15036 + 1); }; }; SOURCE(41222, 64) { W2 var←c62912; { word pd409; pd409 = (* (( (ptr) (* (( (ptr) gf←c64224)+175)/* var←c59840 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd409 ))))((word) &var←c62912, delD←v14980, (* (( (ptr) ggData←v9832)+11) ), pd409); }; newOutlines←v15008 = var←c62912.f1; }; SOURCE(41288, 744) if ((newOutlines←v15008 == 0)) { SOURCE(41347, 32) { word pd410; pd410 = (* (( (ptr) (* (( (ptr) gf←c64224)+158)/* var←c57760 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd410 ))))((* (( (ptr) ggData←v9832)+13) ), 0, pd410); }; } else { SOURCE(41388, 646) { word jointParts←v15164 = 0; word jointD←v15192 = 0; word outD←v15220 = 0; word shortOutline←v15248 = 0; word shortTraj←v15276 = 0; SOURCE(41482, 70) if (((* (( (ptr) newOutlines←v15008)+1) ) != 0)) { SOURCE(41513, 39) { word var←c0538; var←c0538 = (* (( (ptr) gf←c64224)+86) ); (void) (XR←RaiseSignal((* (( (ptr) gf←c64224)+4)/* Problem←v5492 */ ), 0, (word) &var←c0538)); }; }; SOURCE(41554, 32) shortOutline←v15248 = (* (ptr) newOutlines←v15008 ); SOURCE(41588, 59) { word pd411; pd411 = (* (( (ptr) (* (( (ptr) gf←c64224)+173)/* var←c59584 */ ))+77) ); shortTraj←v15276 = (word) ( *( (fPt) ((* (ptr) pd411 ))))(shortOutline←v15248, 0, (* (( (ptr) gf←c64224)+32) ), pd411); }; SOURCE(41649, 127) { word var←c62944; var←c62944 = XR←Narrow((* (( (ptr) shortTraj←v15276)+1) ), (* (( (ptr) gf←c64224)+15) )); { word pd412; pd412 = (* (( (ptr) (* (( (ptr) gf←c64224)+179)/* var←c61152 */ ))+8) ); jointParts←v15164 = (word) ( *( (fPt) ((* (ptr) pd412 ))))(var←c62944, ( ((* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+19) ) == 0) ? 0 : newEndJoint←v15036 ) , pd412); }; }; SOURCE(41778, 59) { word pd413; pd413 = (* (( (ptr) (* (( (ptr) gf←c64224)+180)/* var←c61216 */ ))+8) ); jointD←v15192 = (word) ( *( (fPt) ((* (ptr) pd413 ))))(shortTraj←v15276, jointParts←v15164, pd413); }; SOURCE(41858, 61) { word pd414; pd414 = (* (( (ptr) (* (( (ptr) gf←c64224)+173)/* var←c59584 */ ))+84) ); outD←v15220 = (word) ( *( (fPt) ((* (ptr) pd414 ))))(jointD←v15192, pd414); }; SOURCE(41921, 33) { word pd415; pd415 = (* (( (ptr) (* (( (ptr) gf←c64224)+158)/* var←c57760 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd415 ))))((* (( (ptr) ggData←v9832)+13) ), outD←v15220, pd415); }; SOURCE(41956, 76) { word pd416; pd416 = (* (( (ptr) (* (( (ptr) gf←c64224)+170)/* var←c58496 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd416 ))))(outD←v15220, (* (( (ptr) ggData←v9832)+11) ), 0, pd416); }; }; }; SOURCE(42037, 170) { W2 var←c62976; W2 var←c63008; { word pd417; pd417 = (* (( (ptr) (* (( (ptr) gf←c64224)+178)/* var←c60992 */ ))+32) ); (void) ( *( (fPt) ((* (ptr) pd417 ))))((word) &var←c62976, (* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+21) ), newEndJoint←v15036, pd417) ; }; { word pd418; pd418 = (* (( (ptr) (* (( (ptr) gf←c64224)+178)/* var←c60992 */ ))+34) ); (void) ( *( (fPt) ((* (ptr) pd418 ))))((word) &var←c63008, (* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+21) ), newEndJoint←v15036, pd418) ; }; { word pd419; pd419 = (* (( (ptr) (* (( (ptr) gf←c64224)+158)/* var←c57760 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd419 ))))((* (( (ptr) ggData←v9832)+13) ), var←c62976, var←c63008, 0, pd419); }; }; SOURCE(42209, 41) (* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+22) ) = 0; SOURCE(42252, 33) (* (( (ptr) (* (( (ptr) ggData←v9832)+16) ))+21) ) = 0; SOURCE(42287, 32) { word pd420; pd420 = (* (( (ptr) (* (( (ptr) gf←c64224)+166)/* var←c58240 */ ))+32) ); (void) ( *( (fPt) ((* (ptr) pd420 ))))(ggData←v9832, pd420); }; } static void NoName←Q3264(formal←c0548, formal←c200000, formal←c200001, formal←c200002, formal←c200003) word formal←c0548; word formal←c200000; word formal←c200001; word formal←c200002; word formal←c200003; { register ptr gf←c0585 = (ptr) &globalframe; if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c0585)+164)/* var←c58144 */ ))+10) ))) { SOURCE(5495, 18) (* (( (ptr) formal←c200000)+5) ) = 1; SOURCE(5515, 9) (* (ptr) formal←c0548 ) = 2; (* (( (ptr) formal←c0548)+1) ) = 2; return; }; (* (ptr) formal←c0548 ) = 0; (* (( (ptr) formal←c0548)+1) ) = 0; return; } /* file: GGMouseEventImplB, module: GGMouseEventImplB, compiled at: July 13, 1993 1:29:59 pm PDT */ extern void XR←install←GGMouseEventImplB() { NoName←Q3144(); } extern void XR←run←GGMouseEventImplB() { XR←Start(&globalframe); }