DIRECTORY Buttons, Labels, Rope, Rules, ViewerTools, VFonts, SVEditToolMenus, SVEditUser, SVEditUserB, SVInterfaceTypes; SVEditToolMenusImplB: PROGRAM IMPORTS Buttons, Labels, SVEditUser, SVEditUserB, VFonts, ViewerTools EXPORTS SVEditToolMenus = BEGIN EditToolData: TYPE = SVInterfaceTypes.EditToolData; entryHeight: CARDINAL = SVEditToolMenus.entryHeight; entryVSpace: CARDINAL = SVEditToolMenus.entryVSpace; entryHSpace: CARDINAL = SVEditToolMenus.entryHSpace; column0: CARDINAL = SVEditToolMenus.column0; column1: CARDINAL = SVEditToolMenus.column1; column2: CARDINAL = SVEditToolMenus.column2; column3: CARDINAL = SVEditToolMenus.column3; numberSize: CARDINAL = 80; numberSize3: CARDINAL = 160; BuildArtworkSection: PUBLIC PROC [editToolData: EditToolData] = { getArtworkButton, picNamePrompt, isColorButton: Buttons.Button; materialButton, resolutionButton: Buttons.Button; getArtworkButton _ Buttons.Create[ info: [name: "GetArtwork!", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.GetArtwork, clientData: editToolData ]; picNamePrompt _ Buttons.Create[ info: [name: "picName:", wx: getArtworkButton.wx + getArtworkButton.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.ArtworkNamePrompt, clientData: editToolData ]; editToolData.artworkSection.picName _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: picNamePrompt.wx + picNamePrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["TinasEyes.ais >>>>>"], wh: entryHeight, data: "TinaEyes.ais", scrollable: FALSE, border: FALSE]]; isColorButton _ Buttons.Create[ info: [name: "isColorFile:", wx: editToolData.artworkSection.picName.wx + editToolData.artworkSection.picName.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.IsColor, clientData: editToolData ]; editToolData.artworkSection.isColor _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: isColorButton.wx + isColorButton.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["FALSE "], wh: entryHeight, data: "FALSE", scrollable: FALSE, border: FALSE]]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; materialButton _ Buttons.Create[ info: [name: "material:", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.MaterialCycle, clientData: editToolData ]; editToolData.artworkSection.material _ Labels.Create[ info: [name: "plastic", wx: materialButton.wx + materialButton.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE]]; editToolData.artworkSection.materialValue _ 1; resolutionButton _ Buttons.Create[ info: [name: "resolution:", wx: editToolData.artworkSection.material.wx + editToolData.artworkSection.material.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.ResolutionPrompt, clientData: editToolData ]; editToolData.artworkSection.resolution _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: resolutionButton.wx + resolutionButton.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["188.88 "], wh: entryHeight, data: "72", scrollable: FALSE, border: FALSE]]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; }; Build3DArtworkSection: PUBLIC PROC [editToolData: EditToolData] = { set3DButton: Buttons.Button; set3DButton _ Buttons.Create[ info: [name: "Set3DArtwork!", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.Set3DArtwork, clientData: editToolData ]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; }; BuildColorArtworkSection: PUBLIC PROC [editToolData: EditToolData] = { setColorButton, rgbPrompt: Buttons.Button; setColorButton _ Buttons.Create[ info: [name: "SetColorArtwork!", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.SetColorArtwork, clientData: editToolData ]; rgbPrompt _ Buttons.Create[ info: [name: "r, g, b:", wx: setColorButton.wx + column2, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.RGBPrompt, clientData: editToolData ]; editToolData.artworkSection.rgb _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: rgbPrompt.wx + rgbPrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["9.10000e-1, 9.10000e-1, 9.10000e-1 "], wh: entryHeight, data: "0.75, 0.75, 0.75", scrollable: FALSE, border: FALSE]]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; }; BuildTubeArtworkSection: PUBLIC PROC [editToolData: EditToolData] = { setTubeArtworkButton, tubeHeightPrompt, tubeRadiusPrompt: Buttons.Button; initialHeightRope: Rope.ROPE _ "100"; initialRadiusRope: Rope.ROPE _ "50"; setTubeArtworkButton _ Buttons.Create[ info: [name: "SetTubeArtwork!", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.SetTubeArtwork, clientData: editToolData ]; tubeHeightPrompt _ Buttons.Create[ info: [name: "tubeH:", wx: setTubeArtworkButton.wx + setTubeArtworkButton.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.TubeHeightPrompt, clientData: editToolData ]; editToolData.artworkSection.tubeHeight _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: tubeHeightPrompt.wx + tubeHeightPrompt.ww + entryHSpace, wy: editToolData.height, ww: numberSize, wh: entryHeight, data: initialHeightRope, scrollable: FALSE, border: FALSE]]; tubeRadiusPrompt _ Buttons.Create[ info: [name: "tubeR:", wx: editToolData.artworkSection.tubeHeight.wx + editToolData.artworkSection.tubeHeight.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.TubeRadiusPrompt, clientData: editToolData ]; editToolData.artworkSection.tubeRadius _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: tubeRadiusPrompt.wx + tubeRadiusPrompt.ww + entryHSpace, wy: editToolData.height, ww: numberSize, wh: entryHeight, data: initialRadiusRope, scrollable: FALSE, border: FALSE]]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; }; BuildBoxArtworkSection: PUBLIC PROC [editToolData: EditToolData] = { setBoxArtworkButton, xyzPrompt, oMapCycle: Buttons.Button; initialXYZRope: Rope.ROPE _ "100, 100, 100"; setBoxArtworkButton _ Buttons.Create[ info: [name: "SetBoxArtwork!", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.SetBoxArtwork, clientData: editToolData ]; xyzPrompt _ Buttons.Create[ info: [name: "X,Y,Z:", wx: setBoxArtworkButton.wx + setBoxArtworkButton.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.BoxXYZPrompt, clientData: editToolData ]; editToolData.artworkSection.boxXYZ _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: xyzPrompt.wx + xyzPrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["188.88, 188.88 188.88 "], wh: entryHeight, data: initialXYZRope, scrollable: FALSE, border: FALSE]]; oMapCycle _ Buttons.Create[ info: [name: "OMap:", wx: editToolData.artworkSection.boxXYZ.wx + editToolData.artworkSection.boxXYZ.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.BoxOCycle, clientData: editToolData ]; editToolData.artworkSection.oMapLabel _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: oMapCycle.wx + oMapCycle.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["Orthogonal "], wh: entryHeight, data: "Orthogonal", scrollable: FALSE, border: FALSE]]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; }; -- end of BuildBoxArtworkSecition BuildArtworkTransformSection: PUBLIC PROC [editToolData: EditToolData] = { rotateButton, degreesPrompt, normButton: Buttons.Button; rotateButton _ Buttons.Create[ info: [name: "Rotate!", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.RotateArtwork, clientData: editToolData ]; degreesPrompt _ Buttons.Create[ info: [name: "degrees:", wx: rotateButton.wx + rotateButton.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.ArtworkDegreesPrompt, clientData: editToolData ]; editToolData.artworkTransformSection.degrees _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: degreesPrompt.wx + degreesPrompt.ww + entryHSpace, wy: editToolData.height, ww: numberSize, wh: entryHeight, data: "45", scrollable: FALSE, border: FALSE]]; normButton _ Buttons.Create[ info: [name: "Normalize!", wx: editToolData.artworkTransformSection.degrees.wx + editToolData.artworkTransformSection.degrees.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.NormalizeArtwork, clientData: editToolData ]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; }; -- end of BuildArtworkTransformSection BuildLightSourceSection: PUBLIC PROC [editToolData: EditToolData] = { addLightButton, deleteLightButton, editLightButton: Buttons.Button; lightNamePrompt, positionPrompt, colorPrompt: Buttons.Button; setAmbientButton, getAmbientButton: Buttons.Button; addLightButton _ Buttons.Create[ info: [name: "AddLight!", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.AddLight, clientData: editToolData ]; deleteLightButton _ Buttons.Create[ info: [name: "DeleteLight!", wx: addLightButton.wx + addLightButton.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.DeleteLight, clientData: editToolData ]; editLightButton _ Buttons.Create[ info: [name: "EditLight!", wx: deleteLightButton.wx + deleteLightButton.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.EditLight, clientData: editToolData ]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; lightNamePrompt _ Buttons.Create[ info: [name: "light name:", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.LightNamePrompt, clientData: editToolData ]; editToolData.lightSection.name _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: lightNamePrompt.wx + lightNamePrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["MysteriousLight "], wh: entryHeight, data: "WhiteLight", scrollable: FALSE, border: FALSE]]; positionPrompt _ Buttons.Create[ info: [name: "position:", wx: editToolData.lightSection.name.wx + editToolData.lightSection.name.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.LightPositionPrompt, clientData: editToolData ]; editToolData.lightSection.position _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: positionPrompt.wx + positionPrompt.ww + entryHSpace, wy: editToolData.height, ww: numberSize3, wh: entryHeight, data: "600, 600, 600", scrollable: FALSE, border: FALSE]]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; colorPrompt _ Buttons.Create[ info: [name: "color:", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.LightColorPrompt, clientData: editToolData ]; editToolData.lightSection.color _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: colorPrompt.wx + colorPrompt.ww + entryHSpace, wy: editToolData.height, ww: numberSize3, wh: entryHeight, data: "0.75, 0.75, 0.75", scrollable: FALSE, border: FALSE]]; setAmbientButton _ Buttons.Create[ info: [name: "SetAmbient!", wx: editToolData.lightSection.color.wx + editToolData.lightSection.color.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.SetAmbient, clientData: editToolData ]; getAmbientButton _ Buttons.Create[ info: [name: "GetAmbient!", wx: setAmbientButton.wx + setAmbientButton.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.GetAmbient, clientData: editToolData ]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; }; BuildCameraSection: PUBLIC PROC [editToolData: EditToolData] = { cameraNamePrompt, getButton, setButton, useCameraButton: Buttons.Button; originPrompt, focusPointPrompt, slantPrompt: Buttons.Button; resolutionPrompt, focalLengthPrompt, projectionButton: Buttons.Button; framePrompt: Buttons.Button; clippingPlanePrompt, visibleAssemblyPrompt: Buttons.Button; cameraNamePrompt _ Buttons.Create[ info: [name: "Camera name:", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.CameraNamePrompt, clientData: editToolData ]; editToolData.cameraSection.name _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: cameraNamePrompt.wx + cameraNamePrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["The view from the west."], wh: entryHeight, data: "", scrollable: FALSE, border: FALSE]]; getButton _ Buttons.Create[ info: [name: "Get!", wx: editToolData.cameraSection.name.wx + editToolData.cameraSection.name.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.GetCamera, clientData: editToolData ]; setButton _ Buttons.Create[ info: [name: "Set!", wx: getButton.wx + getButton.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.SetCamera, clientData: editToolData ]; useCameraButton _ Buttons.Create[ info: [name: "Use!", wx: setButton.wx + setButton.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.UseCamera, clientData: editToolData ]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; originPrompt _ Buttons.Create[ info: [name: "origin:", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.CameraOriginPrompt, clientData: editToolData ]; editToolData.cameraSection.origin _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: originPrompt.wx + originPrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["-1800, -188.8, -188.8>>>"], wh: entryHeight, data: "0,0,1800", scrollable: FALSE, border: FALSE]]; focusPointPrompt _ Buttons.Create[ info: [name: "focusPoint:", wx: editToolData.cameraSection.origin.wx + editToolData.cameraSection.origin.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.FocusPrompt, clientData: editToolData ]; editToolData.cameraSection.focusPoint _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: focusPointPrompt.wx + focusPointPrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["188.8, 188.8, 188"], wh: entryHeight, data: "0, 0, 0", scrollable: FALSE, border: FALSE]]; slantPrompt _ Buttons.Create[ info: [name: "slant:", wx: editToolData.cameraSection.focusPoint.wx + editToolData.cameraSection.focusPoint.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.SlantPrompt, clientData: editToolData ]; editToolData.cameraSection.slant _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: slantPrompt.wx + slantPrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["188.8>>>"], wh: entryHeight, data: "0", scrollable: FALSE, border: FALSE]]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; resolutionPrompt _ Buttons.Create[ info: [name: "resolution:", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.ScanResolutionPrompt, clientData: editToolData ]; editToolData.cameraSection.resolution _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: resolutionPrompt.wx + resolutionPrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["188.8>>>"], wh: entryHeight, data: "72", scrollable: FALSE, border: FALSE]]; focalLengthPrompt _ Buttons.Create[ info: [name: "focal length:", wx: editToolData.cameraSection.resolution.wx + editToolData.cameraSection.resolution.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.FocalLengthPrompt, clientData: editToolData ]; editToolData.cameraSection.focalLength _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: focalLengthPrompt.wx + focalLengthPrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["1800 "], wh: entryHeight, data: "1800", scrollable: FALSE, border: FALSE]]; projectionButton _ Buttons.Create[ info: [name: "projection:", wx: editToolData.cameraSection.focalLength.wx + editToolData.cameraSection.focalLength.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.ProjectionCycle, clientData: editToolData ]; editToolData.cameraSection.projection _ Labels.Create[ info: [name: "perspect", wx: projectionButton.wx + projectionButton.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE]]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; framePrompt _ Buttons.Create[ info: [name: "frame: ", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.FramePrompt, clientData: editToolData ]; editToolData.cameraSection.frame _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: framePrompt.wx + framePrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["[[302.5,105.6], [302.5,105.6] fullScreen: FALSE]>>>>>"], wh: entryHeight, data: "[[0,200],[200,0] fullScreen: TRUE]", scrollable: FALSE, border: FALSE]]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; clippingPlanePrompt _ Buttons.Create[ info: [name: "Clipping Planes: ", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.ClippingPlanePrompt, clientData: editToolData ]; editToolData.cameraSection.clippingPlanes _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: clippingPlanePrompt.wx + clippingPlanePrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["[1,0,0,1], [2.5,3.2,5.6,7.8], [2.5,3.2,5.6,7.8]>>>"], wh: entryHeight, data: "[0,0,1,0]", scrollable: FALSE, border: FALSE]]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; visibleAssemblyPrompt _ Buttons.Create[ info: [name: "Visible Assemblies: ", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.VisibleAssemblyPrompt, clientData: editToolData ]; editToolData.cameraSection.visibleAssemblies _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: visibleAssemblyPrompt.wx + visibleAssemblyPrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["teapot, teacup, table, sceneAssembly, poodle>>>"], wh: entryHeight, data: "sceneAssembly", scrollable: FALSE, border: FALSE]]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; }; -- end of BuildCameraSection BuildCameraOrderSection: PUBLIC PROC [editToolData: EditToolData] = { orderPrompt, getOrder, setOrder: Buttons.Button; orderPrompt _ Buttons.Create[ info: [name: "camera order:", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.CameraOrderPrompt, clientData: editToolData ]; editToolData.cameraOrderSection.order _ ViewerTools.MakeNewTextViewer[[ parent: editToolData.outer, wx: orderPrompt.wx + orderPrompt.ww + entryHSpace, wy: editToolData.height, ww: VFonts.StringWidth["Front, Top, Side, Bottom, Left, Right>>>"], wh: entryHeight, data: "Front, Top, Side", scrollable: FALSE, border: FALSE]]; getOrder _ Buttons.Create[ info: [name: "Get!", wx: editToolData.cameraOrderSection.order.wx + editToolData.cameraOrderSection.order.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.GetCameraOrder, clientData: editToolData ]; setOrder _ Buttons.Create[ info: [name: "Set!", wx: getOrder.wx + getOrder.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUserB.SetCameraOrder, clientData: editToolData ]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; }; BuildShadowSection: PUBLIC PROC [editToolData: EditToolData] = { shadowPrompt, setShadows: Buttons.Button; shadowPrompt _ Buttons.Create[ info: [name: "Shadows:", wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.ShadowsPrompt, clientData: editToolData ]; editToolData.shadowSection.shadowLabel _ Labels.Create[ info: [name: "FALSE", wx: shadowPrompt.wx + shadowPrompt.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE]]; editToolData.shadowSection.shadowValue _ FALSE; setShadows _ Buttons.Create[ info: [name: "Set!", wx: editToolData.shadowSection.shadowLabel.wx + editToolData.shadowSection.shadowLabel.ww + entryHSpace, wy: editToolData.height, wh: entryHeight, parent: editToolData.outer, border: FALSE], proc: SVEditUser.SetShadows, clientData: editToolData ]; editToolData.height _ editToolData.height + entryVSpace + entryHeight; }; END. คFile: SVEditToolMenusImplB.mesa Last edited by Bier on May 23, 1985 10:42:12 pm PDT Copyright c 1984 by Xerox Corporation. All rights reserved. Contents: Procedures which build sections of the EditTool (continued). Declare the standard distances between menu lines. This section implements a set of buttons, text windows, and options listers in this format: SetArtwork! GetArtwork! picName: isColorFile: material: resolution: tubeHeight: tubeRadius: material: resolution: SET COLOR R,G,B: SET COLOR R,G,B: This section implements a set of buttons, text windows, and options listers in this format: SetTubeArtwork! tube height: tube radius: This section implements a set of buttons, text windows, and options listers in this format: SetTubeArtwork! tube height: tube radius: This section implements a set of buttons, text windows, and options listers in this format: Rotate! degrees: Normalize! This section implements a set of buttons, text windows, and options listers in this format: AddLight! DeleteLight! EditLight! lightName: position: color: This section implements a set of buttons in this format: Camera name: Get! Add! Set! origin: 0,0,1800 focus point: 0,0,0 resolution: 72 focal length: 1800 style: frame (two points): [-200,200], [200, -200] Camera name: Get! Set! Use! origin: 0,0,1800 focus point: 0,0,0 slant: 0 resolution: 72 focal length: 1800 projection: perspect frame: [[-200,200], [200, -200] fullScreen: TRUE] This section implements a set of buttons in this format: camera order: Front, Top, Side Get! Set! camera order: Front, Top, Side This section implements a set of buttons in this format: Shadows: FALSE Set! Shadows: FALSE Set! ส˜Iheadšœ™Jšœ3™3Jšœ ฯmœ1™˜EJšžœ˜—Jšž˜˜Jšœžœ!˜3J˜Jšœ2™2J˜Jšœ žœ˜4Jšœ žœ˜4Jšœ žœ˜4Jšœ žœ˜,Jšœ žœ˜,Jšœ žœ˜,Jšœ žœ˜,Jšœ žœ˜Jšœ žœ˜J˜—šฯnœžœžœ!˜AJšœ[™[Jšœ<™™>J˜JšœC˜CJšœ=˜=Jšœ3˜3J˜šœ ˜ šœ˜JšœNžœ˜U—Jšœ˜Jšœ˜Jšœ˜—J˜šœ#˜#šœ˜Jšœ‡žœ˜Ž—Jšœ˜Jšœ˜Jšœ˜—J˜šœ!˜!šœ˜Jšœžœ˜”—Jšœ˜Jšœ˜Jšœ˜—J˜JšœF˜FJ˜šœ!˜!šœ˜JšœNžœ˜U—Jšœ!˜!Jšœ˜Jšœ˜—J˜šœ@˜@Jšœ˜Jšœ:˜:Jšœ˜Jšœ.˜.Jšœ˜Jšœ˜Jšœ žœ žœ˜#—J˜šœ ˜ šœ˜Jšœงžœ˜ฎ—Jšœ%˜%Jšœ˜Jšœ˜—J˜šœD˜DJšœ˜Jšœ8˜8Jšœ˜Jšœ˜Jšœ˜Jšœ˜Jšœ žœ žœ˜#—J˜JšœF˜FJ˜šœ˜šœ˜JšœNžœ˜U—Jšœ"˜"Jšœ˜Jšœ˜—J˜šœA˜AJšœ˜Jšœ2˜2Jšœ˜Jšœ˜Jšœ˜Jšœ˜Jšœ žœ žœ˜#J˜—šœ"˜"šœ˜šœ(˜(Jšœ1˜1—Jšœ)˜)Jšœ$žœ˜+—Jšœ˜Jšœ˜Jšœ˜J˜—šœ"˜"šœ˜Jšœ<˜˜>Jšœ˜Jšœ$˜$Jšœ˜Jšœ ˜ Jšœ žœ žœ˜#—J˜šœ"˜"šœ˜Jšœh˜hJšœ˜Jšœ˜Jšœ˜Jšœžœ˜—Jšœ!˜!Jšœ˜Jšœ˜—J˜šœ6˜6šœ˜Jšœ‹žœ˜“——J˜JšœF˜FJ˜Jš 2™2šœ˜šœ˜JšœNžœ˜U—Jšœ˜Jšœ˜Jšœ˜—J˜šœB˜BJšœ˜Jšœ2˜2Jšœ˜JšœP˜PJšœ˜Jšœ+˜+Jšœ žœ žœ˜$—JšœF˜FJ˜šœ%˜%šœ!˜!JšœNžœ˜U—Jšœ%˜%Jšœ˜Jšœ˜—J˜šœK˜KJšœ˜JšœB˜BJšœ˜JšœM˜MJšœ˜Jšœ˜Jšœ žœ žœ˜#—J˜JšœF˜FJ˜šœ'˜'šœ$˜$JšœNžœ˜U—Jšœ'˜'Jšœ˜Jšœ˜—J˜šœN˜NJšœ˜JšœF˜FJšœ˜JšœJ˜JJšœ˜Jšœ˜Jšœ žœ žœ˜#—J˜JšœF˜FJ˜Jšœ ˜ J˜—šŸœžœžœ!˜EJšœ8™8Jšœ/™/J˜šœ0˜0J˜—Jš  ™ šœ˜šœ˜JšœNžœ˜U—Jšœ#˜#Jšœ˜Jšœ˜—J˜šœG˜GJšœ˜Jšœ2˜2Jšœ˜JšœC˜CJšœ˜Jšœ˜Jšœ žœ žœ˜#—J˜šœ˜šœ˜Jšœตžœ˜ผ—Jšœ!˜!Jšœ˜Jšœ˜—šœ˜šœ˜Jšœ{žœ˜‚—Jšœ!˜!Jšœ˜Jšœ˜—JšœG˜GJ˜J˜—šŸœžœžœ!˜@Jšœ8™8Jšœ™J˜šœ)˜)J˜—Jš ™šœ˜šœ˜JšœNžœ˜U—Jšœ˜Jšœ˜Jšœ˜—J˜šœ7˜7šœ˜Jšœƒžœ˜‹——Jšœ)žœ˜0šœ˜šœ˜Jšœทžœ˜พ—Jšœ˜Jšœ˜Jšœ˜—JšœG˜GJ˜J˜—J˜Jšžœ˜J˜J˜J˜—…—Vผr{