MCPcopy Create free account
hub / github.com/MITK/MITK / MoveNodeToFront

Method MoveNodeToFront

Modules/QtWidgets/src/mitkRenderWindowLayerController.cpp:143–179  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

141}
142
143bool mitk::RenderWindowLayerController::MoveNodeToFront(DataNode* dataNode, const BaseRenderer* renderer /*= nullptr*/)
144{
145 if (nullptr == dataNode)
146 {
147 return false;
148 }
149
150 // get the layer stack of the current renderer
151 RenderWindowLayerUtilities::LayerStack stackedLayers = RenderWindowLayerUtilities::GetLayerStack(m_DataStorage, renderer);
152 if (!stackedLayers.empty())
153 {
154 // get the first value (highest int-key -> topmost layer)
155 int topmostLayer = stackedLayers.begin()->first;
156 // get the current layer value of the given data node
157 int currentLayer;
158 bool wasFound = dataNode->GetIntProperty("layer", currentLayer, renderer);
159 if (wasFound && currentLayer < topmostLayer)
160 {
161 // move the current data node above the current topmost layer
162 dataNode->SetIntProperty("layer", topmostLayer+1, renderer);
163 dataNode->Modified();
164 if (nullptr == renderer)
165 {
166 mitk::RenderingManager::GetInstance()->RequestUpdateAll();
167
168 }
169 else
170 {
171 mitk::RenderingManager::GetInstance()->RequestUpdate(renderer->GetRenderWindow());
172 }
173 return true;
174 }
175 // else: data node has no layer information or is already the topmost layer node
176 }
177 // else: do not work with empty layer stack
178 return false;
179}
180
181bool mitk::RenderWindowLayerController::MoveNodeToBack(DataNode* dataNode, const BaseRenderer* renderer /*= nullptr*/)
182{

Callers

nothing calls this directly

Calls 8

emptyMethod · 0.45
beginMethod · 0.45
GetIntPropertyMethod · 0.45
SetIntPropertyMethod · 0.45
ModifiedMethod · 0.45
RequestUpdateAllMethod · 0.45
RequestUpdateMethod · 0.45
GetRenderWindowMethod · 0.45

Tested by

no test coverage detected