]> git.mxchange.org Git - simgear.git/commitdiff
Modified Files:
authorfrohlich <frohlich>
Sun, 7 Jan 2007 08:34:03 +0000 (08:34 +0000)
committerfrohlich <frohlich>
Sun, 7 Jan 2007 08:34:03 +0000 (08:34 +0000)
animation.cxx: Add a button argument to that animation.
The default is to accept any mouse button.

simgear/scene/model/animation.cxx

index 861c26907d8e0e511c5dc33a27a01de62c607c27..395c6a317efa5473b7526480ad1a0e01f0b6b070 100644 (file)
@@ -2092,6 +2092,7 @@ class SGPickAnimation::PickCallback : public SGPickCallback {
 public:
   PickCallback(const SGPropertyNode* configNode,
                SGPropertyNode* modelRoot) :
+    _button(configNode->getIntValue("button", -1)),
     _repeatable(configNode->getBoolValue("repeatable", false)),
     _repeatInterval(configNode->getDoubleValue("interval-sec", 0.1))
   {
@@ -2112,6 +2113,8 @@ public:
   }
   virtual bool buttonPressed(int button, const Info&)
   {
+    if (0 <= _button && button != _button)
+      return false;
     SGBindingList::const_iterator i;
     for (i = _bindingsDown.begin(); i != _bindingsDown.end(); ++i)
       (*i)->fire();
@@ -2140,6 +2143,7 @@ public:
 private:
   SGBindingList _bindingsDown;
   SGBindingList _bindingsUp;
+  int _button;
   bool _repeatable;
   double _repeatInterval;
   double _repeatTime;