void ComponentTypeHandler::addPropertiesToPropertyPanel (Component* comp, JucerDocument& document, PropertyPanel& panel) { Array <PropertyComponent*> props; getEditableProperties (comp, document, props); panel.addSection (getClassName (comp), props); }
void ButtonDocument::addExtraClassProperties (PropertyPanel& panel) { Array <PropertyComponent*> props; for (int i = 1; i < 7; ++i) props.add (new ButtonStatePaintEnabledProperty (stateNames[i], *this, i)); panel.addSection ("Button paint routines", props); }
//================================================================= void SidebarPanel::updatePluginParameters() { PropertyPanel* panel = (PropertyPanel*)concertinaPanel.getPanel(PLUGIN_PARAMS); //panel->clear(); Array <PropertyComponent*> params; int index = filterGraph->getNumFilters()-1; int numParams = filterGraph->getNode(index)->getProcessor()->getNumParameters(); if(numParams==0) return; params.clear(); for (int i = 0; i < numParams; ++i) { String name (filterGraph->getNode(index)->getProcessor()->getParameterName (i)); if (name.trim().isEmpty()) name = "Unnamed"; ProcessorParameterPropertyComp* const pc = new ProcessorParameterPropertyComp(name, *filterGraph->getNode(index)->getProcessor(), i, filterGraph->getNode(index)->nodeId); pc->addChangeListener(this); params.add (pc); } const String pluginName = filterGraph->getNode(index)->properties.getWithDefault("pluginName", ""); panel->addSection(pluginName, params, false); for(int y=0; y<panel->getSectionNames().size()-1; y++) panel->setSectionOpen(y, false, true); panel->setSectionOpen(panel->getSectionNames().size()-1, true, true); concertinaPanel.expandPanelFully(concertinaPanel.getPanel(PLUGIN_PARAMS), true); }
//================================================================= void SidebarPanel::refreshPluginParameters() { PropertyPanel* panel = (PropertyPanel*)concertinaPanel.getPanel(PLUGIN_PARAMS); panel->clear(); Array <PropertyComponent*> params; for(int index=0; index<filterGraph->getNumFilters(); index++) { int numParams = filterGraph->getNode(index)->getProcessor()->getNumParameters(); const AudioProcessorGraph::Node::Ptr f = filterGraph->getNode(index); params.clear(); for (int i = 0; i < numParams; ++i) { String name (filterGraph->getNode(index)->getProcessor()->getParameterName (i)); if (name.trim().isEmpty()) name = "Unnamed"; ProcessorParameterPropertyComp* const pc = new ProcessorParameterPropertyComp(name, *filterGraph->getNode(index)->getProcessor(), i, filterGraph->getNode(index)->nodeId); pc->addChangeListener(this); //pc->setLookAndFeel(&this->getLookAndFeel()); //pc->lookAndFeelChanged(); params.add (pc); } if(f->properties.getWithDefault("pluginType", "")!="Internal") { const String pluginName = filterGraph->getNode(index)->properties.getWithDefault("pluginName", ""); panel->addSection(pluginName, params, false); } } concertinaPanel.expandPanelFully(concertinaPanel.getPanel(PLUGIN_PARAMS), true); }