Commit Graph

831 Commits

Author SHA1 Message Date
whitequark
ca150aeda1 Update CHANGELOG. 2016-08-13 05:21:34 +00:00
EvilSpirit
4d2c773ee6 DXF export: always declare layers before using them.
Before this commit, the #s001-active-grp layer was not declared,
and this broke some external software, such as Inkscape.
See https://bugs.launchpad.net/inkscape/+bug/1472429 for details.
2016-08-13 04:28:14 +00:00
EvilSpirit
0b997e4c17 Forcibly show the current group once we start a drawing operation 2016-08-13 03:43:44 +00:00
EvilSpirit
bfef091ac9 Do not clear selection during operations that don't need it.
Specifically, during "Align View onto Workplane" when we are locked
in workplane (in which case it always aligns onto that workplane).
2016-08-13 03:32:02 +00:00
whitequark
bcd43c7c24 Update libdxfrw. 2016-08-13 02:24:14 +00:00
whitequark
4fae03d105 Unbreak TTF metrics.
In 2.0, the distance between the points in the TTF request specified
cap height. In 2.1, that was accidentally changed to some arbitrary
value near cap height instead, due to a 72pt factor mess-up.
This commit restores the old behavior.
2016-08-01 12:31:34 +00:00
whitequark
c0f5a31401 When snapping constraints to grid, snap the reference point. 2016-07-19 15:14:51 +00:00
whitequark
5af252eaf1 Multiply constraint values by scale when pasting with transformation. 2016-07-19 12:14:28 +00:00
whitequark
61904280a3 GTK: make Space Navigator actually work.
Before this commit, no events would actually be received.
2016-07-19 08:27:11 +00:00
EvilSpirit
51f3d7e438 Fix the "Show degrees of freedom" command.
Before this commit, it never highlighted anything at all.
It was broken when chord tolerance calculation was overhauled.
2016-06-29 17:01:59 +00:00
whitequark
561b2797e8 Don't crash when changing the autosave interval. 2016-06-23 11:59:04 +00:00
whitequark
5525303946 Do not remove autosave after successfully opening file.
If SolveSpace crashes after the open, or hangs and is forcibly
killed, data would be lost. (I lost my data.) Instead, remove
autosave only in two cases: right after a successful save, or right
after a save is declined. This should be completely safe.
2016-06-23 11:59:01 +00:00
whitequark
7f6c774bf5 Update changelog for 2.2. 2016-06-23 11:58:54 +00:00
whitequark
fd255364b3 Show "Paste" context menu item even when only constraints are copied. 2016-06-23 11:58:29 +00:00
whitequark
478973eb3c OS X: fix typo in build system. 2016-06-20 13:42:40 +00:00
Thomas Buck
8fd572d449 OS X: add 3Dconnexion device support. 2016-06-20 13:42:40 +00:00
whitequark
7b82ff68e1 Unix: also install the SolveSpace desktop icon in the xpm format.
This is required by e.g. Debian guidelines.
2016-06-16 02:51:10 +00:00
whitequark
7fc2033c9b Update debian/copyright. 2016-06-16 02:45:20 +00:00
whitequark
ff9a8284b4 OS X: find frameworks last.
Before this commit, any available libpng or libfreetype would be
picked, e.g. from Mono.framework. After, homebrew and MacPorts
are prioritized.
2016-06-13 04:15:55 +00:00
whitequark
c25e4c8973 OS X: sort out window visibility and focus. 2016-06-13 02:08:28 +04:00
whitequark
dce906465d Add CHANGELOG.md. 2016-06-11 22:30:26 +00:00
whitequark
53e5e0eb90 Fix copyright. 2016-06-11 22:29:58 +00:00
whitequark
ce656ef7c6 Fix disabling of autoconstrainter via Ctrl. 2016-06-11 22:28:02 +00:00
whitequark
fb2f32eb72 Three.js: correctly handle browser zoom.
Before this commit, controls went wild on zoom ratios other than 1:1,
and the rendering wasn't too good either.
2016-06-11 20:45:57 +00:00
EvilSpirit
917a7b93ce Load actual factory default, not saved style, when requested. 2016-06-11 20:45:57 +00:00
EvilSpirit
c838158e04 DXF, DWG: allow undoing an import. 2016-06-11 20:28:02 +00:00
whitequark
17f7a7b467 Unbreak importing files in the same directory as current file.
This commit fixes a bug introduced in commit 0d7aa0a1.
2016-06-11 20:27:00 +00:00
whitequark
e78edd9b94 Cocoa: allow dismissing Message/Error NSAlerts using Escape key. 2016-06-11 20:26:51 +00:00
whitequark
d13e29cdaf GTK: clip any editors instead of resizing GraphicsWindow.
Such resizing may well get us past OpenGL's maximum texture size
and break rendering.
2016-06-11 20:26:12 +00:00
whitequark
daee939714 Reimplement e129755d properly.
Before this commit, quitting through menu would bring up the dialog
twice when declining to save the file.
2016-06-11 20:26:01 +00:00
whitequark
44c152ccd0 Fix glyph for U+0454 є in vector font. 2016-06-11 20:24:51 +00:00
whitequark
dfc218c452 Allow copying and pasting constraints. 2016-06-11 20:23:44 +00:00
whitequark
9fc60a0c00 Cocoa: fix massive memory leak. 2016-06-11 20:23:16 +00:00
whitequark
f3e36f593b GTK: intercept the Tab key and run MNU_SHOW_TEXT_WND. 2016-06-11 20:23:09 +00:00
whitequark
b62375b554 Rename "Browser" to "Property Browser".
Also, rename confusing "Show Text Window" menu item.
2016-06-11 20:22:41 +00:00
whitequark
056d3bfa30 Properly fix workplane name overlapping workplane border.
A previous attempt to fix this was done in 0128b8679. However, it was
not rigorous. The added offset was dependent on font size and it
introduced an error into edit control positioning. Further, it is
irrelevant to non-workplanes.

After this commit, the workplane drawing code adds a fixed offset
instead. Also, the "tab" is enlarged to not overlap with #XY etc.
2016-06-11 20:22:24 +00:00
whitequark
1e2f199633 Update CI scripts to respect the vA.B tag name format. 2016-05-17 14:53:36 +00:00
whitequark
0d7aa0a1a3 When opening imported files, first try relative path.
Without this, if we have e.g.:
  * a/x.slvs
  * a/y.slvs importing a/x.slvs
and copy a/ to b/, then loading b/y.slvs would load a/x.slvs, which
is rather surprising.
2016-05-17 14:44:33 +00:00
whitequark
3bdaa53725 MSVC: expand C99's inline to MSVC's __inline.
This is not done for C++ as C++ has a proper inline keyword, and
MSVC's C++ standard library will not like it becoming a macro.
2016-05-17 12:54:51 +00:00
EvilSpirit
ae60187322 DXF: export the right supplementary angle.
Before this commit, e.g. a 120° angle could be exported as its
supplementary 60° angle but it would still say 120° in the label.

After this commit, the right angle is selected in DXF-based software.
Similarly, it roundtrips through SolveSpace correctly.
2016-05-17 12:34:35 +00:00
EvilSpirit
11919bf0c1 DXF: import "actual measurement" for dimensions. 2016-05-17 12:34:35 +00:00
EvilSpirit
63abcc379d DXF: export "actual measurement" for dimensions.
The "actual measurement" DXF field contains the size of the dimension
as scaled on the drawing, as opposed to the size as written on
the label.
2016-05-17 12:34:35 +00:00
EvilSpirit
7b8e8b0b41 DXF: export color as indexed, not RGB.
The version of AutoCAD we advertise is unable to read RGB color, so
software attempting to be compatible with it ignores color attributes.
2016-05-17 11:47:49 +00:00
whitequark
e129755d66 Offer to save file when closing if it is unsaved. 2016-05-11 07:43:04 +00:00
whitequark
005ff7e31b GTK: fix GTK3 build. 2016-05-10 13:10:41 +00:00
whitequark
ab8fdcb273 GTK: don't set the "Keep above" hint on text window.
This hint is not recommended for direct use by applications, and for
a good reason: it's very annoying. Moreover, what we want is not
"keep above" but rather "keep on the same layer as graphics window",
which is already achieved by setting window type to "utility"
on GNOME and Unity WMs, and by setting the transient window hint
for the text window on KDE WM.
2016-05-10 01:21:36 +00:00
whitequark
4a8675c120 DXF: regenerate after importing.
Without this, some freshly imported entities appear with incorrect
styles.
2016-05-09 12:43:52 +00:00
whitequark
8f515f3b90 GTK: don't raise graphics window in HideTextEditControl().
This screws up window managers like fvwm, which don't respect
the ICCCM "Keep Above" flag. I don't remember why it's there and
it doesn't appear that removing it has any ill effect.
2016-05-08 00:02:21 +00:00
whitequark
e969bc94ad Enable -Wall -Wextra -Wno-unused-parameter on GCC/Clang.
This is good practice and helps to catch bugs. Several changes
were made to accomodate the newly enabled warnings:
  * -Wunused-function:
    * in exposed/, static functions that were supposed to be inlined
      were explicitly marked as inline;
    * some actually unused functions were removed;
  * -Wsign-compare: explicit conversions were added, and in
    the future we should find a nicer way than aux* fields;
  * -Wmissing-field-initializers: added initializers;
  * -Wreorder: reordered properly;
  * -Wunused-but-set-variable: remove variable.

-Wunused-parameter was turned off as enabling it would result in
massive amount of churn in UI code. Despite that, we should enable
it at some point as it has a fairly high SNR otherwise.
2016-05-08 00:01:35 +00:00
whitequark
ee30fa2b0d Work around an MSVC 2013 bug related to unique_ptr.
The following bug is tickled by calling emplace() on a map with
non-copyable but moveable values:
https://connect.microsoft.com/VisualStudio/feedbackdetail/view/960021

Fortunately, we don't actually need emplace() here as operator[]
will create values if they aren't there.
2016-05-07 22:36:41 +00:00