private List <ToolCmd> GetCommands() { ILocalization lc = IOC.Resolve <ILocalization>(); List <ToolCmd> commands = new List <ToolCmd>(); if (m_tool.Mode == MeshDeformerToolMode.Object) { ToolCmd deformCmd = new ToolCmd(lc.GetString("ID_RTDeformer_View_Deform", "Deform"), () => DeformAxis(Axis.Z), CanDeform); deformCmd.Children = new List <ToolCmd> { new ToolCmd(lc.GetString("ID_RTDeformer_View_DeformX", "Deform X"), () => DeformAxis(Axis.X), CanDeform) { Parent = deformCmd }, new ToolCmd(lc.GetString("ID_RTDeformer_View_DeformY", "Deform Y"), () => DeformAxis(Axis.Y), CanDeform) { Parent = deformCmd }, }; commands.Add(deformCmd); } else if (m_tool.Mode == MeshDeformerToolMode.ControlPoint) { commands.Add(new ToolCmd(lc.GetString("ID_RTDeformer_View_Append", "Append"), Append, CanAppend)); commands.Add(new ToolCmd(lc.GetString("ID_RTDeformer_View_Remove", "Remove"), Remove, () => m_isMeshDeformerSelected)); } return(commands); }
private void OnItemClick(object sender, ItemArgs e) { ToolCmd cmd = (ToolCmd)e.Items[0]; if (cmd.Validate()) { cmd.Run(); } }
private void OnItemDataBinding(object sender, VirtualizingTreeViewItemDataBindingArgs e) { TextMeshProUGUI text = e.ItemPresenter.GetComponentInChildren <TextMeshProUGUI>(); ToolCmd cmd = (ToolCmd)e.Item; text.text = cmd.Text; bool isValid = cmd.Validate(); Color color = text.color; color.a = isValid ? 1 : 0.5f; text.color = color; e.CanDrag = cmd.CanDrag; e.HasChildren = cmd.HasChildren; }
private void OnItemExpanding(object sender, VirtualizingItemExpandingArgs e) { ToolCmd cmd = (ToolCmd)e.Item; e.Children = cmd.Children; }
private List <ToolCmd> GetCommonCommands() { List <ToolCmd> commands = new List <ToolCmd>(); ToolCmd newShapeCmd = new ToolCmd("New Shape", OnNewShape, true) { Arg = PBShapeType.Cube }; newShapeCmd.Children = new List <ToolCmd> { new ToolCmd("Arch", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Arch }, new ToolCmd("Cone", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Cone }, new ToolCmd("Cube", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Cube }, new ToolCmd("Curved Stair", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.CurvedStair }, new ToolCmd("Cylinder", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Cylinder }, new ToolCmd("Door", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Door }, new ToolCmd("Pipe", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Pipe }, new ToolCmd("Plane", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Plane }, new ToolCmd("Prism", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Prism }, new ToolCmd("Sphere", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Sphere }, new ToolCmd("Sprite", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Sprite }, new ToolCmd("Stair", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Stair }, new ToolCmd("Torus", OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Torus }, }; commands.Add(newShapeCmd); commands.Add(new ToolCmd("New Poly Shape", OnNewPolyShape, true)); commands.Add(new ToolCmd("Edit Poly Shape", OnEditPolyShape, () => m_isPolyShapeSelected)); commands.Add(new ToolCmd("Edit Materials", OnEditMaterials)); commands.Add(new ToolCmd("Edit UV", OnEditUV)); return(commands); }
private List <ToolCmd> GetCommonCommands() { List <ToolCmd> commands = new List <ToolCmd>(); ToolCmd newShapeCmd = new ToolCmd(m_localization.GetString("ID_RTBuilder_View_NewShape", "New Shape"), OnNewShape, true) { Arg = PBShapeType.Cube }; newShapeCmd.Children = new List <ToolCmd> { new ToolCmd(m_localization.GetString("ID_RTBuilder_View_Arch", "Arch"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Arch }, new ToolCmd(m_localization.GetString("ID_RTBuilder_View_Cone", "Cone"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Cone }, new ToolCmd(m_localization.GetString("ID_RTBuilder_View_Cube", "Cube"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Cube }, new ToolCmd(m_localization.GetString("ID_RTBuilder_View_CurvedStair", "Curved Stair"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.CurvedStair }, new ToolCmd(m_localization.GetString("ID_RTBuilder_View_Cylinder", "Cylinder"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Cylinder }, new ToolCmd(m_localization.GetString("ID_RTBuilder_View_Door", "Door"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Door }, new ToolCmd(m_localization.GetString("ID_RTBuilder_View_Pipe", "Pipe"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Pipe }, new ToolCmd(m_localization.GetString("ID_RTBuilder_View_Plane", "Plane"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Plane }, new ToolCmd(m_localization.GetString("ID_RTBuilder_View_Prism", "Prism"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Prism }, new ToolCmd(m_localization.GetString("ID_RTBuilder_View_Sphere", "Sphere"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Sphere }, new ToolCmd(m_localization.GetString("ID_RTBuilder_View_Sprite", "Sprite"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Sprite }, new ToolCmd(m_localization.GetString("ID_RTBuilder_View_Stair", "Stair"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Stair }, new ToolCmd(m_localization.GetString("ID_RTBuilder_View_Torus", "Torus"), OnNewShape, true) { Parent = newShapeCmd, Arg = PBShapeType.Torus }, }; commands.Add(newShapeCmd); commands.Add(new ToolCmd(m_localization.GetString("ID_RTBuilder_View_NewPolyShape", "New Poly Shape"), OnNewPolyShape, true)); commands.Add(new ToolCmd(m_localization.GetString("ID_RTBuilder_View_EditPolyShape", "Edit Poly Shape"), OnEditPolyShape, () => m_isPolyShapeSelected)); return(commands); }