Commit Graph

787 Commits

Author SHA1 Message Date
Enrico Turri
30a3b2179b 3DScene timer and _variable_layer_thickness_action method moved to c++ 2018-05-30 15:18:45 +02:00
Enrico Turri
5a8d1ffdba Prototype for exporting estimated remaining time into gcode for default and silent mode 2018-05-30 12:08:03 +02:00
Enrico Turri
2f773a89df 3DScene set_viewport_from_scene method moved to c++ 2018-05-29 15:36:09 +02:00
Enrico Turri
df14a3c399 3DScene update_volumes_colors_by_extruder method moved to c++ 2018-05-29 15:07:06 +02:00
Enrico Turri
5ee5465f94 3DScene mark_volumes_for_layer_height method moved to c++ 2018-05-29 14:34:45 +02:00
Enrico Turri
363a964ebb 3DScene render method partially moved to c++ 2018-05-29 13:54:34 +02:00
Enrico Turri
db260a669c 3DScene mouse wheel event moved to c++ 2018-05-28 15:23:01 +02:00
Enrico Turri
aacdcd4add 3DScene layers editing mouse containment methods moved to c++ 2018-05-28 14:39:59 +02:00
Enrico Turri
994222c317 3DScene _first_selected_object_id_for_variable_layer_height_editing method moved to c++ 2018-05-28 14:10:02 +02:00
Enrico Turri
951e8528b4 3DScene layers editing parameters moved to c++ 2018-05-28 13:43:29 +02:00
Enrico Turri
a8311bd1bd 3DScene layer_editing_allowed method moved to c++ 2018-05-25 16:28:24 +02:00
Enrico Turri
c51ce63b9b 3DScene layer editing overlay completely moved to c++ 2018-05-25 15:56:14 +02:00
Enrico Turri
455076231b Layers editing shader moved to c++ 2018-05-25 14:05:08 +02:00
Enrico Turri
bdbc86167c 3DScene volume selection methods moved to c++ 2018-05-25 09:03:55 +02:00
Enrico Turri
70664122af 3DScene layer height profile rendering moved to c++ 2018-05-24 15:17:01 +02:00
Enrico Turri
f31c55ceed 3DScene layer editing overlay textures rendering moved to c++ 2018-05-24 13:46:17 +02:00
Enrico Turri
751b41b94b 3DScene picking pass moved to c++ 2018-05-23 15:35:11 +02:00
Enrico Turri
90c50b281a 3DScene mouse variables moved to c++ 2018-05-23 13:56:54 +02:00
Enrico Turri
91b9b8aebf Fixed wrong layer height texture updates when using multiple objects 2018-05-23 12:49:56 +02:00
Enrico Turri
b36243ba10 Objects rendering moved to c++ 2018-05-23 11:14:49 +02:00
Enrico Turri
b4beb7aae9 3DScene plain shader moved to c++ 2018-05-23 09:57:44 +02:00
Enrico Turri
85b6784dcb Merge with master 2018-05-22 15:03:40 +02:00
bubnikv
306d77559e Merge remote-tracking branch 'remotes/origin/scene_manipulators' 2018-05-22 14:32:07 +02:00
Enrico Turri
451c58d58f 3DScene's enable_picking variable moved to c++ 2018-05-22 09:02:42 +02:00
Enrico Turri
59af3fb866 Merge branch 'master' of https://github.com/prusa3d/Slic3r into opengl_to_cpp 2018-05-22 08:33:23 +02:00
Enrico Turri
369d027544 Merge branch 'master' of https://github.com/prusa3d/Slic3r into scene_manipulators 2018-05-22 08:30:30 +02:00
bubnikv
7b4aeef40c Moved the "Flash firmware" menu to "Configuration",
removed the "Check for updates" from the "Configuration" menu,
added an "Open file explorer at the datadir" item to the Help menu.
2018-05-21 21:04:03 +02:00
bubnikv
33f21422e6 Added friendly names to serial ports, added automatic selection of Prusa's printers in the firmware updater dialog 2018-05-21 18:58:22 +02:00
Vojtech Kral
af360d7097 Firmware updater GUI 2018-05-21 18:58:22 +02:00
Enrico Turri
ae53c7cb2e Volumes rendering moved to c++ 2018-05-21 15:57:03 +02:00
Enrico Turri
0f035d0bae Background rendering moved to c++ 2018-05-21 15:24:52 +02:00
Enrico Turri
bf7b9eb3e7 Legend texture moved to c++ 2018-05-21 14:57:43 +02:00
Enrico Turri
3fdc5e20a7 Warning texture moved to c++ 2018-05-21 14:40:09 +02:00
Enrico Turri
7cff6ef6db Shaders loaded from files 2018-05-21 13:08:02 +02:00
Enrico Turri
a7fc57a176 3DScene reset_object method moved to c++ 2018-05-18 14:08:59 +02:00
Enrico Turri
5fc8fdee11 3DScene axes moved to c++ 2018-05-18 13:02:47 +02:00
Enrico Turri
1e0a8de5b1 3DScene cutting plane moved to c++ 2018-05-18 11:05:48 +02:00
Enrico Turri
0584990b65 Fixed z layers indices under 3D preview sliders 2018-05-18 10:14:47 +02:00
Enrico Turri
2b4829a4b9 3DScene bed variables moved to c++ 2018-05-15 15:38:25 +02:00
Enrico Turri
f0d1888ca9 3DScene select_view() function moved to c++ 2018-05-15 11:30:11 +02:00
Enrico Turri
75f1f832aa 3DScene bed origin moved to c++ 2018-05-15 11:07:32 +02:00
Enrico Turri
7519e34507 3DScene zoom functions moved to c++ 2018-05-15 10:32:38 +02:00
Enrico Turri
f4303ebdb8 1st attempt of perl callback from c++ for 3DScene 2018-05-15 09:50:01 +02:00
Enrico Turri
0c1655b884 3DScene::Resize() method moved to c++ 2018-05-14 14:14:19 +02:00
Enrico Turri
1fd59144c7 Camera data moved to c++ - WIP 2018-05-14 11:31:58 +02:00
Enrico Turri
5024fc4be7 OpenGL to c++ 1st installment - WIP 2018-05-09 10:47:04 +02:00
Enrico Turri
bd4061c3b0 Merge with master branch 2018-05-09 10:16:28 +02:00
Enrico Turri
8eb9ddc2eb Max count of auto assigned extruders when splitting object set as dependent of current printer 2018-05-07 16:13:58 +02:00
Enrico Turri
81636abaa9 Merge branch 'master' of https://github.com/prusa3d/Slic3r into scene_manipulators 2018-05-02 14:45:42 +02:00
Vojtech Kral
5624b8afd2 Add a new error dialog 2018-04-30 14:34:47 +02:00
Vojtech Kral
62d67d35ec Merge branch 'profile_changes_reset' into updating 2018-04-24 18:15:23 +02:00
Vojtech Kral
a50bde4267 Merge branch 'master' into updating 2018-04-24 18:11:34 +02:00
Vojtech Kral
fea5603409 PresetUpdater: Bundle incompatibility / Slic3r downgrade scnario 2018-04-24 18:06:42 +02:00
Enrico Turri
71d9500b2e More robust fix for 3D view and GUI buttons not in synch when object's size is almost identical to print volume's size 2018-04-24 09:00:33 +02:00
YuSanka
b8cb936973 Added effective update of ComboBoxes on Plater 2018-04-20 17:32:08 +02:00
bubnikv
8ab62d702c Fixed memory leak of TabIface.
Added documentation of the XS interface on how the Ref<> and Clone<>
wrappers work.
2018-04-18 18:06:07 +02:00
Vojtech Kral
df03b8e4e8 PresetUpdater: Notify about Slic3r updates 2018-04-17 16:59:53 +02:00
Vojtech Kral
214ad2925b Merge branch 'master' into updating 2018-04-16 17:32:58 +02:00
Vojtech Kral
7710b541da Merge branch 'config_snapshots' into updating 2018-04-16 17:00:31 +02:00
Vojtech Kral
c733e3151b Updating: Detect legacy datadir, remove conflicting presets 2018-04-16 16:55:24 +02:00
bubnikv
913cdef297 Merge remote-tracking branch 'origin/scene_manipulators' 2018-04-13 16:54:22 +02:00
bubnikv
c5af8bfe78 Merged with Vojtech's branch 2018-04-13 16:19:27 +02:00
Vojtech Kral
7dbb2ed6a3 Configuration updates downloading 2018-04-13 15:24:55 +02:00
bubnikv
82890ec815 Removed some obsolete Perl binding.
Added Version Index "version" method.
Implemented automatic selection of default_print_profile and
default_filament_profile, when the print / filament profiles are
not compatible with the selected printer profile.
Fixed selection of a printer profile, if the currently selected
printer profile becomes invisible.
2018-04-13 14:49:33 +02:00
Vojtech Kral
b49b59cbb2 Configuration update application at startup 2018-04-13 11:04:39 +02:00
Vojtech Kral
12b3132b1a Perform init_vendors at startup 2018-04-11 18:05:21 +02:00
Vojtech Kral
31ea03feb0 ConfigWizard: Make bundle installation more intelligent, fixes 2018-04-11 18:05:12 +02:00
bubnikv
da2878958b Wizard runs from the new Config menu,
snapshots could be rolled back / forward.
2018-04-11 12:21:15 +02:00
bubnikv
4275b15dcd Merge remote-tracking branch 'origin/updating' into config_snapshots 2018-04-10 16:46:15 +02:00
bubnikv
32c4cddb91 Ported the AboutDialog to C++, thanks @alexrj for the work.
New "configuration" menu over the snapshots, user preferences etc.
2018-04-09 17:03:37 +02:00
Vojtech Kral
90a8ef8e9f Cleanup 2018-04-06 15:17:02 +02:00
Vojtech Kral
9dcec6662e ConfigWizard: Other vendor sample data, minor fixes 2018-04-06 13:24:02 +02:00
Vojtech Kral
e53949f2c8 Apply printer model / variant preferences when loading presets 2018-04-06 13:24:02 +02:00
Vojtech Kral
57e47a3296 AppConfig: Support for vendor / model / variant enable state 2018-04-06 13:24:02 +02:00
Vojtech Kral
3fcf194e39 ConfigWizard: Basic structure / WIP 2018-04-06 13:23:49 +02:00
Lukas Matena
7253028d79 Merge branch 'master' into wipe_tower_improvements 2018-04-06 12:33:12 +02:00
Enrico Turri
b4efff1d95 Merge branch 'master' of https://github.com/prusa3d/Slic3r into scene_manipulators 2018-04-06 08:40:38 +02:00
bubnikv
e37cbdfcfc Merge remote-tracking branch 'remotes/origin/profile_changes_reset' 2018-04-05 19:53:53 +02:00
Enrico Turri
76beaa6421 Objects colored by extruder color 2018-04-05 12:52:29 +02:00
Lukas Matena
eb9917536c Merge branch 'master' into wipe_tower_improvements 2018-04-04 13:06:46 +02:00
Vojtech Kral
b0840065ed Octoprint (#804)
* Octoprint progress dialog

* Fix curl version on Windows
2018-04-04 11:18:22 +02:00
YuSanka
08a8fe84a4 Merge remote-tracking branch 'origin/master' into profile_changes_reset 2018-03-22 14:18:48 +01:00
Enrico Turri
4b8bd48663 AMF and 3MF export - Export of print config customizable by user in the select file dialog 2018-03-22 13:49:48 +01:00
Lukas Matena
e30405d672 Merge branch 'master' into wipe_tower_improvements 2018-03-21 11:33:37 +01:00
Chow Loong Jin
a32281c268 Fix format-security violations (#802)
croak() expects printf-style format strings. Calling croak(e.what()) directly
causes compilations to fail with -Werror=format-security
2018-03-21 08:38:33 +01:00
bubnikv
0bd9918643 Implements SPE-159 "substitute accented letters with non-accented ones" 2018-03-16 18:20:47 +01:00
Lukas Matena
3d6f6530c0 Merge branch 'master' into wipe_tower_improvements 2018-03-16 14:06:23 +01:00
Vojtech Kral
c88d2780ce Octoprint (#796)
* Octoprint: GUI for CA file, improvements

* Octoprint: Add GUI for Bonjour lookup, bugfixes

* Octoprint: Bonjour browser: Cleanup Perl interaction

* Octoprint: Bonjour: Perform several broadcast, UI fixes

* Octoprint: Add files to localization list

* Http: Disable CA File setting on SSL backends that don't support it
2018-03-15 18:06:26 +01:00
Lukas Matena
e864238609 Merge branch 'project_specific_config' into wipe_tower_improvements 2018-03-15 14:05:45 +01:00
YuSanka
d97a8f5740 Merge remote-tracking branch 'origin/master' into profile_changes_reset 2018-03-15 10:24:54 +01:00
YuSanka
a41e55a773 Merge remote-tracking branch 'origin/profile_inheritance' into profile_changes_reset 2018-03-14 16:34:51 +01:00
bubnikv
ab654f6319 Merge branch 'scene_manipulators' 2018-03-14 16:15:26 +01:00
bubnikv
e680658cf5 Fixed selection of sensible active print / filament / printer profile
after the initial wizard run.
2018-03-14 13:29:50 +01:00
bubnikv
5f28b89ae0 Added a project specific config to the PresetBundle class.
This project specific config will be stored into the config.ini,
into .3mf and .amf and .gcode,
and recover it from the same files.
2018-03-14 11:54:11 +01:00
YuSanka
e8adbd7303 First prototype of adding of UI for frequently changed parameters 2018-03-09 18:34:30 +01:00
YuSanka
d5e136a6d5 Fixed bug with updating of the value of "Wipe while retracting" CheckBox. 2018-03-09 17:17:51 +01:00
bubnikv
f55becd43c Introduced the system profiles.
The Config Wizard now just copies the Vendor's Config Bundle
into user_dir/vendor/ directory and Slic3r uses the configs
from the bundles found in user_dir/vendor directly.
2018-03-09 16:37:33 +01:00
Lukas Matena
1c6fa6660e Merge branch 'master' into wipe_tower_improvements 2018-03-09 15:10:15 +01:00
Enrico Turri
7a2df9f54f Out of bed detection - Volumes' layer texture rendering moved to cpp 2018-03-09 14:33:44 +01:00
Enrico Turri
bdd2d725c8 Out of bed detection - 1st installment 2018-03-09 10:40:42 +01:00
Vojtech Kral
7cfc5204c8 WIP: OctoPrint 2018-03-05 18:33:15 +01:00
bubnikv
69fc99edbb Merge remote-tracking branch 'remotes/origin/gui_translate_to_cpp' 2018-02-23 15:32:13 +01:00
YuSanka
3d805a0f43 PreferencesDialog moved to C++ part 2018-02-22 11:12:29 +01:00
Enrico Turri
81eff20ad1 GCode Preview - Added Custom extrusion role + extended layers range for GCode preview 2018-02-22 08:59:47 +01:00
Lukas Matena
de92f45eaf Merge with master 2018-02-21 13:22:51 +01:00
YuSanka
6ad38f80fb Language configuration is saved now in AppConfig instead of wxConfig. 2018-02-20 08:58:46 +01:00
Enrico Turri
7375f6a6f5 Fixed camera shifting after generating gcode 2018-02-19 11:28:56 +01:00
bubnikv
39100068c1 Removed the Perl Tab & BedDialog as they were replaced by their C++
counterparts.
2018-02-15 18:16:19 +01:00
bubnikv
f1840a52db Merged the C++ port of the GUI Tabs / OptionGroup / Option classes
by @YuSanka, thanks @lordofhyphens for the initial port
of the OptionGroup / Option.
2018-02-15 18:13:37 +01:00
bubnikv
b695089bc4 Merge remote-tracking branch 'remotes/origin/3mf_io' 2018-02-15 17:02:47 +01:00
bubnikv
f9cdda7bfd Delayed loading of the opengl texture for the G-code preview legend,
as the opengl context may not be ready on some platforms (Linux)
at the time the window gets its focus for the first time.

Changed the G-code preview invalidation to trigger when the print
gets invalidated. At that time the 3D path preview switches to the old
preview, if there is anything valid left.
2018-02-15 14:37:53 +01:00
bubnikv
ff3ae40aeb Fixed compilation issues caused by the previous commits 2018-02-14 21:57:46 +01:00
bubnikv
b1f5e7e8fa Removed the GCodePreviewData from the Print class, it does not belong here,
as the GCode is generated outside of the Print class.
Exported the GCodePreviewData as GCode::PreviewData to Perl.
When exporting the G-code with a command line Slic3r,
the GCodeAnalyzer is now supressed for performance reasons.
Removed obsolete Perl module Slic3r::GUI::Plater::3DToolpaths.
2018-02-14 20:35:59 +01:00
Enrico Turri
f5f27859e0 AMF I/O - Embedded config data + zip formatting 2018-02-14 14:30:03 +01:00
Enrico Turri
8885f5e344 3mf import/export of config data 2018-02-13 15:19:55 +01:00
bubnikv
030fc9c320 Merge branch 'master' into gcode_preview 2018-02-13 14:55:54 +01:00
Enrico Turri
f4522cd2fc GCode Preview - Customizable extrusion role colors by editing 3DPreview.pm 2018-02-13 13:16:23 +01:00
bubnikv
47d904a628 Changed the Slic3r coordinate type from long to int32 to match
the point type on Windows / Linux / OSX
to achieve the same behavior on all the 32 / 64bit systems.
(Windows always treats the long as 32bit int, while Linux treats
long as a 64bit int).
2018-02-12 18:16:10 +01:00
Enrico Turri
3f006dc11a GCode Preview - Added objects and wipe tower transparent shells 2018-02-12 09:04:05 +01: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
abcfd5bad9 Implemented Application recreate after changing of language.
* Implementation of C++ to Perl callbacks from menu item Localization.
* Added global variable g_tabs_list to control existing Tabs.
2018-02-09 11:04:34 +01:00
Enrico Turri
33553e1c50 3mf Exporter - 1st installment 2018-02-08 13:26:50 +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
Enrico Turri
0d6a013658 GCode Preview - Coloring by tool 2018-02-07 09:07:37 +01:00
YuSanka
407f50a66f Deleted on more EVT_NOTEBOOK_PAGE_CHANGE hangling of TabPanel 2018-02-06 14:53:38 +01:00
Enrico Turri
6ff9021e04 GCode Preview - Legend texture shown only when gcode is available 2018-02-06 12:43:25 +01:00
Enrico Turri
593d794655 Merge branch 'master' of https://github.com/prusa3d/Slic3r into gcode_preview 2018-02-05 13:28:10 +01:00
YuSanka
2d3c2dc595 Fix of #696 in cpp's Tabs,
using changes from commit 36bbd6a
2018-02-05 11:03:13 +01:00
Enrico Turri
787a5f1715 GCode Preview - New Layout 2018-02-02 12:38:35 +01:00
bubnikv
36bbd6a73f Fix of https://github.com/prusa3d/Slic3r/issues/696 2018-02-02 11:32:32 +01:00
YuSanka
4056978731 Implementation of C++ to Perl callbacks from Browse & Test buttons. 2018-01-26 01:44:34 +01:00
YuSanka
4d234e90ae Some modifications:
- Added no_controller to create_preset_tab().
- Small changes in Tab"Setting" constructor.
2018-01-25 21:45:39 +01:00
YuSanka
f0b035059a Merge with bibnikv.
Added some functions to TabIface.
Added BedShapeDialog & Bed2D classes.
Added new_scale to Polygon.
In class Field: Point renamed to PointCtrl and added set_value for PointCtrl, extended get_value for Choice.
2018-01-25 13:46:04 +01:00
bubnikv
91c7bc43d3 Added new files missing from the previous commit. 2018-01-23 11:37:45 +01:00
bubnikv
09c9f6bdc3 Added TabIface C++ wrapper for GUI::Tab C++ class,
exported the TabIface to Perl.
2018-01-23 11:37:19 +01:00
bubnikv
1d10a2293a Example implementation of C++ to Perl callbacks using wxWidgets command events. 2018-01-21 23:35:00 +01:00
Enrico Turri
a417cf955d GCode Preview - Code cleanup 2018-01-17 10:39:05 +01:00
Enrico Turri
c63e6b74fa GCode Preview - Added legend texture 2018-01-16 14:59:06 +01:00
YuSanka
8e0cd35c23 Merge remote-tracking branch 'origin/master' into gui_translate_to_cpp 2018-01-14 21:58:21 +01:00
Enrico Turri
6a744238b9 Added preview of retractions and unretractions 2018-01-08 16:05:01 +01:00
Enrico Turri
0f4bec8af0 gcode preview - first installment - wip 2018-01-08 13:44:10 +01:00
bubnikv
696d420dc8 New feature: Recommended object thin wall thickness hint. 2018-01-04 15:38:06 +01:00
YuSanka
f8a48f5c13 Start adding functions to work with presets 2018-01-03 10:12:42 +01:00
bubnikv
02256e900f Merged the branch time_estimate 2018-01-02 10:57:30 +01:00
YuSanka
61247fe8d3 Filling the Filament's and Printer's Tabs. Finished. It's need to adding functions to work with presets 2017-12-26 18:12:05 +01:00
bubnikv
48ba7e5f73 Removed dependency on Perl Encode::encode_utf8. 2017-12-21 20:11:19 +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
Lukas Matena
4583d62edd Merge branch 'master' into wipe_tower_improvements 2017-12-21 13:47:33 +01:00
bubnikv
558a0753c1 Improved loading of the config wizard results.
Fixed some updates of the "compatible with printer" flags
at the print and filament presets.
2017-12-20 11:28:16 +01:00
bubnikv
0b6bd3cbde Implemented a "Reset user profile" on the first page of the configuration
wizard if the wizard is opened from the menu. This allows one
to reinstall the bundled printer profile cleanly.

Fixed a bug when loading a config bundle as a config: The config bundle
should not be unpacked into the user profile directory.
2017-12-19 19:51:22 +01:00