mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-09 15:57:52 -06:00
Merge branch 'master' into ui_rework_4_0
Conflicts: plugins/Toolbox/resources/qml/ToolboxCompatibilityChart.qml - The compatibility chart being added in 3.6 which was kind of hacky. resources/qml/SidebarHeader.qml - Removed in UI rework, edited on master.
This commit is contained in:
commit
266e08fdff
30 changed files with 273 additions and 217 deletions
|
@ -3,7 +3,6 @@
|
|||
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
from cura.API.Interface.Settings import Settings
|
||||
|
||||
if TYPE_CHECKING:
|
||||
|
@ -23,9 +22,6 @@ if TYPE_CHECKING:
|
|||
|
||||
class Interface:
|
||||
|
||||
# For now we use the same API version to be consistent.
|
||||
VERSION = PluginRegistry.APIVersion
|
||||
|
||||
def __init__(self, application: "CuraApplication") -> None:
|
||||
# API methods specific to the settings portion of the UI
|
||||
self.settings = Settings(application)
|
||||
|
|
|
@ -4,7 +4,6 @@ from typing import Optional, TYPE_CHECKING
|
|||
|
||||
from PyQt5.QtCore import QObject, pyqtProperty
|
||||
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
from cura.API.Backups import Backups
|
||||
from cura.API.Interface import Interface
|
||||
from cura.API.Account import Account
|
||||
|
@ -22,7 +21,6 @@ if TYPE_CHECKING:
|
|||
class CuraAPI(QObject):
|
||||
|
||||
# For now we use the same API version to be consistent.
|
||||
VERSION = PluginRegistry.APIVersion
|
||||
__instance = None # type: "CuraAPI"
|
||||
_application = None # type: CuraApplication
|
||||
|
||||
|
|
|
@ -134,7 +134,7 @@ except ImportError:
|
|||
CuraVersion = "master" # [CodeStyle: Reflecting imported value]
|
||||
CuraBuildType = ""
|
||||
CuraDebugMode = False
|
||||
CuraSDKVersion = ""
|
||||
CuraSDKVersion = "5.0.0"
|
||||
|
||||
|
||||
class CuraApplication(QtApplication):
|
||||
|
@ -164,6 +164,7 @@ class CuraApplication(QtApplication):
|
|||
super().__init__(name = "cura",
|
||||
app_display_name = CuraAppDisplayName,
|
||||
version = CuraVersion,
|
||||
api_version = CuraSDKVersion,
|
||||
buildtype = CuraBuildType,
|
||||
is_debug_mode = CuraDebugMode,
|
||||
tray_icon_name = "cura-icon-32.png",
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright (c) 2015 Ultimaker B.V.
|
||||
# Copyright (c) 2018 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
CuraAppDisplayName = "@CURA_APP_DISPLAY_NAME@"
|
||||
|
|
|
@ -11,18 +11,46 @@ Item
|
|||
id: base
|
||||
|
||||
property var packageData
|
||||
property var technicalDataSheetUrl: {
|
||||
property var technicalDataSheetUrl:
|
||||
{
|
||||
var link = undefined
|
||||
if ("Technical Data Sheet" in packageData.links)
|
||||
{
|
||||
// HACK: This is the way the old API (used in 3.6-beta) used to do it. For safety it's still here,
|
||||
// but it can be removed over time.
|
||||
link = packageData.links["Technical Data Sheet"]
|
||||
}
|
||||
else if ("technicalDataSheet" in packageData.links)
|
||||
{
|
||||
link = packageData.links["technicalDataSheet"]
|
||||
}
|
||||
return link
|
||||
}
|
||||
|
||||
property var safetyDataSheetUrl:
|
||||
{
|
||||
var sds_name = "safetyDataSheet"
|
||||
return (sds_name in packageData.links) ? packageData.links[sds_name] : undefined
|
||||
}
|
||||
property var printingGuidelinesUrl:
|
||||
{
|
||||
var pg_name = "printingGuidelines"
|
||||
return (pg_name in packageData.links) ? packageData.links[pg_name] : undefined
|
||||
}
|
||||
anchors.topMargin: UM.Theme.getSize("default_margin").height
|
||||
height: visible ? childrenRect.height : 0
|
||||
visible: packageData.type == "material" && packageData.has_configs
|
||||
|
||||
visible: packageData.type == "material" &&
|
||||
(packageData.has_configs || technicalDataSheetUrl !== undefined ||
|
||||
safetyDataSheetUrl !== undefined || printingGuidelinesUrl !== undefined)
|
||||
|
||||
Item
|
||||
{
|
||||
id: combatibilityItem
|
||||
visible: packageData.has_configs
|
||||
width: parent.width
|
||||
// This is a bit of a hack, but the whole QML is pretty messy right now. This needs a big overhaul.
|
||||
height: visible ? heading.height + table.height: 0
|
||||
|
||||
Label
|
||||
{
|
||||
id: heading
|
||||
|
@ -33,6 +61,7 @@ Item
|
|||
color: UM.Theme.getColor("text_medium")
|
||||
font: UM.Theme.getFont("medium")
|
||||
}
|
||||
|
||||
TableView
|
||||
{
|
||||
id: table
|
||||
|
@ -54,7 +83,7 @@ Item
|
|||
model: packageData.supported_configs
|
||||
headerDelegate: Rectangle
|
||||
{
|
||||
color: UM.Theme.getColor("main_background")
|
||||
color: UM.Theme.getColor("sidebar")
|
||||
height: UM.Theme.getSize("toolbox_chart_row").height
|
||||
Label
|
||||
{
|
||||
|
@ -143,25 +172,47 @@ Item
|
|||
width: Math.floor(table.width * 0.1)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Label
|
||||
{
|
||||
id: technical_data_sheet
|
||||
anchors.top: table.bottom
|
||||
id: data_sheet_links
|
||||
anchors.top: combatibilityItem.bottom
|
||||
anchors.topMargin: UM.Theme.getSize("default_margin").height / 2
|
||||
visible: base.technicalDataSheetUrl !== undefined
|
||||
visible: base.technicalDataSheetUrl !== undefined ||
|
||||
base.safetyDataSheetUrl !== undefined || base.printingGuidelinesUrl !== undefined
|
||||
height: visible ? contentHeight : 0
|
||||
text:
|
||||
{
|
||||
var result = ""
|
||||
if (base.technicalDataSheetUrl !== undefined)
|
||||
{
|
||||
return "<a href='%1'>%2</a>".arg(base.technicalDataSheetUrl).arg("Technical Data Sheet")
|
||||
var tds_name = catalog.i18nc("@action:label", "Technical Data Sheet")
|
||||
result += "<a href='%1'>%2</a>".arg(base.technicalDataSheetUrl).arg(tds_name)
|
||||
}
|
||||
return ""
|
||||
if (base.safetyDataSheetUrl !== undefined)
|
||||
{
|
||||
if (result.length > 0)
|
||||
{
|
||||
result += "<br/>"
|
||||
}
|
||||
var sds_name = catalog.i18nc("@action:label", "Safety Data Sheet")
|
||||
result += "<a href='%1'>%2</a>".arg(base.safetyDataSheetUrl).arg(sds_name)
|
||||
}
|
||||
if (base.printingGuidelinesUrl !== undefined)
|
||||
{
|
||||
if (result.length > 0)
|
||||
{
|
||||
result += "<br/>"
|
||||
}
|
||||
var pg_name = catalog.i18nc("@action:label", "Printing Guidelines")
|
||||
result += "<a href='%1'>%2</a>".arg(base.printingGuidelinesUrl).arg(pg_name)
|
||||
}
|
||||
return result
|
||||
}
|
||||
font: UM.Theme.getFont("very_small")
|
||||
color: UM.Theme.getColor("text")
|
||||
linkColor: UM.Theme.getColor("text_link")
|
||||
onLinkActivated: Qt.openUrlExternally(link)
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ Item
|
|||
anchors.top: packageName.bottom
|
||||
width: parent.width
|
||||
text: model.description
|
||||
maximumLineCount: 3
|
||||
maximumLineCount: 6
|
||||
elide: Text.ElideRight
|
||||
wrapMode: Text.WordWrap
|
||||
color: UM.Theme.getColor("text")
|
||||
|
|
|
@ -12,7 +12,7 @@ from UM.Qt.ListModel import ListModel
|
|||
from .ConfigsModel import ConfigsModel
|
||||
|
||||
|
||||
## Model that holds cura packages. By setting the filter property the instances held by this model can be changed.
|
||||
## Model that holds Cura packages. By setting the filter property the instances held by this model can be changed.
|
||||
class PackagesModel(ListModel):
|
||||
def __init__(self, parent = None):
|
||||
super().__init__(parent)
|
||||
|
@ -70,7 +70,7 @@ class PackagesModel(ListModel):
|
|||
|
||||
# Links is a list of dictionaries with "title" and "url". Convert this list into a dict so it's easier
|
||||
# to process.
|
||||
link_list = package['data']['links'] if 'links' in package['data'] else []
|
||||
link_list = package["data"]["links"] if "links" in package["data"] else []
|
||||
links_dict = {d["title"]: d["url"] for d in link_list}
|
||||
|
||||
if "author_id" not in package["author"] or "display_name" not in package["author"]:
|
||||
|
|
|
@ -209,11 +209,11 @@ class Toolbox(QObject, Extension):
|
|||
# Get the packages version depending on Cura version settings.
|
||||
def _getSDKVersion(self) -> Union[int, str]:
|
||||
if not hasattr(cura, "CuraVersion"):
|
||||
return self._plugin_registry.APIVersion
|
||||
return self._application.getAPIVersion().getMajor()
|
||||
if not hasattr(cura.CuraVersion, "CuraSDKVersion"): # type: ignore
|
||||
return self._plugin_registry.APIVersion
|
||||
return self._application.getAPIVersion().getMajor()
|
||||
if not cura.CuraVersion.CuraSDKVersion: # type: ignore
|
||||
return self._plugin_registry.APIVersion
|
||||
return self._application.getAPIVersion().getMajor()
|
||||
return cura.CuraVersion.CuraSDKVersion # type: ignore
|
||||
|
||||
@pyqtSlot()
|
||||
|
@ -299,7 +299,7 @@ class Toolbox(QObject, Extension):
|
|||
for plugin_id in old_plugin_ids:
|
||||
# Neither the installed packages nor the packages that are scheduled to remove are old plugins
|
||||
if plugin_id not in installed_package_ids and plugin_id not in scheduled_to_remove_package_ids:
|
||||
Logger.log('i', 'Found a plugin that was installed with the old plugin browser: %s', plugin_id)
|
||||
Logger.log("i", "Found a plugin that was installed with the old plugin browser: %s", plugin_id)
|
||||
|
||||
old_metadata = self._plugin_registry.getMetaData(plugin_id)
|
||||
new_metadata = self._convertPluginMetadata(old_metadata)
|
||||
|
|
|
@ -11,6 +11,7 @@ def getMetaData():
|
|||
# From To Upgrade function
|
||||
("definition_changes", 3000004): ("definition_changes", 4000004, upgrade.upgradeInstanceContainer),
|
||||
("quality_changes", 3000004): ("quality_changes", 4000004, upgrade.upgradeInstanceContainer),
|
||||
("quality", 3000004): ("quality", 4000004, upgrade.upgradeInstanceContainer),
|
||||
("user", 3000004): ("user", 4000004, upgrade.upgradeInstanceContainer),
|
||||
},
|
||||
"sources": {
|
||||
|
@ -22,6 +23,10 @@ def getMetaData():
|
|||
"get_version": upgrade.getCfgVersion,
|
||||
"location": {"./quality_changes"}
|
||||
},
|
||||
"quality": {
|
||||
"get_version": upgrade.getCfgVersion,
|
||||
"location": {"./quality"}
|
||||
},
|
||||
"user": {
|
||||
"get_version": upgrade.getCfgVersion,
|
||||
"location": {"./user"}
|
||||
|
|
|
@ -13,6 +13,7 @@ def getMetaData():
|
|||
|
||||
("definition_changes", 4000004): ("definition_changes", 4000005, upgrade.upgradeInstanceContainer),
|
||||
("quality_changes", 4000004): ("quality_changes", 4000005, upgrade.upgradeInstanceContainer),
|
||||
("quality", 4000004): ("quality", 4000005, upgrade.upgradeInstanceContainer),
|
||||
("user", 4000004): ("user", 4000005, upgrade.upgradeInstanceContainer),
|
||||
|
||||
("machine_stack", 4000004): ("machine_stack", 4000005, upgrade.upgradeStack),
|
||||
|
@ -39,6 +40,10 @@ def getMetaData():
|
|||
"get_version": upgrade.getCfgVersion,
|
||||
"location": {"./quality_changes"}
|
||||
},
|
||||
"quality": {
|
||||
"get_version": upgrade.getCfgVersion,
|
||||
"location": {"./quality"}
|
||||
},
|
||||
"user": {
|
||||
"get_version": upgrade.getCfgVersion,
|
||||
"location": {"./user"}
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -26,7 +26,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -43,7 +43,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -60,7 +60,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -77,7 +77,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -94,7 +94,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -111,7 +111,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -128,7 +128,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -145,7 +145,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -162,7 +162,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -179,7 +179,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -213,7 +213,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -230,7 +230,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -247,7 +247,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -281,7 +281,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -298,7 +298,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -315,7 +315,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -332,7 +332,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -349,7 +349,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -366,7 +366,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -383,7 +383,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -400,7 +400,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -417,7 +417,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -434,7 +434,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -451,7 +451,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -468,7 +468,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -485,7 +485,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -502,7 +502,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -519,7 +519,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -536,7 +536,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -553,7 +553,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -570,7 +570,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -587,7 +587,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -604,7 +604,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -621,7 +621,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -638,7 +638,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -655,7 +655,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -672,7 +672,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -689,7 +689,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -723,7 +723,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -740,7 +740,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "plugins@ultimaker.com",
|
||||
"website": "https://ultimaker.com"
|
||||
|
@ -1301,7 +1301,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com/products/materials/abs",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "materials@ultimaker.com",
|
||||
"website": "https://ultimaker.com",
|
||||
|
@ -1320,7 +1320,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com/products/materials/breakaway",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "materials@ultimaker.com",
|
||||
"website": "https://ultimaker.com",
|
||||
|
@ -1339,7 +1339,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com/products/materials/abs",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "materials@ultimaker.com",
|
||||
"website": "https://ultimaker.com",
|
||||
|
@ -1358,7 +1358,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com/products/materials/cpe",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "materials@ultimaker.com",
|
||||
"website": "https://ultimaker.com",
|
||||
|
@ -1377,7 +1377,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com/products/materials/abs",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "materials@ultimaker.com",
|
||||
"website": "https://ultimaker.com",
|
||||
|
@ -1396,7 +1396,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com/products/materials/pc",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "materials@ultimaker.com",
|
||||
"website": "https://ultimaker.com",
|
||||
|
@ -1415,7 +1415,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com/products/materials/abs",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "materials@ultimaker.com",
|
||||
"website": "https://ultimaker.com",
|
||||
|
@ -1434,7 +1434,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com/products/materials/pp",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "materials@ultimaker.com",
|
||||
"website": "https://ultimaker.com",
|
||||
|
@ -1453,7 +1453,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com/products/materials/abs",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "materials@ultimaker.com",
|
||||
"website": "https://ultimaker.com",
|
||||
|
@ -1472,7 +1472,7 @@
|
|||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com/products/materials/tpu-95a",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "materials@ultimaker.com",
|
||||
"website": "https://ultimaker.com",
|
||||
|
@ -1487,11 +1487,11 @@
|
|||
"package_type": "material",
|
||||
"display_name": "Ultimaker Tough PLA",
|
||||
"description": "Example package for material and quality profiles for Ultimaker materials.",
|
||||
"package_version": "1.0.0",
|
||||
"package_version": "1.0.2",
|
||||
"sdk_version": 5,
|
||||
"website": "https://ultimaker.com/products/materials/tough-pla",
|
||||
"author": {
|
||||
"author_id": "Ultimaker",
|
||||
"author_id": "UltimakerPackages",
|
||||
"display_name": "Ultimaker B.V.",
|
||||
"email": "materials@ultimaker.com",
|
||||
"website": "https://ultimaker.com",
|
||||
|
|
|
@ -171,7 +171,7 @@ UM.PreferencesPage
|
|||
append({ text: "日本語", code: "ja_JP" })
|
||||
append({ text: "한국어", code: "ko_KR" })
|
||||
append({ text: "Nederlands", code: "nl_NL" })
|
||||
append({ text: "Polski", code: "pl_PL" })
|
||||
//Polish is disabled for being incomplete: append({ text: "Polski", code: "pl_PL" })
|
||||
append({ text: "Português do Brasil", code: "pt_BR" })
|
||||
append({ text: "Português", code: "pt_PT" })
|
||||
append({ text: "Русский", code: "ru_RU" })
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = fast
|
||||
weight = -1
|
||||
material = fabtotum_abs
|
||||
material = generic_abs
|
||||
|
||||
[values]
|
||||
adhesion_type = raft
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = high
|
||||
weight = 1
|
||||
material = fabtotum_abs
|
||||
material = generic_abs
|
||||
|
||||
[values]
|
||||
adhesion_type = raft
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = normal
|
||||
weight = 0
|
||||
material = fabtotum_abs
|
||||
material = generic_abs
|
||||
|
||||
[values]
|
||||
adhesion_type = raft
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = fast
|
||||
weight = -1
|
||||
material = fabtotum_nylon
|
||||
material = generic_nylon
|
||||
|
||||
[values]
|
||||
adhesion_type = raft
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = high
|
||||
weight = 1
|
||||
material = fabtotum_nylon
|
||||
material = generic_nylon
|
||||
|
||||
[values]
|
||||
adhesion_type = raft
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = normal
|
||||
weight = 0
|
||||
material = fabtotum_nylon
|
||||
material = generic_nylon
|
||||
|
||||
[values]
|
||||
adhesion_type = raft
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = fast
|
||||
weight = -1
|
||||
material = fabtotum_pla
|
||||
material = generic_pla
|
||||
|
||||
[values]
|
||||
adhesion_type = skirt
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = high
|
||||
weight = 1
|
||||
material = fabtotum_pla
|
||||
material = generic_pla
|
||||
|
||||
[values]
|
||||
adhesion_type = skirt
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = normal
|
||||
weight = 0
|
||||
material = fabtotum_pla
|
||||
material = generic_pla
|
||||
|
||||
[values]
|
||||
adhesion_type = skirt
|
||||
|
|
|
@ -6,7 +6,7 @@ name = Fast Quality
|
|||
[metadata]
|
||||
type = quality
|
||||
setting_version = 5
|
||||
material = fabtotum_tpu
|
||||
material = generic_tpu
|
||||
quality_type = fast
|
||||
weight = -1
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ name = High Quality
|
|||
[metadata]
|
||||
type = quality
|
||||
setting_version = 5
|
||||
material = fabtotum_tpu
|
||||
material = generic_tpu
|
||||
quality_type = high
|
||||
weight = 1
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ name = Normal Quality
|
|||
[metadata]
|
||||
type = quality
|
||||
setting_version = 5
|
||||
material = fabtotum_TPU
|
||||
material = generic_tpu
|
||||
quality_type = normal
|
||||
weight = 0
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = fast
|
||||
weight = 1
|
||||
material = zyyx_pro_flex
|
||||
material = generic_tpu
|
||||
|
||||
[values]
|
||||
layer_height = 0.3
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = fine
|
||||
weight = 3
|
||||
material = zyyx_pro_flex
|
||||
material = generic_tpu
|
||||
|
||||
[values]
|
||||
layer_height = 0.12
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = normal
|
||||
weight = 2
|
||||
material = zyyx_pro_flex
|
||||
material = generic_tpu
|
||||
|
||||
[values]
|
||||
layer_height = 0.2
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = fast
|
||||
weight = 1
|
||||
material = zyyx_pro_pla
|
||||
material = generic_pla
|
||||
|
||||
[values]
|
||||
layer_height = 0.3
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = fine
|
||||
weight = 3
|
||||
material = zyyx_pro_pla
|
||||
material = generic_pla
|
||||
|
||||
[values]
|
||||
layer_height = 0.1
|
||||
|
|
|
@ -8,7 +8,7 @@ setting_version = 5
|
|||
type = quality
|
||||
quality_type = normal
|
||||
weight = 2
|
||||
material = zyyx_pro_pla
|
||||
material = generic_pla
|
||||
|
||||
[values]
|
||||
layer_height = 0.2
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue