Some UI concept screenshots for gschem
Footprint picker with "find" icon inside text entry
For certain known attributes, we can offer the user a way of
"picking" the value they want. This will probably launch an external helper program
via a guile script. (It could also be internal - if we provide enough hooks and API to
build a simple UI.
This is UI example is coded using a libsexy SexyIconEntry.
Footprint picker with "..." button
Another example of offering a "picker".
This example is coded in a similar way to the drop down button on a combo-box,
but due to the theme-engine not recognising the widget class, it isn't
drawn as seamlessly. Depending on which theme engine is in use, it looks
more or less like the standard combo box.
Footprint picker with "..." button - correcly rendered
This is what the "..." button should look like if the theme engine were to render it
properly (pending future design improvements in GTK probably). for this demo, I hacked
the C code of the theme engine to correctly render our widget.
Coloured background for input validation
The idea is to provide feedback for known good, known bad, or unknown validity of user input.
If we can't validate a particular field, the entry would be white.
An alternative theme would be to put a circular icon of the required colour in the entry
(say on the left hand side, for example) using a libsexy SexyIconEntry.
What are the implications for colour blind users?
Page navigation icons and entry
This aims to give the user a more discoverable concept of multiple open pages.
Also present are "Down symbol" and "Down schematic" icons (which admittedly need
the love of an icon designer).
This model doesn't work well with a hierarchical list of open pages. Indeed, the
hierarchical open page model doesn't work well when the same page or entity is
referenced from different places in the design.
A nice compromise is to keep the two "hierarhy down" forms of navigation, but instead
of "up" (which can be ambiguous), have a web-browser style "back" (and perhaps "forwards").
Page contents browser
A page contents browser could provide a list based access point to objects
making up a schematic page. When dealing with a complex design, it may be useful
to click on a net by name, and have it highlighted on the schematic. We may also be
able to offer attribute editing for items selected in the page browser.
It may be possible to show information not commonly visible (such as embeded / non-embeded status)
in a suitably constucted page browser panel.
Hierarchical bus example 1
This mockup (using the page browser for clarity) shows how we might consider doing
hierarhical buses.
At each hierarhcy level, we can pull out signals or sub-buses by refering to their names.
We might also think about how signal's position within a bus could be its identifying handle.
Hierarchical bus example 2
This extension of the above example shows how it might be possible to pull out a signal lower
down in a nested bus hierarchy without first extracting its parent. Whether this is useful or
not is unclear as yet.