Page MenuHomeAleph Objects Inc

Predefined commands not appearing
Closed, ResolvedPublic

Description

The buttons in the right toolbar under "Predefined commands" are not appearing. Below "Predefined commands" I just see Start Print / Pause / Abort Print.
I don't see the seven predefined command buttons for Preheat nozzle, Wipe nozzle, etc.

I am seeing this issue on the Windows build, but not Linux or Mac.

This is with version 2.6.19 downloaded from http://devel.alephobjects.com/lulzbot/software/Cura2/windows/cura2_2.6.19_win32.exe

Related Objects

Event Timeline

alexei assigned this task to mbocevski.Jul 28 2017, 9:34 AM
alexei triaged this task as Normal priority.
alexei added a subscriber: mbocevski.
alexei added a subscriber: alexei.Jul 28 2017, 9:42 AM

I can confirm that under wine WIN build v2.6.19 All of the Predefined command buttons are not appearing.

I can replicate this as well, but I can't find any reason why this is occurring. @tranter can we have Elena maybe to look into this?

Well, I see same issue with Windows 7 with this build:
This is with version 2.6.19 downloaded from http://devel.alephobjects.com/lulzbot/software/Cura2/windows/cura2_2.6.19_win32.exe

Played a bit with this issue. It looks like Commands.qml (or even simple qml like this:
import QtQuick 2.2
import QtQuick.Controls 1.1
import QtQuick.Controls.Styles 1.1
import QtQuick.Layouts 1.1

import UM 1.2 as UM
import Cura 1.0 as Cura

Item {

id: nonLayered

opacity: 0.5

width: 100
height: 100

Rectangle { width: 80; height: 80; border.width: 1 }
Rectangle { x: 20; y: 20; width: 80; height: 80; border.width: 1 }

}

can't be loaded.
Verified path (default path has spaces,
"C:\\PROGRA~2\\CURA22~1.6\\plugins\\LulzBotPredefinedCommands11111\\Commands.qml" gives same results.

Also tested on Windows 10, results are same with Windows 7.

It looks like this portion of code doesn't work on Windows:
var content = Qt.createQmlObject('import QtQuick 2.2; Loader {}', printMonitor);

content.source = "C:\\myFile.qml"

If I use var dynamicObject = Qt.createQmlObject(

'import QtQuick 2.2;Rectangle{id:sample;width:40; height:40;color:"red";}',
printMonitor) (qml code inside, it works) This is all finding for now.
efilenko added a comment.EditedOct 5 2017, 3:57 PM

@tranter @alexei @mbocevski: I know how to make it work, but I have no scientific explanation why it works this way.

  1. Copy C:\Program Files (x86)\Cura2 2.6\plugins\LulzBotPredefinedCommands\Commands.qml to

C:\Program Files (x86)\Cura2 2.6\resources\qml directory.

  1. Make this change in C:\Program Files (x86)\Cura2 2.6\resources\qml\PrintMonitor.qml file:
	    function loadSection(label, path)
	    {
	        var title = Qt.createQmlObject('import QtQuick 2.2; Loader {property string label: ""}', printMonitor);
	        title.sourceComponent = monitorSection
	        title.label = label
	        var content = Qt.createQmlObject('import QtQuick 2.2; Loader {}', printMonitor);
	        content.source = "Commands.qml"//path
	        content.item.width = base.width - 2 * UM.Theme.getSize("default_margin").width
	    }

Basically, for some unknown reason Loader source must be local qml file in the same directory, it doesn't want path to qml file.
I tested on Windows 10 and Windows 7. It works. Not sure, how we can proceed with changes, but this is the fix. Didn't tested on Linux or MAC.

Question to everyone, how we can proceed with this??? The issue is Window7,10 only???

@tranter @alexei @mbocevski: Please, test it. Added fix.

@karrad, @Yahuba : Is this working now under WIN as expected?

I have seen the pre-defined commands on every OS in the past few versions. This ticket can be closed.

alexei closed this task as Resolved.Oct 27 2017, 1:41 PM