MCPcopy Create free account
hub / github.com/Codeya-IDE/deepin-ide / onSplitRequested

Method onSplitRequested

src/plugins/codeeditor/gui/workspacewidget.cpp:718–746  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

716}
717
718void WorkspaceWidgetPrivate::onSplitRequested(Qt::Orientation ori, const QString &fileName)
719{
720 auto tabWidgetSender = qobject_cast<TabWidget *>(sender());
721 if (!tabWidgetSender)
722 return;
723
724 auto spliter = qobject_cast<QSplitter *>(tabWidgetSender->parent());
725 if (!spliter)
726 return;
727
728 tabWidgetSender->setCloseButtonVisible(true);
729 int index = spliter->indexOf(tabWidgetSender);
730 if (spliter->count() == 1) {
731 // Only one widget is added to the splitter,
732 // change its orientation and add a new widget
733 spliter->setOrientation(ori);
734 doSplit(tabWidgetSender, spliter, index + 1, fileName);
735 } else if (spliter->orientation() == ori) {
736 doSplit(tabWidgetSender, spliter, index + 1, fileName);
737 } else {
738 // Use a new splitter to replace
739 QSplitter *newSplitter = new QSplitter(q);
740 newSplitter->setOrientation(ori);
741
742 spliter->replaceWidget(index, newSplitter);
743 newSplitter->addWidget(tabWidgetSender);
744 doSplit(tabWidgetSender, newSplitter, 1, fileName);
745 }
746}
747
748void WorkspaceWidgetPrivate::onCloseRequested()
749{

Callers

nothing calls this directly

Calls 6

parentMethod · 0.45
setCloseButtonVisibleMethod · 0.45
indexOfMethod · 0.45
countMethod · 0.45
replaceWidgetMethod · 0.45
addWidgetMethod · 0.45

Tested by

no test coverage detected