File indexing completed on 2024-05-12 15:58:52
0001 /* 0002 * SPDX-FileCopyrightText: 2020 Boudewijn Rempt <boud@valdyas.org> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "KisTranslateLayerNamesVisitor.h" 0008 0009 #include "kis_node.h" 0010 #include "kis_paint_layer.h" 0011 #include "kis_group_layer.h" 0012 #include "kis_adjustment_layer.h" 0013 #include "kis_external_layer_iface.h" 0014 #include "kis_clone_layer.h" 0015 #include "kis_filter_mask.h" 0016 #include "kis_transform_mask.h" 0017 #include "kis_transparency_mask.h" 0018 #include "kis_selection_mask.h" 0019 #include "lazybrush/kis_colorize_mask.h" 0020 #include "generator/kis_generator_layer.h" 0021 0022 #include <klocalizedstring.h> 0023 0024 KisTranslateLayerNamesVisitor::KisTranslateLayerNamesVisitor(QMap<QString, QString> dictionary) 0025 : m_dictionary(dictionary) 0026 { 0027 QMap<QString, QString> d = defaultDictionary(); 0028 QMap<QString, QString>::const_iterator i = d.constBegin(); 0029 while (i != d.constEnd()) { 0030 if (!dictionary.contains(i.key())) { 0031 dictionary[i.key()] = i.value(); 0032 } 0033 ++i; 0034 } 0035 m_dictionary = dictionary; 0036 } 0037 0038 bool KisTranslateLayerNamesVisitor::translate(KisNode *node) 0039 { 0040 if (m_dictionary.contains(node->name())) { 0041 node->setName(m_dictionary[node->name()]); 0042 } 0043 node->setName(node->name().replace("Layer", i18n("Layer"))); 0044 node->setName(node->name().replace("layer", i18n("layer"))); 0045 return true; 0046 } 0047 0048 bool KisTranslateLayerNamesVisitor::visit(KisNode* node) { 0049 return translate(node); 0050 } 0051 0052 QMap<QString, QString> KisTranslateLayerNamesVisitor::defaultDictionary() 0053 { 0054 QMap<QString, QString> dictionary; 0055 0056 dictionary["Background"] = i18nc("Layer name for translation of template", "Background"); 0057 dictionary["Group"] = i18nc("Layer name for translation of template", "Group"); 0058 dictionary["Margins"] = i18nc("Layer name for translation of template", "Margins"); 0059 dictionary["Bleed"] = i18nc("Layer name for translation of template", "Bleed"); 0060 dictionary["Lines"] = i18nc("Layer name for translation of template", "Lines"); 0061 dictionary["Colors"] = i18nc("Layer name for translation of template", "Colors"); 0062 dictionary["Sketch"] = i18nc("Layer name for translation of template", "Sketch"); 0063 dictionary["Shade"] = i18nc("Layer name for translation of template", "Shade"); 0064 dictionary["Filter"] = i18nc("Layer name for translation of template", "Filter"); 0065 dictionary["Mask"] = i18nc("Layer name for translation of template", "Mask"); 0066 dictionary["Layer"] = i18nc("Layer name for translation of template", "Layer"); 0067 dictionary["Indirect light"] = i18nc("Layer name for translation of template", "Indirect light"); 0068 dictionary["Highlight"] = i18nc("Layer name for translation of template", "Highlight"); 0069 dictionary["Flat"] = i18nc("Layer name for translation of template", "Flat"); 0070 dictionary["Panel"] = i18nc("Layer name for translation of template", "Panel"); 0071 dictionary["Text"] = i18nc("Layer name for translation of template", "Text"); 0072 dictionary["Effect"] = i18nc("Layer name for translation of template", "Effect"); 0073 dictionary["Tones"] = i18nc("Layer name for translation of template", "Tones"); 0074 dictionary["Textures"] = i18nc("Layer name for translation of template", "Textures"); 0075 dictionary["Guides"] = i18nc("Layer name for translation of template", "Guides"); 0076 dictionary["Balloons"] = i18nc("Layer name for translation of template", "Balloons"); 0077 dictionary["Clone"] = i18nc("Layer name for translation of template", "Clone"); 0078 dictionary["In Betweening"] = i18nc("Layer name for translation of template", "In Betweening"); 0079 dictionary["Layout"] = i18nc("Layer name for translation of template", "Layout"); 0080 0081 return dictionary; 0082 } 0083 0084 bool KisTranslateLayerNamesVisitor::visit(KisPaintLayer *layer) { 0085 return translate(layer); 0086 } 0087 0088 bool KisTranslateLayerNamesVisitor::visit(KisGroupLayer *layer) { 0089 return translate(layer); 0090 } 0091 0092 0093 bool KisTranslateLayerNamesVisitor::visit(KisAdjustmentLayer *layer) { 0094 return translate(layer); 0095 } 0096 0097 0098 bool KisTranslateLayerNamesVisitor::visit(KisExternalLayer *layer) { 0099 return translate(layer); 0100 } 0101 0102 0103 bool KisTranslateLayerNamesVisitor::visit(KisCloneLayer *layer) { 0104 return translate(layer); 0105 } 0106 0107 0108 bool KisTranslateLayerNamesVisitor::visit(KisFilterMask *mask) { 0109 return translate(mask); 0110 } 0111 0112 bool KisTranslateLayerNamesVisitor::visit(KisTransformMask *mask) { 0113 return translate(mask); 0114 } 0115 0116 bool KisTranslateLayerNamesVisitor::visit(KisTransparencyMask *mask) { 0117 return translate(mask); 0118 } 0119 0120 0121 bool KisTranslateLayerNamesVisitor::visit(KisGeneratorLayer * layer) { 0122 return translate(layer); 0123 } 0124 0125 bool KisTranslateLayerNamesVisitor::visit(KisSelectionMask* mask) { 0126 return translate(mask); 0127 } 0128 0129 bool KisTranslateLayerNamesVisitor::visit(KisColorizeMask* mask) { 0130 return translate(mask); 0131 } 0132