Commit Graph

2016 Commits (3ce0cee838f9f6f7633c625874bac8a7fe592b88)

Author SHA1 Message Date
phkahler 204ca3178e Add some notes on ID lists, Entities, and Remap 2021-03-29 13:45:11 -04:00
Přemysl Eric Janouch 5e42275b1a Fix pathologically slow translate groups on Linux
Major performance improvement on GCC with libstdc++.
2021-03-27 12:03:01 -04:00
robnee d511ce4acc Trigger redraw on load factory default styles 2021-03-27 12:00:22 -04:00
robnee 53f5e4e7e5 export style for construction entities for edges 2021-03-25 21:29:41 -04:00
app4soft 39c18a70b2 Update uk_UA.po 2021-03-20 18:04:05 -04:00
phkahler e75f6b3647 Add Turkish translation by mhalil (Mustafa Halil). 2021-03-20 12:37:05 -04:00
robnee 10ca307d98 Add exportable option to default styles
Primarily, this enables the user to export of construction entities in 2D
views such as SVG. Previously constuction entities were always skipped.
The "export these objects" is now available for all default styles.
One may turn off export of constraints or the inactive groups for example.
This also adds the exportable flag to the factory settings and
support for saving the exportable option for default styles in the
configuration. Construction entities with custom styles respect this
option as well.  NOTE:  Running this version will add new entries to the
configuration (Registry, .config etc.) on exit when testing this code.
2021-03-17 12:01:58 -04:00
phkahler 83dfcf44e2 Add new symbols to the vector font. unicode 2334, 2335, 21A7 counterbore, countersink, depth 2021-03-17 10:00:22 -04:00
robnee 979a9f084e Hide editor window when user hits Esc 2021-03-10 19:44:54 -05:00
robnee bef6bc3b77 Use better pointer cursor for link text in GTK
Gdk::Cursor::create(Gdk::HAND1) yields a hand cursor more appropriate
for "grabbing" vs. pointing.  Use the recommended create by name API
to get a "pointing hand" cursor.
2021-03-07 10:11:17 -05:00
ruevs 2a3f598ce0 Remove res/icons/graphics-window/Clipboard01.png added by mistake 2021-03-06 23:26:18 +02:00
ruevs a14d8410e6 Icons: Fix non transparent pixels in line.png and pointonx.png 2021-03-06 16:04:00 -05:00
ruevs 20b0677f6c UI: Update the "Nearest isometric view" icon to a more typical view 2021-03-06 16:04:00 -05:00
ruevs aa075259f1 UI: Update non anti aliased icons to match original ones better
Discussion here #857
2021-03-06 16:04:00 -05:00
ruevs d3a6e96281 UI: Non anti aliased icons for the graphics and text windows
Created by jkrei0 here https://github.com/jkrei0/solvespace

Optimized for size.

Merged all but `shaded.png` since in my opinion the current
one is better.

Discussion here https://github.com/solvespace/solvespace/issues/857
2021-03-06 16:04:00 -05:00
ruevs 8c101d5f28 Fix tangent constraints of curves.
This fixes a regression introduced in  96958f4663
(https://github.com/solvespace/solvespace/pull/833.)
Three `return` statements got "swallowed" by the newly created functions.
(e.g .96958f4663 (diff-49abc03ed071148c0ebae0c64aafb625fa6223135f77aeecdb47dab4cf8b940cL638) )

Because of this it was possible to constrain arcs and cubics tangent to
each other or line segments, without them sharing an endpoint.

This kind of worked, but always chose the "starting" points of the curves
and lines. In the future this can be turned into a feature. See the
discussion in #937.
2021-03-06 14:16:33 -05:00
ruevs 697ffdd731 UI: Show XYZ distance components in the text window for two points
When two points are selected in addition to their distance show the X, Y
and Z components of it in the text window.

Implements #936
2021-03-06 14:15:28 -05:00
robnee 3309181773 fix problems with ctrl/shift key drag modifiers
When dragging points we must always update position and mark them dirty
through all code paths.
Ensure the ctrl and shift modifier rotation quarternion is always set to
something reasonable.
separate extraLine tracking code from drag tracking code
2021-03-01 21:09:36 -05:00
robnee 60dca4cb79 Fix incorrect styling on svg export
export Style::NO_STYLE which was missing
styles should be set on export at the SBezierLoop-level vs the
SBezierLoopSet-level
2021-02-28 17:37:34 -05:00
Jonathan Westhues 2fcc933aa9 Clarify ambiguous license terms.
The about box has always said "GPLv3 or later", but other references
failed to distinguish between "or later" and "only".
2021-02-25 20:37:18 -08:00
ruevs 0858fe6988 Update Changelog 2021-02-25 14:34:13 -05:00
robnee 745a12c3c4 permit construction geometry toggle while drawing 2021-02-23 10:13:29 -05:00
ruevs 47c3209b48 Win32: If the main or text window is off-screen make it visible...
...by 1/40th of the scrreen width so that the user can notice it.

This can happen if the window was on a second monitor, which is
disconnected, or if the user knows about `Alt-Space | Move` and then
moving the window with the arrow keys.

Before this, if for example the left edge was off-screen it was moved
to 1920, which is just off-screen, so the window remained invisible.

Fixes: #938
2021-02-18 09:52:25 -05:00
robnee 04e872a61f remember auto-removed constraints for undo 2021-02-16 11:49:32 -05:00
robnee 7795b0bc19 mark group dirty when toggling reference dimension 2021-02-07 18:18:50 -05:00
Ryan Pavlik cdeb6c90fb Update mimalloc to 2.0.0 release. 2021-02-06 15:52:54 -05:00
ruevs 02aa9ea827 Update translations
Including de_DE and ru_RU strings.
2021-02-03 18:14:29 -05:00
ruevs 1c5c4c048c Fix a crash when opening an empty file.
Fixes: https://github.com/solvespace/solvespace/issues/918

The problem was that here:
11a8a0abd5/src/file.cpp (L480)
we cleared all groups. Then we tried to read an empty file and therefore this `while` exited immediately:
11a8a0abd5/src/file.cpp (L487)
and we came to here:
11a8a0abd5/src/file.cpp (L548)
where there was no `fileLoadError` and thus we were left with no groups, and so this assert failed:
11a8a0abd5/src/graphicswin.cpp (L394)
since is is not allowed to have no groups :-)
2021-02-03 18:14:29 -05:00
robnee 11a8a0abd5 do not Invalidate() when dragging new points to prevent refresh bugs on Windows 2021-01-30 21:36:54 -05:00
phkahler ebb194eda6 Add version command to solvespace-cli 2021-01-26 16:57:48 -05:00
phkahler 2e1f5324c8 Update ru_RU translation 2021-01-23 11:45:33 -05:00
Ryan Pavlik 0404cd46ef Standardize how we refer to the other javascript files we include, too. 2021-01-23 11:38:36 -05:00
Ryan Pavlik d16e33ac48 Update to THREE.js revision 111 as found in Debian Testing
Required some small JavaScript changes to replace deprecated usage.
2021-01-23 11:38:36 -05:00
phkahler 6d9bbb69d6 Update build instructons Add use of OPEN_MP to linux and macOS build instructions, and a mention of ENABLE_LTO. 2021-01-18 16:10:15 -05:00
phkahler d3951afb12 GTK: Fix a warning for file->open dialogs.
SetCurrentName only applies to save dialogs, so call it conditionally.
2021-01-17 18:07:52 -05:00
Reini Urban 36719c6234 Improved de_DE
See #890 and its changed menu item
2021-01-17 14:27:54 -05:00
ruevs 1817816b4a Update translations 2021-01-17 13:47:14 -05:00
ruevs 0adb13c5e8 Change "Dim Solid for Sketch Groups" to "Darken Inactive Solids"
Discussion here:
https://github.com/solvespace/solvespace/issues/890
2021-01-17 13:47:14 -05:00
Reini Urban 422bb0cb35 Translations: update de_DE for 3.0
See #890
make -C src translate_solvespace to update all line numbers
2021-01-17 11:45:40 -05:00
Jonathan Westhues 76589a8a87 Fix SpaceNavigator type 6DOF controllers on Windows.
We were creating the event but never dispatching it.
2021-01-15 16:50:38 -08:00
Ryan Pavlik d6c2983c72 Update messages 2021-01-15 16:05:50 -05:00
phkahler 41c81a71c1 Override minimum displayed digits as needed to avoid showing zero. 2021-01-13 19:56:06 -05:00
ruevs bd41485ebe
Correct toolbar height calculation (#885)
The toolbar height is

`int fudge = 8;`
`int h = 32*18 + 3*16 + fudge;`

It means 18 icons 32 pixels each and 3 separators 16 pixels each.

`32*18 + 3*16 + 8 = 632`
`36*16 + 3*16 + 8 = 632`

See these correct increases of the toolbar height:
bf4de993cb/toolbar.cpp (L97)
fe2ea5d5e1/toolbar.cpp (L103)
ef5db2132e/src/toolbar.cpp (L112)
ca2aad7fea/src/toolbar.cpp (L145)

And then these incorrect ones:
3e3ccdca8d/src/toolbar.cpp (L156)
https://github.com/ruevs/solvespace/blame/master/src/toolbar.cpp#L160

In addition
https://github.com/ruevs/solvespace/blob/master/src/drawentity.cpp#L618
the point at which the XYZ axis are shifted right so that they do not
overlap with the toolbar is corrected.

The original discussion is here: d45e2c4c2e
2021-01-10 10:33:26 -05:00
ruevs 758095adb3
Win32: Avoid the "Default Beep" sound in "Еrror" and "Message" dialogs (#881)
On Windows SolveSpace 2.3 uses a plain dialog for `SolveSpace::Error` and
`SolveSpace::Message` with no icon and no system beep. After the GUI
abstraction was reworked this changed to the default system message boxes
(using MessageBoxIndirectW) that play the "Default Beep" sound and show
red "X" and blue "i" icons respectively.

The beep is annoying since the error and message dialogs are used often to
show required conditions for constraints, new groups and other behaviors.

This disables the beep and uses the SolveSpace icon.

Fixes: 719
2021-01-09 17:31:25 -05:00
ruevs 5ef7034de8
README.md: Use the SVG icon with a relative path. (#883) 2021-01-09 17:30:13 -05:00
ruevs 3abfd91e9d Win32: Update the year in the Windows version resource
Visible in right-click on solvespace.exe | Properties | Details | Copyright
2021-01-09 23:37:31 +02:00
ruevs 82698b19a3 Update the year in the About dialog 2021-01-09 23:37:31 +02:00
app4soft a76e7f2439
Update ISSUE_TEMPLATE.md (#859)
Improve formatting.
2021-01-09 12:41:23 -05:00
phkahler d45e2c4c2e
Add toolbar icons for Revolve and Helix created by jkrei0 in issue #857. (#878) 2021-01-09 12:27:27 -05:00
ruevs 3e3ccdca8d Revert "Clean up paste transformed and constrain operations a bit."
This reverts commit 14e837a45f.

Fixes a regression described here:
https://github.com/solvespace/solvespace/issues/875
2021-01-08 21:40:34 +02:00