Toolbar & SearchCtrl
philippe DALET <[email protected]> Tue, 2 Jul 2019 06:09:47 -0700 (PDT)
| Newsgroups | gmane.comp.python.wxpython.devel |
|---|---|
| Message-ID | <[email protected]> |
------=_Part_2331_1751371681.1562072987630 Content-Type: multipart/alternative; boundary="----=_Part_2332_980199153.1562072987630" ------=_Part_2332_980199153.1562072987630 Content-Type: text/plain; charset="UTF-8" Hello Robin, I noticed two anamolies about wx.SearchCtrl in a Toolbar. - EV_BUTTON_ENTER does not work anymore since the last beta versions (gtk2, gtk3 & win7) it works fine with 4.0.6 see DEMO \ Core Windows-Controls \ Toolbar - The second anomalie is on GTK3, not on GTK2 see image files joined I joined also my script Thanks a lot. Philippe DALET -- You received this message because you are subscribed to the Google Groups "wxPython-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/wxPython-dev/0fd3c5f4-7fa0-4d12-9364-d2832d922c4e%40googlegroups.com. For more options, visit https://groups.google.com/d/optout. ------=_Part_2332_980199153.1562072987630 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Hello Robin,<div><br></div><div>I noticed two anamolies ab= out=C2=A0wx.SearchCtrl in a Toolbar.</div><div><br></div><div>- EV_BUTTON_E= NTER does not work anymore since the last beta versions (gtk2, gtk3 & w= in7)</div><div>=C2=A0 it works fine with 4.0.6</div><div>=C2=A0 see DEMO \ = Core Windows-Controls \ Toolbar</div><div><br></div><div>- The second anoma= lie is on GTK3, not on GTK2</div><div>=C2=A0 see image files joined</div><d= iv>=C2=A0 I joined also my script</div><div><br></div><div>Thanks a lot.</d= iv><div><br></div><div>Philippe DALET</div></div> <p></p> -- <br /> You received this message because you are subscribed to the Google Groups &= quot;wxPython-dev" group.<br /> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a href=3D"mailto:[email protected]">wxPyth= [email protected]</a>.<br /> To view this discussion on the web visit <a href=3D"https://groups.google.c= om/d/msgid/wxPython-dev/0fd3c5f4-7fa0-4d12-9364-d2832d922c4e%40googlegroups= .com?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.com/d/ms= gid/wxPython-dev/0fd3c5f4-7fa0-4d12-9364-d2832d922c4e%40googlegroups.com</a= >.<br /> For more options, visit <a href=3D"https://groups.google.com/d/optout">http= s://groups.google.com/d/optout</a>.<br /> ------=_Part_2332_980199153.1562072987630-- ------=_Part_2331_1751371681.1562072987630 Content-Type: image/png; name=GTK2.png Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=GTK2.png X-Attachment-Id: c21e4dc3-c880-43cf-a542-5c4b144a0b5f Content-ID: <c21e4dc3-c880-43cf-a542-5c4b144a0b5f> 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 ------=_Part_2331_1751371681.1562072987630 Content-Type: image/png; name=GTK3.png Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=GTK3.png X-Attachment-Id: e452dae7-09e9-4c5b-80f1-4bedcc5e1e74 Content-ID: <e452dae7-09e9-4c5b-80f1-4bedcc5e1e74> iVBORw0KGgoAAAANSUhEUgAAAToAAAAtCAIAAACxhDCcAAAO7ElEQVR42u2cCVRTWZrHr+3U9MxU n1rs6tM9XU6NXfZUd1MuZYni0loqYKkIghJEkGYVMBDZMRAQwyYEZBcJIbIZWQRZREAR2fewBEiA EJIAImEXEGQJ1lxAcyCESKzp6cPM/Z/fyXnJu++7yTvfL/e9HBTkMQQIBGJdAF69FiIQiHUBaGYP IRCIdQFobh9GIBDrAqQrArF+dGW2DyMQiHUBYHKGEQjEugDqOoJAINYFgMUZQXwwP8mYCRSU1QM7 RHq/AVbHiKzARbmJPVDX/KKeJfiAw1fSxB4kUxKd9EwcVc46qmhI5rSG0wX9oIDIOmbvz5kLvudq Rtd7aWhZ00dDuqL8D+sqtd9AS8eIrLA4w/XM3oIyZnLas7jE7GclTR9QREQlvcPqsFL65s116uoM HZ0Gbe16DKb+3Dn4tFZVlX7yBF1ZkX7kEP3g3hr5Hflf/tppx/bHBXUfMFFdU4/bzbsYQoaWS7aW 8yMt/EPM1UyMYzrG7gHGNgVjfR9zJQmDS8RY3sNg72qakYPCExtYAuk1ZdV1EmV5fEg3EWJI6Tcg xcnc/LqQiFRrPMUAF5NXxBDtYrYPwdZ//Kwu5l6Wb1C0m/etW1HJjBbBByjEZA9aKZ0sP3ToRULC i3v3nkdHd5HJ/JAQrr9/ZUxMRXx8CwHPcbThWGM5FsbtpnpsAy3G7m8IO7+tb34h61xOpHgdItfJ t5NA6nKG+M7j5NMJwUNuvOUqxLvTzoN3XD/HP4SGdP375S4tUdDXLxTOIZYiVVfuS4kwWvuuON3Z sdtjx+7rJ8+TK+v4YgPgApv+qMzdl+xwLdDCnkTwJsPrzNWqrQYtMTvxN7/puXu39/79FzSaSFem v3+fQDA1NVVJdOHhbXj2WJ6VMQ+rxzPR4v7tTM3Xn/j7hMg0UWU9/7RTpr4D62/2TD07pp4t86It U9eWaeDAcvbjOPlx9O2Z2lbN2leaz0Nw8xsYy8YzBj7wPEgpK5Orb9682bBhw2uUd7kZGAK7E50H UWCTSG9j0Mp9uRpWTtTv9nnt2u95Vp8MV9TFF+EqWlXHg4+LTytqO9y8w42tfS+Y+17zpcIvACkF V3Ldxhle8UJde+Ljn8fE8CiUhqwsFp1eddNvoL9/enqq1N2l9EFKyd1Ypo1Jt+XFbjNMl9EZzqE/ XsNoyjRRcUXrCds0DYsaiDoWUn0GW612uRrv3/xqYnZsYsbep+60aZUK5FLVqUtVJyEmlUo6NxuY vVLKIl1/TgKQrit0ld7Gq+oac+/xAaXgvUdJuhaxxjYU+EpqZpG+qZuFI8WVlH7FORpnT0pOL4Sv w4a2dg7GmAdomIXHJeXKYtEIwegyC4frplAgPDK5sahobm5ubGys5KZvf18f1LWQ6Nze2gIbvSbv cRtOtxer2XtJtVtlJ/GUkky6FlW0HsEmfHPq4aYDKZ8p3P/0HVc8SmZnZ6emZtQupXy6N+mTvcmL wF2bj6UdPk9au661tbVEItHMzIxAIBQVFcH3LFHXKZR3CQwOg7qi8yDKGnTlvZSIHpYi/wNJ0yQm 91ldWnaZtx/1+8O2VsRsG+98HZuHltfzrhAfqel4epGi4OCCsmZ9m8hTRpGm+Dst3JHVaoqzoGur nR0/NBReANOTkoRC4cjQUA01kuVD7FvQtYboWO2J57ezYa8XUML6LTUGzFX6zu7yUFFa6ywLFFW2 7tClbNgZBXYs4yulO97huVd9Ur/YHwR2UMT27j3n08DqlVJ2qaumpqYeHh5paWl+fn5wOy8vD+kq PWG3yEhXcV2ltjFo442uJCe/9oh65CGVUDwxCj5NySz57D/09qiF67tUKpmVK5pXYfB1us4Vrjef fb3LEq6xcIyrN1XVLO60CS37KV1iTQlwXxKMsM1mZlwSiUUidXG509PTVZTbz2+4tXgRBALBvK5u tgME0ypX3ODAQJ+gt8Hy3IjFiWHtnd5nlNY6ywLFla3fnr8N5CPF2Ia55xpa5Bpa8PXpaCBPFtur gPFlsARSyoo8hOsqdBUu1ItPQ0NDbWxs4LfPSl2nUd4l/DYF6orOgyiwSaS3sWRdA26n7P8x5Kwp LSW9qJU7ehpz9Y8/+Nv6V31nRJc3ZRy3b7G7zVclsBQtS/+iHHbynCM8JC2rTMc+Q1EnOiA8WSZd 69TUOERieUAA7HUWvYbvSejxwLcQHQS9vVBXuitu2NlwBH+xPCH6zZu5Yh/HVzbK4/rf+pyVXVft CPDXuGUcjNW//mRBpJ+UsUngYIzYAAVt/zXqCq+B4boqMrO4uBi+MjQ0hHSVEnIkVaKui0sN0lWC rmz+6EqcPWMPqoRpmtMYrN7G1r7tx9wOGaYXNo2oenNOEdmHrrZ4JPYcI7TutmEcM8v681HfprY+ RovgwpXUI5govHuUxJoS4L10McJWKCiwnfAV1Cj4XksiwriGmjydkzWaR7kdHa8nJ/Mxfx3SkR81 UnhmrwvbvSwubAp/bMrsL37nldc6ywIlVa3boK6KSctJNPDKf6sr7j44liA2QEEnEH4uKWVFHsL7 VXgNvHi/Ch+pVCoOh5uZmUG6rhYoJCUqGukqpqv0Npasq931mMPqEdrYeLhdUcv9Xp1y9lo5tWhA K5yveKNdyYcT8Lj/RxJHMYh31q1yz/m46np+G39U2yIBHmXtTJZJ1/xNm0q+3hJ9UQe2M1VNmfFb wNoM6v5zw72woLyHGeXbNw7vB2NHQerxzXNzwsybrlPGW6ZMv/HTU5VZ1wsRQCVjGafSDXyL3+pq mw5OpYkNUNALWYuuMEVFRfB+FV4Dw3UVugq3SSSS2K9Ni7rOoCzk9evXd6LjoK7oVIiyFl3HVkLw ioPrpDYuqamtn9Hap2yaqOVVi03s8iwYvJrb/4T9KrB0yCW33yrl+f3S3vNOWXAFbmIPYMwT4Zrs cC1SYk0J8EahrrkA5H8Ewg7sfTM3F2+Nbf49YG8BvP8CzD+B5u1g5AAYVwSvT29MNVGCA9KuW0xb 7pi23u1niFnrLAuUVLVt04kAZ3OXk2MUWPFWV8csoJEtNkDB4NaCrquWXapiXl6etbU1FNXS0hK6 CjdoNNpSY5GuSNc16CqtjUF759hKgskPFC/E6jpkpmWVsjiDpoQ48/AWQmZPQN3LsLaJxK6pINaE R+VwwNPekEfdZq7xLR1DmTkVGqbJ+44H+ocmSKwpAf6oizH2yS9A4S9B5Bcf9/X11ZSW5G3e2LEV dP8ZCHYCuK7Ou6q6sV9zUzbtzsz0dLr5ielrP067n/Y311vrLAuUVrdt0yWDC4XLKTAJr32rK+Ex uPBMbICCSURjq0BKWbHffoVCIbxfhecdmgldFTN2UddZlIXAy91FXdGpEAU2ifQ2lqxrbj5dzfy+ qnmKizcV6pqeXYGjtt6qGI5qn3wyLCwcm0vqF8ZzJgMKB4Ie8h88KoO6EjyiDqtFHjwRkP20WiZd n24Exf8KSj7dkEC6AdfPWLwNYyt48S0Y3ANGj4DJ078Y1fo81kobXtkXPsnpdj0zE2gwE2bqf8VE dl0pwLBqOZWmUcy3ul7PBwYVYgMUzCgy6Sp26btoLJPJRLoiXf+OukLMCDQVs2RDp5TyGvb8ekt5 EFQsiOZOPRwU1r2ayxsWxra/JuX3BkelQrfLqts0TeLlfyBp6QfCK2yZdH32yw2lH4Pqz0H8ls/a WCz4ptPCAhPkf1u/G7QeBtnHv0j2cZqYmBgaHEhz0J2JsJyJwc8muPvbW8qsq2EsuNy4DPPGy3Ed 8yL99JOyZwkwbxAboIC988G6LvopclWkqxBlIfD7d1FXdCpEeb+unM5xiUQn5GhYp5/FJdi7kZvb +sur2Z7+ZMfbGcEVvdSWCSpd4BqZ6eUfCV83taPqWcbuUwzec9g7MjpjtYIScbcllP5uU9XvP6Fv Ao2/A3fkt7IaG2FbT05ONjIa6mrpo6Oj8GlPTzcNbzJFvjKbQJzNpQjLH/g4O8k0UVk1e5tZErDh LsO6Q5PCr+EMVrUP7CVWAWuO2IB9uNim1j4pZZequMY/QkRNKQrSdaWu0tsYcLrGJcJsH7B1p2pg qbpWoW43yMUVrKzHFTG0jIAQqrf/bfgIt+ErdEbnOQPKrv1eO/e6G172h0etVlAiifdzU3/1UZPy gWb5rc1ffcTeAh7+6eMEV7vGhvrx8XG4qLLb2h5EBj+xUpu+dXk22VtYmTHHY4yXZwYHU2SaiN7U LY9LBvhe4CRYQu/HhK7NLswvCU3/7MBesVegZEWW/ok+4G+G51DeJSaOBnVFEWVeV6ltDDq6xlej qJxpSQjTsSBZXPXzDaQ+KaitbeyC0Bv48JHBetHCGaQzun7EkLd/77Z9l6uxRSCrfUBKwZW0817a HT9R9Ydft2sqdV482aW+t0dpq+DwF3UHfpV99PNs1a/qDb+bvKE1c9dVWHB3jlU6x2+cY9eEuF+D i55ME0Fc/GL/yYELro+tCeL4v+GZvmE0TueYlJpI15+T+LuJSFcxXaX3sDRdYafCa103nwgrJz9S 0J3UzMIKejsUEt5zisYUlDSdN7plaO7j5hnx6HHl0l1rpJbR6XhMsfDLf2nb9e/8Y9/0qn83dFFh HHtoyuGHaXfV+R+Womxnk7xmcyKEpSkvi1KDiS6FJY2yzgKB3y/4G9Q9WJocNkPuUqqcUZKccfL8 hnmanEWmHO6RnFWunO0TOYenclcL9tkleQXHw0Ok15T137uijlyae4n3ka4y6tr9SjptvJGc/Bpa cm5ufg1cVFu5w3BRFu1l80cbWC9YnEG48d5Sq8HmvaTeSSIaXyJiNDww6l5a6t466j566r5GGF9T XV8LI1/ry74O1jcILrduxzaz+z94InizDg+Hb/i9NLX1wcHvLSirrm9QliT1QQbUFZ0HUeZ1ldpv gNv9ao2weSMQqPjaD/k/D9L15yQtIwvpKqar9H4DSLn/TV1RlibzYQ7UFZ2HpXmPrrznrxCIfwjZ OU/Q/9W0EilnDOo6gUD8o6iorEGIIeV0IV0RiHUD4PdMIBCIdQHSFYFYT7pOIhCIdQHIfkpHIBDr AiAYnEQgEOsCpCsCgXRFIBBIVwQC6YpAIJCuCAQC6YpA/H/jvwGJDYGXPi3/pAAAAABJRU5ErkJg gg== ------=_Part_2331_1751371681.1562072987630 Content-Type: text/x-python; charset=US-ASCII; name=WheelInstall.py Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=WheelInstall.py X-Attachment-Id: 7651ee91-714e-4c6d-a806-e96db5ef4f28 Content-ID: <7651ee91-714e-4c6d-a806-e96db5ef4f28> #!/usr/bin/env python3 # Ph DALET- France import wx import wx.stc from wx.lib.embeddedimage import PyEmbeddedImage from glob import glob import os.path import os import sys import subprocess, shlex import platform import struct _code= 8 * struct.calcsize("P") ID_UPDATE =wx.NewIdRef() ID_REFRESH=wx.NewIdRef() ID_QUIT =wx.NewIdRef() ID_INFO =wx.NewIdRef() _version="1.0.1" _platform=platform.system() _python_version = platform.python_version() _py=_python_version[0]+_python_version[2] Update_png = PyEmbeddedImage( b'iVBORw0KGgoAAAANSUhEUgAAABUAAAAVCAYAAACpF6WWAAAABHNCSVQICAgIfAhkiAAABSdJ' b'REFUOI2VlFtsVFUUhv+9z3VmzpzOTGemnWI7baGlUC4Byl0IRRIUi0aDURJviTExxER50PAA' b'IZEYozExvPBg0PAAPOAlGoOKRIKUGGy4FIpgoRcq7ZRpnXaGzsy57r19oCTYRKL/y3pYf/6s' b'tZL1Efx3EQASIUQFwIUQ9r8Zpf8ZqhEqVcqqPkcPmXMJIZz5XmGmUZ72k2hi1tx49by1Rrhx' b'bSo9f82pb/Zusa38wIxQSgjVqayEZTWUDpjJJQT+8ERm4BvOmfOPUCpJ6uJVL380kQlsZQ4D' b'81Tfc+38jAE4gBJnfkb4vqHpgQWybkQVLTw7kki3Dvb88gHzPQsAKABw5juWVS5ShUJSZQji' b'5hlzHliL6IAcu1dF2XVK3bnMwBEJvBQyK+O6Wb+mdfXTe6e3uTdpunnlVioaXlADDlLpiqxt' b'TWQAwSTZaGte0L577YYnNlSnUuG/xseL1y6fPd156uv3OSt2jfR372+trPskGI436cGm59Mt' b'tzqH/jh/XAKAxWt2HHEsMSuVriz/dGzX6vFMz0nH0R5vXfHSV5s6trfqZpU+PMZIyExoqfS8' b'ufFEwyv9vddHBZ/qmhwf7mlt2/yqL4LRZM3s1oGeU5/TeKp+AaGJZQEjgJHBzkO2levN53JC' b'j7cf0OMtWt6LoWcogKyVRNauRM6JYemKdeqsec8coLK50nOLQyM3z3+rBwxd1mvbEjX1C2l1' b'3ZKNrm2TeE1M9Hb/fBgAQvFlu2vmtmnr1i/D5YyMvAhBMkzUpWO4Syrw66AKo3qBGqhcvgcA' b'+q+e/TIajWqO5cvJ2oXtVA8mm6lMIQRzSlOZKyBUTzSs2lDdOAdPbW5G7ZwIkrMCsCQgElVQ' b'AkVeCSPVWI9YQ/t6EKpbpbFrvu163GdE1WPNVNFDFZIiQ3DfFoKVqKSGzarGcLI2if4JH4GI' b'DEcl0KIKQlEFSoWMSNpEpDqOZF2dQSUtJAQru45tc88HEXJI9r1yQTNkyJquEUJ1wdyiEQkW' b'ZU0zL4xaWDTPwJTD8VhjEL+POVi+yMRU0cWjbWkcLWZLF5lbJoRqBJLGPB+ua5WoY43fkGQF' b'WsjQA6GqRUJwZhf6zsSiQUSDEoIVMmobQpjQZZCYDi0iIx2RMFrwMfpnT6cQzNeD8VZClQDz' b'PNil8Rv0zq1Lp4NmUEwVXdKydON2AOg7d2SfpMKtSQRghlU0JzRURxSk4hrq4zogy/CZ7/ae' b'PbwPABrnr98+kc0TSoTI3bl+mo6NDFxh3uhFxrloWvrki4oaiufv3Ow6efDdt13P9SSJwuGA' b'SYGYDHBB4DHfO/jhWzu5c3dKUY1kunnLa+VCHr6bvTw5fvuKBADcL+RSTeu2WbbDI5HwI5mB' b'7hO54d6hK50nslqgsk42kuakK9P82KR34eSPfUfee+Pjvktnvljfsetw08KONyeydg33HTF8' b'67udxcKdq2T6ufX25945Cr1ulV3MDI/1n/th8OqZzzhnEQBVkqJWaUHDcMvFou+5WQBZACOb' b'nt3fkxstpjhj4Bg43tN1aBsA+z5P/ZG+C11VtXWLyqWy5DhlX6LEdK1iP+fspuDspudY1zln' b'NwDcBpClVFUaWjr2TOUKkmAMsmb3jWUuHxOC+/J9Dnmuc+u37z/dkZ6/6nXX5VHbLruEShWE' b'0rzgfBKAO42/e8xU9VqIwqgvbnQX7w5dyA8OHBecuffBO1OKHgq3ADTpOVaWMW8UQkwB8ACI' b'B3wSAAOAM91jD9L8YVLun2dG4EP1N+nfXiq5NO5jAAAAAElFTkSuQmCC') Quit_png = PyEmbeddedImage( b'iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABHNCSVQICAgIfAhkiAAABIBJ' b'REFUOI19lFlslGUUhp/v+/5lptMZ2mnL0E6LZZtCq6JggTIYF4IsgRiFalIgJmCkgcTt3sS4' b'xxs1BOOSoBhFg4o7aBDTXqiQNNFQa7pQolBaStOZLsPMP/NvXkwteONJTs7V9+Q97/nyCq6X' b'CsHmRtg0ByoFCP6nhIBrMPmnT2cajgM5mHkkILoBPtofj2+c39wsVEkJvufhuy7MTN918R0b' b'HBvsAth5/LzF1PCQf3Qsde59m+0uDApA3gNfvLhu3bb6AwcEvo+Xz+MVCrPzamUlvlKU9fag' b'23ko5ItAu4BfyJPr/p03e/q737ZYIw1IPhaNbr2pvV0ITQPf/89qOWDBpk3c3trKpKGhJCit' b'2JoGugbhpmU8Wl168zxFm5wPdyeSSQngWRaebWM7Dql4nOzatWSEj5QSIQSOgMurkgzdtpqs' b'FGjSR1M+mgbltfPEKpP1MgLRYH09Xi6HZ1nY+TzTiQS3bN5MbSJBAQ9/RrXje8Qam0i27Sa7' b'pZWsKAJ15WFGQkR1yiWANAxcy8LN5RgvK6MxmWRqYoK+Tz+hwrb414QQDunPjnBx8Dwr129g' b'+NYWlHTRlIdhSpQECeBkMni5HFnLYm5zM67r0n/8GNVXLyPcwqxCPIcFuRSjHxwkNT5O47Yd' b'DCPRlItueCh9BlgYGcHL5ZjQNKrr6hjsPkdsdAjh5MEpzB5KeDbKt0nYafp//JaquXOZql2E' b'brjopoPSQQPIj47iWTlEbRxN0xjvOktgsI9C/hqZfA4zm2VOWRmTvb/h6xYqoLC6PHj4EVTN' b'fLSJLgh4KEMUgdmBAZyxUc63tLBmz176T3xF5OwpdB2UgjMnv6GqfiGh3l8RpS4iAOlLQ/i+' b'z/jYKIxdAGVAIFQE2qkUTKe4FqvC932MhUtQXaeK30GH5QefxDcgHgYtCFpQQWwpQgjc6RQi' b'GAFNh0Co6KGUoCQY/T2MjY2xtLWNEalQCjQFFQGoKZ2BlSimAxGC9+7EcRzElUGIVkO0GjEL' b'FEXoMifLT0cOs7JlLcO7HidDcWXNAGWCCkoKwQgna+5j/Y6d/NJxmpVVJqK8GhGtuUGhJpAS' b'TAnOoVcY6O2l7flXufDUa3QGY1zyYMSDjkKUH1a0s+Plw2Smp0mf+pBYvA7K5yEqaoseZiBt' b'lJejSwdpTbE8P8nPu7fivvcl9+9/AmvPPs4P9JN1HJKLlxAOhxkZGabj4LNsX1yBiFRAeQ0i' b'UkGqcCItDLjzaInqaEiuliI9ClcvYkibPjNE5qF2mrbvYsGixUgpuTw0xB+d31Pac5q7EnFk' b'VR1ifhMiVk925G+/6YG9+wQgN2p8/VxtdEv0jhXCCOiIzDgqM44qTDLsWFwxdSgNU10ZpSGR' b'QKtrQMYbELF6KIlAIc9Lh97teeaNd1bPBuw2g4+frjQ3VMeiwiwPY0ZKMEpNjIiBHpKIcAQR' b'roBwtDgjFYhwJRlX+K8f+677hbeOPOi47uCNMa+FBVtWmGys1KlSEqEkSKOYfcI0wSy53kaJ' b'P+mKqTN9f3VeGZ/4HMgC/APArMnY0JE/6AAAAABJRU5ErkJggg==') Info_png = PyEmbeddedImage( b'iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABHNCSVQICAgIfAhkiAAAAoZJ' b'REFUOI2Nk0tIVUEYx39zHvecc69KpoZKYdAmbFURVIvWtUiCoFq0aSMULVu1q13roE2bggqJ' b'gpKgdRQhEUFhaQ9NIS31lt6r9+W5Z74Wc7wvr48PhjPfzP/85j/fzCjqwweVYNOQxoFS3ABQ' b'AFh2yu87fmn3kYunk35LEq0h0ohoTD8CrZF4HK1BzPhyZj47O/rofpifGUZ0UQEE+09eO3Ph' b'zq29gW1ZShkPsRERqfqqMbeWlyPNh7Ev+TfDVwbDlemHDkq1dx88P5DIFa2ZFUHECOMPrq3o' b'3WWqMDtXohRKZR4BpaBz555kqufY2aXv008cUIGtSWbzudiRUUrc79+X5PrlPgThxu1RxifD' b'CkwqTgUr6GwHbAcgn8/z+ecf0ksldCR1Ze/r7cZLmLJ9m5jk9ccIiUsPoJSiNeVQLEcKwAGY' b'T2f4nZ+L3dXH81fL9HTkyGRzvB39RaaYqpzlWmQKwGpEBVguh+Dq9TSgrT1JIQpIpDzaOrKk' b'w9V1QABWVRWIUuD560UiHDrQyc2rJwAYGXvM5KICZa3XFu0aIIDnNfEnKNeuprZldM2A5jjW' b'HAJ+c4c4bjV3XfCd5kCnEbiBQyvh1v/kWdsBblBDBMuredquC74LbAm0wQ82cFizkOuAF2yj' b'hp7XHChg1wKdhNFtuWUvAL+lCVBIl2zeT/xFRMhECaNrDhQDFCmgdMFspfHCCi+nQkbuzSGi' b'WVhtBz/VRAfk01lAOyCLfHrwlP5TR2ntchp1OSDHDpO4jbMYeHYqx/iLZ0DJLKXsNnoOD9J/' b'boCgq5UwhHLZiC0bnLhZjim+Y5tLbjvw78ci7+4OsfB1CImytd4twN/Ax2ZRBgqABvgPY/T9' b'JFp42DoAAAAASUVORK5CYII=') if "gtk2" in wx.PlatformInfo or "gtk3" in wx.PlatformInfo: margin_default=20 size_default=(420,550) X=size_default[0] + 2*margin_default Y=size_default[1] + 6*margin_default else: margin_default=15 size_default=(350,450) X=size_default[0] + 3*margin_default Y=size_default[1] + 9*margin_default class Panel(wx.Panel): def __init__(self, parent): wx.Panel.__init__(self, parent) self.parent=parent self.sudoPassword='' self.Refresh() pos=wx.Point(margin_default,margin_default) # x, y size=wx.Size(size_default) # width, height self.lb = wx.CheckListBox(self, -1,pos, size, self.sampleList) posx=size.GetWidth()/2 -2*margin_default posy=size.GetHeight() + 2*margin_default btn = wx.Button(self, -1, "Install", (posx,posy)) self.Bind(wx.EVT_BUTTON, self.OnInstallButton, btn) self.parent.SetSize(X, Y) def Refresh(self): self.sampleList = [''] self.sampleList = glob(os.path.join('', '*py3*.whl')) + glob(os.path.join('', '*cp%s*.whl' %_py)) sampleList1 = glob(os.path.join('', '*cp%s*.whl' %_py)) self.sampleList.sort(key=lambda s: s.lower()) def RefreshList(self): self.lb.Clear() for i in range(len(self.sampleList)): self.lb.Append(self.sampleList[i]) def OnInstallButton(self, evt): sudoPassword='' num=0 for i in range(len(self.sampleList)): if (self.lb.IsChecked(i)==True): self.lb.Check(i,False) num=i if (platform.system()=='Windows'): self.sudoPassword="hello world" command = 'c:\Python%s\Scripts\pip install --upgrade ./%s' %(_py,self.sampleList[i]) else : if (self.sudoPassword==''): dlg=wx.PasswordEntryDialog(self.parent,'') dlg.ShowModal() self.sudoPassword = dlg.GetValue() command = 'echo %s|sudo -S -H pip3 install --upgrade ./%s' % (self.sudoPassword, self.sampleList[i]) os.system(command) self.Refresh() self.RefreshList() self.lb.SetSelection(num) def Install(self, text): if (platform.system()=='Windows'): self.sudoPassword="hello world" command = 'c:\Python%s\Scripts\pip install %s --upgrade' %(_py,text) #command = 'c:\Python%s\Scripts\pip search %s' %(_py,text) else : if (self.sudoPassword==''): dlg=wx.PasswordEntryDialog(self.parent,'') dlg.ShowModal() self.sudoPassword = dlg.GetValue() command = 'echo %s|sudo -S -H pip3 install %s --upgrade' % (self.sudoPassword, text) #command = 'pip3 search %s' %(_py,text) if (text!=""): os.system(command) class TestSearchCtrl(wx.SearchCtrl): maxSearches = 5 def __init__(self, parent, id=-1, value="", pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.TE_PROCESS_ENTER, doSearch=None): wx.SearchCtrl.__init__(self, parent, id, value, pos, size, style) self.Bind(wx.EVT_TEXT_ENTER, self.OnTextEntered) self.doSearch = doSearch self.searches = [] def OnTextEntered(self, evt): text = self.GetValue() if self.doSearch(text): self.searches.append(text) if len(self.searches) > self.maxSearches: del self.searches[0] self.SetValue("") class Frame ( wx.Frame ) : def __init__( self, parent=None, id=wx.ID_ANY, title='', pos=( 650, 50) , size=( 100, 100), style=wx.DEFAULT_FRAME_STYLE ^ wx.RESIZE_BORDER ) : wx.Frame.__init__( self, parent, id, title, pos, size, style ) self.P=Panel( self ) tb = self.CreateToolBar( wx.TB_HORIZONTAL|wx.NO_BORDER ) tb.AddTool(ID_UPDATE , "Tools",Update_png.GetBitmap(), wx.NullBitmap, wx.ITEM_NORMAL, "Update", "Update on web new .whl files 'Update'", None) self.Bind(wx.EVT_TOOL, self.OnUpdateClick, id=ID_UPDATE) tb.AddTool(ID_QUIT , "Quit", Quit_png.GetBitmap(), wx.NullBitmap, wx.ITEM_NORMAL, "Quit", "Exit program 'Quit'", None) self.Bind(wx.EVT_TOOL, self.OnCloseWindow, id=ID_QUIT) tb.AddTool(ID_INFO , "About", Info_png.GetBitmap(), wx.NullBitmap, wx.ITEM_NORMAL, "About", "About program 'About'", None) self.Bind(wx.EVT_TOOL, self.OnAboutClick, id=ID_INFO) search = TestSearchCtrl(tb, size=(200,25), doSearch=self.DoSearch) tb.AddControl(search) tb.Realize() self.Show() self.Update() def DoSearch(self, text): #print("DoSearch: %s\n" % text) self.P.Install(text) return True def Clear(self) : if (platform.system()=='Windows'): command = 'cls' else: #Linux command = 'clear' os.system(command) def Update(self) : if (platform.system()=='Windows'): command = 'c:\Python%s\Scripts\pip3 list --outdated ' %_py else: #Linux command = 'pip3 list --outdated --format=columns' print(command) os.system(command) print("Updated\n") self.P.Refresh() self.P.RefreshList() def OnUpdateClick(self, event): self.Clear() self.Update() def OnAboutClick(self, event): st="Only for Python3 (3.5-3.6-3.7) [Linux && Windows]\n\n"\ "- Update: View the updates from the web for the installed wheel packages "\ "and Refresh the list (.whl) from the current folder\n\n"\ "Notes: \n"\ "The directory '~/.cache/pip/http' or its parent directory"\ " is not owned by the current user and the cache has been disabled. Please check"\ " the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag."\ "\n\n Ph.DALET Lyp Champollion- FIGEAC [FRANCE]\n"\ " [email protected] 2017-2019" dlg = wx.MessageDialog(self, st, 'About' , wx.OK) result = dlg.ShowModal() dlg.Destroy() def OnCloseWindow( self, event ) : self.Destroy() if __name__ == '__main__': print ("WheelInstall.py") print ("Version: "+_version) print ("Platform: "+_platform +" " +str(_code)+" bits") print ("Python: " +_python_version) print ("WxPython: "+ wx.version()+'\n') app = wx.App(False) Frame(None, wx.ID_ANY, title='Wheel Installation - %s' %_version) app.MainLoop() ------=_Part_2331_1751371681.1562072987630--