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

Method AdjustOverlayPosition

Modules/QtOverlays/src/QmitkOverlayController.cpp:181–275  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

179}
180
181void QmitkOverlayController::AdjustOverlayPosition(QmitkOverlay::DisplayPosition displayPosition)
182{
183 QWidget *widget = m_PositionedOverlays[displayPosition];
184 QSize size = GetMinimumSizeForWidget(displayPosition);
185 QPoint pos;
186
187 switch (displayPosition)
188 {
189 case QmitkOverlay::top_Left:
190 {
191 // setting position of top-left overlay-container
192 pos = m_RenderWindow->mapToGlobal(QPoint(0, 0));
193 m_PositionedOverlays[QmitkOverlay::top_Left]->move(pos.x(), pos.y());
194
195 break;
196 }
197
198 case QmitkOverlay::top_Center:
199 {
200 // setting position of top-center overlay-container
201 widget->setFixedWidth(std::max(widget->width(), size.width() * 2));
202
203 pos = m_RenderWindow->mapToGlobal(QPoint(m_RenderWindow->size().width() / 2, 0));
204 widget->move(pos.x() - widget->size().width() / 2, pos.y());
205
206 break;
207 }
208
209 case QmitkOverlay::top_Right:
210 {
211 // setting position of top-right overlay-container
212 widget->setFixedWidth(std::max(widget->width(), size.width() * 2));
213
214 pos = m_RenderWindow->mapToGlobal(QPoint(m_RenderWindow->size().width(), 0));
215 widget->move(pos.x() - widget->size().width(), pos.y());
216
217 break;
218 }
219
220 case QmitkOverlay::middle_Left:
221 {
222 // setting position of middle-left overlay-container
223 widget->setFixedWidth(std::max(widget->width(), size.width() * 2));
224
225 pos = m_RenderWindow->mapToGlobal(QPoint(0, m_RenderWindow->size().height() / 2));
226 widget->move(pos.x(), pos.y() - widget->size().height() / 2);
227
228 break;
229 }
230
231 case QmitkOverlay::middle_Right:
232 {
233 // setting position of middle-right overlay-container
234 widget->setFixedWidth(std::max(widget->width(), size.width() * 2));
235
236 pos = m_RenderWindow->mapToGlobal(QPoint(m_RenderWindow->size().width(), m_RenderWindow->size().height() / 2));
237 widget->move(pos.x() - widget->size().width(), pos.y() - widget->size().height() / 2);
238

Callers 2

AddOverlayMethod · 0.95
RemoveOverlayMethod · 0.95

Calls 2

QPointClass · 0.85
sizeMethod · 0.45

Tested by

no test coverage detected