Mail Archives: geda-user/2017/05/28/23:45:24
Hi all,
I'm proud do announce genxproj, yet another attempt to provide a GUI
project manager _option_ to get our tools work together. ~1 minute
desktop video showing the classic gschem -> pcb-rnd -> gerbv flow:
https://archive.org/details/genxproj-prealpha
genxproj is like xgsch2pcb, except:
- it is not specific to gschem or pcb or geda, but is a generic solution
that works with any set of applications; in the gsch2pcb-rnd flow:
- it also supports gerbv, so the example flow gschem -> pcb-rnd -> gerbv
- true single click annotation: you don't need to save the project in
gschem first or click on reload in gerbv; just click the arrow button and
it will do everything
- it can embed the main window of the applicaitons so your schematics,
board design and gerber look like if they were just different tabs of the
same project (when the "radio" button is active: only one tab is shown)
- alternatively it can present a side-by-side view of 0, 1, 2 or more
applications; like in a file manager: schematics on the left, pcb on the
right (when the "radio" button is inactive)
The project is in pre-alpha state yet. Depending on user demand it could
be finished this summer. I'm posting this to get some initial feedback.
If it cathes on, we may set up other flows, like gschem -> simulation,
eeschema -> pcb-rnd, gschem -> gattrib -> text editor -> bom, etc.
****
Technical detail summary
- Genxproj doesn't depend on dbus or in fact on any code modification,
special feature or any sort of cooperation from the applications for the
remote control. It can remote control any application it starts, whether
the app wants it or not. This makes it possible to set up new workflows
without first having to convince upstream programmers to add remote
control features. More details:
http://repo.hu/projects/genxproj/remctrl.html
- similar to that, genxproj doesn't depend on any cooperation from the app
on embedding its window; it can force-embed any X11 application, without
the application even knowing about this. More details:
http://repo.hu/projects/genxproj/xembed.html
- the GUI is 100% workflow-specific; genxproj loads a flow config and
doesn't have any widget or gui logics before that. This means
different flows can have any kind of GUI and any kind of code for the gui
logics, including how to present applications, what to embed and what to
leave floating, how to remote control them or how the widgets should look
like. More details: http://repo.hu/projects/genxproj/toolkit.html
- because of the embed and remote control hacks, genxproj is pretty much
X11-specific (this code won't ever run on windows or non-X based GUIs);
embedding text applications (e.g. a text editor or a shell) is possible
using a terminal emulator (e.g. xterm)
****
Force docker, anyone?
With this framework it would be possible to implement a force-docker:
it would collect the popup windows of an application and force them into a
grid of horizontal/vertical boxes, without the application knowing
anything about this. For users who prefer docking over floating popups,
this means converting old gschem versions, pcb, gerbv or any other
application into a docking app, without having to switch to gtk3, without
having to wait for upstream programmers to change the GUI code. However,
it wouldn't be able to "un-modal" the modal popups.
Is there any demand on such a force-docker?
Regards,
Igor2
- Raw text -