Vuo  2.0.1
VuoInputEditorDispersion.cc
Go to the documentation of this file.
1 
11 
12 extern "C"
13 {
14  #include "VuoDispersion.h"
15 }
16 
18 
23 {
24  return new VuoInputEditorDispersion();
25 }
26 
30 static QIcon *renderMenuIconWithDispersion(VuoDispersion dispersion, bool isDark)
31 {
32  return VuoInputEditorIcon::renderIcon(^(QPainter &p){
33  p.setPen(QPen(QColor(isDark ? "#ffffff" : "#000000"), 1.));
34  if (dispersion == VuoDispersion_Linear)
35  p.drawLine(QPointF(0.5, 7.5), QPointF(14.5, 7.5));
36  else if (dispersion == VuoDispersion_Radial)
37  for (int i = 1; i <= 7; i += 3)
38  p.drawEllipse(QPointF(7.5, 7.5), i, i);
39  });
40 }
41 
46 {
47  VuoInputEditorMenuItem *optionsTree = new VuoInputEditorMenuItem("root");
48 
49  for (int i = 0; i <= VuoDispersion_Radial; ++i)
50  {
51  json_object *optionAsJson = VuoDispersion_getJson( (VuoDispersion)i );
52  char *optionSummary = VuoDispersion_getSummary( (VuoDispersion)i );
54  free(optionSummary);
55 
56  optionsTree->addItem(optionItem);
57  }
58 
59  return optionsTree;
60 }