diff --git a/Source/Processors/Editors/ChannelMappingEditor.cpp b/Source/Processors/Editors/ChannelMappingEditor.cpp index 6886d5a43b237830050677dcb73d7466a92bdecb..0b87d439b40abd65550d8785f4fd5bc5373e2411 100644 --- a/Source/Processors/Editors/ChannelMappingEditor.cpp +++ b/Source/Processors/Editors/ChannelMappingEditor.cpp @@ -58,17 +58,17 @@ ChannelMappingEditor::ChannelMappingEditor(GenericProcessor* parentNode, bool us resetButton->setClickingTogglesState(false); resetButton->setEnabled(false); - // upButton = new TriangleButton(1); - // upButton->addListener(this); - // upButton->setBounds(285,10,10,8); - // addAndMakeVisible(upButton); - // upButton->setVisible(false); + upButton = new TriangleButton(1); + upButton->addListener(this); + upButton->setBounds(320,30,10,8); + addAndMakeVisible(upButton); + upButton->setVisible(false); - // downButton = new TriangleButton(2); - // downButton->addListener(this); - // downButton->setBounds(285,25,10,8); - // addAndMakeVisible(downButton); - // downButton->setVisible(false); + downButton = new TriangleButton(2); + downButton->addListener(this); + downButton->setBounds(320,45,10,8); + addAndMakeVisible(downButton); + downButton->setVisible(false); // channelSelector->setRadioStatus(true); @@ -201,6 +201,15 @@ void ChannelMappingEditor::createElectrodeButtons(int numNeeded, bool clearPrevi channelSelector->setRadioStatus(true); refreshButtonLocations(); + + if (numNeeded > 100) + { + upButton->setVisible(true); + downButton->setVisible(true); + } else { + upButton->setVisible(false); + downButton->setVisible(false); + } } void ChannelMappingEditor::refreshButtonLocations() @@ -484,6 +493,28 @@ void ChannelMappingEditor::buttonEvent(Button* button) } + } else if (button == upButton) + { + + scrollDistance -= 1; + + if (scrollDistance < 0) + scrollDistance = 0; + + refreshButtonLocations(); + + } else if (button == downButton) + { + + float maxScrollDistance = ceil(float(electrodeButtons.size() - 80) / 16.0f); + + scrollDistance += 1; + + if (scrollDistance > maxScrollDistance) + scrollDistance = maxScrollDistance; + + refreshButtonLocations(); + } } diff --git a/Source/Processors/Editors/ChannelMappingEditor.h b/Source/Processors/Editors/ChannelMappingEditor.h index 1def1ca825b9e6182be3bacd6c5b5b6779c64684..d84126c82037d5716288cc13ed0373ccdd141131 100644 --- a/Source/Processors/Editors/ChannelMappingEditor.h +++ b/Source/Processors/Editors/ChannelMappingEditor.h @@ -83,6 +83,8 @@ private: ScopedPointer<ElectrodeEditorButton> selectAllButton; ScopedPointer<ElectrodeEditorButton> modifyButton; ScopedPointer<ElectrodeEditorButton> resetButton; + ScopedPointer<TriangleButton> upButton; + ScopedPointer<TriangleButton> downButton; Array<int> channelArray; Array<int> referenceArray; diff --git a/Source/Processors/FileReader.cpp b/Source/Processors/FileReader.cpp index d99534cc2e4806c0ae9e12842bd9e76e953c6b8f..b4c239f9b70163c23684173e2bdc6d794ef88259 100644 --- a/Source/Processors/FileReader.cpp +++ b/Source/Processors/FileReader.cpp @@ -73,7 +73,7 @@ float FileReader::getDefaultSampleRate() int FileReader::getDefaultNumOutputs() { - return 128; + return 16; } float FileReader::getDefaultBitVolts()