root/OpenSceneGraph/trunk/include/osgPresentation/deprecated/KeyEventHandler @ 13890

Revision 13890, 2.4 kB (checked in by robert, 13 hours ago)

From Jason Beverage, "It looks like the Callback header got accidentally removed from the CMakeLists.txt in the submission yesterday for the geometry instancing example."

Line 
1/* -*-c++-*- Present3D - Copyright (C) 1999-2006 Robert Osfield
2 *
3 * This software is open source and may be redistributed and/or modified under
4 * the terms of the GNU General Public License (GPL) version 2.0.
5 * The full license is in LICENSE.txt file included with this distribution,.
6 *
7 * This software is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10 * include LICENSE.txt for more details.
11*/
12
13#ifndef KEYEVENTHANDLER
14#define KEYEVENTHANDLER 1
15
16#include <osg/StateSet>
17#include <osg/Point>
18
19#include <osgGA/GUIEventHandler>
20
21#include <osgPresentation/deprecated/SlideEventHandler>
22
23namespace osgPresentation
24{
25
26class OSGPRESENTATION_EXPORT KeyEventHandler : public osgGA::GUIEventHandler
27{
28    public:
29
30        KeyEventHandler(int key, osgPresentation::Operation operation, const JumpData& jumpData=JumpData());
31        KeyEventHandler(int key, const std::string& str, osgPresentation::Operation operation, const JumpData& jumpData=JumpData());
32        KeyEventHandler(int key, const osgPresentation::KeyPosition& keyPos, const JumpData& jumpData=JumpData());
33
34        void setKey(int key) { _key = key; }
35        int getKey() const { return _key; }
36
37        void setOperation(osgPresentation::Operation operation) { _operation = operation; }
38        osgPresentation::Operation getOperation() const { return _operation; }
39
40        void setCommand(const std::string& str) { _command = str; }
41        const std::string& getCommand() const { return _command; }
42
43        void setKeyPosition(const osgPresentation::KeyPosition& keyPos) { _keyPos = keyPos; }
44        const osgPresentation::KeyPosition&  getKeyPosition() const { return _keyPos; }
45
46        void setJumpData(const JumpData& jumpData) { _jumpData = jumpData; }
47        const JumpData& getJumpData() const { return _jumpData; }
48
49        virtual bool handle(const osgGA::GUIEventAdapter& ea,osgGA::GUIActionAdapter& aa, osg::Object* object, osg::NodeVisitor* nv);
50
51        virtual void getUsage(osg::ApplicationUsage& usage) const;
52
53        void doOperation();
54
55        int                                 _key;
56
57        std::string                         _command;
58        osgPresentation::KeyPosition        _keyPos;
59        osgPresentation::Operation          _operation;
60
61        JumpData                            _jumpData;
62};
63
64}
65
66#endif
Note: See TracBrowser for help on using the browser.