restore panel visibility when enabling

This commit is contained in:
Robert Haschke 2017-11-14 15:56:29 +01:00
parent 428bdd7d0c
commit fdc0fa012a
3 changed files with 6 additions and 3 deletions

View File

@ -160,6 +160,7 @@ protected:
rviz::DisplayContext* context_;
TaskSolutionPanel* slider_panel_ = nullptr;
rviz::PanelDockWidget* slider_dock_panel_ = nullptr;
bool slider_panel_was_visible_ = false;
// Trajectory Properties
rviz::Property* robot_property_;

View File

@ -81,13 +81,11 @@ void TaskSolutionPanel::onInitialize()
void TaskSolutionPanel::onEnable()
{
show();
parentWidget()->show();
}
void TaskSolutionPanel::onDisable()
{
hide();
paused_ = false;
parentWidget()->hide();
}

View File

@ -303,6 +303,8 @@ void TaskSolutionVisualization::changedRobotCollisionEnabled()
void TaskSolutionVisualization::onEnable()
{
if (slider_panel_ && slider_panel_was_visible_)
slider_panel_->onEnable();
}
void TaskSolutionVisualization::onDisable()
@ -313,8 +315,10 @@ void TaskSolutionVisualization::onDisable()
displaying_solution_.reset();
animating_ = false;
if (slider_panel_)
if (slider_panel_) {
slider_panel_was_visible_ = slider_panel_->isVisible();
slider_panel_->onDisable();
}
}
void TaskSolutionVisualization::interruptCurrentDisplay()