File indexing completed on 2024-05-12 15:59:52

0001 /*
0002  * SPDX-FileCopyrightText: 2021 Halla Rempt <halla@valdyas.org>
0003  *
0004  * SPDX-License-Identifier: GPL-3.0-or-later
0005  */
0006 #include "KisResourceTypes.h"
0007 #include <QCoreApplication>
0008 #include <QMap>
0009 #include <QDebug>
0010 
0011 #include <ResourceDebug.h>
0012 
0013 namespace ResourceType {
0014     const QString PaintOpPresets {QStringLiteral("paintoppresets")};
0015     const QString Brushes {QStringLiteral("brushes")};
0016     const QString Gradients {QStringLiteral("gradients")};
0017     const QString Palettes {QStringLiteral("palettes")};
0018     const QString Patterns {QStringLiteral("patterns")};
0019     const QString Workspaces {QStringLiteral("workspaces")};
0020     const QString Symbols {QStringLiteral("symbols")};
0021     const QString WindowLayouts {QStringLiteral("windowlayouts")};
0022     const QString Sessions {QStringLiteral("sessions")};
0023     const QString GamutMasks {QStringLiteral("gamutmasks")};
0024     const QString SeExprScripts {QStringLiteral("seexpr_scripts")};
0025     const QString FilterEffects {QStringLiteral("ko_effects")};
0026     const QString TaskSets {QStringLiteral("tasksets")};
0027     const QString LayerStyles {QStringLiteral("layerstyles")};
0028 }
0029 
0030 namespace ResourceSubType {
0031     const QString AbrBrushes {QStringLiteral("abr_brushes")};
0032     const QString GbrBrushes {QStringLiteral("gbr_brushes")};
0033     const QString GihBrushes {QStringLiteral("gih_brushes")};
0034     const QString SvgBrushes {QStringLiteral("svg_brushes")};
0035     const QString PngBrushes {QStringLiteral("png_brushes")};
0036     const QString SegmentedGradients {QStringLiteral("segmented_gradients")};
0037     const QString StopGradients {QStringLiteral("stop_gradients")};
0038     const QString KritaPaintOpPresets {QStringLiteral("krita_paintop_presets")};
0039     const QString MyPaintPaintOpPresets {QStringLiteral("mypaint_paintop_presets")};
0040 }
0041 
0042 namespace ResourceName {
0043     const KLocalizedString PaintOpPresets = ki18nc("resource type", "Brush Presets");
0044     const KLocalizedString Brushes = ki18nc("resource type", "Brush Tips");
0045     const KLocalizedString Gradients = ki18nc("resource type", "Gradients");
0046     const KLocalizedString Palettes = ki18nc("resource type", "Palettes");
0047     const KLocalizedString Patterns = ki18nc("resource type", "Patterns");
0048     const KLocalizedString Workspaces = ki18nc("resource type", "Workspaces");
0049     const KLocalizedString Symbols = ki18nc("resource type", "Symbol Libraries");
0050     const KLocalizedString WindowLayouts = ki18nc("resource type", "Window Layouts");
0051     const KLocalizedString Sessions = ki18nc("resource type", "Sessions");
0052     const KLocalizedString GamutMasks = ki18nc("resource type", "Gamut Masks");
0053     const KLocalizedString SeExprScripts = ki18nc("resource type", "SeExpr Scripts");
0054     const KLocalizedString FilterEffects = ki18nc("resource type", "Filter Effects");
0055     const KLocalizedString TaskSets = ki18nc("resource type", "Task Sets");
0056     const KLocalizedString LayerStyles = ki18nc("resource type", "Layer Styles");
0057 }
0058 
0059 QString ResourceName::resourceTypeToName(const QString &resourceType)
0060 {
0061     static const QMap<QString, QString> typeMap = []() {
0062         if (!QCoreApplication::instance()) {
0063             warnResource << "QCoreApplication not valid when initializing resourceTypeNameMap in" << __FILE__ << "line" << __LINE__;
0064         }
0065         QMap<QString, QString> typeMap;
0066         typeMap[ResourceType::PaintOpPresets] = ResourceName::PaintOpPresets.toString();
0067         typeMap[ResourceType::Brushes] = ResourceName::Brushes.toString();
0068         typeMap[ResourceType::Gradients] = ResourceName::Gradients.toString();
0069         typeMap[ResourceType::Palettes] = ResourceName::Palettes.toString();
0070         typeMap[ResourceType::Patterns] = ResourceName::Patterns.toString();
0071         typeMap[ResourceType::Workspaces] = ResourceName::Workspaces.toString();
0072         typeMap[ResourceType::Symbols] = ResourceName::Symbols.toString();
0073         typeMap[ResourceType::WindowLayouts] = ResourceName::WindowLayouts.toString();
0074         typeMap[ResourceType::Sessions] = ResourceName::Sessions.toString();
0075         typeMap[ResourceType::GamutMasks] = ResourceName::GamutMasks.toString();
0076         typeMap[ResourceType::SeExprScripts] = ResourceName::SeExprScripts.toString();
0077         typeMap[ResourceType::FilterEffects] = ResourceName::FilterEffects.toString();
0078         typeMap[ResourceType::TaskSets] = ResourceName::TaskSets.toString();
0079         typeMap[ResourceType::LayerStyles] = ResourceName::LayerStyles.toString();
0080         return typeMap;
0081     }();
0082 
0083     Q_ASSERT(typeMap.contains(resourceType));
0084 
0085     return typeMap[resourceType];
0086 
0087 }