Fix merge conflicts

This commit is contained in:
Lipu Fei 2019-03-26 09:01:01 +01:00
commit a85f2ce156
52 changed files with 202 additions and 213 deletions

View File

@ -13,80 +13,104 @@ from PyQt5.QtGui import QColor, QIcon
from PyQt5.QtWidgets import QMessageBox
from PyQt5.QtQml import qmlRegisterUncreatableType, qmlRegisterSingletonType, qmlRegisterType
from UM.i18n import i18nCatalog
from UM.Application import Application
from UM.Decorators import override
from UM.FlameProfiler import pyqtSlot
from UM.Logger import Logger
from UM.Message import Message
from UM.Platform import Platform
from UM.PluginError import PluginNotFoundError
from UM.Scene.SceneNode import SceneNode
from UM.Scene.Camera import Camera
from UM.Math.Vector import Vector
from UM.Math.Quaternion import Quaternion
from UM.Resources import Resources
from UM.Preferences import Preferences
from UM.Qt.QtApplication import QtApplication # The class we're inheriting from.
from UM.View.SelectionPass import SelectionPass # For typing.
from UM.Math.AxisAlignedBox import AxisAlignedBox
from UM.Math.Matrix import Matrix
from UM.Platform import Platform
from UM.Resources import Resources
from UM.Scene.ToolHandle import ToolHandle
from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator
from UM.Math.Quaternion import Quaternion
from UM.Math.Vector import Vector
from UM.Mesh.ReadMeshJob import ReadMeshJob
from UM.Logger import Logger
from UM.Preferences import Preferences
from UM.Qt.QtApplication import QtApplication #The class we're inheriting from.
from UM.View.SelectionPass import SelectionPass #For typing.
from UM.Scene.Selection import Selection
from UM.Scene.GroupDecorator import GroupDecorator
from UM.Settings.ContainerStack import ContainerStack
from UM.Settings.InstanceContainer import InstanceContainer
from UM.Settings.Validator import Validator
from UM.Message import Message
from UM.i18n import i18nCatalog
from UM.Workspace.WorkspaceReader import WorkspaceReader
from UM.Operations.AddSceneNodeOperation import AddSceneNodeOperation
from UM.Operations.GroupedOperation import GroupedOperation
from UM.Operations.SetTransformOperation import SetTransformOperation
from UM.Scene.Camera import Camera
from UM.Scene.GroupDecorator import GroupDecorator
from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator
from UM.Scene.SceneNode import SceneNode
from UM.Scene.Selection import Selection
from UM.Scene.ToolHandle import ToolHandle
from UM.Settings.ContainerRegistry import ContainerRegistry
from UM.Settings.ContainerStack import ContainerStack
from UM.Settings.InstanceContainer import InstanceContainer
from UM.Settings.SettingDefinition import SettingDefinition, DefinitionPropertyType
from UM.Settings.SettingFunction import SettingFunction
from UM.Settings.Validator import Validator
from UM.Workspace.WorkspaceReader import WorkspaceReader
from cura.API import CuraAPI
from cura.Arranging.Arrange import Arrange
from cura.Arranging.ArrangeObjectsJob import ArrangeObjectsJob
from cura.Arranging.ArrangeObjectsAllBuildPlatesJob import ArrangeObjectsAllBuildPlatesJob
from cura.Arranging.ShapeArray import ShapeArray
from cura.UI.GlobalStacksModel import GlobalStacksModel
from cura.Scene.ConvexHullDecorator import ConvexHullDecorator
from cura.Operations.SetParentOperation import SetParentOperation
from cura.Scene.SliceableObjectDecorator import SliceableObjectDecorator
from cura.Scene.BlockSlicingDecorator import BlockSlicingDecorator
from cura.Scene.BuildPlateDecorator import BuildPlateDecorator
from cura.Scene.CuraSceneNode import CuraSceneNode
from cura.Scene.ConvexHullDecorator import ConvexHullDecorator
from cura.Scene.CuraSceneController import CuraSceneController
from cura.UI.WelcomePagesModel import WelcomePagesModel
from cura.UI.MachineSettingsManager import MachineSettingsManager
from UM.Settings.SettingDefinition import SettingDefinition, DefinitionPropertyType
from UM.Settings.ContainerRegistry import ContainerRegistry
from UM.Settings.SettingFunction import SettingFunction
from cura.Settings.CuraContainerRegistry import CuraContainerRegistry
from cura.Settings.MachineNameValidator import MachineNameValidator
from cura.UI.MachineModels.BuildPlateModel import BuildPlateModel
from cura.UI.MachineModels.DiscoveredPrintersModel import DiscoveredPrintersModel
from cura.UI.MachineModels.NozzleModel import NozzleModel
from cura.UI.MachineModels.QualityProfilesDropDownMenuModel import QualityProfilesDropDownMenuModel
from cura.UI.MachineModels.CustomQualityProfilesDropDownMenuModel import CustomQualityProfilesDropDownMenuModel
from cura.UI.MachineModels.MultiBuildPlateModel import MultiBuildPlateModel
from cura.UI.MachineModels.FavoriteMaterialsModel import FavoriteMaterialsModel
from cura.UI.MachineModels.FirstStartMachineActionsModel import FirstStartMachineActionsModel
from cura.UI.MachineModels.GenericMaterialsModel import GenericMaterialsModel
from cura.UI.MachineModels.MaterialBrandsModel import MaterialBrandsModel
from cura.UI.MachineModels.QualityManagementModel import QualityManagementModel
from cura.UI.MachineModels.QualitySettingsModel import QualitySettingsModel
from cura.UI.MachineModels.SettingVisibilityPresetsModel import SettingVisibilityPresetsModel
from cura.Scene.CuraSceneNode import CuraSceneNode
from cura.Scene.SliceableObjectDecorator import SliceableObjectDecorator
from cura.Scene import ZOffsetDecorator
from cura.Machines.MachineErrorChecker import MachineErrorChecker
from cura.Machines.VariantManager import VariantManager
from cura.Machines.Models.BuildPlateModel import BuildPlateModel
from cura.Machines.Models.CustomQualityProfilesDropDownMenuModel import CustomQualityProfilesDropDownMenuModel
from cura.Machines.Models.DiscoveredPrintersModel import DiscoveredPrintersModel
from cura.Machines.Models.ExtrudersModel import ExtrudersModel
from cura.Machines.Models.FavoriteMaterialsModel import FavoriteMaterialsModel
from cura.Machines.Models.FirstStartMachineActionsModel import FirstStartMachineActionsModel
from cura.Machines.Models.GenericMaterialsModel import GenericMaterialsModel
from cura.Machines.Models.GlobalStacksModel import GlobalStacksModel
from cura.Machines.Models.MaterialBrandsModel import MaterialBrandsModel
from cura.Machines.Models.MultiBuildPlateModel import MultiBuildPlateModel
from cura.Machines.Models.NozzleModel import NozzleModel
from cura.Machines.Models.QualityManagementModel import QualityManagementModel
from cura.Machines.Models.QualityProfilesDropDownMenuModel import QualityProfilesDropDownMenuModel
from cura.Machines.Models.QualitySettingsModel import QualitySettingsModel
from cura.Machines.Models.SettingVisibilityPresetsModel import SettingVisibilityPresetsModel
from cura.Machines.Models.UserChangesModel import UserChangesModel
from cura.PrinterOutput.PrinterOutputDevice import PrinterOutputDevice
from cura.PrinterOutput.NetworkMJPGImage import NetworkMJPGImage
import cura.Settings.cura_empty_instance_containers
from cura.Settings.ContainerManager import ContainerManager
from cura.Settings.CuraContainerRegistry import CuraContainerRegistry
from cura.Settings.CuraFormulaFunctions import CuraFormulaFunctions
from cura.Settings.ExtruderManager import ExtruderManager
from cura.Settings.MachineManager import MachineManager
from cura.Settings.MachineNameValidator import MachineNameValidator
from cura.Settings.MaterialSettingsVisibilityHandler import MaterialSettingsVisibilityHandler
from cura.Settings.SettingInheritanceManager import SettingInheritanceManager
from cura.Settings.SidebarCustomMenuItemsModel import SidebarCustomMenuItemsModel
from cura.Settings.SimpleModeSettingsManager import SimpleModeSettingsManager
from cura.Machines.VariantManager import VariantManager
from cura.TaskManagement.OnExitCallbackManager import OnExitCallbackManager
from cura.UI import CuraSplashScreen, MachineActionManager, PrintInformation
from cura.UI.MachineSettingsManager import MachineSettingsManager
from cura.UI.ObjectsModel import ObjectsModel
from cura.UI.WelcomePagesModel import WelcomePagesModel
from .SingleInstance import SingleInstance
from .AutoSave import AutoSave
@ -94,32 +118,10 @@ from . import PlatformPhysics
from . import BuildVolume
from . import CameraAnimation
from . import CuraActions
from cura.Scene import ZOffsetDecorator
from cura.UI import CuraSplashScreen, MachineActionManager, PrintInformation
from . import PrintJobPreviewImageProvider
from cura.TaskManagement.OnExitCallbackManager import OnExitCallbackManager
from cura.Settings.MachineManager import MachineManager
from cura.Settings.ExtruderManager import ExtruderManager
from cura.UI.UserChangesModel import UserChangesModel
from cura.UI.ExtrudersModel import ExtrudersModel
from cura.Settings.MaterialSettingsVisibilityHandler import MaterialSettingsVisibilityHandler
from cura.Settings.ContainerManager import ContainerManager
from cura.Settings.SidebarCustomMenuItemsModel import SidebarCustomMenuItemsModel
import cura.Settings.cura_empty_instance_containers
from cura.Settings.CuraFormulaFunctions import CuraFormulaFunctions
from cura.UI.ObjectsModel import ObjectsModel
from cura.PrinterOutput.PrinterOutputDevice import PrinterOutputDevice
from cura.PrinterOutput.NetworkMJPGImage import NetworkMJPGImage
from cura import ApplicationMetadata, UltimakerCloudAuthentication
from UM.FlameProfiler import pyqtSlot
from UM.Decorators import override
if TYPE_CHECKING:
from cura.Machines.MaterialManager import MaterialManager
from cura.Machines.QualityManager import QualityManager

View File

@ -3,7 +3,7 @@
from UM.Logger import Logger
from cura.UI.MachineModels.QualityProfilesDropDownMenuModel import QualityProfilesDropDownMenuModel
from cura.Machines.Models.QualityProfilesDropDownMenuModel import QualityProfilesDropDownMenuModel
#

View File

@ -1,7 +1,7 @@
# Copyright (c) 2018 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
from cura.UI.MachineModels.BaseMaterialsModel import BaseMaterialsModel
from cura.Machines.Models.BaseMaterialsModel import BaseMaterialsModel
## Model that shows the list of favorite materials.
class FavoriteMaterialsModel(BaseMaterialsModel):

View File

@ -1,7 +1,7 @@
# Copyright (c) 2018 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
from cura.UI.MachineModels.BaseMaterialsModel import BaseMaterialsModel
from cura.Machines.Models.BaseMaterialsModel import BaseMaterialsModel
class GenericMaterialsModel(BaseMaterialsModel):

View File

@ -3,7 +3,7 @@
from PyQt5.QtCore import Qt, pyqtSignal
from UM.Qt.ListModel import ListModel
from cura.UI.MachineModels.BaseMaterialsModel import BaseMaterialsModel
from cura.Machines.Models.BaseMaterialsModel import BaseMaterialsModel
class MaterialTypesModel(ListModel):

View File

@ -5,13 +5,13 @@ from typing import TYPE_CHECKING, Set, Union, Optional
from PyQt5.QtCore import QTimer
from cura.PrinterOutput.PrinterOutputController import PrinterOutputController
from .PrinterOutputController import PrinterOutputController
if TYPE_CHECKING:
from cura.UI.PrintJobOutputModel import PrintJobOutputModel
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.PrinterOutputDevice import PrinterOutputDevice
from cura.UI.ExtruderOutputModel import ExtruderOutputModel
from .Models.PrintJobOutputModel import PrintJobOutputModel
from .Models.PrinterOutputModel import PrinterOutputModel
from .PrinterOutputDevice import PrinterOutputDevice
from .Models.ExtruderOutputModel import ExtruderOutputModel
class GenericOutputController(PrinterOutputController):

View File

@ -2,12 +2,12 @@
# Cura is released under the terms of the LGPLv3 or higher.
from PyQt5.QtCore import pyqtSignal, pyqtProperty, QObject, pyqtSlot
from cura.UI.ExtruderConfigurationModel import ExtruderConfigurationModel
from cura.PrinterOutput.Models.ExtruderConfigurationModel import ExtruderConfigurationModel
from typing import Optional, TYPE_CHECKING
if TYPE_CHECKING:
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.Models.PrinterOutputModel import PrinterOutputModel
from cura.UI.MaterialOutputModel import MaterialOutputModel

View File

@ -8,8 +8,8 @@ from PyQt5.QtGui import QImage
if TYPE_CHECKING:
from cura.PrinterOutput.PrinterOutputController import PrinterOutputController
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.UI.PrinterConfigurationModel import PrinterConfigurationModel
from cura.PrinterOutput.Models.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.Models.PrinterConfigurationModel import PrinterConfigurationModel
class PrintJobOutputModel(QObject):

View File

@ -6,7 +6,7 @@ from typing import List
MYPY = False
if MYPY:
from cura.UI.ExtruderConfigurationModel import ExtruderConfigurationModel
from cura.PrinterOutput.Models.ExtruderConfigurationModel import ExtruderConfigurationModel
class PrinterConfigurationModel(QObject):

View File

@ -4,12 +4,12 @@
from PyQt5.QtCore import pyqtSignal, pyqtProperty, QObject, QVariant, pyqtSlot, QUrl
from typing import List, Dict, Optional
from UM.Math.Vector import Vector
from cura.UI.PrinterConfigurationModel import PrinterConfigurationModel
from cura.UI.ExtruderOutputModel import ExtruderOutputModel
from cura.PrinterOutput.Models.PrinterConfigurationModel import PrinterConfigurationModel
from cura.PrinterOutput.Models.ExtruderOutputModel import ExtruderOutputModel
MYPY = False
if MYPY:
from cura.UI.PrintJobOutputModel import PrintJobOutputModel
from cura.PrinterOutput.Models.PrintJobOutputModel import PrintJobOutputModel
from cura.PrinterOutput.PrinterOutputController import PrinterOutputController

View File

View File

@ -6,10 +6,10 @@ from UM.Signal import Signal
MYPY = False
if MYPY:
from cura.UI.PrintJobOutputModel import PrintJobOutputModel
from cura.UI.ExtruderOutputModel import ExtruderOutputModel
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.PrinterOutputDevice import PrinterOutputDevice
from .Models.PrintJobOutputModel import PrintJobOutputModel
from .Models.ExtruderOutputModel import ExtruderOutputModel
from .Models.PrinterOutputModel import PrinterOutputModel
from .PrinterOutputDevice import PrinterOutputDevice
class PrinterOutputController:

View File

@ -3,9 +3,6 @@
from enum import IntEnum
from typing import Callable, List, Optional, Union
from UM.Decorators import deprecated
from UM.i18n import i18nCatalog
from UM.OutputDevice.OutputDevice import OutputDevice
from PyQt5.QtCore import pyqtProperty, pyqtSignal, QObject, QTimer, QUrl
from PyQt5.QtWidgets import QMessageBox
@ -13,14 +10,17 @@ from UM.Logger import Logger
from UM.Signal import signalemitter
from UM.Qt.QtApplication import QtApplication
from UM.FlameProfiler import pyqtSlot
from UM.Decorators import deprecated
from UM.i18n import i18nCatalog
from UM.OutputDevice.OutputDevice import OutputDevice
MYPY = False
if MYPY:
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.UI.PrinterConfigurationModel import PrinterConfigurationModel
from cura.PrinterOutput.FirmwareUpdater import FirmwareUpdater
from UM.FileHandler.FileHandler import FileHandler
from UM.Scene.SceneNode import SceneNode
from .Models.PrinterOutputModel import PrinterOutputModel
from .Models.PrinterConfigurationModel import PrinterConfigurationModel
from .FirmwareUpdater import FirmwareUpdater
i18n_catalog = i18nCatalog("cura")

View File

@ -5,7 +5,7 @@ from PyQt5.QtWidgets import QApplication
from UM.Scene.Camera import Camera
from cura.UI.ObjectsModel import ObjectsModel
from cura.UI.MachineModels.MultiBuildPlateModel import MultiBuildPlateModel
from cura.Machines.Models.MultiBuildPlateModel import MultiBuildPlateModel
from UM.Application import Application
from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator

View File

@ -23,8 +23,8 @@ from UM.Signal import postponeSignals, CompressTechnique
from cura.Machines.QualityManager import getMachineDefinitionIDForQualitySearch
from cura.PrinterOutput.PrinterOutputDevice import PrinterOutputDevice, ConnectionType
from cura.UI.PrinterConfigurationModel import PrinterConfigurationModel
from cura.UI.ExtruderConfigurationModel import ExtruderConfigurationModel
from cura.PrinterOutput.Models.PrinterConfigurationModel import PrinterConfigurationModel
from cura.PrinterOutput.Models.ExtruderConfigurationModel import ExtruderConfigurationModel
from cura.UI.MaterialOutputModel import MaterialOutputModel
from cura.Settings.CuraContainerRegistry import CuraContainerRegistry
from cura.Settings.ExtruderManager import ExtruderManager

View File

@ -30,7 +30,7 @@ from .StartSliceJob import StartSliceJob, StartJobResult
import Arcus
if TYPE_CHECKING:
from cura.UI.MachineModels.MultiBuildPlateModel import MultiBuildPlateModel
from cura.Machines.Models.MultiBuildPlateModel import MultiBuildPlateModel
from cura.Machines.MachineErrorChecker import MachineErrorChecker
from UM.Scene.Scene import Scene
from UM.Settings.ContainerStack import ContainerStack

View File

@ -24,7 +24,7 @@ from cura import LayerPolygon
import numpy
from time import time
from cura.UI.ExtrudersModel import ExtrudersModel
from cura.Machines.Models.ExtrudersModel import ExtrudersModel
catalog = i18nCatalog("cura")

View File

@ -18,7 +18,7 @@ from UM.Scene.SceneNode import SceneNode
from cura.CuraApplication import CuraApplication
from cura.PrinterOutput.NetworkedPrinterOutputDevice import AuthState, NetworkedPrinterOutputDevice
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.Models.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.PrinterOutputDevice import ConnectionType
from .CloudOutputController import CloudOutputController

View File

@ -2,8 +2,8 @@
# Cura is released under the terms of the LGPLv3 or higher.
from typing import Union, Dict, Optional, Any
from cura.UI.ExtruderConfigurationModel import ExtruderConfigurationModel
from cura.UI.ExtruderOutputModel import ExtruderOutputModel
from cura.PrinterOutput.Models.ExtruderConfigurationModel import ExtruderConfigurationModel
from cura.PrinterOutput.Models.ExtruderOutputModel import ExtruderOutputModel
from .CloudClusterPrinterConfigurationMaterial import CloudClusterPrinterConfigurationMaterial
from .BaseCloudModel import BaseCloudModel

View File

@ -2,7 +2,7 @@
# Cura is released under the terms of the LGPLv3 or higher.
from typing import List, Optional, Union, Dict, Any
from cura.UI.PrinterConfigurationModel import PrinterConfigurationModel
from cura.PrinterOutput.Models.PrinterConfigurationModel import PrinterConfigurationModel
from ...UM3PrintJobOutputModel import UM3PrintJobOutputModel
from ...ConfigurationChangeModel import ConfigurationChangeModel
from ..CloudOutputController import CloudOutputController

View File

@ -3,7 +3,7 @@
from typing import List, Union, Dict, Optional, Any
from cura.PrinterOutput.PrinterOutputController import PrinterOutputController
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.Models.PrinterOutputModel import PrinterOutputModel
from .CloudClusterBuildPlate import CloudClusterBuildPlate
from .CloudClusterPrintCoreConfiguration import CloudClusterPrintCoreConfiguration
from .BaseCloudModel import BaseCloudModel

View File

@ -19,10 +19,10 @@ from UM.Scene.SceneNode import SceneNode # For typing.
from UM.Settings.ContainerRegistry import ContainerRegistry
from cura.CuraApplication import CuraApplication
from cura.UI.PrinterConfigurationModel import PrinterConfigurationModel
from cura.UI.ExtruderConfigurationModel import ExtruderConfigurationModel
from cura.PrinterOutput.Models.PrinterConfigurationModel import PrinterConfigurationModel
from cura.PrinterOutput.Models.ExtruderConfigurationModel import ExtruderConfigurationModel
from cura.PrinterOutput.NetworkedPrinterOutputDevice import AuthState, NetworkedPrinterOutputDevice
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.Models.PrinterOutputModel import PrinterOutputModel
from cura.UI.MaterialOutputModel import MaterialOutputModel
from cura.PrinterOutput.PrinterOutputDevice import ConnectionType

View File

@ -5,7 +5,7 @@ from cura.PrinterOutput.PrinterOutputController import PrinterOutputController
MYPY = False
if MYPY:
from cura.UI.PrintJobOutputModel import PrintJobOutputModel
from cura.PrinterOutput.Models.PrintJobOutputModel import PrintJobOutputModel
class ClusterUM3PrinterOutputController(PrinterOutputController):
def __init__(self, output_device):

View File

@ -2,8 +2,8 @@ from typing import List, Optional
from cura.CuraApplication import CuraApplication
from cura.PrinterOutput.NetworkedPrinterOutputDevice import NetworkedPrinterOutputDevice, AuthState
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.UI.PrintJobOutputModel import PrintJobOutputModel
from cura.PrinterOutput.Models.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.Models.PrintJobOutputModel import PrintJobOutputModel
from cura.UI.MaterialOutputModel import MaterialOutputModel
from cura.PrinterOutput.PrinterOutputDevice import ConnectionType

View File

@ -7,8 +7,8 @@ from UM.Version import Version
MYPY = False
if MYPY:
from cura.UI.PrintJobOutputModel import PrintJobOutputModel
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.Models.PrintJobOutputModel import PrintJobOutputModel
from cura.PrinterOutput.Models.PrinterOutputModel import PrinterOutputModel
class LegacyUM3PrinterOutputController(PrinterOutputController):

View File

@ -5,7 +5,7 @@ from typing import List
from PyQt5.QtCore import pyqtProperty, pyqtSignal
from cura.UI.PrintJobOutputModel import PrintJobOutputModel
from cura.PrinterOutput.Models.PrintJobOutputModel import PrintJobOutputModel
from cura.PrinterOutput.PrinterOutputController import PrinterOutputController
from .ConfigurationChangeModel import ConfigurationChangeModel

View File

@ -6,7 +6,7 @@ from unittest.mock import patch, MagicMock
from UM.Scene.SceneNode import SceneNode
from cura.UltimakerCloudAuthentication import CuraCloudAPIRoot
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.Models.PrinterOutputModel import PrinterOutputModel
from ...src.Cloud import CloudApiClient
from ...src.Cloud.CloudOutputDevice import CloudOutputDevice
from ...src.Cloud.Models.CloudClusterResponse import CloudClusterResponse

View File

@ -11,8 +11,8 @@ from UM.Qt.Duration import DurationFormat
from cura.CuraApplication import CuraApplication
from cura.PrinterOutput.PrinterOutputDevice import PrinterOutputDevice, ConnectionState, ConnectionType
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.UI.PrintJobOutputModel import PrintJobOutputModel
from cura.PrinterOutput.Models.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.Models.PrintJobOutputModel import PrintJobOutputModel
from cura.PrinterOutput.GenericOutputController import GenericOutputController
from .AutoDetectBaudJob import AutoDetectBaudJob

View File

@ -35,15 +35,15 @@ Item
anchors.topMargin: UM.Theme.getSize("welcome_pages_default_margin").height
anchors.bottomMargin: UM.Theme.getSize("welcome_pages_default_margin").height
anchors.horizontalCenter: parent.horizontalCenter
width: parent.width * 3 / 4
width: (parent.width * 3 / 4) | 0
border.color: "#dfdfdf"
border.width: 1
border.width: UM.Theme.getSize("default_lining").width
ScrollView
{
anchors.fill: parent
anchors.margins: 1
anchors.margins: UM.Theme.getSize("default_lining").width
ScrollBar.horizontal.policy: ScrollBar.AlwaysOff

View File

@ -4,25 +4,25 @@
<title>Group 2</title>
<desc>Created with Sketch.</desc>
<defs>
<path d="M53.7324653,27.9792746 L73.5751295,47.6683938 L45.5958549,47.6683938 C45.5958549,39.9957681 48.7010421,33.0427857 53.7324653,27.9792746 Z" id="path-1"></path>
<path id="path-1" d="M53.7324653,27.9792746 L73.5751295,47.6683938 L45.5958549,47.6683938 C45.5958549,39.9957681 48.7010421,33.0427857 53.7324653,27.9792746 Z" />
<filter x="-25.0%" y="-45.7%" width="150.0%" height="171.1%" filterUnits="objectBoundingBox" id="filter-2">
<feOffset dx="0" dy="-2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
<path d="M139.896373,51.4765924 C139.896373,37.1181394 151.495214,25.4783134 165.803109,25.4783134 L165.803109,51.4765924 L139.896373,51.4765924 Z" id="path-3"></path>
<path id="path-3" d="M139.896373,51.4765924 C139.896373,37.1181394 151.495214,25.4783134 165.803109,25.4783134 L165.803109,51.4765924 L139.896373,51.4765924 Z" />
<filter x="-27.0%" y="-19.2%" width="154.0%" height="153.8%" filterUnits="objectBoundingBox" id="filter-4">
<feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
<path d="M106.813801,128.509823 C106.813801,114.15137 118.412641,102.511544 132.720536,102.511544 L132.720536,128.509823 L106.813801,128.509823 Z" id="path-5"></path>
<path id="path-5" d="M106.813801,128.509823 C106.813801,114.15137 118.412641,102.511544 132.720536,102.511544 L132.720536,128.509823 L106.813801,128.509823 Z" />
<filter x="-27.0%" y="-19.2%" width="154.0%" height="153.8%" filterUnits="objectBoundingBox" id="filter-6">
<feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
<path d="M123.936343,93.6963118 L142.124524,111.948762 L116.478164,111.948762 C116.478164,104.83599 119.324441,98.3903503 123.936343,93.6963118 Z" id="path-7"></path>
<path id="path-7" d="M123.936343,93.6963118 L142.124524,111.948762 L116.478164,111.948762 C116.478164,104.83599 119.324441,98.3903503 123.936343,93.6963118 Z" />
<filter x="-27.3%" y="-27.4%" width="154.6%" height="176.7%" filterUnits="objectBoundingBox" id="filter-8">
<feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
@ -30,41 +30,37 @@
</filter>
</defs>
<g id="Iteration-4" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="4.-collect-data" transform="translate(-540.000000, -267.000000)">
<g id="Group-2" transform="translate(540.000000, 267.000000)">
<rect id="Rectangle-Copy-14" fill="#CCCCCC" x="13.4715026" y="14.507772" width="186.528497" height="141.968912"></rect>
<g id="Group">
<rect id="Rectangle" fill="#E5E5E5" x="0" y="11.4392428" width="189.637306" height="135.711016"></rect>
<rect id="Rectangle-Copy-5" fill="#E5E5E5" x="0" y="0" width="189.637306" height="10.3993116" rx="1"></rect>
<ellipse id="Oval" fill="#FFFFFF" cx="7.25388601" cy="5.1996558" rx="3.10880829" ry="3.11979348"></ellipse>
<ellipse id="Oval-Copy" fill="#FFFFFF" cx="16.5803109" cy="5.1996558" rx="3.10880829" ry="3.11979348"></ellipse>
<ellipse id="Oval-Copy-2" fill="#FFFFFF" cx="25.9067358" cy="5.1996558" rx="3.10880829" ry="3.11979348"></ellipse>
<ellipse id="Oval-Copy-3" fill="#2671E7" cx="50.7772021" cy="50.9566268" rx="25.9067358" ry="25.998279"></ellipse>
<rect id="Rectangle" fill="#CCCCCC" x="47.6683938" y="114.912393" width="19.1709845" height="3.63975906" rx="1"></rect>
<rect id="Rectangle-Copy-7" fill="#CCCCCC" x="47.6683938" y="106.592944" width="13.9896373" height="3.63975906" rx="1"></rect>
<rect id="Rectangle-Copy-6" fill="#CCCCCC" x="47.6683938" y="122.711877" width="12.9533679" height="3.63975906" rx="1"></rect>
<ellipse id="Oval" fill="#E8F2FC" cx="41.1917098" cy="124.531756" rx="2.33160622" ry="2.33984511"></ellipse>
<ellipse id="Oval-Copy-6" fill="#2671E7" cx="41.1917098" cy="116.732273" rx="2.33160622" ry="2.33984511"></ellipse>
<ellipse id="Oval-Copy-7" fill="#104CAA" cx="41.1917098" cy="108.412823" rx="2.33160622" ry="2.33984511"></ellipse>
<ellipse id="Oval-Copy-4" fill="#2671E7" cx="139.896373" cy="51.4765924" rx="25.9067358" ry="25.998279"></ellipse>
<ellipse id="Oval-Copy-5" fill="#2671E7" cx="138.341969" cy="115.952324" rx="25.9067358" ry="25.998279"></ellipse>
<g id="Combined-Shape" transform="translate(59.585492, 37.823834) rotate(90.000000) translate(-59.585492, -37.823834) ">
<use fill="black" fill-opacity="1" filter="url(#filter-2)" xlink:href="#path-1"></use>
<use fill="#E8F2FC" fill-rule="evenodd" xlink:href="#path-1"></use>
</g>
<g id="Combined-Shape-Copy" transform="translate(152.849741, 38.477453) scale(-1, 1) translate(-152.849741, -38.477453) ">
<use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-3"></use>
<use fill="#E8F2FC" fill-rule="evenodd" xlink:href="#path-3"></use>
</g>
<g id="Combined-Shape-Copy-2" transform="translate(119.767168, 115.510684) scale(1, -1) rotate(-46.000000) translate(-119.767168, -115.510684) ">
<use fill="black" fill-opacity="1" filter="url(#filter-6)" xlink:href="#path-5"></use>
<use fill="#E8F2FC" fill-rule="evenodd" xlink:href="#path-5"></use>
</g>
<g id="Combined-Shape-Copy-3" transform="translate(129.301344, 102.822537) scale(-1, 1) rotate(90.000000) translate(-129.301344, -102.822537) ">
<use fill="black" fill-opacity="1" filter="url(#filter-8)" xlink:href="#path-7"></use>
<use fill="#104CAA" fill-rule="evenodd" xlink:href="#path-7"></use>
</g>
</g>
<rect fill="#CCCCCC" x="13.4715026" y="14.507772" width="186.528497" height="141.968912"></rect>
<g>
<rect fill="#E5E5E5" x="0" y="11.4392428" width="189.637306" height="135.711016"></rect>
<rect fill="#E5E5E5" x="0" y="0" width="189.637306" height="10.3993116" rx="1"></rect>
<ellipse fill="#FFFFFF" cx="7.25388601" cy="5.1996558" rx="3.10880829" ry="3.11979348"></ellipse>
<ellipse fill="#FFFFFF" cx="16.5803109" cy="5.1996558" rx="3.10880829" ry="3.11979348"></ellipse>
<ellipse fill="#FFFFFF" cx="25.9067358" cy="5.1996558" rx="3.10880829" ry="3.11979348"></ellipse>
<ellipse fill="#2671E7" cx="50.7772021" cy="50.9566268" rx="25.9067358" ry="25.998279"></ellipse>
<rect fill="#CCCCCC" x="47.6683938" y="114.912393" width="19.1709845" height="3.63975906" rx="1"></rect>
<rect fill="#CCCCCC" x="47.6683938" y="106.592944" width="13.9896373" height="3.63975906" rx="1"></rect>
<rect fill="#CCCCCC" x="47.6683938" y="122.711877" width="12.9533679" height="3.63975906" rx="1"></rect>
<ellipse fill="#E8F2FC" cx="41.1917098" cy="124.531756" rx="2.33160622" ry="2.33984511"></ellipse>
<ellipse fill="#2671E7" cx="41.1917098" cy="116.732273" rx="2.33160622" ry="2.33984511"></ellipse>
<ellipse fill="#104CAA" cx="41.1917098" cy="108.412823" rx="2.33160622" ry="2.33984511"></ellipse>
<ellipse fill="#2671E7" cx="139.896373" cy="51.4765924" rx="25.9067358" ry="25.998279"></ellipse>
<ellipse fill="#2671E7" cx="138.341969" cy="115.952324" rx="25.9067358" ry="25.998279"></ellipse>
<g transform="translate(59.585492, 37.823834) rotate(90.000000) translate(-59.585492, -37.823834) ">
<use fill="black" fill-opacity="1" filter="url(#filter-2)" xlink:href="#path-1"></use>
<use fill="#E8F2FC" fill-rule="evenodd" xlink:href="#path-1"></use>
</g>
<g transform="translate(152.849741, 38.477453) scale(-1, 1) translate(-152.849741, -38.477453) ">
<use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-3"></use>
<use fill="#E8F2FC" fill-rule="evenodd" xlink:href="#path-3"></use>
</g>
<g transform="translate(119.767168, 115.510684) scale(1, -1) rotate(-46.000000) translate(-119.767168, -115.510684) ">
<use fill="black" fill-opacity="1" filter="url(#filter-6)" xlink:href="#path-5"></use>
<use fill="#E8F2FC" fill-rule="evenodd" xlink:href="#path-5"></use>
</g>
<g transform="translate(129.301344, 102.822537) scale(-1, 1) rotate(90.000000) translate(-129.301344, -102.822537) ">
<use fill="black" fill-opacity="1" filter="url(#filter-8)" xlink:href="#path-7"></use>
<use fill="#104CAA" fill-rule="evenodd" xlink:href="#path-7"></use>
</g>
</g>
</g>

Before

Width:  |  Height:  |  Size: 6.7 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

@ -3,14 +3,10 @@
<!-- Generator: Sketch 52.6 (67491) - http://www.bohemiancoding.com/sketch -->
<title>Group-cloud</title>
<desc>Created with Sketch.</desc>
<g id="Iteration-4" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="9-Account-and-finish" transform="translate(-540.000000, -255.000000)">
<g id="Group-cloud" transform="translate(540.000000, 255.000000)">
<path d="M184.645934,101.269713 C184.402632,95.7100464 182.987439,90.4490704 180.637153,85.7196609 L184.851695,85.7196609 C187.817797,85.7196609 190.254237,83.3353195 190.254237,80.4326431 L190.36017,80.4326431 L190.36017,16.262763 C190.36017,15.1224259 189.40678,14.2930898 188.347457,14.2930898 L149.933791,14.2930898 L149.933791,63.9459005 C148.198887,63.7202321 146.428947,63.6037711 144.631348,63.6037711 C142.750807,63.6037711 140.900537,63.7312272 139.088982,63.9778345 L139.088982,14.2930898 L138.930084,14.2930898 L138.930084,11.4224041 C138.588831,10.5826557 137.742066,10.0297833 136.824681,10.0297833 L63.0561437,10.0297833 C61.7452327,10.0297833 60.7918428,11.0794119 60.7918428,12.2456657 L60.7918428,84.4367811 C60.7918428,87.7022917 63.5328385,90.3846758 66.8697029,90.3846758 L106.674877,90.3846758 C105.315869,94.3430337 104.579138,98.5831707 104.579138,102.99253 C104.579138,104.646987 104.68286,106.27762 104.884257,107.878484 L65.082097,107.878484 C63.771186,107.995109 62.460275,108.461611 61.5068852,109.277988 L60.7918428,109.977741 C60.0768004,111.143995 58.6467157,111.377246 57.216631,111.377246 L50.7812497,111.377246 C50.4237285,111.377246 50.0662073,111.027369 50.0662073,110.677493 L50.0662073,101.269713 L13.3474575,101.269713 C12.1822033,101.373379 11.0169491,101.788048 10.1694914,102.513717 L9.53389824,103.135719 C8.89830503,104.172389 7.62711862,104.379723 6.35593214,104.379723 L0.635593219,104.379723 C0.317796608,104.379723 -6.39488462e-14,104.068722 -6.39488462e-14,103.757721 L-6.39488462e-14,5.99972886 C-6.39488462e-14,5.68872783 0.317796608,5.3777268 0.635593219,5.3777268 L50.0662073,5.3777268 L50.0662073,0.699752327 C50.0662073,0.349876165 50.4237285,-1.63424829e-13 50.7812497,-1.63424829e-13 L149.218749,-1.63424829e-13 C149.57627,-1.63424829e-13 149.933791,0.349876165 149.933791,0.699752327 L149.933791,5.3777268 L199.364407,5.3777268 C199.682204,5.3777268 200,5.68872783 200,5.99972886 L200,103.757721 C200,104.068722 199.682204,104.379723 199.364407,104.379723 L193.644068,104.379723 C192.478814,104.276056 191.313559,103.861388 190.466102,103.135719 L189.830509,102.513717 C189.194915,101.477046 187.923729,101.269713 186.652543,101.269713 L184.645934,101.269713 Z M50.0662073,14.2930898 L11.5466101,14.2930898 C10.3813559,14.2930898 9.53389824,15.2260929 9.53389824,16.262763 L9.53389824,80.4326431 C9.53389824,83.3353195 11.9703389,85.7196609 14.9364406,85.7196609 L50.0662073,85.7196609 L50.0662073,14.2930898 Z" id="Combined-Shape" fill="#08073F" fill-rule="nonzero"></path>
<g id="Group" transform="translate(112.574850, 70.658683)" fill="#3282FF">
<path d="M32.3080573,64.1243454 C14.46481,64.1243454 1.42108547e-14,49.7696217 1.42108547e-14,32.0621727 C1.42108547e-14,14.3547237 14.46481,-4.26325641e-14 32.3080573,-4.26325641e-14 C50.1513046,-4.26325641e-14 64.6161146,14.3547237 64.6161146,32.0621727 C64.6161146,49.7696217 50.1513046,64.1243454 32.3080573,64.1243454 Z M46.2852901,26.9720257 C45.8876525,23.478071 42.9053703,20.8062233 39.3266316,20.8062233 C38.3325376,20.8062233 37.5372623,21.0117501 36.741987,21.4228035 C34.9526177,18.5454291 31.7715167,16.6956884 28.3915969,16.6956884 C22.8246701,16.6956884 18.4506561,21.2172768 18.4506561,26.9720257 C18.4506561,26.9720257 18.4506561,26.9720257 18.4506561,27.1775525 C15.0707363,27.588606 12.4860917,30.6715072 12.4860917,34.165462 C12.4860917,38.0704701 15.6671927,41.3588981 19.4447502,41.3588981 C22.4270324,41.3588981 41.7124574,41.3588981 45.2911961,41.3588981 C49.0687535,41.3588981 52.2498546,38.0704701 52.2498546,34.165462 C52.2498546,30.4659805 49.66521,27.588606 46.2852901,26.9720257 Z" id="Combined-Shape"></path>
</g>
</g>
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M184.645934,101.269713 C184.402632,95.7100464 182.987439,90.4490704 180.637153,85.7196609 L184.851695,85.7196609 C187.817797,85.7196609 190.254237,83.3353195 190.254237,80.4326431 L190.36017,80.4326431 L190.36017,16.262763 C190.36017,15.1224259 189.40678,14.2930898 188.347457,14.2930898 L149.933791,14.2930898 L149.933791,63.9459005 C148.198887,63.7202321 146.428947,63.6037711 144.631348,63.6037711 C142.750807,63.6037711 140.900537,63.7312272 139.088982,63.9778345 L139.088982,14.2930898 L138.930084,14.2930898 L138.930084,11.4224041 C138.588831,10.5826557 137.742066,10.0297833 136.824681,10.0297833 L63.0561437,10.0297833 C61.7452327,10.0297833 60.7918428,11.0794119 60.7918428,12.2456657 L60.7918428,84.4367811 C60.7918428,87.7022917 63.5328385,90.3846758 66.8697029,90.3846758 L106.674877,90.3846758 C105.315869,94.3430337 104.579138,98.5831707 104.579138,102.99253 C104.579138,104.646987 104.68286,106.27762 104.884257,107.878484 L65.082097,107.878484 C63.771186,107.995109 62.460275,108.461611 61.5068852,109.277988 L60.7918428,109.977741 C60.0768004,111.143995 58.6467157,111.377246 57.216631,111.377246 L50.7812497,111.377246 C50.4237285,111.377246 50.0662073,111.027369 50.0662073,110.677493 L50.0662073,101.269713 L13.3474575,101.269713 C12.1822033,101.373379 11.0169491,101.788048 10.1694914,102.513717 L9.53389824,103.135719 C8.89830503,104.172389 7.62711862,104.379723 6.35593214,104.379723 L0.635593219,104.379723 C0.317796608,104.379723 -6.39488462e-14,104.068722 -6.39488462e-14,103.757721 C-6.39488462e-14,5.68872783 0.317796608,5.3777268 0.635593219,5.3777268 L50.0662073,5.3777268 L50.0662073,0.699752327 C50.0662073,0.349876165 50.4237285,-1.63424829e-13 50.7812497,-1.63424829e-13 C149.57627,-1.63424829e-13 149.933791,0.349876165 149.933791,0.699752327 L149.933791,5.3777268 L199.364407,5.3777268 C199.682204,5.3777268 200,5.68872783 200,5.99972886 L200,103.757721 C200,104.068722 199.682204,104.379723 199.364407,104.379723 L193.644068,104.379723 C192.478814,104.276056 191.313559,103.861388 190.466102,103.135719 L189.830509,102.513717 C189.194915,101.477046 187.923729,101.269713 186.652543,101.269713 L184.645934,101.269713 Z M50.0662073,14.2930898 L11.5466101,14.2930898 C10.3813559,14.2930898 9.53389824,15.2260929 9.53389824,16.262763 L9.53389824,80.4326431 C9.53389824,83.3353195 11.9703389,85.7196609 14.9364406,85.7196609 L50.0662073,85.7196609 L50.0662073,14.2930898 Z" fill="#08073F" fill-rule="nonzero"></path>
<g transform="translate(112.574850, 70.658683)" fill="#3282FF">
<path d="M32.3080573,64.1243454 C14.46481,64.1243454 1.42108547e-14,49.7696217 1.42108547e-14,32.0621727 C1.42108547e-14,14.3547237 14.46481,-4.26325641e-14 32.3080573,-4.26325641e-14 C50.1513046,-4.26325641e-14 64.6161146,14.3547237 64.6161146,32.0621727 C64.6161146,49.7696217 50.1513046,64.1243454 32.3080573,64.1243454 Z M46.2852901,26.9720257 C45.8876525,23.478071 42.9053703,20.8062233 39.3266316,20.8062233 C38.3325376,20.8062233 37.5372623,21.0117501 36.741987,21.4228035 C34.9526177,18.5454291 31.7715167,16.6956884 28.3915969,16.6956884 C22.8246701,16.6956884 18.4506561,21.2172768 18.4506561,26.9720257 C18.4506561,26.9720257 18.4506561,26.9720257 18.4506561,27.1775525 C15.0707363,27.588606 12.4860917,30.6715072 12.4860917,34.165462 C12.4860917,38.0704701 15.6671927,41.3588981 19.4447502,41.3588981 C22.4270324,41.3588981 41.7124574,41.3588981 45.2911961,41.3588981 C49.0687535,41.3588981 52.2498546,38.0704701 52.2498546,34.165462 C52.2498546,30.4659805 49.66521,27.588606 46.2852901,26.9720257 Z"></path>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@ -3,13 +3,9 @@
<!-- Generator: Sketch 52.6 (67491) - http://www.bohemiancoding.com/sketch -->
<title>cura</title>
<desc>Created with Sketch.</desc>
<g id="Iteration-4" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="1.-Welcome" transform="translate(-580.000000, -333.000000)" fill="#000000" fill-rule="nonzero">
<g id="cura" transform="translate(580.000000, 333.000000)">
<path d="M114.3,63.1 C112.104248,65.5577268 108.994324,67.0042033 105.7,67.1 L14.3,67.1 C11.0056762,67.0042033 7.89575168,65.5577268 5.7,63.1 L114.3,63.1 Z M120,59.1 L0,59.1 L0,59.9 C0,64.5 6.3,71.1 14.3,71.1 L105.7,71.1 C113.7,71.1 120,64.4 120,59.9 L120,59.1 Z" id="Shape"></path>
<path d="M106,4.9 L106,59.1 L14,59.1 L14,4.9 L106,4.9 Z M110,0.9 L10,0.9 L10,63.1 L110,63.1 L110,0.9 Z" id="Shape"></path>
<path d="M60.5,36.5 L72.3,36.5 L72.3,43.1 L60.5,43.1 C52.8,43.1 48,37.8 48,30.3 C48,22.8 52.7,17.6 60.5,17.6 L72.3,17.6 L72.3,24.2 L60.5,24.2 C56.6,24.2 54.6,27 54.6,30.3 C54.6,33.7 56.6,36.5 60.5,36.5 Z M52.3,8.9 L36.9,24.5 L36.9,55.1 L67.6,55.1 L83.2,39.5 L83.2,8.9 L52.3,8.9 Z" id="Shape"></path>
</g>
</g>
<g id="Iteration-4" stroke="none" stroke-width="1" fill="#000000" fill-rule="nonzero">
<path d="M114.3,63.1 C112.104248,65.5577268 108.994324,67.0042033 105.7,67.1 L14.3,67.1 C11.0056762,67.0042033 7.89575168,65.5577268 5.7,63.1 L114.3,63.1 Z M120,59.1 L0,59.1 L0,59.9 C0,64.5 6.3,71.1 14.3,71.1 L105.7,71.1 C113.7,71.1 120,64.4 120,59.9 L120,59.1 Z" />
<path d="M106,4.9 L106,59.1 L14,59.1 L14,4.9 L106,4.9 Z M110,0.9 L10,0.9 L10,63.1 L110,63.1 L110,0.9 Z" />
<path d="M60.5,36.5 L72.3,36.5 L72.3,43.1 L60.5,43.1 C52.8,43.1 48,37.8 48,30.3 C48,22.8 52.7,17.6 60.5,17.6 L72.3,17.6 L72.3,24.2 L60.5,24.2 C56.6,24.2 54.6,27 54.6,30.3 C54.6,33.7 56.6,36.5 60.5,36.5 Z M52.3,8.9 L36.9,24.5 L36.9,55.1 L67.6,55.1 L83.2,39.5 L83.2,8.9 L52.3,8.9 Z" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1,27 +1,26 @@
from unittest.mock import MagicMock
import pytest
from cura.UI.MachineModels.DiscoveredPrintersModel import DiscoveredPrintersModel
@pytest.fixture()
def discovered_printer_model(application) -> DiscoveredPrintersModel:
return DiscoveredPrintersModel()
def test_discoveredPrinters(discovered_printer_model):
mocked_device = MagicMock()
mocked_callback = MagicMock()
discovered_printer_model.addDiscoveredPrinter("ip", "key", "name", mocked_callback, "machine_type", mocked_device)
device = discovered_printer_model.discovered_printers[0]
discovered_printer_model.createMachineFromDiscoveredPrinter(device)
mocked_callback.assert_called_with("key")
assert len(discovered_printer_model.discovered_printers) == 1
# Test if removing it works
discovered_printer_model.removeDiscoveredPrinter("ip")
assert len(discovered_printer_model.discovered_printers) == 0
from unittest.mock import MagicMock
import pytest
from cura.Machines.Models.DiscoveredPrintersModel import DiscoveredPrintersModel
@pytest.fixture()
def discovered_printer_model(application) -> DiscoveredPrintersModel:
return DiscoveredPrintersModel()
def test_discoveredPrinters(discovered_printer_model):
mocked_device = MagicMock()
mocked_callback = MagicMock()
discovered_printer_model.addDiscoveredPrinter("ip", "key", "name", mocked_callback, "machine_type", mocked_device)
device = discovered_printer_model.discovered_printers[0]
discovered_printer_model.createMachineFromDiscoveredPrinter(device)
mocked_callback.assert_called_with("key")
assert len(discovered_printer_model.discovered_printers) == 1
# Test if removing it works
discovered_printer_model.removeDiscoveredPrinter("ip")
assert len(discovered_printer_model.discovered_printers) == 0

View File

@ -2,9 +2,9 @@ from unittest.mock import MagicMock
import pytest
from cura.UI.PrinterConfigurationModel import PrinterConfigurationModel
from cura.UI.PrintJobOutputModel import PrintJobOutputModel
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.Models.PrinterConfigurationModel import PrinterConfigurationModel
from cura.PrinterOutput.Models.PrintJobOutputModel import PrintJobOutputModel
from cura.PrinterOutput.Models.PrinterOutputModel import PrinterOutputModel
test_validate_data_get_set = [
{"attribute": "compatibleMachineFamilies", "value": ["yay"]},

View File

@ -4,8 +4,8 @@ from unittest.mock import MagicMock
import pytest
from cura.UI.PrinterConfigurationModel import PrinterConfigurationModel
from cura.UI.ExtruderConfigurationModel import ExtruderConfigurationModel
from cura.PrinterOutput.Models.PrinterConfigurationModel import PrinterConfigurationModel
from cura.PrinterOutput.Models.ExtruderConfigurationModel import ExtruderConfigurationModel
test_validate_data_get_set = [
{"attribute": "extruderConfigurations", "value": [ExtruderConfigurationModel()]},

View File

@ -4,8 +4,8 @@ from unittest.mock import MagicMock
import pytest
from cura.UI.PrintJobOutputModel import PrintJobOutputModel
from cura.UI.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.Models.PrintJobOutputModel import PrintJobOutputModel
from cura.PrinterOutput.Models.PrinterOutputModel import PrinterOutputModel
test_validate_data_get_set = [
{"attribute": "name", "value": "YAY"},

View File

@ -5,7 +5,7 @@ import os.path
from UM.Preferences import Preferences
from UM.Resources import Resources
from cura.CuraApplication import CuraApplication
from cura.UI.MachineModels.SettingVisibilityPresetsModel import SettingVisibilityPresetsModel
from cura.Machines.Models.SettingVisibilityPresetsModel import SettingVisibilityPresetsModel
from cura.Settings.SettingVisibilityPreset import SettingVisibilityPreset
setting_visibility_preset_test_settings = {"test", "zomg", "derp", "yay", "whoo"}