If you have been using xscheditM, please
review the following list of items which
we are going to send to Phase Tree Logic,
and prioritize them from 1 (high) to
3 (low). I will post it on the web and
let the collabotation to give some feedbacks
on it.
-- Johnny
User Specifications for the Motif version of CapFast enhancements
-----------------------------------------------------------------
Date: 10-15-96
Johnny Tang (TJNAF-CEBAF) - tang@cebaf.gov
Nick Rees (Joint Astronomy Center) - npr@jach.hawaii.edu
1-9 from CEBAF
10-25 from JAC
Priority 1 to 3. (1 - High, 3 - low)
JAC CEBAF
--- -----
1. 3
2. 2
3. 3
4. 1
5. 2
6. 3
7. 2
8. 1
9. 1
10. 2
11. 1
12. 3
13. 2
14. 1
15. 1
16. 3
17. 2-3
18. 2-3
19. 1
20. 1
21. 2
22. 2
23. 2
24. 2
25. 3
1. Menus are not loaded each time you select them. Must exit program and
restart it to load modified menus. Don't want to do this.
(Phase 3 responded)
Menus are cached in memory the first time they are used since it is
faster to read them from memory than from disk the next time they are
accessed.
Fix: We would need to create a command to reload a particular menu.
2. Schedit redraws window after selecting a parts library from the
Configure menu. This takes a long time on large schematics.
(Phase 3 responded)
Fix: We could modify how this is done, if necessary.
3. When you select a part to put in the schematic, the view zooms out and
pans, causing a redraw. This takes a long time on large schematics.
(Phase 3 responded)
Workaround: If possible, keep the mouse pointer away from the upper right
corner of the window when selecting parts. This avoids the change in
view.
Fix: This is a bug which needs to be fixed.
4. Need to be able to resize property list.
(Phase 3 responded)
Fix: We are working on this one.
5. Need to be able to select a property value from a list when a property
rules file is being used. Want to double click on the property to cause
a selection list to pop up.
(Phase 3 responded)
Workaround: This basically exists already. To select from a list when
adding a property, enter the the property name which has a list defined
in the rules file that is loaded, and click on Add/Modify in the
Properties window. A window will pop up allowing you to select a value
from the list. For existing properties which have a list defined in the
property rules file, select the property, clear out the Value field, and
click on Add/Modify. You will be able to select from the list.
Fix: If there is a major problem with the way it works, let us know; we
can change it if necessary.
(CEBAF)
Yes, we need get this fixed. Most of time, we modify the property value
not add a new property. Currently, to cause a selection list to pop up,
we have to enter a wrong value in a property and click on Add/Modify.
6. The values in a list in a property rules file are sorted
alphabetically by CapFast. You want them to appear in the same order you
entered them in the rules file, so that for example, the order would be
numerical, as in: 1 second, 2 seconds, 5 seconds, 10 seconds, 20 seconds.
(Phase 3 responded)
Fix: We can take out the sorting, which would then be left up to the
user.
7. Only one list of legal values can be defined for a given property
name. This is not desirable. For example:
Say, we have ai record and ao record. Both of them have one
property named "SCAN". The legal value list for ai Record is
"1 second" , "2 second" and for ao Record may be different.
(Phase 3 responded)
Workaround: Name the property something different for each record. If
this is a problem, could you tell us why?
(CEBAF)
Some customized records may over load some existing prroperties with
different ranges. Is it possible to have an alias name to property names
so that different ranges of definitions can be specified for a
same property ? If it is too difficult to implement, we are happy to
live with as it is for now.
8. When a property's value is changed, the property list resets to the
top of the list.
(Phase 3 responded)
Fix: This will be fixed in the next release.
9. The CALC property does not handle numbers (constants) properly. It
does not accept numeric constants such as 1, 4.5, etc.
(Phase 3 responded)
Fix: To fix this, we need to know exactly how numeric constants should be
handled. The EPICS documentation that you suggested we look at does not
say anything about numeric constants in the form 1, 4.5, etc. We have
the source code for the EPICS expression parser, and it accepts even
illegal numeric constants such as 1.32.56 (multiple decimal points),
among other things. We need a specific definition of how numbers should
be handled.
10. Speed up redraw, if possible.
I know this might not be possible, but it does seem to
spend a lot more time updating the screen than most CAD packages.
11. The following doesn't work as a rule:
HOPR : ( $* >= $( LOPR ) )
LOPR : ( $* <= $( HOPR ) )
If HOPR is 1.0e+8, then it objects if LOPR is 1. (And a lot of other
values.
I have had to comment out a number of valid rules
because they don't work.
12. Reading a new property rules file doesn't clear the previous rules.
My rules files aren't very dynamic once they have stabilised.
13. Incorporating the symbol name somewhere in the property window.
I often do bulk edits of rules and I lose track of what
symbol I am editing the properties of. This feature could also be
extended so that you could change the symbol whose properties you are
editing by changing the name in the properties window.
14. Optionally don't sort the properties in the properties window.
The argument for this is similar to 6 above, but is much
more important since there are more properties than selections in a
property rule, and you tend to group like properties together.
15. Improve the wire routing/rerouting algorithm.
I realise that this is difficult to define, but I find this
is an area in which Capfast doesn't reach some of its competitors
standards. Two things would be nice:
a. If someone connects two arbitrary ports together then there would be
a mode in which the wire would be `auto-routed' so it:
i. Only is routed horizontally and vertically.
ii. Isn't routed 'on top of' any other wire (it may cross wires,
of course).
iii. Has corners that are snapped to gridpoints
iv. Doesn't pass over any part.
v. Doesn't pass over or `short to' any port thart is not one of its
endpoints.
vi. Is reasonably short - primarily it doesn't have pointless U-shaped
detours
b. If the part is moved then all wires are rerouted to satisfy the above
constraints.
These two, particularly the second, have not only been annoying but
have also caused me grief in the past. In one case a wire was re-routed
so that it travelled horizontally across a part, shorting to a port on
the opposite side. This would have been fine except there was a
horizontal line across the part at this height too, and so you couldn't
see the wire. It took me a long time to sort this out. But many times I
have moved a part up, then moved it down and ended up shorting across
all the connectors on both sides of the part. I often have to resort to
deleting all the wires, moving the part, then rewiring. This can lead
to errors in na drawing that weren't there before.
I also realize that routing is one of those things (like the travelling
salesman problem) that are superficially simple, but actually extremely
difficult and tend to be solved by people with Ph.D.'s in mathematical
topology. i.e. I don't want to do it, but maybe you should think about
it.
16. Enter symed from schedit. When I create a hierarchial symbol,
I'd like to be able to pop into xsymed and edit the symbols. Exiting
would either return me to schedit, or more simply, close the xsymed window.
The obvious workaround is to run up both at the same time.
17. Reload and add ports to a new symbol. Currently if you create
a new symbol you can add ports until you save it. When you reload
the drawing and select the symbol, you cannot add more ports, but get
the error "No Block selected".
Currently if you use Select Symbol to Replace and give
the same symbol name then the symbol isn't reloaded, you just get the
initial definition. It isn't even reloaded if you change the symbol to
some other one and then change it back. This is presumably because of
other symbols of the same type may exist on the diagram - however the
preferred behaviour would be for all symbols of the same type be updated.
18. Create split windows. I'd like to be able to show two drawings
simultaneously, in the left and right (or top and bottom) halves.
19. Fix the floating license. I've purchased a floating license,
but Phase Three has to keep issuing me time-locked licenses until
they fix the license mangler.
20. The ability to add a text note box to a diagram and edit the text within
it, which I found very useful in version 2, was withdrawn in version 3.
This makes it very difficult to document diagrams using a paragraph of
text. I have had to resort to importing note boxes created using version
2 and editing the ".sch" files manually to change the text (very
dodgy). I can't understand why this was done, as it is like
withdrawing the comment feature from a compiler. I would like to see
this feature restored.
21. Editing free form text using the "Text" menu requires the whole text
string to be retyped. I would like to be able to edit the text rather
than type the whole thing back in again. This could be done by bringing
up an "Edit text" pop-up rather than prompting me for a new line of text
at the bottom of the screen.
22. Whenever the "Display" flag for a property is switched on for the first
time in the properties menu and "Move" is selected the display zooms
out, redraws and becomes unreadable. The reason is that the default
location for the display of each property seems to be way outside the
diagram. I would like to see the default location chosen sensibly - e.g.
somewhere near the centre of the symbol that property refers to or
(even better) one line below the last property you displayed.
23. Sometimes when I attempt to move a displayed property using "Move"
from the properties menu the diagram redraws and the display of the
other properties disappears. This makes it impossible to line up
these displays. Usually more than one attempt is needed. I think
this is a bug.
24. If a symbol for a particular part is not found Capfast gives up and
refuses to display any of the diagram. I would prefer to see Capfast
use a default symbol for such objects and attempt to display the
diagram. The reasons are as follows:
a. Sometimes I need to be able just to look at a diagram imported from
somewhere else, and occasionally these diagrams use custom symbols
I don't have available.
b. If I change the name of a symbol I have to have two copies of the
symbol available (old and new) in order to edit the diagrams to
use the new symbol. If I don't follow this procedure some of my
diagrams get into a state where they can't be edited.
c. The most serious reason is that each diagram I have is dependent
on the presence of *all* the symbols it uses. If only one of those
symbols get corrupted or is deleted by accident then my whole
diagram becomes uneditable.
25. I would like Phase 3 seriously to consider changing the look and feel
of Capfast. The editors seem clunky and old fashioned compared to
most GUI packages. Particular improvements could be (for example):
a. Allowing you to select an object by clicking on it instead of
having to go into the "Select" menu.
b. Adding a new object to the list of selected objects by clicking
on it with the middle mouse button.
c. Moving objects by dragging them instead of having to select the
"Edit/Move" menu.
d. Bringing up the "Properties" menu for an object automatically
by double clicking on it (or pressing the right mouse button).
e. Starting a wire automatically whenever the mouse is clicked
on a port with the CTRL key pressed.
f. Going into "Select/Area" mode automatically whenever the mouse
is dragged with the CTRL and SHIFT keys pressed.
g. Allowing a wire to be selected and repositioned by clicking on
it with CTRL pressed and dragging the mouse.
h. Bringing up the "Edit" menu automatically whenever the right
mouse button is pressed in open space.
i. Including "Zoom+" and "Zoom- "buttons so you don't have to keep
bringing up the "View" menu.
The usual defence against such improvements is that long standing
users of Capfast are used to the present look and feel and will not
like a change. What Phase 3 could do is include a "Preferences" menu
so that users can set up their own look and feel. For example
"Select object with mouse click" could be a flag on the preferences
menu you can turn on and off.
--
_____________________________________________
Johnny Tang
Tel: (757)269-7239
Fax: (757)269-7049
E-Mail: tang@cebaf.gov
JEFFERSON LAB
CEBAF
12000 Jefferson Avenue, MS 85A
Newport News, Virginia 23606
_____________________________________________