Commit graph

34 commits

Author SHA1 Message Date
bubnikv
0558b53493 WIP: Moved sources int src/, separated most of the source code from Perl.
The XS was left only for the unit / integration tests, and it links
libslic3r only. No wxWidgets are allowed to be used from Perl starting
from now.
2018-09-19 11:02:24 +02:00
bubnikv
3ddaccb641 Replaced CONFESS with throw std::exception in libslic3r, so now
libslic3r should be compilable without Perl.
2018-09-18 10:09:58 +02:00
bubnikv
fe3b92870f Merged with dev 2018-09-17 15:12:13 +02:00
bubnikv
9d9e4a0f7b WIP: Background processing. 2018-09-14 09:28:00 +02:00
Enrico Turri
e1deb03d3c Added perl callback for three doubles 2018-09-07 14:21:04 +02:00
Enrico Turri
1c6d3c9c69 Added xml escape characters detection when exporting object and volumes names to 3mf files 2018-07-23 14:39:50 +02:00
Enrico Turri
ac7d21b50a Geometry info updated while using gizmos 2018-06-22 11:19:38 +02:00
Enrico Turri
a3949b9f01 Object updated by scale gizmo 2018-06-18 15:07:17 +02:00
Enrico Turri
0faaef76e8 C++ code cleanup 2018-06-12 12:18:16 +02:00
Enrico Turri
bf2fd54578 reload_scene method of 3D class moved to c++ 2018-06-08 09:40:00 +02:00
Enrico Turri
a8500d6bae class 3D callbacks moved to c++ 2018-06-07 11:18:28 +02:00
Enrico Turri
6bf009edee 3DScene mouse event handler partially moved to c++ - part 2 2018-05-31 16:04:59 +02:00
Enrico Turri
363a964ebb 3DScene render method partially moved to c++ 2018-05-29 13:54:34 +02:00
bubnikv
19977edae2 Removed the "Broken croak" support, which was useful on broken
64bit Strawberry perl only. We don't use Strawberry perl anymore,
so this has been removed for clarity.

Added a PerlCallback wrapper to call a Perl subroutine from a C++ code.
2018-05-03 21:45:43 +02:00
Vojtech Kral
9b5480b7ba PresetUpdater: Use PID in cache tmp filenames 2018-04-20 11:05:00 +02:00
bubnikv
4275b15dcd Merge remote-tracking branch 'origin/updating' into config_snapshots 2018-04-10 16:46:15 +02:00
bubnikv
670061ac33 Initial implementation of configuration snapshotting. 2018-04-06 16:49:33 +02:00
Vojtech Kral
3fcf194e39 ConfigWizard: Basic structure / WIP 2018-04-06 13:23:49 +02:00
YuSanka
badeb2f64c Save language preset.
* Added global variable g_local_dir to get "localization" directory.
* Chage/Set language works correctly now.
* Probably, fixed work on Linux
2018-02-12 08:57:32 +01:00
YuSanka
28115a847c First steps for implementing localization
* Created mo-files for Ukrainian and English languages
* For this moment it works only on BedShapeDialog.
2018-02-07 17:13:52 +01:00
bubnikv
f5160b7a72 Fixed "Slic3r crashes when sending STLs with special characters to the printer"
https://github.com/prusa3d/Slic3r/issues/597
The "Send to OctoPrint" function will now send the file name encoded
in UTF-8, so the file name will not get mangled.

The C++ Slic3r::encode_path() function was returning a string to Perl,
which was marked as UTF-8. This has been fixed, now encode_path() returns
a plain Perl string.

Added path_to_filename, path_to_stem, path_to_extension, path_to_parent_path
Perl wrappers to boost::filesystem::path splitting functionality
to be able to split UTF-8 encoded files on Windows correctly.
2017-12-21 16:56:33 +01:00
bubnikv
679aa2822c Moved the Slic3rPE/print,filament,printer folders to
Slic3rPE/presets/print,filament,printer
to separate the presets from further data stored into the Slic3rPE
directory.
2017-12-10 22:11:00 +01:00
bubnikv
657f2734f1 Extended the Config Wizard to offer a selection of config bundles
bundled with Slic3r installation, and install it into user's Slic3r profile.
These bundled config bundles will be contained in the Slic3r source
tree under Slic3r/resources/profiles.

Breaking change! The Slic3r user directory has been renamed to Slic3rPE
for the Prusa Edition. Also it is likely, that the Slic3rPE directory
will be reorganized before the final 1.38 release to reserve space
for temporary profiles downloaded from the Internet.
2017-12-10 13:19:44 +01:00
bubnikv
e8b6d92d4d Looks like the reworked C++ preferences start to work again. 2017-11-02 16:21:34 +01:00
bubnikv
95c284c764 Next step of Perl to C++ configuration layer conversion. 2017-11-01 19:30:05 +01:00
bubnikv
1fee3633a0 New C++ class AppConfig for maintaining the config.ini
New helper function for generating a unified "generated by slic3r" header.
2017-10-30 18:15:41 +01:00
bubnikv
5a99e694ce Another step towards the C++ presets. 2017-10-26 17:17:39 +02:00
bubnikv
ee645007f2 Another step towards C++ presets. 2017-10-25 12:53:31 +02:00
bubnikv
d9d6d996e9 Utility functions to pass wxWidgets pointers from Perl to C++ code.
C++ var_dir / set_var_dir() interface to access the UI resources
from the C++ code.
2017-10-17 20:00:15 +02:00
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
4bbb1f4b63 Rewrote next_highest_power_of_2 as a template as OSX had issues with
the previous implementation.
2017-03-28 18:02:26 +02:00
bubnikv
3ebf0ce7fd Improved memory allocation efficiency of the 3D path preview generator. 2017-03-28 17:09:57 +02:00
bubnikv
4d00aa1800 More tracing of the slicing process. 2017-03-03 12:53:05 +01:00
bubnikv
e02755632e new Utils.hpp 2016-11-24 14:05:06 +01:00