Axis labels that thin out on their own, and an example that runs on Linux
Fixed
- The getting-started example of CrossGraph stopped at startup on Linux with runtime error 232, "Threads not supported". The component draws in a worker thread, and Free Pascal on Unix compiles thread support in only when cthreads is the first unit of the program; the example did not name it. Reproduced here on 3.2.2 - the version it was reported from - where the same program exits with 232 without that line and runs with it.
- Axis labels are spaced by density instead of two fixed rungs. The step was either 2 or 4 and always a whole number, so the axis thinned out exactly once, at a view of about twelve units. Zoomed out to a thousand the canvas took five hundred labels under two pixels apart; zoomed in below one unit no whole numbers were left in view and the axis carried no labels at all. The step now comes from the series 1, 2, 5 and powers of ten in both directions, chosen so that neighbouring labels stay at least 56 pixels apart, and fractions appear once the view is finer than a unit.
- The panel keeps its proportions after the view-fitting button is pressed. The view arrived from the plugin with a height taken from the data, and a locked ratio was ignored on that one path: a circle came out as an ellipse until the window was resized, at which point the resize handler recomputed the height and quietly repaired it. The rule that size() already applied now applies here too.
- A cleared sheet stays cleared. Clearing the panel, switching the coordinate system and coming back used to bring in the two built-in example formulas: the mark that says the sheet was emptied on purpose was dropped when a formula was picked up from the editor under the caret. A sheet you have never opened still shows the example - that part is intended and unchanged.
- A curve keeps its origin across a change of coordinate system. Everything about a curve travelled to the other sheet except the note of where it came from, so clearing the selection removed a curve in one case and not in the other - which is what "floats, about every other time" in the report describes. The note now travels with the curve, including through the state the editor keeps between sessions.
- The menu item and the panel title name the same action with the same words. The item read "Plot the selection" while the title explained the same key combination with "grab", and nothing tied the two together for a reader.
- The cursor over the plot tells the truth in report mode. The canvas carried an open hand because the graph is dragged with the mouse, and dragging is refused while the report is shown - the hand promised an action that would not happen. It is an ordinary pointer there now, and an unfinished drag is dropped when the report opens.
Changed
- Five of the seven fixes above come from one reader who went through 1.3.6 and wrote down what he found. Nothing in the interface moves, and no setting changes meaning.