<> <> <> <> DIRECTORY Commander, Containers, DisplayList3d, FileNames, GraphicsColor, JaMSolidviews, Rope, Scratchpad2d, SV2d, SVArtworkTool, SVEditToolMenus, SVEditUser, SVInterfaceTypes, SVModelTypes, SVRayTypes, SVSceneTypes, ViewerClasses; SVEditTool: PROGRAM IMPORTS Commander, Containers, DisplayList3d, FileNames, JaMSolidviews, Scratchpad2d, SVArtworkTool, SVEditToolMenus, SVEditUser SHARES ViewerClasses -- to change rowsUsed of PRIVATE RECORD MenuRec -- = BEGIN Assembly: TYPE = SVSceneTypes.Assembly; Color: TYPE = GraphicsColor.Color; CoordSystem: TYPE = SVModelTypes.CoordSystem; CSGTree: TYPE = SVRayTypes.CSGTree; MasterObject: TYPE = SVSceneTypes.MasterObject; Point2d: TYPE = SV2d.Point2d; Scene: TYPE = SVSceneTypes.Scene; Viewer: TYPE = ViewerClasses.Viewer; EditToolData: TYPE = REF EditToolDataObj; EditToolDataObj: TYPE = SVInterfaceTypes.EditToolDataObj; SphereSectionData: TYPE = SVInterfaceTypes.SphereSectionData; BlockSectionData: TYPE = SVInterfaceTypes.BlockSectionData; CylinderSectionData: TYPE = SVInterfaceTypes.CylinderSectionData; ConeSectionData: TYPE = SVInterfaceTypes.ConeSectionData; <> entryHeight: CARDINAL = 12;-- height of a line of items entryVSpace: CARDINAL = 3;-- vertical leading between lines entryHSpace: CARDINAL = 8; -- horizontal space between items on a line column0: CARDINAL = 0; -- horizontal space between margin and column 0; column1: CARDINAL = 100; -- horizontal space between margin and column 1; column2: CARDINAL = 200; -- horizontal space between margin and column 2. column3: CARDINAL = 300; -- horizontal space between margin and column 3; Init: PROC = { Commander.Register[ key: "SolidViews", proc: BuildTools, doc: "Create a 3d graphics tool", clientData: NIL ]; }; BuildTools: Commander.CommandProc = TRUSTED { <> <> editToolData: EditToolData _ NEW[EditToolDataObj]; <> <> editToolData.outer _ Containers.Create[[ name: "SolidViews EditTool", iconic: TRUE, column: right, scrollable: TRUE ]]; editToolData.sceneSection.defaultScene _ DisplayList3d.CreateScene["DefaultScene"]; editToolData.sceneSection.currentScene _ editToolData.sceneSection.defaultScene; editToolData.allViewers _ NIL; editToolData.originalWorkingDirectory _ FileNames.CurrentWorkingDirectory[]; SVEditToolMenus.BuildCurrentSceneSection[editToolData]; SVEditToolMenus.BuildTextInputSection[editToolData]; SVEditToolMenus.AddARule[editToolData]; SVEditToolMenus.BuildDerivedTextSection[editToolData]; SVEditToolMenus.BuildAssemblyOpsSection[editToolData]; SVEditToolMenus.AddARule[editToolData]; SVEditToolMenus.BuildCompositeSection[editToolData]; SVEditToolMenus.BuildHalfSpaceSection[editToolData]; SVEditToolMenus.BuildSphereSection[editToolData]; SVEditToolMenus.BuildBlockSection[editToolData]; SVEditToolMenus.BuildCylinderSection[editToolData]; SVEditToolMenus.BuildConeSection[editToolData]; SVEditToolMenus.BuildTorusSection[editToolData]; SVEditToolMenus.BuildLinearSweepSection[editToolData]; SVEditToolMenus.BuildRevoluteSweepSection[editToolData]; SVEditToolMenus.BuildCopySection[editToolData]; SVEditToolMenus.AddARule[editToolData]; SVEditToolMenus.BuildTransformSection[editToolData]; SVEditToolMenus.AddARule[editToolData]; SVEditToolMenus.BuildListingSection[editToolData]; SVEditToolMenus.AddARule[editToolData]; SVEditToolMenus.BuildCameraSection[editToolData]; SVEditToolMenus.AddARule[editToolData]; SVEditToolMenus.BuildCameraOrderSection[editToolData]; SVEditToolMenus.AddARule[editToolData]; SVEditToolMenus.BuildShadowSection[editToolData]; SVEditToolMenus.AddARule[editToolData]; SVEditToolMenus.BuildArtworkSection[editToolData]; SVEditToolMenus.Build3DArtworkSection[editToolData]; SVEditToolMenus.BuildColorArtworkSection[editToolData]; SVEditToolMenus.BuildTubeArtworkSection[editToolData]; SVEditToolMenus.BuildBoxArtworkSection[editToolData]; SVEditToolMenus.BuildArtworkTransformSection[editToolData]; SVEditToolMenus.AddARule[editToolData]; SVEditToolMenus.BuildLightSourceSection[editToolData]; SVEditToolMenus.AddARule[editToolData]; <> [----, editToolData.scratchpad] _ Scratchpad2d.CreateScratchpad[editToolData.outer, editToolData]; <> editToolData.artworkTool _ SVArtworkTool.Create[paint: TRUE, editToolData: editToolData]; <> ViewerOps.PaintViewer[editToolData.outer, all]; <> ViewerOps.OpenIcon[editToolData.outer, TRUE, TRUE, TRUE]; <> SVEditUser.NewViewer[NIL, editToolData, red, FALSE, FALSE]; <> JaMSolidviews.RegisterThisEditTool[editToolData]; <> SVEditUser.NewOutput[NIL, editToolData, red, FALSE, FALSE]; <> RETURN[NIL, DisplayList3d.versionRope]; }; -- end of BuildEditTool Init[]; END.