Vuo
2.0.2
type
inputEditor
VuoInputEditorBlendMode
VuoInputEditorBlendMode.cc
Go to the documentation of this file.
1
10
#include "
VuoInputEditorBlendMode.hh
"
11
12
extern
"C"
13
{
14
#include "
VuoBlendMode.h
"
15
}
16
20
VuoInputEditor
*
VuoInputEditorBlendModeFactory::newInputEditor
()
21
{
22
return
new
VuoInputEditorBlendMode
();
23
}
24
28
static
void
addBlendMode
(
VuoInputEditorMenuItem
*menu,
VuoBlendMode
blendMode)
29
{
30
json_object
*optionAsJson =
VuoBlendMode_getJson
(blendMode);
31
char
*optionSummary =
VuoBlendMode_getSummary
(blendMode);
32
VuoInputEditorMenuItem
*optionItem =
new
VuoInputEditorMenuItem
(optionSummary, optionAsJson);
33
free(optionSummary);
34
menu->
addItem
(optionItem);
35
}
36
40
VuoInputEditorMenuItem
*
VuoInputEditorBlendMode::setUpMenuTree
(
json_object
*details)
41
{
42
VuoInputEditorMenuItem
*optionsTree =
new
VuoInputEditorMenuItem
(
"root"
);
43
44
bool
restrictToOpenGlBlendModes =
false
;
45
json_object
*o;
46
if
(json_object_object_get_ex(details,
"restrictToOpenGlBlendModes"
, &o))
47
restrictToOpenGlBlendModes = json_object_get_boolean(o);
48
49
if
(restrictToOpenGlBlendModes)
50
{
51
addBlendMode
(optionsTree,
VuoBlendMode_Normal
);
52
optionsTree->
addSeparator
();
53
addBlendMode
(optionsTree,
VuoBlendMode_Subtract
);
54
addBlendMode
(optionsTree,
VuoBlendMode_Multiply
);
55
addBlendMode
(optionsTree,
VuoBlendMode_DarkerComponents
);
56
optionsTree->
addSeparator
();
57
addBlendMode
(optionsTree,
VuoBlendMode_LinearDodge
);
58
addBlendMode
(optionsTree,
VuoBlendMode_LighterComponents
);
59
}
60
else
61
{
62
addBlendMode
(optionsTree,
VuoBlendMode_Normal
);
63
optionsTree->
addSeparator
();
64
addBlendMode
(optionsTree,
VuoBlendMode_Multiply
);
65
addBlendMode
(optionsTree,
VuoBlendMode_DarkerComponents
);
66
addBlendMode
(optionsTree,
VuoBlendMode_DarkerColor
);
67
addBlendMode
(optionsTree,
VuoBlendMode_LinearBurn
);
68
addBlendMode
(optionsTree,
VuoBlendMode_ColorBurn
);
69
optionsTree->
addSeparator
();
70
addBlendMode
(optionsTree,
VuoBlendMode_Screen
);
71
addBlendMode
(optionsTree,
VuoBlendMode_LighterComponents
);
72
addBlendMode
(optionsTree,
VuoBlendMode_LighterColor
);
73
addBlendMode
(optionsTree,
VuoBlendMode_LinearDodge
);
74
addBlendMode
(optionsTree,
VuoBlendMode_ColorDodge
);
75
optionsTree->
addSeparator
();
76
addBlendMode
(optionsTree,
VuoBlendMode_Overlay
);
77
addBlendMode
(optionsTree,
VuoBlendMode_SoftLight
);
78
addBlendMode
(optionsTree,
VuoBlendMode_HardLight
);
79
addBlendMode
(optionsTree,
VuoBlendMode_VividLight
);
80
addBlendMode
(optionsTree,
VuoBlendMode_LinearLight
);
81
addBlendMode
(optionsTree,
VuoBlendMode_PinLight
);
82
addBlendMode
(optionsTree,
VuoBlendMode_HardMix
);
83
optionsTree->
addSeparator
();
84
addBlendMode
(optionsTree,
VuoBlendMode_Difference
);
85
addBlendMode
(optionsTree,
VuoBlendMode_Exclusion
);
86
addBlendMode
(optionsTree,
VuoBlendMode_Subtract
);
87
addBlendMode
(optionsTree,
VuoBlendMode_Divide
);
88
addBlendMode
(optionsTree,
VuoBlendMode_Power
);
89
optionsTree->
addSeparator
();
90
addBlendMode
(optionsTree,
VuoBlendMode_Hue
);
91
addBlendMode
(optionsTree,
VuoBlendMode_Saturation
);
92
addBlendMode
(optionsTree,
VuoBlendMode_Color
);
93
addBlendMode
(optionsTree,
VuoBlendMode_Luminosity
);
94
}
95
96
return
optionsTree;
97
}
Generated on Thu Mar 19 2020 23:16:03 for Vuo by
1.8.17