Minor user-interface issues incl. some feature requests

Minor user-interface issues incl. some feature requests - Сообщения

#1 Опубликовано: 19.05.2010 11:34:01
dg1727

dg1727

0 сообщений из 18 понравились пользователям.

Группа: User

I have noticed some minor UI issues in SMath Studio version 0.88 on Windows Vista (I think some of the items noted are actually feature requests):

1. When a region is being moved (drag-and-drop) and the mouse pointer reaches the edge of the window, scrolling is controlled by the speed of the mouse movement rather than by the mouse-pointer location. This requires the user to move the mouse back and forth constantly in order to keep scrolling. It would be preferable if scrolling in this case were controlled by the mouse-pointer location so that the user didn't have to move the mouse in order to keep scrolling. It would be great if the scrolling speed varied according to the distance between the mouse pointer and the edge of the window.

2. About editing text regions:

a. The DELETE key erases 2 characters instead of 1 (I don't know if this depends on locale).

b. If the user selects part of a text region by dragging the mouse pointer, then begins typing, the newly typed text replaces a different piece of text than what was selected.

c. If the user selects part of a text region (either by dragging the mouse pointer, or with SHIFT and the cursor keys), then presses BACKSPACE, only one character is erased instead of what was selected.

d. Presently, if the user types a long line that requires horizontal scrolling in order to keep the text-entry-point visible, the scrolling stops when the left edge of the window reaches the left edge of the text region. This causes the text entry point to move off the screen. Scrolling should continue in order to keep the text-entry-point visible, even if it it means moving the left edge of the text region off the screen.

e. If the "Background color" button is selected while a text region is open for editing, the color picker appears, but if the user then selects a color, this color is not applied to the text region. The selected color should be applied to the text region.

f. Ditto for "Text color."

g. Ditto for font size.

h. Preferably, the title of the color picker dialog should say "Text color" or "Background color" as applicable. If the user wants to change both the text and background colors of a region, then is distracted immediately after clicking the "Text color" or "Background color" button (so that he or she forgets which button was clicked), then the user must close and re-open the color picker, or risk mistakenly setting the background color to the desired text color (or vice versa).

i. It would be preferable if the cursor-up and cursor-down keys would move from line to line within a multiline text region, at least when there is another line in the requested direction, instead of always moving to another region. That is, on the last line of a text region, the cursor-down key might still move to the next region, and likewise for cursor-up on the first line.

j. It would be preferable if the HOME and END keys would move to the beginning or end of the current line within the region, rather than to the beginning or end of the region. Maybe CTRL-HOME and CTRL-END could move directly to the beginning and end of the region.

k. If the user has a sentence of text, and starts dragging the mouse pointer partway through a word, the whole word should not automatically be selected - the selection should start where the user started dragging the mouse pointer. The same is true for SHIFT-cursor-left and SHIFT-cursor-right. (CTRL-SHIFT-cursor-left and CTRL-SHIFT-cursor-right should select a whole word at a time.) Microsoft Word has an option to disable automatic word selection (at least, it did when I still used that program), and I don't find an option in OpenOffice Writer to ENable automatic word selection.

3. When a matrix is being edited, the cursor-down and cursor-up keys should move between rows in the matrix, instead of always moving to a different region on the page.

4. I think TAB and SHIFT-TAB should cycle through the placeholders in an expression (or through the sub-expressions that, if they were deleted, would revert to placeholders) rather than through regions on the page. Example cases are when entering values into a matrix, and when entering arguments into a function. If it is too complicated to make TAB and SHIFT-TAB work this way in general, then they could work this way just in simple cases, such as in the 2 example cases just given. TAB at the end of a math region should cycle back to the beginning of that region, rather than moving to the next region, and likewise for SHIFT-TAB. (The cursor-down and -up keys can still be used to move between regions, subject to the limitations mentioned in other issue reports / feature requests.)

5. If any of the suggested editing features are different than in Mathcad, then one or more Tools > Options... settings could be added to enable or disable them.

6. It would be appropriate if there were a tooltip for the font size control in the toolbar.

7. On Windows, double-clicking a *.sm file opens a new instance of SMath Studio. This can be unexpected, since File > "New page" puts the new file in the existing instance of the program. There seem to be 3 long-term options for making these operations consistent:

a. Have double-clicking a *.sm file always open the file in an existing program instance. Preferably, there would eventually be more window-management commands in the Pages submenu, such as Show Windows Stacked, Show Windows Side by Side, and Cascade Windows.

b. Have every worksheet be in its own program instance. The program would no longer be a multiple-document application. The user would use the Windows taskbar (or 3rd-party replacement) for operations such as Stacked, Side by Side, and Cascade. This is how Firefox works (disregarding tabs) and how OpenOffice works.

c. Give the user a Tools > Options... setting to select between {a} and {b}. Adobe Reader does this (I verified that it does in version 8); in Adobe Reader, if "Show each document in its own window" is turned on, Window > Cascade etc. still work, which can be handy.

Firefox, OpenOffice, and Adobe Reader are all cross-platform applications, so the matter does not seem to be specific to Windows.

8. Presently, starting a new region by typing some letters (that could be the start of a variable name), then pressing the space bar, converts the region from math to text. I find this unexpected if I press the space bar by accident: I need to erase the region and start again in order to keep it as a math region. Maybe there should be a Tools > Options... setting to enable this automatic conversion - maybe something like "Space bar in new math region converts it to text region." If this setting is set to No, the program might beep if the space bar is pressed in a new math region.

9. Steps to duplicate an issue:
a. Type X:r
b. In Dynamic Assistance, select range(3)
c. Problem: If the cursor keys are used to move between the 3 arguments, the argument that looks 2nd is actually 3rd in the cursor-key order. This is not expected. I realize that this is because range() can take either 2 or 3 arguments, and the first 2 arguments are the same between range(2) and range(3). If it is not feasible to have the 2nd argument mean something different in range(3) than in range(2), maybe a function called range3() could be introduced, and range(3) could be deprecated. Then the range() function would always have 2 arguments.

10. If nothing is selected on the page, math regions' tooltips (e.g., 'x - not defined.') appear in a monospaced font instead of the proportional font that is used for these tooltips when a region is selected. I prefer the proportional font.

11. The following sequence of expressions:
[MATH]X←mat(1,2,3,4,5,6,7,8,9,3,3)[/MATH] (a 3 X 3 matrix)
[MATH]Y←submatrix(X,2,3,1,4)[/MATH]
(ending the submatrix at column 4, which doesn't exist in 'X')
produces the error message "Example is incorrect." (string 643)
Should this be string 663 ('Cannot get or set an element, because it doesn't exists.') which is produced by typing
X[1,4=
(This latter piece of code also tries to access column 4 of the 3 X 3 matrix.)
  • Новые сообщения Новые сообщения
  • Нет новых сообщений Нет новых сообщений