Changeset View
Changeset View
Standalone View
Standalone View
source/blender/modifiers/intern/MOD_nodes.cc
| Show First 20 Lines • Show All 1,715 Lines • ▼ Show 20 Lines | for (const NameWithUsage &attribute : sorted_used_attribute) { | ||||
| const eNamedAttrUsage usage = attribute.usage; | const eNamedAttrUsage usage = attribute.usage; | ||||
| /* #uiLayoutRowWithHeading doesn't seem to work in this case. */ | /* #uiLayoutRowWithHeading doesn't seem to work in this case. */ | ||||
| uiLayout *split = uiLayoutSplit(layout, 0.4f, false); | uiLayout *split = uiLayoutSplit(layout, 0.4f, false); | ||||
| std::stringstream ss; | std::stringstream ss; | ||||
| Vector<std::string> usages; | Vector<std::string> usages; | ||||
| if ((usage & eNamedAttrUsage::Read) != eNamedAttrUsage::None) { | if ((usage & eNamedAttrUsage::Read) != eNamedAttrUsage::None) { | ||||
| usages.append(TIP_("Read")); | usages.append(TIP_("Read")); | ||||
| } | } | ||||
| if ((usage & eNamedAttrUsage::Write) != eNamedAttrUsage::None) { | if ((usage & eNamedAttrUsage::Write) != eNamedAttrUsage::None) { | ||||
| usages.append(TIP_("Write")); | usages.append(TIP_("Write")); | ||||
| } | } | ||||
| if ((usage & eNamedAttrUsage::Remove) != eNamedAttrUsage::None) { | if ((usage & eNamedAttrUsage::Remove) != eNamedAttrUsage::None) { | ||||
| usages.append(TIP_("Remove")); | usages.append(TIP_("Remove")); | ||||
mont29: Those should remain tooltips, not be considered as regular UI labels. | |||||
Done Inline Actionspioverfour: Understood, I just thought it looked inconsistent when tooltip translation is disabled, since… | |||||
Not Done Inline ActionsIn fact, we also consider lengthier, informative 'labels' as tooltips from translation perspective. mont29: In fact, we also consider lengthier, informative 'labels' as tooltips from translation… | |||||
| } | } | ||||
| for (const int i : usages.index_range()) { | for (const int i : usages.index_range()) { | ||||
| ss << usages[i]; | ss << usages[i]; | ||||
| if (i < usages.size() - 1) { | if (i < usages.size() - 1) { | ||||
| ss << ", "; | ss << ", "; | ||||
| } | } | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 81 Lines • ▼ Show 20 Lines | |||||
| { | { | ||||
| /* We don't know what the node tree will need. If there are vertex groups, it is likely that the | /* We don't know what the node tree will need. If there are vertex groups, it is likely that the | ||||
| * node tree wants to access them. */ | * node tree wants to access them. */ | ||||
| r_cddata_masks->vmask |= CD_MASK_MDEFORMVERT; | r_cddata_masks->vmask |= CD_MASK_MDEFORMVERT; | ||||
| r_cddata_masks->vmask |= CD_MASK_PROP_ALL; | r_cddata_masks->vmask |= CD_MASK_PROP_ALL; | ||||
| } | } | ||||
| ModifierTypeInfo modifierType_Nodes = { | ModifierTypeInfo modifierType_Nodes = { | ||||
| /* name */ "GeometryNodes", | /* name */ N_("GeometryNodes"), | ||||
| /* structName */ "NodesModifierData", | /* structName */ "NodesModifierData", | ||||
| /* structSize */ sizeof(NodesModifierData), | /* structSize */ sizeof(NodesModifierData), | ||||
| /* srna */ &RNA_NodesModifier, | /* srna */ &RNA_NodesModifier, | ||||
| /* type */ eModifierTypeType_Constructive, | /* type */ eModifierTypeType_Constructive, | ||||
| /* flags */ | /* flags */ | ||||
| static_cast<ModifierTypeFlag>(eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs | | static_cast<ModifierTypeFlag>(eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs | | ||||
| eModifierTypeFlag_SupportsEditmode | | eModifierTypeFlag_SupportsEditmode | | ||||
| eModifierTypeFlag_EnableInEditmode | | eModifierTypeFlag_EnableInEditmode | | ||||
| Show All 26 Lines | |||||

Those should remain tooltips, not be considered as regular UI labels.