diff options
author | Kostas Karmas <konskarm@gmail.com> | 2021-01-04 17:07:53 +0300 |
---|---|---|
committer | Kostas Karmas <konskarm@gmail.com> | 2021-01-04 17:07:53 +0300 |
commit | 70550594cd113bee4af662c1dd980738ed3dbe0d (patch) | |
tree | ac8de0adeb15f328425ca380a23ce1f925b90885 | |
parent | 71994eaaf90ca6302cbbc860ebb1366bf710b8fe (diff) |
Connect the visibility of the components through their properties
As Ghostkeeper suspected correctly in the review comment https://github.com/Ultimaker/Cura/pull/9012#discussion_r549707433
the binding wasn't working because the model was being retrieved using a function
(CuraApplication.getFileProviderModel()).
Separating this model into a variable allows us to properly bind the "visible" properties of the
menu items with the count property of the model without a problem.
CURA-7868
-rw-r--r-- | resources/qml/Menus/FileMenu.qml | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/resources/qml/Menus/FileMenu.qml b/resources/qml/Menus/FileMenu.qml index a1bd246763..94fc2358e1 100644 --- a/resources/qml/Menus/FileMenu.qml +++ b/resources/qml/Menus/FileMenu.qml @@ -11,6 +11,7 @@ Menu { id: base title: catalog.i18nc("@title:menu menubar:toplevel", "&File") + property var fileProviderModel: CuraApplication.getFileProviderModel() MenuItem { @@ -22,23 +23,13 @@ Menu { id: openMenu action: Cura.Actions.open - visible: (CuraApplication.getFileProviderModel().count == 1) + visible: (base.fileProviderModel.count == 1) } OpenFilesMenu { id: openFilesMenu - visible: (CuraApplication.getFileProviderModel().count > 1) - } - - Connections - { - target: CuraApplication.getFileProviderModel() - onItemsChanged: - { - openMenu.visible = (CuraApplication.getFileProviderModel().count == 1) // 1 because the open local files menu should always exist in the model - openFilesMenu.visible = (CuraApplication.getFileProviderModel().count > 1) - } + visible: (base.fileProviderModel.count > 1) } RecentFilesMenu { } |