59 Commits

Author SHA1 Message Date
Arjen Hiemstra
abe184ebff Do not display backend error messages for a few known error types
ConnectionReset is already handled, as is BindFailed and Debug should
never result in an error.

Contributes to CURA-813
2016-02-24 17:28:31 +01:00
Jaime van Kessel
67db4a4778 Merge branch '2.1' of https://github.com/Ultimaker/Cura into 2.1 2016-02-19 15:52:52 +01:00
Jaime van Kessel
31ed8400ef Added a bit of error handling 2016-02-19 15:52:36 +01:00
Ghostkeeper
63a8b96049 Make layer processing abort when starting slice
This involved adding an abort flag to the layer processing job, and making the job check back on that flag periodically. If processing a single layer takes forever then it will never stop the job at all, so it assumes that the concurrent programming in Python is Fair.

Contributes to issue CURA-864.
2016-02-19 12:25:47 +01:00
Jaime van Kessel
fb598a2444 Operation stopped no longer cause a re-slice.
No idea why this was the case as the result of an operation should decide
if a reslice should be triggered (eg; transformation causes scenechanged to be triggered)
CURA-829
2016-02-10 13:19:12 +01:00
Ghostkeeper
5693d639f1 Merge pull request #618 from Ultimaker/feature_profiles
Profiles rework
2016-02-09 09:49:28 +01:00
Arjen Hiemstra
69d8160207 Make sure we properly restart the backend when it quits on itself
This prevents issues where the backend would not properly restart
2016-02-08 13:51:18 +01:00
fieldOfView
6e11c2409b Use working profile instead of "active" profile 2016-02-08 09:20:46 +01:00
Arjen Hiemstra
8d2fc1f7e1 Do not close the engine from our side when finished with slicing
The engine will close itself when done. Closing it from our side
actually introduces errors as things can still be busy processing
2016-02-06 18:08:47 +01:00
Arjen Hiemstra
1e4631ecdd Remove Cura_pb2.py file since it is no longer needed
The new Arcus API uses the Cura.proto file instead.
2016-02-02 18:22:09 +01:00
Jaime van Kessel
7c744044fd Fixed merge issues & updated proto files 2016-02-02 11:25:10 +01:00
Ghostkeeper
a45e55ab4c Reactivate _always_restart
This was deactivated during debugging as a test. Shouldn't have been committed.

Contributes to issue CURA-427.
2016-01-29 20:57:16 +01:00
Ghostkeeper
c53969f1bd Wait for FinishedSlicing message to mark slicing as finished
Instead of waiting until progress is more than 99%, wait for the dedicated FinishedSlicing message.

Contributes to issue CURA-427.
2016-01-29 11:22:04 +01:00
Arjen Hiemstra
e74d300fb3 Make things work properly using the new Arcus API 2016-01-28 18:07:42 +01:00
Arjen Hiemstra
6930008dd8 Pass the protocol file to Backend's createSocket 2016-01-28 03:22:18 +01:00
Jaime van Kessel
0b920950d4 Layer processing is now only done when no slicing is occuring.
Contributes to CURA-693
2016-01-22 16:38:03 +01:00
fieldOfView
091f744838 Reuse code 2015-12-22 09:26:21 +01:00
fieldOfView
c900e27c19 Stop slicing immediately when a ToolOperation is started 2015-12-22 08:58:04 +01:00
fieldOfView
6bfed19477 Show slicing progress in SaveButton area instead of MessageStack
Add separators to sidebar
Tweak theme
2015-12-03 12:09:25 +01:00
daid
743b403b29 Whole bunch of um-pep8 style fixes. 2015-11-27 13:50:44 +01:00
Mark Walker
4a3db419ec Add back placeholder expansion for start/end gcode
See issue Ultimaker/CuraEngine#240

The intent of this change it to allow token replacement in start/end
gcode similar to the old Cura. Tokens are of the form
{material_bed_temperature} where the name is any setting name that is
passed to the engine.

Control the backend's generation of temperature commands via new
settings material_bed_temp_prepend and material_print_temp_prepend based
on whether there are temperature tokens in the printer profile's start
gcode.

This change will generate the same temperature gcode as FffGcodeWriter
at the head, if none of the temperature tokens are present in the
machine profile. Otherwise, they're suppressed via the prepend settings.

Also, set fdmprinter.json so that all that inherit from it default to
having the gcode temperature prepend also wait for temperature. Profiles
can override these settings: material_bed_temp_wait and
material_print_temp_wait

This PR intends to change both Cura and CuraEngine.  However, it is safe
to sequence with the Cura change first which will do token replacement
(if present), but will fail to supress the temperature prepends.
2015-11-16 02:22:47 -08:00
Arjen Hiemstra
751f58fb02 Merge branch '15.10'
* 15.10: (39 commits)
  Remove unused import in StartSliceJob
  conforming to code style
  fix typo's..
  Adjust initial view to be slightly from the side
  uses a different method to check whether a machine name excists
  Sets the languageComboBox to the default language
  Remove per-group settings for now
  Make sure to send all settings when an object overrides the profile
  Properly emit writeStarted in RemovableDriveOutputDevice
  Add xy_offset setting to list of settings that trigger a disallowed area update
  Properly trigger a reslice when the active instance is changed
  Wizardpages without hack
  Only hides the window when there are no more pages
  Only add layer data node after all processing
  Also account for "xy_offset" setting for the disallowed areas
  JSON: workaround for stutter in spiralize vase: set travel speed to printing speed
  Adds a color for the error-messages
  Shows an error message when a user tries to add a printer with a name that already excists.
  JSON: support bottom stair step height defaults changed so that the bottom distance to the model isn't violated too much
  Try to use Protobuf CPP implementation if it is available
  ...
2015-11-13 11:31:29 +01:00
Arjen Hiemstra
aa895c1b15 Properly trigger a reslice when the active instance is changed
Contributes to CURA-394
2015-11-05 18:18:42 +01:00
Arjen Hiemstra
cb05aee391 Move the start of slicing to a proper job
This way it can be properly threaded (with a generous sprinkling of
"yieldThread") so we do not block the UI when slicing starts.

Contributes to CURA-358
2015-11-04 14:13:45 +01:00
Arjen Hiemstra
c5ca763621 If we have no active machine, return None in getEngineCommand
This fixes a race condition on Windows where setting the active machine
takes too long
2015-10-08 11:54:22 +02:00
Arjen Hiemstra
50e6455875 Send the actual machine JSON to the engine 2015-10-06 16:54:57 +02:00
Arjen Hiemstra
b23bbe02fd Send the dual extrusion file as base JSON to the engine 2015-10-06 14:54:24 +02:00
Arjen Hiemstra
560662ac59 Properly clear stored layer data
This fixes an issue where switching back and forth between layer view
would trigger a reload of the layer data
2015-10-06 12:07:57 +02:00
Jaime van Kessel
7c9b190bee Split up onChanged code a bit for easier debugging 2015-09-22 13:47:52 +02:00
Jaime van Kessel
f8d677eee8 Connected tool operation events (again?)
Fixes Ultimaker/Cura#418
2015-09-22 11:52:04 +02:00
Jaime van Kessel
6aea81232d Added documentation 2015-09-17 14:50:52 +02:00
Jaime van Kessel
48d233ca84 Added explicit debug logging to slice process 2015-09-17 14:46:35 +02:00
Jaime van Kessel
631c02bf2c Added message when slicing was cancelled due to errors in settings.
Fixes CURA-166
2015-09-17 10:50:04 +02:00
Jaime van Kessel
fccf365424 When a new reslices is triggered the old data is removed 2015-09-16 15:56:37 +02:00
Arjen Hiemstra
0148186c7a Display a slicing message when performing a slice operation 2015-09-12 20:08:40 +02:00
Arjen Hiemstra
e40c785d86 Use the right values when sending profile overrides
Contributes to #325
2015-09-08 17:41:46 +02:00
Jaime van Kessel
fc4f8da242 Added logging when not slicing due to error values 2015-09-02 14:05:49 +02:00
Arjen Hiemstra
57b2ce4f3e Merge branch 'master' of github.com:ultimaker/Cura into per_object_settings
* 'master' of github.com:ultimaker/Cura: (49 commits)
  15.10 restyling of the sidebar header
  15.10 restyling of the sidebar header
  15.10 restyling of the sidebar
  split magic_mesh)surface_mode into Normal, Surface, Both
  Added preference to disable automatic scale
  Removed unused import
  Added changeLog plugin
  Added missing )
  Merging of mine and Jaimes work
  Removed font from rectangle
  JSON: git diff! removed triangles and grid top/bottom skin options (though they are available)
  Code style & switch to translation catalog
  15.10 re-alignment of the toolbar
  15.10 New Icons
  15.10 restyling of the savebutton Area
  Added message asking about sending data to server
  Added exception handling for checking overlap.
  Fixed default button for general and view page
  Fixed double ID in qml
  Removed unused import
  ...
2015-09-01 15:44:19 +02:00
Arjen Hiemstra
1f82e83093 Use SettingOverrideDecorator::getAllSettingValues to get per-object settings 2015-09-01 15:04:55 +02:00
Arjen Hiemstra
e6e563cf09 Use the profile for getting setting values, not the machine instance 2015-08-27 09:36:09 +02:00
Jaime van Kessel
752a4b26fa Forced reset of progress when no model was found on platform 2015-08-24 09:50:14 +02:00
Jaime van Kessel
4dd2b15ab5 Added force reslice function 2015-08-24 09:43:54 +02:00
Arjen Hiemstra
fd8185fcb9 Properly send profile and setting changes to the engine
This includes everything from the profile and all settings with child
settings.
2015-08-19 19:15:54 +02:00
Arjen Hiemstra
a8c302a8ed Properly send per-object settings to the engine 2015-08-18 18:11:05 +02:00
Arjen Hiemstra
1947d773a3 Update all usage of activeMachine to the new API 2015-08-05 20:12:29 +02:00
Arjen Hiemstra
842689d88e Update all uses of the Resources API with the changed API 2015-08-05 17:26:52 +02:00
Tim Kuipers
294c7c0f09 new back end call, following new command line parsing 2015-07-30 15:05:07 +02:00
Jaime van Kessel
5897237710 removed debug code 2015-07-29 16:13:12 +02:00
Jaime van Kessel
453047df1f Fix to grouped one at a time 2015-07-24 10:55:59 +02:00
Jaime van Kessel
ea66139751 Modifications to enable one at a time (still WIP) 2015-07-23 10:18:58 +02:00