1 // Aseprite
2 // Copyright (C) 2001-2015  David Capello
3 //
4 // This program is distributed under the terms of
5 // the End-User License Agreement for Aseprite.
6 
7 #ifdef HAVE_CONFIG_H
8 #include "config.h"
9 #endif
10 
11 #include "app/tools/ink_type.h"
12 
13 namespace app {
14 namespace tools {
15 
ink_type_to_string(InkType inkType)16 std::string ink_type_to_string(InkType inkType)
17 {
18   switch (inkType) {
19     case tools::InkType::SIMPLE: return "Simple Ink";
20     case tools::InkType::ALPHA_COMPOSITING: return "Alpha Compositing";
21     case tools::InkType::COPY_COLOR: return "Copy Color+Alpha";
22     case tools::InkType::LOCK_ALPHA: return "Lock Alpha";
23     case tools::InkType::SHADING: return "Shading";
24   }
25   return "Unknown";
26 }
27 
ink_type_to_string_id(InkType inkType)28 std::string ink_type_to_string_id(InkType inkType)
29 {
30   switch (inkType) {
31     case tools::InkType::SIMPLE: return "simple";
32     case tools::InkType::ALPHA_COMPOSITING: return "alpha_compositing";
33     case tools::InkType::COPY_COLOR: return "copy_color";
34     case tools::InkType::LOCK_ALPHA: return "lock_alpha";
35     case tools::InkType::SHADING: return "shading";
36   }
37   return "unknown";
38 }
39 
string_id_to_ink_type(const std::string & s)40 InkType string_id_to_ink_type(const std::string& s)
41 {
42   if (s == "simple") return tools::InkType::SIMPLE;
43   if (s == "alpha_compositing") return tools::InkType::ALPHA_COMPOSITING;
44   if (s == "copy_color") return tools::InkType::COPY_COLOR;
45   if (s == "lock_alpha") return tools::InkType::LOCK_ALPHA;
46   if (s == "shading") return tools::InkType::SHADING;
47   return tools::InkType::DEFAULT;
48 }
49 
50 } // namespace tools
51 } // namespace app
52