I need to have buttons in my application which perform different actions, one on the mouse down, and one on the mouse up. Well, more accurately, when the mouse up causes the button which was previously in the down state to release. This can happen whether the mouse up is in the client area of the Component, or outside (or at least, it should).
To make things more interesting I would also like to have keyboard shortcuts that can depress the button when the corresponding key is pressed, and cause the button component to release when the corresponding keyboard key is let go.
Is juce::Button appropriate for this or do I need to make a copy of the file and adapt it? Or is there a way to accomplish this using a derived class? It seems that juce::Button either lets you pay attention to the mouse down, or the mouse up, via the use of setTriggeredOnMouseDown(), but not both.
Feel free to ridicule me if I seem hopelessly confused.