Commit Graph

238 Commits

Author SHA1 Message Date
bubnikv
1385018724 Unicode handling:
Removed the Perl dependencies on Encode, Encode::Locale and Unicode::Normalize.
Added dependency on boost::locale.
Added encode_path, decode_path, normalize_utf8 functions to Slic3r.xs

Slic3r.xs has been made mostly utf8 safe by using the boost::nowide library,
thanks to @alexrj for the idea.

Simplified the encode_path / decode_path stuff:
wxWidgets are unicode already, so there is no need to decode_path() from it.
Perl / win32 interfacing is non-unicode, so decode_path() is executed
on ARGV just at the beginning of the perl scripts.
2017-08-03 17:31:31 +02:00
bubnikv
6f28818f87 Fix of
"Unicode char like for example "ł" crush app when used in profile name"
https://github.com/prusa3d/Slic3r/issues/388

The Prusa3D binary builds are missing the UTF8 libraries.
To avoid having to bundle them, the case sensitive regexes testing
file suffixes were replaced with explicit enumeration of lower / upper
case letters. While crude, it avoids triggering the UTF8 library.
2017-07-11 17:15:34 +02:00
bubnikv
a73a1a3f09 Removed the DLP projector dialog as it is confusing to our customers
and we doubt anybody is using it.
2017-06-14 12:05:23 +02:00
bubnikv
82bde51c27 Removed the 'simple' mode. 2017-06-14 11:48:08 +02:00
bubnikv
f408f08850 Disabled the new Slic3r version check until we have a server set up
for the Slic3r Prusa Edition.

Hopefully a fix of https://github.com/prusa3d/Slic3r/issues/258
by moving the 2D thumbnail generation to the main thread and
forcing the simple 2D convex hull for even the small objects.
2017-06-12 14:25:35 +02:00
bubnikv
66f1ae003f A little simplification of the Perl side threading:
Only single level Perl worker threads are allowed.
2017-06-08 18:53:33 +02:00
Xoan Sampaiño
281a9c45eb Remove hardcoded font size for wxGTK
When in wxGTK (GNU/Linux), some widgets has a hardcoded point size font that not fit with normal GUI font and therefore this widgets doesn't inherit changes in system font size.

This commit only affect this platform, changing `!&Wx::wxMSW` to `&Wx::wxMAC`.
2017-05-12 11:31:54 +02:00
bubnikv
7ffb3590c4 Finalized the Prusa Control project file format import. 2017-04-05 14:45:43 +02:00
bubnikv
045de596e2 Use OpenGL 2.0 shaders for the layer height rendering.
Use OpenGL 2.0 shaders for the print path rendering for performance reasons.
2017-03-20 12:05:20 +01:00
bubnikv
4010dd71f6 Support Prusa Control project files (.PRUS) by the GUI. 2017-02-27 16:09:22 +01:00
Joseph Lenox
ff33fbbb9a Use LambdaObjectDialog in GUI.pm to avoid crash on Windows. 2017-02-21 16:09:51 +01:00
bubnikv
70229be9bc Added SystemInfo dialog,
a new SLIC3R_BUILD define to be replaced by the build script,
a menu item to open the "New Issue" github page.
2017-02-19 16:04:57 +01:00
bubnikv
aceb87d188 Change of defaults. Background processing disabled by default,
default mode set to expert.
2017-02-07 13:21:09 +01:00
bubnikv
7e1af658b6 Initial experiments with vertex / fragment shaders,
prototype to visualize layer thickness.
2016-12-02 11:14:24 +01:00
bubnikv
12b7818caa Only call wxWidgets method wxApp::SetAppDisplayName for wxWidgets 3.0
and newer.
2016-11-03 09:15:30 +01:00
bubnikv
34fab1566f "Background slice now" function, initial implementation by @lordofhyphens
https://github.com/alexrj/Slic3r/pull/3501
2016-10-25 13:24:42 +02:00
bubnikv
741a85187c Suppress the '- default -' selection of Print/Filament/Printer settings
if there is any valid option available. This feature has been asked for
by the Prusa3D customers as the '- default -' option has nothing to do
with the actual printer and when selected accidentally, it could even
lead to a printer damage.
2016-10-24 16:07:36 +02:00
bubnikv
1fb57e439e Defined the +-* operators on Pointf.
Removed the deprecated VibrationLimit feature.
Added triangle infill.
The Prusa3D fork of Slic3r has been marked as "Slic3r Prusa Edition"
with menus pointing to the prusa3d/slic3r github release page
and Prusa3D drivers downloads page.
2016-10-21 16:53:42 +02:00
bubnikv
b2a6f43923 Documented perl modules. 2016-09-13 11:24:55 +02:00
bubnikv
9a83d4e8d5 Reverted some now unnecessary changes. Reverted the infill to the original perl implementation. 2016-09-12 13:26:17 +02:00
bubnikv
9fcc8fe9ae Meged with release_candidate_1_3 2016-09-12 11:29:39 +02:00
bubnikv
d8be976356 The "controller" tab and the settings of the USB/serial connection was
made configurable. Now one may hide the "controller" tab and the USB/serial
connection configuration from the preferences. This is useful for someone,
who never connects his printer to the computer by a cable.
2016-05-16 23:57:53 +02:00
bubnikv
f767ce816b Optimized and improved rectilinear fill. 2016-04-13 20:45:44 +02:00
Alessandro Ranellucci
32a333f16a Import config bundle automatically if found in application directory 2015-12-07 12:17:06 +01:00
Alessandro Ranellucci
870cb3ccc4 Merge branch 'sender' into sender-dlp 2015-11-16 12:50:41 +01:00
Alessandro Ranellucci
e50bbc0245 Don't crash when no serial ports are available on Windows 2015-11-16 12:50:16 +01:00
Alessandro Ranellucci
6bfa2cfaec Projector for DLP 2015-11-15 21:08:14 +01:00
Alessandro Ranellucci
3cbc35143b More fixes for serial port detection on Windows 2015-11-06 16:33:54 +01:00
Alessandro Ranellucci
5d69e732d8 Fix serial port detection on Windows 2015-11-06 16:25:51 +01:00
Alessandro Ranellucci
4295d65115 Manual control 2015-11-02 20:16:37 +01:00
Alessandro Ranellucci
fc1a7471cf Several improvements to the print job queue 2015-11-02 01:18:05 +01:00
Alessandro Ranellucci
13b7316807 Merge branch 'master' into sender
Conflicts:
	Build.PL
	lib/Slic3r/GUI/MainFrame.pm
2015-05-28 18:05:36 +02:00
Alessandro Ranellucci
0d6376f3e6 Call decode_path() on wxWidgets-supplied datadir. #2710 2015-03-09 15:25:42 +01:00
Alessandro Ranellucci
6185f45815 Hopefully fix all problems with non-ASCII paths on Windows 2015-03-09 15:17:50 +01:00
Alessandro Ranellucci
d2172b4383 Merge branch 'master' into sender 2015-03-06 22:15:43 +01:00
Alessandro Ranellucci
64144d007c Typo in 4083b33807 2015-02-09 11:02:11 +01:00
Alessandro Ranellucci
4083b33807 Bugfix: crash on version check on Linux. #2641 2015-02-09 11:00:44 +01:00
Alessandro Ranellucci
3ae6f2630e Merge branch 'master' into sender
Conflicts:
	Build.PL
2015-02-01 14:07:32 +01:00
Alessandro Ranellucci
8cfd2e33d8 Wrong line included in previous commit 2015-01-19 18:54:35 +01:00
Alessandro Ranellucci
8791f5a493 Cleanup of some method signatures and of XS return types 2015-01-19 18:53:04 +01:00
Alessandro Ranellucci
f2818ddbe0 Live 3D toolpaths preview. 2015-01-18 19:36:47 +01:00
Alessandro Ranellucci
aa5bafb8be Support preset names with Unicode characters. #2527 2015-01-13 23:22:27 +01:00
Alessandro Ranellucci
28d7b0dba6 Write fatal errors to console as well 2015-01-09 14:50:42 +01:00
Alessandro Ranellucci
fb08588007 Renamed PreviewCanvas to 3DScene 2015-01-09 01:30:04 +01:00
Alessandro Ranellucci
0a62d658d9 Removed ObjectPreviewDialog not used anymore 2015-01-09 01:27:35 +01:00
Alessandro Ranellucci
9507fb91f0 Serial ports detection on Win32 2015-01-04 23:53:59 +01:00
Alessandro Ranellucci
9af43bee52 Handle log, temperatures. Move controller to main tabpanel. More things 2015-01-04 23:18:23 +01:00
Alessandro Ranellucci
16939b80e6 Implemented priority queue 2015-01-04 18:17:15 +01:00
Alessandro Ranellucci
2c0d216c1a More work on print controller 2015-01-03 23:25:55 +01:00
Alessandro Ranellucci
c06ce3b58c Initial work for a controller GUI 2014-12-31 19:10:46 +01:00
Alessandro Ranellucci
b468e68c59 Bonjour autodiscovery of the Octoprint instances in local network. #1826 2014-12-28 18:49:52 +01:00
Alessandro Ranellucci
efe7d5f857 Integration with Octoprint. #1826 2014-12-28 01:30:05 +01:00
Alessandro Ranellucci
f7026c41c5 Show button icons with wxWidgets 3.x.x too. #2372 2014-12-08 18:23:37 +01:00
Alessandro Ranellucci
989ec5cf4d Fixes to UTF-8 handling in file paths 2014-11-22 21:55:45 +01:00
Alessandro Ranellucci
da4d6cbabb 3D preview of plater 2014-07-13 12:10:34 +02:00
Alessandro Ranellucci
907de1011f Toolpaths preview 2014-07-03 09:24:19 +02:00
Alessandro Ranellucci
04b67f0cb0 Refactored OptionsGroup class for cleaner OOP model and cleaner event model 2014-07-01 16:42:12 +02:00
Alessandro Ranellucci
4d8ecccc5e Add support for circular bed 2014-06-16 23:36:31 +02:00
Alessandro Ranellucci
ba37a8fb79 Handle legacy configs 2014-06-16 22:56:28 +02:00
Alessandro Ranellucci
4fe2128fc4 Initial work for custom bed shape 2014-06-16 01:49:49 +02:00
Alessandro Ranellucci
3d8c8fa46e Import wxTheApp 2014-06-14 19:59:59 +02:00
Alessandro Ranellucci
ddac2d1570 Merged SkeinPanel into MainFrame 2014-06-14 19:54:18 +02:00
Alessandro Ranellucci
93b9116565 Move wxFrame definition to a new Slic3r::GUI::MainFrame class 2014-06-14 19:11:04 +02:00
Alessandro Ranellucci
de6291d8f2 New Object menu with shortcuts to all plater operations 2014-06-14 18:58:56 +02:00
Alessandro Ranellucci
a35ab2f4ee Added an option for enabling/disabling background processing 2014-06-13 15:54:13 +02:00
Alessandro Ranellucci
a0674714b1 More work for background processing 2014-06-13 14:27:55 +02:00
Alessandro Ranellucci
defe0a4279 Move 2D canvas to a distinct class for better isolation 2014-05-28 12:29:43 +02:00
Alessandro Ranellucci
882a98ed44 Initial work for a GUI for the cut feature 2014-04-25 14:54:08 +02:00
Alessandro Ranellucci
3a49dccf69 Bugfix: version check caused crash 2014-04-22 11:59:01 +02:00
Alessandro Ranellucci
7e3425d433 Bugfix: wizard wasn't run when user supplied an existing empty directory as --datadir 2014-03-25 14:07:03 +01:00
Alessandro Ranellucci
fed8783e30 New commands for exporting/importing full config bundles. Useful for printer vendors. #1365 2014-03-25 14:04:01 +01:00
Alessandro Ranellucci
691db31da0 Some incomplete work for per-region config 2014-02-14 22:26:00 +01:00
Alessandro Ranellucci
7387e60706 More incomplete work 2014-01-22 21:15:19 +01:00
Alessandro Ranellucci
11f065ca5e New object dialog tab with list of materials and volumes 2014-01-08 19:36:41 +01:00
Alessandro Ranellucci
266673213d New option for turning autocentering off. #404 2013-12-18 19:11:20 +01:00
Alessandro Ranellucci
b1ca0f30f2 Version number was not correctly saved 2013-11-18 18:48:06 +01:00
Alessandro Ranellucci
76213fb5b7 Save the last used Slic3r version and display a notice to encourage legacy users to revert their support material settings to the defaults 2013-11-11 22:20:25 +01:00
Alessandro Ranellucci
8d9361280e Bugfix: expert mode was crashing when home path contained non-ASCII
characters on Windows. #1478
2013-11-10 17:06:59 +01:00
Alessandro Ranellucci
ae21a45886 Distinct dialogs for 3D preview and object settings 2013-08-25 18:03:26 +02:00
Alessandro Ranellucci
3d6fb1b05c New feature: ability to override specific settings for individual objects in the plater. #344 2013-08-25 14:37:50 +02:00
Alessandro Ranellucci
bb656ea72c Merge branch 'master' into xs 2013-07-03 10:52:13 +02:00
Alessandro Ranellucci
dcc2b7f4ff Enable PreviewCanvas 2013-07-01 01:51:11 +02:00
Alessandro Ranellucci
1f50d9c7e8 https -> http in manual URL 2013-06-24 20:38:20 +02:00
Alessandro Ranellucci
ecdc2f077b Merge branch 'master' into xs
Conflicts:
	Build.PL
2013-06-24 19:37:07 +02:00
Alessandro Ranellucci
f5cc446853 Menu item for launching the manual 2013-06-24 18:07:33 +02:00
Alessandro Ranellucci
2a2633da0a New automatic built-in STL repair 2013-06-23 21:11:46 +02:00
Alessandro Ranellucci
0ad78eaf55 Return explicit 0 from have_version_check() to avoid wxMenuItem->Enable errors 2013-06-16 16:07:47 +02:00
Alessandro Ranellucci
9ea55497c2 Prevent crash when user deleted object from plater before thumbnail was generated in the other thread. #1207 2013-06-07 13:54:40 +02:00
Alessandro Ranellucci
8c74d2f41e New --autosave option for better toolchain integration. #837 2013-06-02 20:03:22 +02:00
Alessandro Ranellucci
8f5a958948 Rename do_slice() to quick_slice() 2013-05-20 11:02:12 +02:00
Alessandro Ranellucci
5494f4f385 Free @_ before spawning a new thread (known old Perl bug) as an attempt to fix the unref scalars error 2013-05-19 17:34:33 +02:00
Alessandro Ranellucci
ba433822b6 Disable OpenGL code in master branch for now 2013-05-17 15:44:23 +02:00
Alessandro Ranellucci
5c74fd095b Very basic implementation of 3D preview - install Wx::GLCanvas to get it working 2013-05-17 14:14:33 +02:00
Alessandro Ranellucci
fc1a23f5b0 Quick and dirty OpenGL mockup 2013-05-16 12:09:01 +02:00
Alessandro Ranellucci
1aae311148 Fix menus for --no-plater. #1112 2013-05-13 18:30:12 +02:00
Alessandro Ranellucci
dde3e6e870 Disable Net::DBus. #1015 2013-04-29 15:57:07 +02:00
Alessandro Ranellucci
6db8afe36d New option to remember last output directory. #698 2013-04-27 21:07:30 +02:00
Alessandro Ranellucci
f5bda326b8 Version check. #1006 2013-04-27 20:55:43 +02:00
Alessandro Ranellucci
6a0ba97f0e Move ObjectDialog to a separate file 2013-03-10 12:33:10 +01:00
Alessandro Ranellucci
9247b3e9f4 New --no-plater and --gui-mode options. #604 2013-03-09 16:43:09 +01:00