From 9558a0426e3cd73c5b680a71cc9114a62ef2d15f Mon Sep 17 00:00:00 2001 From: Krisjanis Rijnieks <krisjanis.rijnieks@gmail.com> Date: Mon, 29 Sep 2014 21:29:14 +0200 Subject: [PATCH] Fix disable source selector toggles. It appears that in openFrameworks version 0.8.2 and up there has been a change in ofxGui addon - when adding gui elements to ofgGuiGroup the unregisterMouseEvent() method of each element is called thus disabling it. --- src/ui/RadioList.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/ui/RadioList.cpp b/src/ui/RadioList.cpp index c280edc..dd3b0dd 100644 --- a/src/ui/RadioList.cpp +++ b/src/ui/RadioList.cpp @@ -31,6 +31,13 @@ void RadioList::setup(vector<string>& labels) { toggle->setName(labels[i]); toggle->addListener(this, &RadioList::onToggleClicked); guiGroup.add(toggle); + + if ((ofGetVersionMajor() == 0 && + ofGetVersionMinor() >= 8 && + ofGetVersionPatch() >= 2) || + ofGetVersionMajor() > 0) { + toggle->registerMouseEvents(); + } } cout << "num items: " << guiGroup.getNumControls() << endl; @@ -135,7 +142,8 @@ string RadioList::getItemName(int index) { int RadioList::size() { return guiGroup.getNumControls(); } -void RadioList::onToggleClicked(bool& toggleValue) { +void RadioList::onToggleClicked(bool& toggleValue) +{ unselectAll(); // Search for the actual toggle triggering the event