tamasmeszaros
4328ecc287
Merge remote-tracking branch 'origin/master' into feature_slice_to_png
2018-06-18 12:17:19 +02:00
Enrico Turri
52a7d7ed09
Partial perl code cleanup
2018-06-14 16:09:36 +02:00
YuSanka
9504780ef4
Buttons "Add Part" and "Add Modifier" (in the Object Settings) works now
2018-06-14 15:33:42 +02:00
Enrico Turri
b2cf576bf3
1st installment of gizmos
2018-06-13 09:12:16 +02:00
YuSanka
f5ef672815
Prepared callback from c++ to Perl to inform about a change of object settings
2018-06-12 19:15:03 +02:00
Enrico Turri
af3d07bb05
Attempt to workaround bug in wxWidgets IsShownOnScreen() method
2018-06-12 09:18:25 +02:00
Enrico Turri
44220530cb
Use a single gl context created in c++
2018-06-11 15:49:04 +02:00
Enrico Turri
085110c4d9
Removed 3DScene volumes from perl
2018-06-11 13:48:02 +02:00
Enrico Turri
96d9879d72
class 3D on_select callback moved to c++
2018-06-08 11:37:07 +02:00
YuSanka
4215b2b373
Merge remote-tracking branch 'origin/master' into new_main_page_ui
2018-06-08 10:10:10 +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
ff86407840
Key down and char event handlers of class 3D moved to c++
2018-06-07 09:22:19 +02:00
YuSanka
9e0d2793cb
CallBack from C++ to Perl to manipulations with object list
2018-06-07 00:55:09 +02:00
Enrico Turri
e79037c44d
3DScene member variables moved to c++
2018-06-06 12:36:52 +02:00
Enrico Turri
c6e44509e0
3DScene load_object method moved to c++
2018-06-06 10:16:58 +02:00
YuSanka
5f82d01f19
Porting object list manipulation from Perl to c++:
...
* Set count and scale to the objects on c++ side
* Select/unselect object
2018-06-05 14:35:38 +02:00
Enrico Turri
a8254e0053
Generation of preview paths moved to c++
2018-06-05 14:09:36 +02:00
Enrico Turri
5392008916
Generation of gcode paths moved to c++
2018-06-05 10:56:55 +02:00
bubnikv
d05d3cb652
Initial working implementation of the "Fix by Netfabb" function.
2018-06-04 21:22:42 +02:00
YuSanka
04dc50cec4
Add, Delete and DeleteAll are working for new list now
2018-06-04 15:59:55 +02:00
Enrico Turri
d74b85f3fe
Another set of 3DScene methods moved to c++
2018-06-04 15:42:34 +02:00
Enrico Turri
af8e869880
3rd attempt to fix opengl initialization on linux
2018-06-04 14:28:59 +02:00
Enrico Turri
ac47ba5864
1st attempt to fix opengl initialization on linux
2018-06-04 13:15:28 +02:00
Enrico Turri
8911cf6051
OpenGL info moved to c++
2018-06-04 10:14:09 +02:00
Enrico Turri
8dc3a73571
Merge branch 'master' of https://github.com/prusa3d/Slic3r into time_estimate
2018-06-04 09:29:16 +02:00
Enrico Turri
ac3408a4ab
Merge branch 'master' of https://github.com/prusa3d/Slic3r into scene_manipulators
2018-06-04 09:29:07 +02:00
Enrico Turri
7d56b38e40
Merge branch 'master' of https://github.com/prusa3d/Slic3r into opengl_to_cpp
2018-06-04 09:28:55 +02:00
Vojtech Kral
4df0b94b79
Beta bugfixes ( #931 )
...
* Fix: Function signature in avrdude
* Fix: Remove mockup vendor bundles
* Fix: Make ConfigWizard error handling more friendly
* Fix: Opening the datadir in AppImage-based Slic3r
2018-06-04 09:07:29 +02:00
Enrico Turri
364134515b
Refactoring and cleanup
2018-06-01 15:54:41 +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
276533e236
3DScene mouse event handler partially moved to c++
2018-05-31 13:51:50 +02:00
YuSanka
c857b68fbe
Functions "Add/Delete" objects to/from list works correct now
2018-05-31 08:43:10 +02:00
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
YuSanka
d93a8aec3d
New concept of the main IU.
...
* only 2 mode - Regular & Expert
* "Export Gcode" moved to bottom of the window (analogue to the PrusaControll)
* Experiments with layout of collapsible_pane [! not successful]
2018-05-27 22:12:01 +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
tamasmeszaros
a7298d9d89
Merge with latest master
2018-05-23 12:27:07 +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
YuSanka
83cec1a640
Merge remote-tracking branch 'origin/master' into new_main_page_ui
2018-05-23 08:30:27 +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
YuSanka
2a8391dfbf
Merge remote-tracking branch 'origin/master' into new_main_page_ui
2018-05-22 09:05:34 +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
YuSanka
622c613b41
Update of the view mode works correctly
2018-05-21 14:49:31 +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
YuSanka
876cf9aa8b
Show/hide warning icon according to the view mode
2018-05-18 11:39:49 +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
YuSanka
4e47f4973c
Updating of the right column according selected view mode
2018-05-17 16:03:18 +02:00
YuSanka
d310668462
Added Regular view mode to the menu.
...
Right column objects send fron Perl to C++
2018-05-17 10:46:32 +02:00
tamasmeszaros
d9ff63c022
Basic svg export ported from perl to the point where actual svg is assembled. Empty PNG files are genereted for each sliced layer.
2018-05-15 18:01: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
bubnikv
33e1108f65
Background processing in C++, WIP.
2018-03-28 17:05:31 +02:00
bubnikv
5063c15442
Fixed automatic tests.
2018-03-23 16:00:00 +01:00
bubnikv
e931f75010
Work in progress: Good bye, Perl Threads!
2018-03-23 11:41:20 +01: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
bubnikv
6b81f43206
First implementation of the "compatible_printers_condition"
...
for the print and filament profiles.
Added documentation for building the boost library for Slic3r on Linux.
2017-12-18 15:07:38 +01:00
bubnikv
bb61de8379
Fixed a regression error: The "current_extruder" identifier was not set
...
at the placeholder parser.
Implemented a new PlaceholderParser::evaluate_boolean_expression()
functionality to evaluate just a boolean expression using the full
expressive power of the macro processing syntax. This function
will now be used for deciding, which print or filament preset
is compatible with which printer preset.
2017-12-18 12:14:09 +01:00
Enrico Turri
0fe855cd6d
Time estimate shown in GUI as formatted string / Write to file made by class GCode's private methods
2017-12-14 09:18:28 +01:00
bubnikv
21b4e62e6e
Fixed handling of print and filament presets incompatible
...
with the newly selected print profile,
fixed loading of print and filament tab pages after the print or filament
preset has been changed to be compatible with a newly selected printer.
2017-12-13 14:00:14 +01:00
bubnikv
61e6f23ed2
Fix of
...
"Multimaterial printer switches filament at the wrong time during a print"
https://github.com/prusa3d/Slic3r/issues/607
There was a single layer between the raft top and the object first layer
missing on the wipe tower, and after this missing layer all the tool
changes were shifted by one layer, meaning two color print had the colors
switched.
2017-12-11 17:19:55 +01:00
Enrico Turri
50a45949d1
merge with master
2017-12-11 12:01:30 +01:00
Enrico Turri
bea9628be0
time estimation shown in GUI after gcode export
2017-12-11 11:11:54 +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
8746f84fa2
Improved error reporting of the PlaceholderParser.
...
The PlaceholderParser is currently used by the GCode.cpp
and by Printer.cpp to generate a new name for the exported G-code or SVG file.
The PlaceholderParser::process() will throw a runtime_error with
a comprehensive error message.
The G-code export will include these error messages into the G-code text
with !!!!!! separators, and the GUI will inform the user, that the G-code
export failed.
2017-12-05 15:54:24 +01:00
bubnikv
8af329e660
Added Perl to C++ interfaces for creating the preset editor pages
...
from C++ and to add debugging menus from C++. These lightweigth
interfaces should help new team members to hack the UI without
a Perl knowledge.
2017-12-04 10:48:40 +01:00
bubnikv
ca0626b168
Fixed regression bugs regarding print validation,
...
fixed crashes when loading a config.ini with "compatible_printers"
disabled export of "compatible_printers" into gcode and config.ini
Enabled compatibility of printing multiple objects with support / no support
with a wipe tower.
2017-12-01 18:55:57 +01:00
Lukas Matena
a733df8f37
Wipe tower rotation - preview box
2017-11-30 14:43:47 +01:00
bubnikv
3c0cd3cbc8
Improve error handling of loading Slic3r profiles.
2017-11-28 10:08:01 +01:00
bubnikv
47f193fe2d
The PlaceholderParser has been rewritten to use
...
a real boost::spirit::qi parser, accessing the DynamicConfig repository
directly. This is a first step towards a full fledged expression
interpreter.
2017-11-17 11:15:46 +01:00
bubnikv
bfce6dba9b
Integrated the "compatible printers" idea by @alexrj with Vojtech's twist:
...
The incompatible presets are hidden in the tabs if show_incompatible_presets
is false. If show_incompatible_presets is true, there is a button to
show / hide the incompatible presets from the tab selector.
2017-11-10 17:27:05 +01:00
bubnikv
b23b9ea1d2
Implemented volumetric flow rate hints,
...
removed some C++11 conditioned compilation. Slic3r now requires C++11.
2017-11-09 15:10:20 +01:00
bubnikv
9a0100d6de
Initial definition of PresetHints C++ class and Perl binding, ported the cooling logic hints to C++.
...
Removed Perl Flow::new_from_spacing bindings.
Some Fill C++11 beautification.
Fix of a support_material_1st_layer_flow, brim_flow and skirt_flow logic to use the extrusion_width if both first_layer_extrusion_width and support_material_extrusion_width are undefined.
Documented the extrusion width logic in the config tooltips, including the default values.
2017-11-09 10:48:06 +01:00
bubnikv
b11d9708ed
Updated Controller after the presets C++ port.
2017-11-02 21:51:06 +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
d564fc95df
Split Preset.cpp,hpp to Preset.cpp,hpp and PresetBundle.cpp,hpp
2017-10-30 18:41:50 +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
21633bc0ba
throw std::invalid_argument instead of std::exception
2017-10-27 21:28:39 +02:00
bubnikv
2455aee97c
Further reduction of Perl Config.pm methods.
2017-10-27 18:52:35 +02:00
bubnikv
3bc79e80d5
Fixed configuration & validate C++ ports.
2017-10-27 16:11:06 +02: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
b9d57483d8
perglue.cpp - use static_cast instead of dynamic_cast if possible,
...
use switch instead of plenty of ifs,
export clone<DynamicPrintConfig> to Perl XS.
2017-10-17 19:19:41 +02:00
bubnikv
746afbd790
Yet another compilation fix?
2017-10-17 18:49:07 +02:00
bubnikv
9a7d1bb566
Another compilation fix.
2017-10-17 18:41:54 +02:00
bubnikv
3731820c48
Optimization of the configuration layer:
...
The values of StaticPrintConfig derived objects were searched by a name
walking through a huge chained if.
Now they are being mapped with a std::map.
Also initialization of StaticPrintConfig classes from their ConfigOptionDef
defaults is done by maintaining a single global definition of each
StaticPrintConfig derived class, and a new instance is initialized
from this static copy.
Also the ConfigOption instances are casted using static_cast
wherever possible, and their types are verified by a virtual type() method.
This approach avoids insiginificant performance penalty of a dynamic_cast.
Also the compare and clone methods were added to ConfigOption,
and the cloning & compare work on binary values, not by serialization.
2017-10-17 16:01:18 +02:00
bubnikv
84d4bf8fdb
Load presets into the new C++ class.
2017-10-02 17:35:00 +02:00
bubnikv
b1e3b0cdf9
Further fixes of the previous commit.
2017-09-20 10:16:00 +02:00
bubnikv
473233019c
Initial partial implementation of presets in C++.
2017-09-19 13:55:48 +02:00
bubnikv
cd084a33c6
Fixed a regression bug, which was made during the porting of
...
discover_horizontal_shells() fron Perl to C++, where
the already calculated bridge direction was being lost.
Improved constness of the debug methods
void export_region_slices_to_svg(const char *path) const;
void export_region_fill_surfaces_to_svg(const char *path) const;
2017-09-14 13:15:32 +02:00
bubnikv
247070cd82
Fixed a regression bug of Slic3r::encode() / decode()
2017-08-30 14:57:13 +02:00
bubnikv
ba1c0b0137
CMake build process - fixes of the previous check-ins to build
...
cleanly on Windows & Linux. There is still a work on OSX:
The XS module has to be linked without perl.lib and with
the following parameters to produce a bundle: -bundle -undefined dynamic_lookup
2017-08-18 21:09:53 +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
31085fb1d7
Ported some ModelObject methods from Perl to C++.
...
Added some utility functions to TriangleMesh, thanks to @alexrj
Some porting to C++ based on work by @alexrj.
2017-08-02 16:05:18 +02:00
bubnikv
777023c7a8
Ported PrintObject::prepare_infill & combine_infill from Perl to C++.
2017-08-02 14:24:32 +02:00
bubnikv
75c72bc59b
Fix of "MM incorrect extruder temperature"
...
https://github.com/prusa3d/Slic3r/issues/443
Change of the PlaceholderParser:
All vector configuration values stored into the PlaceholderParser
are expected to be addressed by the extruder ID, therefore
if a vector configuration value is addressed without an index,
a current extruder ID is used.
Also a small fix of fan handling: The fan speed is set to zero
at the start of the G-code if the cooling for the initial extruder
is disabled.
2017-07-31 15:42:55 +02:00
bubnikv
81823fe7df
Reduced the content of Geometry.pm, removed unused Perl subroutines.
...
Reduced the use Slic3r::Geometry and use Slic3r::Geometry::Clipper
clauses to only reference used subroutines.
2017-07-19 10:45:39 +02:00
bubnikv
41f50b246c
Inlined Surface::any_internal_contains / any_bottom_contains
2017-07-10 13:15:36 +02:00
bubnikv
774c69e3c6
Fix of "Problem with larger brim overlapping "
...
https://github.com/prusa3d/Slic3r/issues/373
2017-07-07 16:40:23 +02:00
bubnikv
bf9027ff2d
Fix of a cooling buffer over multiple extruders.
2017-06-30 19:07:14 +02:00
bubnikv
ab21a253e0
Hopefully finally fixed reordering of the multi-material parts.
2017-06-26 16:44:16 +02:00
bubnikv
32fa84c5a5
Fix of https://github.com/alexrj/Slic3r/issues/4043 , thanks to @lordofhyphens.
...
Further refactoring of the cooling logic to collect per extruder data.
2017-06-23 10:13:09 +02:00
bubnikv
0454cc95f9
Ported the cooling changes from @alexrj: Don't slow down the external
...
perimeters if not necessary, don't take the bridging time into account
when slowing down the print.
Removed Extruder & GCodeWriter Perl bindings.
Improved Extruder for constness.
Refactored GCode::m_elapsed_time to struct ElapsedTime.
2017-06-22 12:59:23 +02:00
bubnikv
b12e4689e8
Fix of changing the order of volumes of a multi-volume part:
...
The 3D preview scene was not updated properly.
2017-06-21 14:10:22 +02:00
bubnikv
b724d789fd
New feature: Splitting an object into a multi-part volume.
2017-06-15 15:38:15 +02:00
bubnikv
2ac981e422
Improved error handling when importing configuration from a G-code.
2017-06-14 20:18:46 +02:00
bubnikv
93dce7a2d3
Ported config load / stored to C++, thanks @alexrj
...
Implemented import of config values from the G-code.
2017-06-14 17:51:14 +02:00
bubnikv
5cae4cc614
Fix of https://github.com/prusa3d/Slic3r/issues/285
...
Refactored Model.cpp/hpp to C++x11 loops,
simplified the mesh / bbox handling.
2017-06-13 11:35:24 +02:00