mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-05-15 18:38:01 +08:00
Merge branch 'main' into CURA-11279_fix_arrange_grid
This commit is contained in:
commit
6ebbf67c36
@ -72,7 +72,7 @@ class CuraConan(ConanFile):
|
|||||||
self._cura_env.define("QML2_IMPORT_PATH", str(self._site_packages.joinpath("PyQt6", "Qt6", "qml")))
|
self._cura_env.define("QML2_IMPORT_PATH", str(self._site_packages.joinpath("PyQt6", "Qt6", "qml")))
|
||||||
self._cura_env.define("QT_PLUGIN_PATH", str(self._site_packages.joinpath("PyQt6", "Qt6", "plugins")))
|
self._cura_env.define("QT_PLUGIN_PATH", str(self._site_packages.joinpath("PyQt6", "Qt6", "plugins")))
|
||||||
if not self.in_local_cache:
|
if not self.in_local_cache:
|
||||||
self._cura_env.define( "CURA_DATA_ROOT", str(self._share_dir.joinpath("cura")))
|
self._cura_env.define("CURA_DATA_ROOT", str(self._share_dir.joinpath("cura")))
|
||||||
|
|
||||||
if self.settings.os == "Linux":
|
if self.settings.os == "Linux":
|
||||||
self._cura_env.define("QT_QPA_FONTDIR", "/usr/share/fonts")
|
self._cura_env.define("QT_QPA_FONTDIR", "/usr/share/fonts")
|
||||||
@ -311,6 +311,8 @@ class CuraConan(ConanFile):
|
|||||||
if self.settings.os == "Linux":
|
if self.settings.os == "Linux":
|
||||||
self.options["curaengine_grpc_definitions"].shared = True
|
self.options["curaengine_grpc_definitions"].shared = True
|
||||||
self.options["openssl"].shared = True
|
self.options["openssl"].shared = True
|
||||||
|
if self.conf.get("user.curaengine:sentry_url", "", check_type=str) != "":
|
||||||
|
self.options["curaengine"].enable_sentry = True
|
||||||
|
|
||||||
def validate(self):
|
def validate(self):
|
||||||
version = self.conf.get("user.cura:version", default = self.version, check_type = str)
|
version = self.conf.get("user.cura:version", default = self.version, check_type = str)
|
||||||
@ -324,7 +326,7 @@ class CuraConan(ConanFile):
|
|||||||
self.requires("curaengine_grpc_definitions/0.1.0")
|
self.requires("curaengine_grpc_definitions/0.1.0")
|
||||||
self.requires("zlib/1.2.13")
|
self.requires("zlib/1.2.13")
|
||||||
self.requires("pyarcus/5.3.0")
|
self.requires("pyarcus/5.3.0")
|
||||||
self.requires("dulcificum/0.1.0-beta.2")
|
self.requires("dulcificum/(latest)@ultimaker/stable")
|
||||||
self.requires("curaengine/(latest)@ultimaker/testing")
|
self.requires("curaengine/(latest)@ultimaker/testing")
|
||||||
self.requires("pysavitar/5.3.0")
|
self.requires("pysavitar/5.3.0")
|
||||||
self.requires("pynest2d/5.3.0")
|
self.requires("pynest2d/5.3.0")
|
||||||
|
@ -163,6 +163,7 @@ class CuraEngineBackend(QObject, Backend):
|
|||||||
self._is_disabled: bool = False
|
self._is_disabled: bool = False
|
||||||
|
|
||||||
application.getPreferences().addPreference("general/auto_slice", False)
|
application.getPreferences().addPreference("general/auto_slice", False)
|
||||||
|
application.getPreferences().addPreference("info/send_engine_crash", True)
|
||||||
|
|
||||||
self._use_timer: bool = False
|
self._use_timer: bool = False
|
||||||
|
|
||||||
@ -173,6 +174,8 @@ class CuraEngineBackend(QObject, Backend):
|
|||||||
self._change_timer.setSingleShot(True)
|
self._change_timer.setSingleShot(True)
|
||||||
self._change_timer.setInterval(500)
|
self._change_timer.setInterval(500)
|
||||||
self.determineAutoSlicing()
|
self.determineAutoSlicing()
|
||||||
|
|
||||||
|
|
||||||
application.getPreferences().preferenceChanged.connect(self._onPreferencesChanged)
|
application.getPreferences().preferenceChanged.connect(self._onPreferencesChanged)
|
||||||
|
|
||||||
self._slicing_error_message = Message(
|
self._slicing_error_message = Message(
|
||||||
@ -193,6 +196,9 @@ class CuraEngineBackend(QObject, Backend):
|
|||||||
|
|
||||||
application.initializationFinished.connect(self.initialize)
|
application.initializationFinished.connect(self.initialize)
|
||||||
|
|
||||||
|
# Ensure that the initial value for send_engine_crash is handled correctly.
|
||||||
|
application.callLater(self._onPreferencesChanged, "info/send_engine_crash")
|
||||||
|
|
||||||
def startPlugins(self) -> None:
|
def startPlugins(self) -> None:
|
||||||
"""
|
"""
|
||||||
Ensure that all backend plugins are started
|
Ensure that all backend plugins are started
|
||||||
@ -1088,11 +1094,14 @@ class CuraEngineBackend(QObject, Backend):
|
|||||||
self._change_timer.timeout.disconnect(self.slice)
|
self._change_timer.timeout.disconnect(self.slice)
|
||||||
|
|
||||||
def _onPreferencesChanged(self, preference: str) -> None:
|
def _onPreferencesChanged(self, preference: str) -> None:
|
||||||
if preference != "general/auto_slice":
|
if preference != "general/auto_slice" and preference != "info/send_engine_crash":
|
||||||
return
|
return
|
||||||
|
if preference == "general/auto_slice":
|
||||||
auto_slice = self.determineAutoSlicing()
|
auto_slice = self.determineAutoSlicing()
|
||||||
if auto_slice:
|
if auto_slice:
|
||||||
self._change_timer.start()
|
self._change_timer.start()
|
||||||
|
elif preference == "info/send_engine_crash":
|
||||||
|
os.environ["use_sentry"] = "1" if CuraApplication.getInstance().getPreferences().getValue("info/send_engine_crash") else "0"
|
||||||
|
|
||||||
def tickle(self) -> None:
|
def tickle(self) -> None:
|
||||||
"""Tickle the backend so in case of auto slicing, it starts the timer."""
|
"""Tickle the backend so in case of auto slicing, it starts the timer."""
|
||||||
|
@ -120,6 +120,10 @@ UM.PreferencesPage
|
|||||||
|
|
||||||
UM.Preferences.resetPreference("info/send_slice_info")
|
UM.Preferences.resetPreference("info/send_slice_info")
|
||||||
sendDataCheckbox.checked = boolCheck(UM.Preferences.getValue("info/send_slice_info"))
|
sendDataCheckbox.checked = boolCheck(UM.Preferences.getValue("info/send_slice_info"))
|
||||||
|
|
||||||
|
UM.Preferences.resetPreference("info/send_engine_crash")
|
||||||
|
sendEngineCrashCheckbox.checked = boolCheck(UM.Preferences.getValue("info/send_engine_crash"))
|
||||||
|
|
||||||
UM.Preferences.resetPreference("info/automatic_update_check")
|
UM.Preferences.resetPreference("info/automatic_update_check")
|
||||||
checkUpdatesCheckbox.checked = boolCheck(UM.Preferences.getValue("info/automatic_update_check"))
|
checkUpdatesCheckbox.checked = boolCheck(UM.Preferences.getValue("info/automatic_update_check"))
|
||||||
|
|
||||||
@ -855,6 +859,21 @@ UM.PreferencesPage
|
|||||||
font: UM.Theme.getFont("medium_bold")
|
font: UM.Theme.getFont("medium_bold")
|
||||||
text: catalog.i18nc("@label", "Privacy")
|
text: catalog.i18nc("@label", "Privacy")
|
||||||
}
|
}
|
||||||
|
UM.TooltipArea
|
||||||
|
{
|
||||||
|
width: childrenRect.width
|
||||||
|
height: visible ? childrenRect.height : 0
|
||||||
|
text: catalog.i18nc("@info:tooltip", "Should slicing crashes be automatically reported to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored.")
|
||||||
|
|
||||||
|
UM.CheckBox
|
||||||
|
{
|
||||||
|
id: sendEngineCrashCheckbox
|
||||||
|
text: catalog.i18nc("@option:check","Send (anonymous) engine crash reports")
|
||||||
|
checked: boolCheck(UM.Preferences.getValue("info/send_engine_crash"))
|
||||||
|
onCheckedChanged: UM.Preferences.setValue("info/send_engine_crash", checked)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
UM.TooltipArea
|
UM.TooltipArea
|
||||||
{
|
{
|
||||||
width: childrenRect.width
|
width: childrenRect.width
|
||||||
|
Loading…
x
Reference in New Issue
Block a user