public MoveButton(double x, double y, GuiWidget buttonView, PrinterConnectionAndCommunication.Axis axis, double movementFeedRate)
                : base(x, y, buttonView)
            {
                this.moveAxis         = axis;
                this.movementFeedRate = movementFeedRate;

                this.Click += (s, e) =>
                {
                    MoveButton moveButton = (MoveButton)s;

                    if (PrinterConnectionAndCommunication.Instance.CommunicationState == PrinterConnectionAndCommunication.CommunicationStates.Printing)
                    {
                        if (moveAxis == PrinterConnectionAndCommunication.Axis.Z)                         // only works on z
                        {
                            var currentZ = ActiveSliceSettings.Instance.GetValue <double>(SettingsKey.baby_step_z_offset);
                            currentZ += this.MoveAmount;
                            ActiveSliceSettings.Instance.SetValue(SettingsKey.baby_step_z_offset, currentZ.ToString("0.##"));
                        }
                    }
                    else
                    {
                        PrinterConnectionAndCommunication.Instance.MoveRelative(this.moveAxis, this.MoveAmount, movementFeedRate);
                    }
                };
            }
Exemplo n.º 2
0
 public void OffsetAxis(PrinterConnectionAndCommunication.Axis moveAxis, double moveAmount)
 {
     offsetStream.Offset = offsetStream.Offset + new Vector3(
         (moveAxis == PrinterConnectionAndCommunication.Axis.X) ? moveAmount : 0,
         (moveAxis == PrinterConnectionAndCommunication.Axis.Y) ? moveAmount : 0,
         (moveAxis == PrinterConnectionAndCommunication.Axis.Z) ? moveAmount : 0);
 }
Exemplo n.º 3
0
            public MoveButton(double x, double y, GuiWidget buttonView, PrinterConnectionAndCommunication.Axis axis, double movementFeedRate)
                : base(x, y, buttonView)
            {
                this.moveAxis         = axis;
                this.movementFeedRate = movementFeedRate;

                this.Click += new EventHandler(moveAxis_Click);
            }
 public MoveButton GenerateMoveButton(string label, PrinterConnectionAndCommunication.Axis axis, double movementFeedRate)
 {
     //Create button based on view container widget
     return(new MoveButton(0, 0, GetButtonView(label), axis, movementFeedRate)
     {
         Margin = 0,
         Padding = 0
     });
 }
Exemplo n.º 5
0
            public MoveButton Generate(string label, PrinterConnectionAndCommunication.Axis axis, double movementFeedRate)
            {
                //Create button based on view container widget
                ButtonViewStates buttonViewWidget = GetButtonView(label);
                MoveButton       textImageButton  = new MoveButton(0, 0, buttonViewWidget, axis, movementFeedRate);

                textImageButton.Margin  = new BorderDouble(0);
                textImageButton.Padding = new BorderDouble(0);
                return(textImageButton);
            }
        private static MoveButton CreateMoveButton(string label, PrinterConnectionAndCommunication.Axis axis, double moveSpeed, bool levelingButtons, MoveButtonFactory buttonFactory)
        {
            var button = buttonFactory.GenerateMoveButton(label, axis, moveSpeed);

            button.VAnchor = VAnchor.AbsolutePosition;
            button.HAnchor = HAnchor.AbsolutePosition;
            button.Height  = (levelingButtons ? 45 : 40) * GuiWidget.DeviceScale;
            button.Width   = (levelingButtons ? 90 : 40) * GuiWidget.DeviceScale;

            return(button);
        }
Exemplo n.º 7
0
			public MoveButton(double x, double y, GuiWidget buttonView, PrinterConnectionAndCommunication.Axis axis, double movementFeedRate)
				: base(x, y, buttonView)
			{
				this.moveAxis = axis;
				this.movementFeedRate = movementFeedRate;

				this.Click += new EventHandler(moveAxis_Click);
			}