262{
263
264 if (
m_d->frame->geometry().contains(
event->pos())) {
265 QDockWidget::contextMenuEvent ( event );
266 return;
267 }
268
269
270
272
273
274
275 QAction* pFullScreenAction =
menu.addAction(
"Show &full Screen");
277 QAction* pRemoveAction =
menu.addAction(
"&Remove channel");
278 menu.addSeparator ();
279 QAction* pMoveChannelAction =
menu.addAction(
"&Move to tab");
280
281 QStringList tablist =
m_d->tabmanager->tabList();
282 QMenu menu_movechan(this);
283 if (tablist.count()==1) {
284 menu_movechan.addAction("No other tabs available")->setEnabled(false);
285 } else {
286 QString thistab =
m_d->tabmanager->channelToTab(
m_d->channelwidget);
287 for (const QString& tab : tablist) {
288 if (tab!=thistab)
289 menu_movechan.addAction(tab)->setData("MOVECHAN");
290 }
291 }
292 pMoveChannelAction->setMenu(&menu_movechan);
293
294
295 QAction * selAct =
menu.exec(
event->globalPos());
296
297 if (!selAct)
298 return;
299 if (selAct==pFullScreenAction) {
300 m_d->tabmanager->showChannelFullScreen(
m_d->channelwidget);
301 return;
302 }
303 if (selAct==pRemoveAction) {
304 m_d->tabmanager->removeChannelAfterQueueEmpties(
m_d->channelwidget->unique_name());
305 return;
306 }
307 if (selAct->data()=="MOVECHAN") {
308 m_d->tabmanager->moveChannelToTab(
m_d->channelwidget->unique_name(),selAct->text());
309 return;
310 }
311 std::cout<<"ERROR in VP1DockWidget::contextMenuEvent!!!!!"<<std::endl;
312
313}