From bdb0e714252eb50eccf3bd66d93206cf77c49649 Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Tue, 18 Aug 2020 17:51:25 +0300 Subject: [PATCH] - in CNCJob UI Autolevelling - in COntrol section added buttons for Jog an individual axes zeroing --- CHANGELOG.md | 1 + appGUI/ObjectUI.py | 98 +++++++++++++++++- .../resources/dark_resources/down-arrow32.png | Bin 0 -> 770 bytes .../resources/dark_resources/left_arrow32.png | Bin 0 -> 656 bytes .../dark_resources/right_arrow32.png | Bin 0 -> 631 bytes .../resources/dark_resources/up-arrow32.png | Bin 0 -> 759 bytes assets/resources/down-arrow32.png | Bin 0 -> 580 bytes assets/resources/left_arrow32.png | Bin 0 -> 528 bytes assets/resources/right_arrow32.png | Bin 0 -> 497 bytes assets/resources/up-arrow32.png | Bin 0 -> 583 bytes 10 files changed, 96 insertions(+), 3 deletions(-) create mode 100644 assets/resources/dark_resources/down-arrow32.png create mode 100644 assets/resources/dark_resources/left_arrow32.png create mode 100644 assets/resources/dark_resources/right_arrow32.png create mode 100644 assets/resources/dark_resources/up-arrow32.png create mode 100644 assets/resources/down-arrow32.png create mode 100644 assets/resources/left_arrow32.png create mode 100644 assets/resources/right_arrow32.png create mode 100644 assets/resources/up-arrow32.png diff --git a/CHANGELOG.md b/CHANGELOG.md index f75763a6..93917e75 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,7 @@ CHANGELOG for FlatCAM beta - in Doublesided Tool added some UI for Excellon hole snapping - in Doublesided Tool cleaned up the UI +- in CNCJob UI Autolevelling - in COntrol section added buttons for Jog an individual axes zeroing 17.08.2020 diff --git a/appGUI/ObjectUI.py b/appGUI/ObjectUI.py index 1dfa4ae8..d9e9dcbe 100644 --- a/appGUI/ObjectUI.py +++ b/appGUI/ObjectUI.py @@ -2188,12 +2188,104 @@ class CNCObjectUI(ObjectUI): self.gr_ctrl_tab_layout.addLayout(grbl_ctrl_grid) self.gr_ctrl_tab_layout.addStretch(1) + # JOG axes + grbl_jog_grid = QtWidgets.QGridLayout() + grbl_jog_grid.setSizeConstraint(QtWidgets.QLayout.SetMinimumSize) + grbl_jog_grid.setColumnStretch(0, 0) + grbl_jog_grid.setColumnStretch(1, 0) + grbl_jog_grid.setColumnStretch(2, 0) + grbl_jog_grid.setColumnStretch(3, 0) + grbl_jog_grid.setColumnStretch(4, 1) + grbl_jog_grid.setRowStretch(0, 0) + grbl_jog_grid.setRowStretch(1, 0) + grbl_jog_grid.setRowStretch(2, 0) + grbl_jog_grid.setRowStretch(3, 0) + grbl_jog_grid.setColumnStretch(4, 1) + grbl_ctrl_grid.addLayout(grbl_jog_grid, 8, 0, 1, 3) + + # JOG Y Up + self.jog_up_button = QtWidgets.QToolButton() + self.jog_up_button.setIcon(QtGui.QIcon(self.app.resource_location + '/up-arrow32.png')) + self.jog_up_button.setToolTip( + _("Jog the Y axis.") + ) + grbl_jog_grid.addWidget(self.jog_up_button, 0, 1) + + # JOG Y Down + self.jog_down_button = QtWidgets.QToolButton() + self.jog_down_button.setIcon(QtGui.QIcon(self.app.resource_location + '/down-arrow32.png')) + self.jog_down_button.setToolTip( + _("Jog the Y axis.") + ) + grbl_jog_grid.addWidget(self.jog_down_button, 2, 1) + + # JOG X Left + self.jog_left_button = QtWidgets.QToolButton() + self.jog_left_button.setIcon(QtGui.QIcon(self.app.resource_location + '/left_arrow32.png')) + self.jog_left_button.setToolTip( + _("Jog the X axis.") + ) + grbl_jog_grid.addWidget(self.jog_left_button, 1, 0) + + # JOG X Right + self.jog_right_button = QtWidgets.QToolButton() + self.jog_right_button.setIcon(QtGui.QIcon(self.app.resource_location + '/right_arrow32.png')) + self.jog_right_button.setToolTip( + _("Jog the X axis.") + ) + grbl_jog_grid.addWidget(self.jog_right_button, 1, 2) + + # JOG Z Up + self.jog_z_up_button = QtWidgets.QPushButton() + self.jog_z_up_button.setIcon(QtGui.QIcon(self.app.resource_location + '/up-arrow32.png')) + self.jog_z_up_button.setText('Z+') + self.jog_z_up_button.setToolTip( + _("Jog the Z axis.") + ) + grbl_jog_grid.addWidget(self.jog_z_up_button, 0, 3) + + # JOG Z Down + self.jog_z_down_button = QtWidgets.QPushButton() + self.jog_z_down_button.setIcon(QtGui.QIcon(self.app.resource_location + '/down-arrow32.png')) + self.jog_z_down_button.setText('Z-') + self.jog_z_down_button.setToolTip( + _("Jog the Z axis.") + ) + grbl_jog_grid.addWidget(self.jog_z_down_button, 2, 3) + + grbl_ctrl_grid.addWidget(QtWidgets.QLabel("")) + # Zero the axes - self.grbl_zero_button = FCButton(_("ZERO all axes")) - self.grbl_zero_button.setToolTip( + grbl_zero_grid = QtWidgets.QGridLayout() + grbl_zero_grid.setColumnStretch(0, 0) + grbl_zero_grid.setColumnStretch(1, 0) + grbl_zero_grid.setColumnStretch(2, 0) + grbl_ctrl_grid.addLayout(grbl_zero_grid, 10, 0, 1, 3) + + # Zero X axis + self.grbl_zerox_button = FCButton(_("ZERO X axes")) + self.grbl_zerox_button.setToolTip( + _("Zero the CNC X axes at current position.") + ) + grbl_zero_grid.addWidget(self.grbl_zerox_button, 0, 0) + # Zero Y axis + self.grbl_zeroy_button = FCButton(_("ZERO Y axes")) + self.grbl_zeroy_button.setToolTip( + _("Zero the CNC Y axes at current position.") + ) + grbl_zero_grid.addWidget(self.grbl_zeroy_button, 0, 1) + # Zero Z axis + self.grbl_zeroz_button = FCButton(_("ZERO Z axes")) + self.grbl_zeroz_button.setToolTip( + _("Zero the CNC Z axes at current position.") + ) + grbl_zero_grid.addWidget(self.grbl_zeroz_button, 0, 2) + # Zeroo all axes + self.grbl_zero_all_button = FCButton(_("ZERO all axes")) + self.grbl_zero_all_button.setToolTip( _("Zero all CNC axes at current position.") ) - grbl_ctrl_grid.addWidget(self.grbl_zero_button, 2, 0, 1, 3) + grbl_zero_grid.addWidget(self.grbl_zero_all_button, 2, 0, 1, 3) # GRBL SENDER grbl_send_grid = QtWidgets.QGridLayout() diff --git a/assets/resources/dark_resources/down-arrow32.png b/assets/resources/dark_resources/down-arrow32.png new file mode 100644 index 0000000000000000000000000000000000000000..370b4c7e9063da47d2b83304b22ff3ad3d446b1a GIT binary patch literal 770 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10Vtas3h%1nO{NnB7mq7IH z;mZ$?U%mmcU%dh`Uc7nz`ZbXI5Ti!eZI}c<6*hZk6YYpco0V(T}AirRS)9*GY{rIWc(a!ty z1z$out14jYwWD%cX0q&hG1{kV zk{f6YW0JSK3quF1tOt<8S>O>_%)r2R1cVukm7eTiAg4PP%D zYjO!X9-P_Gvo2wOTfwHRd8gZxcfE3Y__r^~^XTcR=e=#4ii4K!Uh%NCYReio;m2#u zqSM*6OLo@&ww?K%{f}!~QKHJd9GT~nZv-wko_JpT<7WM%hrB)|?R~g&=hU+|KepN~ zy7utIkC#0s%M)9**QKZ2_kF0pRsRdm`RjJkKUwEkf9B~wZF5-omb>lY$AZr!=P5MQ zKj(a0lv4cJtKksPOR6QV5hW>!C8<`)MX5lF!N|bKK-a)R*U%!w(8S8Xz{!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10q9wp5#1%+Ce)a0{%Xg1o zzJ2lH1(1ZG|Ns9#dHDv&e)JqnzJ3i6zk2om;};+`PhWtvJbMF@ef;<%L=dbCB>vnrmDXo$qzhDNH4JWx9zQ1IQdv1D6 zYUW?I{7=4jHFgM1{LPZ~+Ue4&N&ifahCWh$wf)4-S7+A&bulJ+ySp%Su*!M>Ih+L^ zk;M!Qd`Cc-ajG_-G*FPe#M9T6{RxK>t*I;7bhncr0V4trO$q6BL!5%;OXk;vd$@?2>>Ur BCMEy? literal 0 HcmV?d00001 diff --git a/assets/resources/dark_resources/right_arrow32.png b/assets/resources/dark_resources/right_arrow32.png new file mode 100644 index 0000000000000000000000000000000000000000..7f0b961eb9f188b56e85643bf3b1613f16b7a9a0 GIT binary patch literal 631 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10qB_7Q#1%+Ce);zC%Xg1o zy#h1dK7R4`_FJF`i1Gjb|3@$1J$&^JBK7RqdkEwH{rf=1lb3IR3Ld|D_v9r+{N0Ne zFF*=jy}Nq#KZNn<<=Y3(-aG-C4^j^{=LN`cpuPEPmq-FB^^zdJV1|<$R9^m?$oD#* z`K-;qRq|gOI3C9_?$`gjNbG$%+YPVXnrEJ+y?a#JJ*N<;g)zz7-G!lpRn`N@;Vkfo zEM{QfI|9OtQ?>b|fr9KMp1!W^PdJ2lt(gK@t(F0WdOTemLo7}&y?m0d$w8pyVW5cU zQQkY{A^*PDJNG9rg|^T9Jl$v4F6|Zr2{p%kf{#lUG5Vy>WHX4DaM%}<$?*DY7_-Ky zxojKkB@TQnxyGP(eKuP`y#&Mg>5TO+%bUu6*)H(hFFs-U#08h)_t;0CnW3g3{54$v z^xE4pKC#DS)>{Ae5?_9DtMH6ZuYUb!I27e9{9)NQYoNPSOI#yLQW8s2t&)pUffR$0 zfsui(frYN2MTnuXm8qqbfswX>ft7*5=?NxDC>nC}Q!>*kackIhw&xyDgCxj?;QX|b p^2DN4hVt@qz0ADq;^f4FRK5J7^x5xhq=1STJYD@<);T3K0RU#36(Rrt literal 0 HcmV?d00001 diff --git a/assets/resources/dark_resources/up-arrow32.png b/assets/resources/dark_resources/up-arrow32.png new file mode 100644 index 0000000000000000000000000000000000000000..4e7d2f270782a84c69d84ec33fe74dc6213dd507 GIT binary patch literal 759 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10Vpo7qh%1nO{Nf!DJ$d=| z@yoZ5UcLMO|NrAxK=zx*FM!;)uV23giUZNzckdvKM=w8sWM9600+f37=FzJ+Pl4Q5 zZ$TPCCcHiK|NoO0Z-MCXX?_wfUrhg6t)pzOL*~ID~jDC0~Y3JOLEi z;pyTSVsU!yBzLAJ0|AD`3S43v65sFr-uC-{IVXq81YbR?>oXq*k#6y?R?TArkbYNd=CQH!^R!13=Ko|!ZOvKyV#@4#pdVCATq8k4UEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10f+@+{-GzZ+Rj;xUkjGiz z5n0T@z;^_M8K-LVNdpDhOFVsD*`II-@iDMv%vpbrfq_xT)5S5w<9Kp{M8<&=1+yGy zGW{)&l$d8UBOu{GFdLg{n>^3|lP&g=A(9dj5>_Y77RWy0iECS)l39Q70Q+Z8rbxCU z%Eym-PTD#@F~Nz?m%FWACG-FBgl0L#Zcn2G!L%MP;~KT7-{EYQIh~7UWiYSWuw1LG z?Y2wi{^JK4wG-KdQym2MZQ0ws;9Knv<94&d`Fn2tH+Ug}$W@ctS%*ONfwdcjY$P13# z`auj?j@SKGm9eqKwWSxl^=K8>WC*-)bn;@^zzYjS!C8<`)MX5lF!N|bKK-a)R*U%!w(8S8Xz{ZU-L1P+nfHmzkGcoSayYs+V7s UKKq@G6i^X^r>mdKI;Vst0E`~Jq5uE@ literal 0 HcmV?d00001 diff --git a/assets/resources/left_arrow32.png b/assets/resources/left_arrow32.png new file mode 100644 index 0000000000000000000000000000000000000000..96a157defddbc0855ab8f47e0848012c09ba4036 GIT binary patch literal 528 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE0wix1Z>k4UEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10f+@+{-GzZ+Rj;xUkjGiz z5n0T@z;^_M8K-LVNdpDhOFVsD*`II-@mlNjUN+AJ3f=Q`aSZV|zILji&_M^0HhZku~F=yM@?@*yV2*_P*d-l=35Je$@$mxY-xe#2IUgs;NegtpB1 zq;W)>MNaX$&<>{y>G6!yIcmhj3K|bg2~jyQEkxnO^ed4DkDvA|Z`zeByZTbBr6+OnVr=S#O^wtnc#)=u_1a*NBpo#FA92ErERK(!v>gTe~DWM4foyD-& literal 0 HcmV?d00001 diff --git a/assets/resources/right_arrow32.png b/assets/resources/right_arrow32.png new file mode 100644 index 0000000000000000000000000000000000000000..619d95c4e6f74103efe50c0672525347658ba5c4 GIT binary patch literal 497 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE0wix1Z>k4UEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10f+@+{-GzZ+Rj;xUkjGiz z5n0T@z;^_M8K-LVNdpDhOFVsD*`II-@met~6UaIZ6x#3U;uzv_eCgGNe2s}B$3EJd zO?C+lR55?R71Oe!YgP1*JjW>|j@vG#n$5oH(bem|ZDZ}9``iC-`)+&QlAYn2&I^Te zodwGmWHtz#>scwO(4t$*-lAT7i;d&qu_Qe*G6tl?UO_QmvAUQh^kM zk%5tcu7QQFp+$(Hv6ZQXm4Sh_fdP=*eAcfNMMG|WN@iLmZViVfd^-u$APKS|I6tkV oJh3R1p}f3YFEcN@I61K(RWH9NefB#WDWD<-Pgg&ebxsLQ09x9nt^fc4 literal 0 HcmV?d00001 diff --git a/assets/resources/up-arrow32.png b/assets/resources/up-arrow32.png new file mode 100644 index 0000000000000000000000000000000000000000..f545dd622474702b2b485b45903023bffacc4d4f GIT binary patch literal 583 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE0wix1Z>k4UEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10f+@+{-GzZ+Rj;xUkjGiz z5n0T@z;^_M8K-LVNdpDhOFVsD*`II-@mg4(R&D^=#3<_N;uzv_{OlD&FJ?!HwujeM z!~|Ugd{i|!G=n(9G~ej#X^=Y*qaddscc5gMM-;bhL)?Kwrw+Mo5Y=Jf_Eb(%c$Y3b z{Y_eW`M*xrXY1#0pUp4!_v?-s?dF{wH~62b$_YH07!4)0zm0Xkxq!^40j0|)QEOZSmLJW