KiField - How hard would it be to write a Windoze GUI for it?


#1

In the past I have used VB6 for some fun programs that I have written.

Just recently I have been poking around with Python and realized that VB6 was mostly just a GUI for programing the visual aspects (GUI) of VB6… think about it… LOL.

I now CAN create a Python “script”, which could have been a DOS Autoexc file in the past, and task it to “do the typing for me” for my current project.

I guess the KiCad Python “plug-ins” already sort of do this?

Having to re-type every command after every session got old the 2nd time I had to do it! So, it seems I need a script to run the script… ahh yea … NO… lol…

well, yes, that is exactly what I need.

I do not have Python 3 installed… is that going to cure my pain, or make it worse?

Thanks for any discussion.


#2

Good question, I have been wondering about how to add GUI for some of my scripts. The nice thing about Python is the cross platform ability, I think it should be easy to write cross platform GUI as well.

There is a sample project I was going to hack around when I have time, https://github.com/enthusiasticgeek/UKBFG/blob/master/ukbfg.py As far as I know, there is no VB-like IDE for Python that allows you to drop controls on a form, then edit the event code (there may be such a tool, could be awesome if there was).


#3

I think there are some tools available to create python guis.
(i never create guis so i don’t really know how useful they are.)

Another option to get cross platform but also a nice ide is to use qt. (Yes this is c++ based. Needs to be compiled for each platform)
Or java.


#4

what kicad uses for its guis…
wxFormBuilder (can export in cpp and py) then use wxPython



#5

The sort of applet I would like to create in Python is like this

A script based component generator with a graphical preview. Something similar for footprints maybe, but the footprint wizard framework is quite good already.


#6

I think wxPython (when I looked at it some time back) was the most compatible (across platforms) and most natively looking (at each platform).
But usually before I get to do any GUI stuff I get pulled into yet another project with urgency (solve yesterday) and have to live with command line tools :wink:


#7

You can make a GUI for a CLI Python program using the gooey module. In many cases, all it requires is adding one line to the code.


#8

Awesome! There’s some great stuff about, now I have no excuses. :slight_smile:

like an ugly relic from the early '80s.

Hey, that’s me :smiley:

I write lots of command line tools at work, then had to explain to my boss how to use the Command Prompt. It seems he had literally never used it before. At first I think he thought I was winding him up… “I have to type in commands in a terminal window…seriously?”. Lol, young’uns.


#9

I liked the first couple of videos, a little slow though.

It just did not look that hard to do. I’m brand new to Python, but I was close to binding a Python script to a button on the GUI.

It might be something that I end up doing myself, but I know there are much better programmers on this forum then I am.


#10

Well, for me, NOT having to make typos to select paths would be a GREAT addition to KiField.

If the path could be navigated with a mouse, that would be great.

My directory structure is extremely hierarchical in nature. I only have a few root directories. For me, that makes an extremely long text to type, to get to the path where my KiCad schematics are. Note that this is not in any way a problem in Windoze as I simply have a few shortcuts on my desktop.

If I’m using the correct term, the GUI can also launch any Environment Variables at launch. For example, it can launch the proper path variables without the user having to type it in manually each and every time.


#11

I thought windows includes a more powerful shell now.
Well this might help: https://superuser.com/questions/206590/it-is-possible-to-make-autocompletion-in-powershell-work-like-in-bash

Also my comment was not aimed towards the usefulness of a gui, but towards the tools to create a gui.


#12

Autocomplete (tab key) also works in regular Command Prompt, I forget if it needs enabling somewhere. It does make navigating paths a heck of a lot easier.