CURA-5035 Small changes

This commit is contained in:
Ian Paschal 2018-04-05 09:47:43 +02:00
parent f0c36f8471
commit 15b8d18da8
5 changed files with 26 additions and 9 deletions

View file

@ -49,12 +49,12 @@ Window
ToolboxDownloadsPage ToolboxDownloadsPage
{ {
id: viewDownloads id: viewDownloads
visible: dataReady && manager.currentView != "installed" && manager.detailView == "" visible: manager.currentView != "installed" && !manager.detailView
} }
ToolboxDetailsPage ToolboxDetailsPage
{ {
id: viewDetail id: viewDetail
visible: dataReady && manager.currentView != "installed" && manager.detailView != "" visible: manager.currentView != "installed" && manager.detailView
} }
ToolboxInstalledPage ToolboxInstalledPage
{ {

View file

@ -44,7 +44,7 @@ Item
} }
width: UM.Theme.getSize("base_unit").width * 4 width: UM.Theme.getSize("base_unit").width * 4
height: UM.Theme.getSize("base_unit").height * 2 height: UM.Theme.getSize("base_unit").height * 2
onClicked: manager.detailView = "" onClicked: manager.detailView = false
style: ButtonStyle style: ButtonStyle
{ {
background: Rectangle background: Rectangle

View file

@ -63,7 +63,8 @@ Item
anchors.fill: parent anchors.fill: parent
onClicked: { onClicked: {
console.log(model.id) console.log(model.id)
manager.detailView = model.id manager.detailView = true
manager.setDetailData(model.id)
} }
} }
} }

View file

@ -57,7 +57,7 @@ Rectangle {
{ {
manager.filterPackagesByType("plugin") manager.filterPackagesByType("plugin")
manager.currentView = "plugins" manager.currentView = "plugins"
manager.detailView = "" manager.detailView = false
} }
} }
@ -93,7 +93,7 @@ Rectangle {
{ {
manager.filterPackagesByType("material") manager.filterPackagesByType("material")
manager.currentView = "materials" manager.currentView = "materials"
manager.detailView = "" manager.detailView = false
} }
} }
} }

View file

@ -48,7 +48,8 @@ class Toolbox(QObject, Extension):
# Nowadays can be 'plugins', 'materials' or 'installed' # Nowadays can be 'plugins', 'materials' or 'installed'
self._current_view = "plugins" self._current_view = "plugins"
self._detail_view = "" self._detail_view = False
self._detail_data = {}
self._restart_required = False self._restart_required = False
@ -297,14 +298,29 @@ class Toolbox(QObject, Extension):
def currentView(self): def currentView(self):
return self._current_view return self._current_view
def setDetailView(self, detail_view = ""): def setDetailView(self, bool = False):
self._detail_view = detail_view self._detail_view = bool
self.detailViewChanged.emit() self.detailViewChanged.emit()
@pyqtProperty(str, fset = setDetailView, notify = detailViewChanged) @pyqtProperty(str, fset = setDetailView, notify = detailViewChanged)
def detailView(self): def detailView(self):
return self._detail_view return self._detail_view
# Set the detail data given a plugin ID:
@pyqtSlot(str)
def setDetailData(self, id):
if not self._packages_model:
return
for plugin in self._plugins_model.items:
if plugin.id is id:
print(plugin)
self._detail_view = plugin
self.detailViewChanged.emit()
@pyqtProperty(QObject, notify = detailViewChanged)
def detailData(self):
return self._detail_data
@pyqtProperty(QObject, notify = packagesMetadataChanged) @pyqtProperty(QObject, notify = packagesMetadataChanged)
def pluginsModel(self): def pluginsModel(self):
self._plugins_model = PluginsModel(None, self._current_view) self._plugins_model = PluginsModel(None, self._current_view)