virtual bool buttonPressed( int b,
const osgGA::GUIEventAdapter&,
const Info& info )
- {
+ {
+ if (!panel->getPanel()) {
+ return false;
+ }
+
button = b;
// convert to panel coordinates
osg::Matrixd m = osg::Matrixd::inverse(panel->transformMatrix());
_resizeToViewport(true),
_depthTest(false)
{
- SGCommandMgr::instance()->addCommand("panel-mouse-click", this, &FGPanelNode::panelMouseClickCommand);
+ globals->get_commands()->addCommand("panel-mouse-click", this, &FGPanelNode::panelMouseClickCommand);
SGPropertyNode* pathNode = fgGetNode("/sim/panel/path");
_pathListener.reset(new PanelPathListener(this));
FGPanelNode::~FGPanelNode()
{
if (_is2d) {
- SGCommandMgr::instance()->removeCommand("panel-mouse-click");
+ globals->get_commands()->removeCommand("panel-mouse-click");
SGPropertyNode* pathNode = fgGetNode("/sim/panel/path");
pathNode->removeChangeListener(_pathListener.get());
}