MCPcopy Create free account
hub / github.com/christophhart/HISE / Header

Method Header

hi_scripting/scripting/scriptnode/ui/NodeComponent.cpp:45–123  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

43
44
45NodeComponent::Header::Header(NodeComponent& parent_) :
46 parent(parent_),
47 powerButton(getPowerButtonId(false), this, f, getPowerButtonId(true)),
48 deleteButton("close", this, f),
49 parameterButton("parameter", this, f),
50 freezeButton("freeze", this, f)
51{
52 String tooltip;
53
54 auto d = parent.node->getValueTree();
55
56 tooltip << d[PropertyIds::Name].toString();
57
58 auto id = d[PropertyIds::ID].toString();
59
60 if(id != tooltip)
61 {
62 tooltip << ", ID: " << id;
63 }
64
65 tooltip << ", Type: " << d[PropertyIds::FactoryPath].toString();
66
67 setTooltip(tooltip);
68
69 setWantsKeyboardFocus(true);
70
71 powerButton.setToggleModeWithColourChange(true);
72
73 powerButtonUpdater.setCallback(parent.node->getValueTree(), { PropertyIds::Bypassed},
74 valuetree::AsyncMode::Asynchronously,
75 BIND_MEMBER_FUNCTION_2(NodeComponent::Header::updatePowerButtonState));
76
77 colourUpdater.setCallback(parent.node->getValueTree(), { PropertyIds::NodeColour }, valuetree::AsyncMode::Synchronously,
78 BIND_MEMBER_FUNCTION_2(NodeComponent::Header::updateColour));
79
80 dynamicPowerUpdater.setTypesToWatch({ PropertyIds::Nodes, PropertyIds::Connections });
81
82 dynamicPowerUpdater.setCallback(parent.node->getRootNetwork()->getValueTree(), valuetree::AsyncMode::Asynchronously, [this](ValueTree v, bool wasAdded)
83 {
84 if (parent.node != nullptr)
85 {
86 auto on = parent.node->getDynamicBypassSource(true).isEmpty();
87 powerButton.setVisible(on);
88
89 if (auto dng = findParentComponentOfClass<DspNetworkGraph>())
90 dng->repaint();
91 }
92 });
93
94 addAndMakeVisible(powerButton);
95 addAndMakeVisible(deleteButton);
96 addAndMakeVisible(parameterButton);
97 addAndMakeVisible(freezeButton);
98
99 freezeButton.setToggleModeWithColourChange(true);
100
101 bool isContainer = false;
102

Callers

nothing calls this directly

Calls 15

setTooltipFunction · 0.85
setTypesToWatchMethod · 0.80
getRootNetworkMethod · 0.80
isLockedContainerMethod · 0.80
canBeFrozenMethod · 0.80
isFrozenMethod · 0.80
getValueTreeMethod · 0.45
toStringMethod · 0.45
setCallbackMethod · 0.45

Tested by

no test coverage detected