Exemple #1
0
void BigClockEditor::buttonClicked (Button* buttonThatWasClicked) {
    ModifierKeys mousebutton = ModifierKeys::getCurrentModifiers();
    if (!mousebutton.isPopupMenu()) {
		if (buttonThatWasClicked==runButton)
		{
			getFilter()->setParameter(kRunWatch,1.f-getFilter()->getParameter(kRunWatch));
		}
		else if (buttonThatWasClicked==resetButton)
		{
			getFilter()->setParameter(kClearWatch,1.f);
		}
		else if (buttonThatWasClicked==infoLabel)
		{
			bool samplemode = getFilter()->getParameter(kSamples)>=0.5f;
			if (barsbeats && !samplemode) {
				barsbeats=false;
				getFilter()->setParameter(kBarsBeats, 0.0);
				getFilter()->setParameter(kSamples, 0.0);
			}
			else if (!barsbeats && !samplemode) {
				getFilter()->setParameter(kSamples, 1.0);
			}
			else if (samplemode) {
				barsbeats=true;
				getFilter()->setParameter(kBarsBeats, 1.0);
				getFilter()->setParameter(kSamples, 0.0);
			}
			updateParametersFromFilter();
		}
    }
}
Exemple #2
0
//==============================================================================
BigClockEditor::BigClockEditor (BigClockFilter* const ownerFilter)
    : AudioProcessorEditor (ownerFilter),
    showtextbox(ownerFilter->showcues)
{
	static NonShinyLookAndFeel Look;
	LookAndFeel::setDefaultLookAndFeel (&Look);

	addChildComponent (modeLabel = new Label("Mode Label",String::empty));
	modeLabel->setMouseClickGrabsKeyboardFocus(false);
	modeLabel->setFont(Font(12.f,Font::bold));
	modeLabel->setJustificationType(Justification::topRight);

    addAndMakeVisible (infoLabel = new TimeDisplay ());
    infoLabel->addListener(this);
	infoLabel->addMouseListener(this,false);

    colourSelector = new ColourSelector(ColourSelector::showColourAtTop|ColourSelector::showSliders|ColourSelector::showColourspace);
    colourSelector->setName (String(L"color"));
    colourSelector->setCurrentColour (getFilter()->bgcolor);
    colourSelector->addChangeListener (this);

    addAndMakeVisible (textBox = new TextEditor());
    textBox->setMultiLine (false);
    textBox->setReturnKeyStartsNewLine (false);
    textBox->setReadOnly (false);
    textBox->setScrollbarsShown (false);
    textBox->setCaretVisible (true);
    textBox->setPopupMenuEnabled (true);
    textBox->setText (String::empty);
    textBox->addListener(this);

    addAndMakeVisible (cueLabel = new Label("Cue Label",String::empty));

	addAndMakeVisible (runButton = new TextButton("Run"));
	runButton->setMouseClickGrabsKeyboardFocus(false);
	runButton->setButtonText(">");
	runButton->setConnectedEdges(Button::ConnectedOnLeft | Button::ConnectedOnRight);
	runButton->addListener(this);

	addAndMakeVisible (resetButton = new TextButton("Reset"));
	resetButton->setMouseClickGrabsKeyboardFocus(false);
	resetButton->setButtonText("0");
	resetButton->setConnectedEdges(Button::ConnectedOnLeft | Button::ConnectedOnRight);
	resetButton->addListener(this);

	addAndMakeVisible (resizer = new ResizableCornerComponent (this, &resizeLimits));
    resizer->setMouseClickGrabsKeyboardFocus(false);
    resizeLimits.setSizeLimits (10, 10, 1200, 200);

 	startTimer(50);
    ownerFilter->addChangeListener (this);
    updateParametersFromFilter();
}
Exemple #3
0
//==============================================================================
CpuRamEditor::CpuRamEditor (CpuRam* const ownerFilter)
    : AudioProcessorEditor (ownerFilter)
{
	static OldSchoolLookAndFeel* MyLook = 0;
	if (MyLook == 0) MyLook = new OldSchoolLookAndFeel(); 
	LookAndFeel::setDefaultLookAndFeel (MyLook);
	setMouseClickGrabsKeyboardFocus(false);

	addAndMakeVisible (infoLabel = new Label(String("CPU"),String::empty));
	infoLabel->setMouseClickGrabsKeyboardFocus(false);
	infoLabel->setInterceptsMouseClicks(false,false);

	addAndMakeVisible (memLabel2 = new Label(String("RAM"),String::empty));
	memLabel2->setMouseClickGrabsKeyboardFocus(false);
	memLabel2->setInterceptsMouseClicks(false,false);

	addAndMakeVisible (slider = new Slider(String("interval")));
    slider->setMouseClickGrabsKeyboardFocus(false);
    slider->setSliderStyle(Slider::LinearBar);
    slider->setRange(300,2000,1);
    slider->setTextValueSuffix(String(" ms"));
    slider->addListener(this);

	addAndMakeVisible (graph = new CpuGraph());

    colourSelector = new ColourSelector(ColourSelector::showColourAtTop|ColourSelector::showSliders|ColourSelector::showColourspace);
    colourSelector->setName (String("color"));
    colourSelector->setCurrentColour (getFilter()->bgcolor);
    colourSelector->addChangeListener (this);

    // add the triangular resizer component for the bottom-right of the UI
    //addAndMakeVisible (resizer = new ResizableCornerComponent (this, &resizeLimits));
    //resizer->setMouseClickGrabsKeyboardFocus(false);
    //resizeLimits.setSizeLimits (10, 10, 1200, 200);

    // set our component's initial size to be the last one that was stored in the filter's settings
    setSize (ownerFilter->lastUIWidth,
             ownerFilter->lastUIHeight);

    lastMinimize=getFilter()->getParameter(1);

    // register ourselves with the filter - it will use its ChangeBroadcaster base
    // class to tell us when something has changed, and this will call our changeListenerCallback()
    // method.
    ownerFilter->addChangeListener (this);

    oi64.QuadPart=0;
    ok64.QuadPart=0;
    ou64.QuadPart=0;

    updateParametersFromFilter();
}
Exemple #4
0
//==============================================================================
void CpuRamEditor::changeListenerCallback (ChangeBroadcaster* source)
{
    if (source==getFilter()) {
        updateParametersFromFilter();
    }
    else {
        ColourSelector* cs = (ColourSelector*) source;
        getFilter()->bgcolor=(cs->getCurrentColour());
		infoLabel->setColour(Label::textColourId,getFilter()->bgcolor.contrasting(0.8f));
		memLabel2->setColour(Label::textColourId,getFilter()->bgcolor.contrasting(0.8f));
		slider->setColour(Slider::textBoxTextColourId,getFilter()->bgcolor.contrasting(0.8f));
        repaint();
    }
}
Exemple #5
0
void BigClockEditor::changeListenerCallback (ChangeBroadcaster* source)
{
    if (source==getFilter()) {
        updateParametersFromFilter();
    }
    else {
        ColourSelector* cs = 0;
		cs = (ColourSelector*) source;
		if (cs) {
			getFilter()->bgcolor=(cs->getCurrentColour());
			infoLabel->textcolor = cs->getCurrentColour().contrasting(getFilter()->getParameter(kLook));
			repaint();
		}
    }

}
//==============================================================================
void dRowTremoloEditorComponent::changeListenerCallback (void* source)
{
    // this is the filter telling us that it's changed, so we'll update our
    // display of the time, midi message, etc.
    updateParametersFromFilter();
}
Exemple #7
0
void BigClockEditor::timerCallback()
{
	if (getFilter()->mode==ActualTimeMode || getFilter()->mode==PluginTimeMode || getFilter()->mode==StopwatchMode)
		updateParametersFromFilter();
}
Exemple #8
0
void BigClockEditor::buttonStateChanged (Button* buttonThatWasClicked) {
    if (buttonThatWasClicked->isDown()) {
        ModifierKeys mousebutton = ModifierKeys::getCurrentModifiers();
        if (mousebutton.isPopupMenu()) {
            bool samplemode = getFilter()->getParameter(kSamples)>=0.5f;
            PopupMenu m, sub1,sub2,sub3,sub4,clockmode;
            sub1.addCustomItem (-1, colourSelector, 300, 300, false);
            m.addSubMenu (L"Color", sub1);
            m.addSeparator();
			clockmode.addItem(100,"Host Timeline",true,getFilter()->mode == HostTimeMode);
			clockmode.addItem(101,"Recording Time",true,getFilter()->mode == RecTimeMode);
			clockmode.addItem(102,"Stopwatch",true,getFilter()->mode == StopwatchMode);
			clockmode.addItem(103,"Plugin Time",true,getFilter()->mode == PluginTimeMode);
			clockmode.addItem(104,"Actual Time",true,getFilter()->mode == ActualTimeMode);
			m.addSubMenu("Clock Mode",clockmode);
			m.addItem(120,"Reset",getFilter()->mode != HostTimeMode && getFilter()->mode != ActualTimeMode);
            m.addSeparator();
            sub4.addItem(998,L"Show Cues",true,showtextbox);
            sub4.addItem(996,L"Import...");
            sub4.addItem(997,L"Export...",getFilter()->cues.size()>0);
            sub4.addItem(999,L"Clear",getFilter()->cues.size()>0);
            for (int i=0;i<getFilter()->cues.size();i++) {
                sub4.addItem(1000+i,
                    getFilter()->ppqToString(getFilter()->cues[i]->ppq,
                                             getFilter()->lastPosInfo.timeSigNumerator,
                                             getFilter()->lastPosInfo.timeSigDenominator,
                                             getFilter()->lastPosInfo.bpm,barsbeats) 
                    + " - " + getFilter()->cues[i]->text,true,getFilter()->cues[i]->enabled);
            }
            m.addSubMenu (L"Cues", sub4, getFilter()->mode==HostTimeMode);
            m.addSeparator();
            m.addItem (3, L"Bars|Beats|Ticks", true, barsbeats && !samplemode);
            float ppqn = getFilter()->getParameter(kTicks);
            sub2.addItem(30,L"hide ticks",true,ppqn==1.0);
            sub2.addItem(31,L"4",true,ppqn<1.0 && ppqn>=0.9);
            sub2.addItem(32,L"16",true,ppqn<0.9 && ppqn>=0.8);
            sub2.addItem(33,L"48",true,ppqn<0.8 && ppqn>=0.7);
            sub2.addItem(34,L"96",true,ppqn<0.7 && ppqn>=0.65);
            sub2.addItem(35,L"100",true,ppqn<0.65 && ppqn>=0.6);
            sub2.addItem(36,L"120",true,ppqn<0.6 && ppqn>=0.5);
            sub2.addItem(37,L"192",true,ppqn<0.5 && ppqn>=0.4);
            sub2.addItem(38,L"240",true,ppqn<0.4 && ppqn>=0.3);
            sub2.addItem(39,L"384",true,ppqn<0.3 && ppqn>=0.2);
            sub2.addItem(40,L"480",true,ppqn<0.2 && ppqn>=0.1);
            sub2.addItem(41,L"768",true,ppqn<0.1 && ppqn>0.0);
            sub2.addItem(42,L"960",true,ppqn==0.0);
            m.addSubMenu (L"Ticks per beat", sub2,barsbeats && !samplemode);
            m.addSeparator();
            m.addItem (4, L"Hour:Min:Sec", true, !barsbeats && !samplemode);
            float fps = getFilter()->getParameter(kFrames);
            sub3.addItem(50,L"ms (1000)",true,fps==0.0);
            sub3.addItem(51,L"120",true,fps==1.0);
            sub3.addItem(52,L"100",true,fps<1.0 && fps>=0.9);
            sub3.addItem(53,L"75",true,fps<0.9 && fps>=0.8);
            sub3.addItem(54,L"60",true,fps<0.8 && fps>=0.7);
            sub3.addItem(55,L"50",true,fps<0.7 && fps>=0.6);
            sub3.addItem(56,L"30",true,fps<0.6 && fps>=0.5);
            sub3.addItem(61,L"29.97 drop",true,fps<0.5 && fps>=0.4);
            sub3.addItem(57,L"25",true,fps<0.4 && fps>=0.3);
            sub3.addItem(58,L"24",true,fps<0.3 && fps>=0.2);
            sub3.addItem(59,L"15",true,fps<0.2 && fps>=0.1);
            sub3.addItem(60,L"10",true,fps<0.1 && fps>0.0);
            m.addSubMenu (L"Frames per second", sub3, !barsbeats && !samplemode);
            m.addItem (1, L"Show ms/frames", !barsbeats && !samplemode, getFilter()->getParameter(kShowms)>=0.5);
            m.addItem (6, L"Show subframes", !barsbeats && !samplemode && getFilter()->getParameter(kShowms)>=0.5, getFilter()->getParameter(kShowsubfr)>=0.5);
            m.addItem (2, L"Show hours", !barsbeats && !samplemode, getFilter()->getParameter(kShowhrs)>=0.5);
            m.addSeparator();
            m.addItem (5, L"Samples", true, samplemode);
            int result = m.show();
            if (result > 0)
            {
                if (result==1) {
                    if (getFilter()->getParameter(kShowms)>=0.5) getFilter()->setParameter(kShowms,0.0);
                    else getFilter()->setParameter(kShowms,1.0);
                }
                else if (result==2) {
                    if (getFilter()->getParameter(kShowhrs)>=0.5f) getFilter()->setParameter(kShowhrs,0.0f);
                    else getFilter()->setParameter(kShowhrs,1.0f);
                }
                else if (result==3) {
                    if (barsbeats && !samplemode) { }
                    else {
                        getFilter()->setParameter(kBarsBeats,1.0f);
                        getFilter()->setParameter(kSamples,0.0f);
                    }
                }
                else if (result>=30 && result<50) {
                    if (result==30) getFilter()->setParameter(kTicks,1.0f);
                    else if (result==31) getFilter()->setParameter(kTicks,0.91f);
                    else if (result==32) getFilter()->setParameter(kTicks,0.81f);
                    else if (result==33) getFilter()->setParameter(kTicks,0.71f);
                    else if (result==34) getFilter()->setParameter(kTicks,0.65f);
                    else if (result==35) getFilter()->setParameter(kTicks,0.61f);
                    else if (result==36) getFilter()->setParameter(kTicks,0.51f);
                    else if (result==37) getFilter()->setParameter(kTicks,0.41f);
                    else if (result==38) getFilter()->setParameter(kTicks,0.31f);
                    else if (result==39) getFilter()->setParameter(kTicks,0.21f);
                    else if (result==40) getFilter()->setParameter(kTicks,0.11f);
                    else if (result==41) getFilter()->setParameter(kTicks,0.051f);
                    else if (result==42) getFilter()->setParameter(kTicks,0.0f);
                }
                else if (result==4) {
                    if (!barsbeats && !samplemode) { }
                    else {
                        getFilter()->setParameter(kBarsBeats,0.0f);
                        getFilter()->setParameter(kSamples,0.0f);
                    }
                }
                else if (result>=50 && result<70) {
                    if (result==50) getFilter()->setParameter(kFrames,0.0f);
                    else if (result==51) getFilter()->setParameter(kFrames,1.0f);
                    else if (result==52) getFilter()->setParameter(kFrames,0.9f);
                    else if (result==53) getFilter()->setParameter(kFrames,0.8f);
                    else if (result==54) getFilter()->setParameter(kFrames,0.7f);
                    else if (result==55) getFilter()->setParameter(kFrames,0.6f);
                    else if (result==56) getFilter()->setParameter(kFrames,0.5f);
                    else if (result==61) getFilter()->setParameter(kFrames,0.4f);
                    else if (result==57) getFilter()->setParameter(kFrames,0.3f);
                    else if (result==58) getFilter()->setParameter(kFrames,0.2f);
                    else if (result==59) getFilter()->setParameter(kFrames,0.1f);
                    else if (result==60) getFilter()->setParameter(kFrames,0.05f);
                }
                else if (result==5) {
                    if (!samplemode) getFilter()->setParameter(kSamples,1.0f);
                }
                else if (result==6) {
                    getFilter()->setParameter(kShowsubfr,getFilter()->getParameter(kShowsubfr)>=0.5f?0.0f:1.0f);
                }

				else if (result==100)
				{
					getFilter()->setParameter(kClockMode,0.f);
				}
				else if (result==101)
				{
					getFilter()->setParameter(kClockMode,1.f/(float)(numModes-1));
				}
				else if (result==102)
				{
					getFilter()->setParameter(kClockMode,2.f/(float)(numModes-1));
				}
				else if (result==103)
				{
					getFilter()->setParameter(kClockMode,3.f/(float)(numModes-1));
				}
				else if (result==104)
				{
					getFilter()->setParameter(kClockMode,4.f/(float)(numModes-1));
				}
				else if (result==120) {
					if (getFilter()->mode==StopwatchMode)
						getFilter()->setParameter(kClearWatch,1.f);
					else if (getFilter()->mode==RecTimeMode)
						getFilter()->rectime=0;
					else if (getFilter()->mode==PluginTimeMode)
						getFilter()->plugintime=Time::getMillisecondCounter();
				}

                else if (result==998) {
                    getFilter()->showcues=!showtextbox;
                    updateParametersFromFilter();
                    resized();
                    repaint();
                }
                else if (result==996) {
                    FileChooser myChooser ("Import cue file...",
                                           File(getFilter()->getCurrentPath()),
                                           "*.xml");

                    if (myChooser.browseForFileToOpen())
                    {
                        File file (myChooser.getResult());
                        getFilter()->loadCues(file);
                    }
                }
                else if (result==997) {
                    FileChooser myChooser ("Export cue file...",
                        File(getFilter()->getCurrentPath() + File::separatorString + "cues.xml"));

                    if (myChooser.browseForFileToSave(true))
                    {
                        File cuefile (myChooser.getResult());
                        if (!cuefile.hasFileExtension("xml")) cuefile = cuefile.withFileExtension("xml");

                        getFilter()->saveCues(cuefile);
                    }

                }
                else if (result==999) {
                    getFilter()->cues.clear();
                    cueLabel->setText(String::empty,false);
                }
                else if (result>=1000) {
                    getFilter()->setCueEnabled(result-1000,!(getFilter()->cues[result-1000]->enabled));
                    updateParametersFromFilter();
                }
            }
        }
    }
}
VexEditorComponent::VexEditorComponent (VexFilter* const ownerFilter)
    : AudioProcessorEditor(ownerFilter)
{
	//Comboboxes, wave selection
	addAndMakeVisible (comboBox = new ComboBox (String::empty));
    comboBox->setEditableText (false);
    comboBox->setJustificationType (Justification::centredLeft);
    comboBox->setTextWhenNothingSelected (String(T("silent")));
    comboBox->setTextWhenNoChoicesAvailable (String(T("silent")));
    comboBox->addListener (this);
	comboBox->setColour(ComboBox::backgroundColourId, Colours::black);
	comboBox->setColour(ComboBox::textColourId, Colours::lightgrey);
	comboBox->setColour(ComboBox::outlineColourId, Colours::grey);
	comboBox->setColour(ComboBox::buttonColourId, Colours::grey);
	comboBox->setWantsKeyboardFocus(false); 
	comboBox->setLookAndFeel(&mlaf);

    addAndMakeVisible (comboBox2 = new ComboBox (String::empty));
    comboBox2->setEditableText (false);
    comboBox2->setJustificationType (Justification::centredLeft);
    comboBox2->setTextWhenNothingSelected (String(T("silent")));
    comboBox2->setTextWhenNoChoicesAvailable (String(T("silent")));
    comboBox2->addListener (this);
	comboBox2->setColour(ComboBox::backgroundColourId, Colours::black);
	comboBox2->setColour(ComboBox::textColourId, Colours::lightgrey);
	comboBox2->setColour(ComboBox::outlineColourId, Colours::grey);
	comboBox2->setColour(ComboBox::buttonColourId, Colours::grey);
	comboBox2->setWantsKeyboardFocus(false);
	comboBox2->setLookAndFeel(&mlaf);

    addAndMakeVisible (comboBox3 = new ComboBox (String::empty));
    comboBox3->setEditableText (false);
    comboBox3->setJustificationType (Justification::centredLeft);
    comboBox3->setTextWhenNothingSelected (String(T("silent")));
    comboBox3->setTextWhenNoChoicesAvailable (String(T("silent")));
    comboBox3->addListener (this);
	comboBox3->setColour(ComboBox::backgroundColourId, Colours::black);
	comboBox3->setColour(ComboBox::textColourId, Colours::lightgrey);
	comboBox3->setColour(ComboBox::outlineColourId, Colours::grey);
	comboBox3->setColour(ComboBox::buttonColourId, Colours::grey);
	comboBox3->setWantsKeyboardFocus(false);
	comboBox3->setLookAndFeel(&mlaf);
	
#if 0
	File location = (File::getSpecialLocation(File::userHomeDirectory)).getChildFile(".vex");
	if (! location.exists ())
	    location.createDirectory ();

    DBG (location.getFullPathName());

	String filePath = location.getFullPathName();

    DirectoryIterator iter (File(filePath), true, "*.raw");

	int i = 1;
	while (iter.next())
	{
		File theFile(iter.getFile());
		if (theFile.hasFileExtension (T("raw")))
		{
			i++;
			comboBox->addItem (theFile.getFileNameWithoutExtension(), i);
			comboBox2->addItem (theFile.getFileNameWithoutExtension(), i);
			comboBox3->addItem (theFile.getFileNameWithoutExtension(), i);
		}
	}
#endif

    int tableSize = waveRenderer::getWaveTableSize ();
	for (int i = 0; i < tableSize; i++)
	{
	    String tableName (waveRenderer::getWaveTableName (i));

		comboBox->addItem (tableName, i + 1);
		comboBox2->addItem (tableName, i + 1);
		comboBox3->addItem (tableName, i + 1);
	}

	//Make sliders
	for (int i = 0; i < 89; i++)
	{
		addAndMakeVisible (sliders[i] = new SnappingSlider (T("s")));
		sliders[i]->setSliderStyle(Slider::RotaryVerticalDrag);
		sliders[i]->setRange (0, 1, 0);
		sliders[i]->setSnap(0.0f, 0.0f);
		sliders[i]->setLookAndFeel(&mlaf);
		sliders[i]->addListener (this);
	}

	//Adjust the center of some
    sliders[1]->setRange (0, 1, 0.25f);		
	sliders[1]->setSnap(0.5f, 0.05f);
    sliders[2]->setSnap(0.5f, 0.05f);
    sliders[3]->setSnap(0.5f, 0.05f);
    sliders[4]->setSnap(0.5f, 0.05f);
    sliders[8]->setSnap(0.5f, 0.05f);
    sliders[13]->setSnap(0.5f, 0.05f);
    sliders[18]->setSnap(0.5f, 0.05f);

	int tmp = 24;
    sliders[1 + tmp]->setRange (0, 1, 0.25f);
	sliders[1 + tmp]->setSnap(0.5f, 0.05f);
    sliders[2 + tmp]->setSnap(0.5f, 0.05f);
    sliders[3 + tmp]->setSnap(0.5f, 0.05f);
    sliders[4 + tmp]->setSnap(0.5f, 0.05f);
    sliders[8 + tmp]->setSnap(0.5f, 0.05f);
    sliders[13 + tmp]->setSnap(0.5f, 0.05f);
    sliders[18 + tmp]->setSnap(0.5f, 0.05f);

	tmp = 48;
    sliders[1 + tmp]->setRange (0, 1, 0.25f);
	sliders[1 + tmp]->setSnap(0.5f, 0.05f);
    sliders[2 + tmp]->setSnap(0.5f, 0.05f);
    sliders[3 + tmp]->setSnap(0.5f, 0.05f);
    sliders[4 + tmp]->setSnap(0.5f, 0.05f);
    sliders[8 + tmp]->setSnap(0.5f, 0.05f);
    sliders[13 + tmp]->setSnap(0.5f, 0.05f);
    sliders[18 + tmp]->setSnap(0.5f, 0.05f);

    sliders[83]->setSnap(0.5f, 0.05f);
    sliders[84]->setSnap(0.5f, 0.05f);
    sliders[85]->setSnap(0.5f, 0.05f);

	sliders[75]->setSnap(0.0f, 0.05f);
	sliders[78]->setSnap(0.0f, 0.05f);
	sliders[82]->setSnap(0.0f, 0.05f);

	//PART ON/OFF
    addAndMakeVisible (TB = new TextButton (T("new button")));
    TB->setButtonText (String::empty);
    TB->addButtonListener (this);
    TB->setColour (TextButton::buttonColourId, Colours::darkred.withAlpha(0.5f));
	TB->setColour(TextButton::buttonOnColourId, Colours::red);
	TB->setClickingTogglesState(true);
	TB->setToggleState(false,false);

    addAndMakeVisible (TB2 = new TextButton (T("new button")));
    TB2->setButtonText (String::empty);
    TB2->addButtonListener (this);
    TB2->setColour (TextButton::buttonColourId, Colours::darkred.withAlpha(0.5f));
	TB2->setColour(TextButton::buttonOnColourId, Colours::red);
	TB2->setClickingTogglesState(true);
	TB2->setToggleState(false,false);

    addAndMakeVisible (TB3 = new TextButton (T("new button")));
    TB3->setButtonText (String::empty);
    TB3->addButtonListener (this);
    TB3->setColour (TextButton::buttonColourId, Colours::darkred.withAlpha(0.5f));
	TB3->setColour(TextButton::buttonOnColourId, Colours::red);
	TB3->setClickingTogglesState(true);
	TB3->setToggleState(false,false);

	//Peggy ON/OFF
    addAndMakeVisible (TB4 = new TextButton (T("new button")));
    TB4->setButtonText (String::empty);
    TB4->addButtonListener (this);
    TB4->setColour (TextButton::buttonColourId, Colours::darkblue.withAlpha(0.5f));
	TB4->setColour(TextButton::buttonOnColourId, Colours::blue);
	TB4->setClickingTogglesState(true);
	TB4->setToggleState(false,false);

    addAndMakeVisible (TB5 = new TextButton (T("new button")));
    TB5->setButtonText (String::empty);
    TB5->addButtonListener (this);
    TB5->setColour (TextButton::buttonColourId, Colours::darkblue.withAlpha(0.5f));
	TB5->setColour(TextButton::buttonOnColourId, Colours::blue);
	TB5->setClickingTogglesState(true);
	TB5->setToggleState(false,false);

    addAndMakeVisible (TB6 = new TextButton (T("new button")));
    TB6->setButtonText (String::empty);
    TB6->addButtonListener (this);
    TB6->setColour (TextButton::buttonColourId, Colours::darkblue.withAlpha(0.5f));
	TB6->setColour(TextButton::buttonOnColourId, Colours::blue);
	TB6->setClickingTogglesState(true);
	TB6->setToggleState(false,false);

	addChildComponent(p1 = new PeggyViewComponent(ownerFilter, 1));
	p1->setLookAndFeel(&mlaf);
	addChildComponent(p2 = new PeggyViewComponent(ownerFilter, 2));
	p2->setLookAndFeel(&mlaf);
	addChildComponent(p3 = new PeggyViewComponent(ownerFilter, 3));
	p3->setLookAndFeel(&mlaf);

	internalCachedImage1 = ImageCache::getFromMemory (Resources::vex3_png, Resources::vex3_pngSize);

	ownerFilter->addChangeListener (this);
	setSize(800,500);

	updateParametersFromFilter(true);
void VexEditorComponent::changeListenerCallback (void* source)
{
    updateParametersFromFilter(true);
Exemple #11
0
void CpuRamEditor::timerCallback()
{
	updateParametersFromFilter();
}
Exemple #12
0
//==============================================================================
void MidiChsEditor::changeListenerCallback (ChangeBroadcaster* source)
{
    // this is the filter telling us that it's changed, so we'll update our
    // display of the time, midi message, etc.
    updateParametersFromFilter();
}