Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F610
5562JustInsertExclusiveFunctionalities.patch
Public
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Authored By
•
wald
Nov 3 2010, 2:47 PM
2010-11-03 14:47:00 (UTC+1)
Size
2 KB
Referenced Files
None
Subscribers
None
5562JustInsertExclusiveFunctionalities.patch
View Options
Index: QmitkFunctionalityCoordinator.cpp
===================================================================
--- QmitkFunctionalityCoordinator.cpp (revision 27193)
+++ QmitkFunctionalityCoordinator.cpp (working copy)
@@ -111,6 +111,7 @@
m_StandaloneFuntionality = 0;
m_Functionalities.erase(_QmitkFunctionality.GetPointer()); // remove as opened functionality
+
// call PartClosed on the QmitkFunctionality
_QmitkFunctionality->ClosePartProxy();
//m_VisibleStandaloneFunctionalities.erase(_QmitkFunctionality.GetPointer()); // remove if necessary (should be done before in PartHidden()
@@ -126,14 +127,13 @@
{
_QmitkFunctionality->SetVisible(false);
_QmitkFunctionality->Hidden();
- // try to deactivate on hide (if is activated)
- this->DeactivateStandaloneFunctionality(_QmitkFunctionality.GetPointer());
// tracking of Visible Standalone Functionalities
m_VisibleStandaloneFunctionalities.erase(_QmitkFunctionality.GetPointer());
- // activate Functionality if just one Standalone Functionality is visible (old one gets deactivated)
- if(m_VisibleStandaloneFunctionalities.size() == 1)
- this->ActivateStandaloneFunctionality(_QmitkFunctionality.GetPointer());
+
+ // activate Functionality if just one Standalone Functionality is visible
+ if( m_VisibleStandaloneFunctionalities.size() == 1 )
+ this->ActivateStandaloneFunctionality( *m_VisibleStandaloneFunctionalities.begin() );
}
}
@@ -147,16 +147,20 @@
_QmitkFunctionality->Visible();
// tracking of Visible Standalone Functionalities
- m_VisibleStandaloneFunctionalities.insert(_QmitkFunctionality.GetPointer());
- // activate Functionality if just one Standalone Functionality is visible
- if(m_VisibleStandaloneFunctionalities.size() == 1)
- this->ActivateStandaloneFunctionality(_QmitkFunctionality.GetPointer());
+ if( _QmitkFunctionality->IsExclusiveFunctionality() )
+ {
+ m_VisibleStandaloneFunctionalities.insert(_QmitkFunctionality.GetPointer());
+
+ // activate Functionality if just one Standalone Functionality is visible
+ if( m_VisibleStandaloneFunctionalities.size() == 1 )
+ this->ActivateStandaloneFunctionality( *m_VisibleStandaloneFunctionalities.begin() );
+ }
}
}
void QmitkFunctionalityCoordinator::ActivateStandaloneFunctionality( QmitkFunctionality* functionality )
{
- if(functionality && !functionality->IsActivated() && functionality->IsExclusiveFunctionality())
+ if( functionality && !functionality->IsActivated() && functionality->IsExclusiveFunctionality() )
{
// deactivate old one if necessary
this->DeactivateStandaloneFunctionality(m_StandaloneFuntionality);
File Metadata
Details
Attached
Mime Type
text/plain
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
585
Default Alt Text
5562JustInsertExclusiveFunctionalities.patch (2 KB)
Attached To
Mode
T5562: Measurement Bundle doesn't activate correctly after perspective change
Attached
Detach File
Event Timeline
•
wald
added a comment.
Nov 3 2010, 2:47 PM
2010-11-03 14:47:00 (UTC+1)
Comment Actions
New modifications for solving this issue
Log In to Comment