[Kst] [Bug 108027] New view objects for annotating and drawing
netterfield at astro.utoronto.ca
netterfield at astro.utoronto.ca
Thu Jun 30 17:09:08 CEST 2005
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.kde.org/show_bug.cgi?id=108027
------- Additional Comments From netterfield astro utoronto ca 2005-06-30 17:09 -------
Updated Plot UI spec. Also in svn as PlotUI.txt
Plot UI
ToolBar
There should be two pull down icon menus forming a radio pair in the tool bar:
* one selects the 2d plot zoom modes,
* Contains XY, X, and Y zoom icons
* the other selects object manipulation modes.
* Contains Select, Text, Line, Arrow, Box, Ellipse. Biezer, poly-line
and polygon are optional.
* The last icon selected from the list is the one which shows.
Zoom Modes (XY, X and Y zoom modes)
2d plot modes which are only valid for 2d plots. The current behavior
of these there modes is correct, though the toolbar icon handling will
change as described above.
Modes selected from the data-manipulation toolbar icon:
For all of these modes, the right button menu should include:
* Delete (Only active if over a view object)
* Edit (Only active if over a view object)
* Cut (Only active if over a view object)
* Copy (Only active if over a view object)
* Cleanup Layout
Select Mode:
Used to move and edit any data view object. An enhancement to layout mode.
* A single click on a view object pops up the objects edit dialog.
(eg, PlotDialog for plot, labeldialog for labels, etc)
* A drag on a view object moves the object.
* If a view object is dragged to become completely contained in another
view object, it becomes a child of the containing object, and then
drags and scales with the containing onject.
* A drag on the edge of, or the hot point of a data object changes the
object's geometry.
* The top-most object with pixels drawn in the mouse target area (~20%
of the mouse's size) is the one which is selected.
* The mouse icon will change depending on where it is
* By default the mouse icon is the standard arrow
* When a drag would cause a move, the mouse icon is the standard 4 arrow
mouse move icon
* When a drag would move a hot point, the mouse returns to an arrow
icon, and the hot point box is filled.
* Visual feedback as to what object will be selected will be given by
showing the hotpoints or by drawing a dashed bounding box as follows:
* Plots: A dashed rectangle around the outside, as currently
in layout mode
* Rectangles: Same as plots
* Text: Dashed box around the text
* Lines and poly-lines: Hot points at each end and each vertex
* Ellipse: Hot point at the center and at both sides of the
widest and narrowest sections. Dragging the hot points can
change the scaling and orientation of the ellipse.
OBJECT Drawing Modes:
* For each of the modes below, when the mouse is over an object of the
selected type, the behavior is the same as it would be in Select mode,
including hot point behavior and dragging.
Text Mode
* Icon changes to the text | icon.
* When not over a text object, clicking calls up a text dialog for entry.
Line/Arrow modes:
* Arrow Icon
* Lines are made by draging from the 1st point to the 2nd point.
* <Esc> cancels the line in the middle of a drag.
* For arrows, the head is at the Mouse Release end.
* An arrow is just a line with the release end's arrow head shown by default.
A line can be turned to an arrow or an arrow to a line in the dialog.
Box Mode:
* Arror Icon
* The box is drawn with a drag.
* <Esc> cancels the box.
PolyLine/Polygon:
* Arrow Icon
* First and each subsequent click adds a node.
* The lines are drawn as we go. A line is drawn from the previous node
to the mouse icon.
* <Esc> ends the line with the last node.
* Double click ends the line at the location of the double click.
* For Polygons, once ended, a line is drawn from the first point to
the last point.
Ellipse:
* Arrow Icon
* A circle is drawn with a drag from the center along the major axis.
* The circle is drawn as the mouse is moved.
* <Esc> cancels the circle.
* To convert to an ellipse, drag the minor axis
Dialogs:
* Line Mode contains: width, type, color, and arrow head properties
(check box for 1st head, 2nd head, and a scale factor).
* Polyline contains: width, type, color
* Polygon contains width, type, line color, fill color
* Ellipse contains width, type, line color, and a check box to make it a
circle
* with the exception of 2nd arrow head check box for lines and arrows,
and the text in a text dialog, all entry defaults should be sticky
from previous use.
-----------
Cleanup Layout: (incomplete comments)
Cleans up the layout, returning to a grid, as clse as is possible to the
existing layout.
* Plots with borders surpressed need to be smaller, so that each plot area
in the window has equal area.
* Only direct children of the top level view get moved or resized directly.
All other objects get scaled or moved with their parents.
* Only container objects (plots, boxes, ellipses) get resized in a layout
cleanup.
More information about the Kst
mailing list