mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-25 15:44:04 -06:00
Allow making settings visible from the sidebar
This commit is contained in:
parent
b63f4e0bee
commit
7fafcef40b
2 changed files with 37 additions and 5 deletions
|
@ -117,6 +117,7 @@ Item {
|
||||||
elide: Text.ElideMiddle;
|
elide: Text.ElideMiddle;
|
||||||
|
|
||||||
color: UM.Theme.getColor("setting_control_text");
|
color: UM.Theme.getColor("setting_control_text");
|
||||||
|
opacity: (definition.visible) ? 1 : 0.5
|
||||||
// emphasize the setting if it has a value in the user or quality profile
|
// emphasize the setting if it has a value in the user or quality profile
|
||||||
font: base.doQualityUserSettingEmphasis && base.stackLevel != undefined && base.stackLevel <= 1 ? UM.Theme.getFont("default_italic") : UM.Theme.getFont("default")
|
font: base.doQualityUserSettingEmphasis && base.stackLevel != undefined && base.stackLevel <= 1 ? UM.Theme.getFont("default_italic") : UM.Theme.getFont("default")
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,6 +14,7 @@ Item
|
||||||
id: base;
|
id: base;
|
||||||
|
|
||||||
property Action configureSettings;
|
property Action configureSettings;
|
||||||
|
property bool findingSettings;
|
||||||
signal showTooltip(Item item, point location, string text);
|
signal showTooltip(Item item, point location, string text);
|
||||||
signal hideTooltip();
|
signal hideTooltip();
|
||||||
|
|
||||||
|
@ -47,14 +48,14 @@ Item
|
||||||
}
|
}
|
||||||
|
|
||||||
property var expandedCategories
|
property var expandedCategories
|
||||||
property bool lastFilterEmpty: true
|
property bool lastFindingSettings: false
|
||||||
|
|
||||||
onTextChanged: {
|
onTextChanged: {
|
||||||
definitionsModel.filter = {"label": "*" + text};
|
definitionsModel.filter = {"label": "*" + text};
|
||||||
var _filterEmpty = (text.length == 0);
|
findingSettings = (text.length > 0);
|
||||||
if(_filterEmpty != lastFilterEmpty)
|
if(findingSettings != lastFindingSettings)
|
||||||
{
|
{
|
||||||
if(!_filterEmpty)
|
if(findingSettings)
|
||||||
{
|
{
|
||||||
expandedCategories = definitionsModel.expanded.slice();
|
expandedCategories = definitionsModel.expanded.slice();
|
||||||
definitionsModel.expanded = ["*"];
|
definitionsModel.expanded = ["*"];
|
||||||
|
@ -67,7 +68,7 @@ Item
|
||||||
definitionsModel.showAncestors = false;
|
definitionsModel.showAncestors = false;
|
||||||
definitionsModel.showAll = false;
|
definitionsModel.showAll = false;
|
||||||
}
|
}
|
||||||
lastFilterEmpty = _filterEmpty;
|
lastFindingSettings = findingSettings;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -211,6 +212,7 @@ Item
|
||||||
onContextMenuRequested:
|
onContextMenuRequested:
|
||||||
{
|
{
|
||||||
contextMenu.key = model.key;
|
contextMenu.key = model.key;
|
||||||
|
contextMenu.settingVisible = model.visible;
|
||||||
contextMenu.provider = provider
|
contextMenu.provider = provider
|
||||||
contextMenu.popup();
|
contextMenu.popup();
|
||||||
}
|
}
|
||||||
|
@ -258,6 +260,7 @@ Item
|
||||||
|
|
||||||
property string key
|
property string key
|
||||||
property var provider
|
property var provider
|
||||||
|
property bool settingVisible
|
||||||
|
|
||||||
MenuItem
|
MenuItem
|
||||||
{
|
{
|
||||||
|
@ -276,10 +279,38 @@ Item
|
||||||
MenuItem
|
MenuItem
|
||||||
{
|
{
|
||||||
//: Settings context menu action
|
//: Settings context menu action
|
||||||
|
visible: !findingSettings;
|
||||||
text: catalog.i18nc("@action:menu", "Hide this setting");
|
text: catalog.i18nc("@action:menu", "Hide this setting");
|
||||||
onTriggered: definitionsModel.hide(contextMenu.key);
|
onTriggered: definitionsModel.hide(contextMenu.key);
|
||||||
}
|
}
|
||||||
MenuItem
|
MenuItem
|
||||||
|
{
|
||||||
|
//: Settings context menu action
|
||||||
|
text:
|
||||||
|
{
|
||||||
|
if (contextMenu.settingVisible)
|
||||||
|
{
|
||||||
|
return catalog.i18nc("@action:menu", "Don't show this setting");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return catalog.i18nc("@action:menu", "Keep this setting visible");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
visible: findingSettings;
|
||||||
|
onTriggered:
|
||||||
|
{
|
||||||
|
if (contextMenu.settingVisible)
|
||||||
|
{
|
||||||
|
definitionsModel.hide(contextMenu.key);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
definitionsModel.show(contextMenu.key);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
MenuItem
|
||||||
{
|
{
|
||||||
//: Settings context menu action
|
//: Settings context menu action
|
||||||
text: catalog.i18nc("@action:menu", "Configure setting visiblity...");
|
text: catalog.i18nc("@action:menu", "Configure setting visiblity...");
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue