mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-04-23 14:19:37 +08:00

"share/cura/resources/qml/Menus/RecentFilesMenu.qml:39: TypeError: Passing incompatible arguments to C++ functions from JavaScript is not allowed." This was passing the Instantiator index, which is a Number to menu.removeItem which is expecting an object. Add the missing index argument. I found Qt 5.7 had two arguments so it has been there for some time.
36 lines
923 B
QML
36 lines
923 B
QML
// Copyright (c) 2022 Ultimaker B.V.
|
|
// Cura is released under the terms of the LGPLv3 or higher.
|
|
|
|
import QtQuick 2.2
|
|
import QtQuick.Controls 2.15
|
|
|
|
import UM 1.3 as UM
|
|
import Cura 1.0 as Cura
|
|
|
|
import "../Dialogs"
|
|
|
|
Cura.Menu
|
|
{
|
|
id: menu
|
|
title: catalog.i18nc("@title:menu menubar:file", "Open &Recent")
|
|
//iconName: "document-open-recent";
|
|
|
|
enabled: CuraApplication.recentFiles.length > 0;
|
|
|
|
Instantiator
|
|
{
|
|
model: CuraApplication.recentFiles
|
|
Cura.MenuItem
|
|
{
|
|
text:
|
|
{
|
|
var path = decodeURIComponent(modelData.toString())
|
|
return (index + 1) + ". " + path.slice(path.lastIndexOf("/") + 1);
|
|
}
|
|
onTriggered: CuraApplication.readLocalFile(modelData)
|
|
}
|
|
onObjectAdded: (index, object) => menu.insertItem(index, object)
|
|
onObjectRemoved: (index, object) => menu.removeItem(object)
|
|
}
|
|
}
|