当前位置: 首页>>代码示例>>C++>>正文


C++ TabWidget::setObjectName_mt_safe方法代码示例

本文整理汇总了C++中TabWidget::setObjectName_mt_safe方法的典型用法代码示例。如果您正苦于以下问题:C++ TabWidget::setObjectName_mt_safe方法的具体用法?C++ TabWidget::setObjectName_mt_safe怎么用?C++ TabWidget::setObjectName_mt_safe使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在TabWidget的用法示例。


在下文中一共展示了TabWidget::setObjectName_mt_safe方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: l

void
Gui::createDefaultLayout1()
{
    ///First tab widget must be created this way
    TabWidget* mainPane = new TabWidget(this, _imp->_leftRightSplitter);
    {
        QMutexLocker l(&_imp->_panesMutex);
        _imp->_panes.push_back(mainPane);
    }

    mainPane->setObjectName_mt_safe( QString::fromUtf8("pane1") );
    mainPane->setAsAnchor(true);

    _imp->_leftRightSplitter->addWidget(mainPane);

    QList<int> sizes;
    sizes << _imp->_toolBox->sizeHint().width() << width();
    _imp->_leftRightSplitter->setSizes_mt_safe(sizes);


    TabWidget* propertiesPane = mainPane->splitHorizontally(false);
    TabWidget* workshopPane = mainPane->splitVertically(false);
    Splitter* propertiesSplitter = dynamic_cast<Splitter*>( propertiesPane->parentWidget() );
    assert(propertiesSplitter);
    sizes.clear();
    sizes << width() * 0.65 << width() * 0.35;
    propertiesSplitter->setSizes_mt_safe(sizes);

    TabWidget::moveTab(_imp->_nodeGraphArea, _imp->_nodeGraphArea, workshopPane);
    TabWidget::moveTab(_imp->_curveEditor, _imp->_curveEditor, workshopPane);
    TabWidget::moveTab(_imp->_dopeSheetEditor, _imp->_dopeSheetEditor, workshopPane);
    TabWidget::moveTab(_imp->_propertiesBin, _imp->_propertiesBin, propertiesPane);

    {
        QMutexLocker l(&_imp->_viewerTabsMutex);
        for (std::list<ViewerTab*>::iterator it2 = _imp->_viewerTabs.begin(); it2 != _imp->_viewerTabs.end(); ++it2) {
            TabWidget::moveTab(*it2, *it2, mainPane);
        }
    }
    {
        QMutexLocker l(&_imp->_histogramsMutex);
        for (std::list<Histogram*>::iterator it2 = _imp->_histograms.begin(); it2 != _imp->_histograms.end(); ++it2) {
            TabWidget::moveTab(*it2, *it2, mainPane);
        }
    }


    ///Default to NodeGraph displayed
    workshopPane->makeCurrentTab(0);
}
开发者ID:haebler,项目名称:Natron,代码行数:50,代码来源:Gui10.cpp

示例2: splitHorizontally

void TabWidget::splitHorizontally(){
    
    QMutexLocker l(&_tabWidgetStateMutex);
    Splitter* container = dynamic_cast<Splitter*>(parentWidget());
    if(!container){
        return;
    }
    
    /*We need to know the position in the container layout of the old tab widget*/
    int oldIndex = container->indexOf(this);
    
    QList<int> containerSizes = container->sizes();
    
    Splitter* newSplitter = new Splitter(container);
    newSplitter->setObjectName_mt_safe(container->objectName()+TabWidget::splitHorizontallyTag);
    newSplitter->setContentsMargins(0, 0, 0, 0);
    newSplitter->setOrientation(Qt::Horizontal);
    setVisible(false);
    setParent(newSplitter);
    newSplitter->addWidget(this);
    setVisible(true);
    _gui->registerSplitter(newSplitter);
    
    /*Adding now a new tab*/
    TabWidget* newTab = new TabWidget(_gui,TabWidget::CLOSABLE,newSplitter);
    newTab->setObjectName_mt_safe(objectName()+TabWidget::splitHorizontallyTag);
    _gui->registerPane(newTab);
    newSplitter->addWidget(newTab);
    
    QSize splitterSize = newSplitter->sizeHint();
    QList<int> sizes; sizes <<   splitterSize.width()/2;
    sizes  << splitterSize.width()/2;
    newSplitter->setSizes_mt_safe(sizes);
    
    /*Inserting back the new splitter at the original index*/
    container->insertWidget(oldIndex,newSplitter);
    
    ///restore the container original sizes
    container->setSizes_mt_safe(containerSizes);
    
    _userSplits.insert(std::make_pair(newTab,false));
    
    if (!_gui->getApp()->getProject()->isLoadingProject()) {
        _gui->getApp()->triggerAutoSave();
    }
}
开发者ID:ndeebook,项目名称:Natron,代码行数:46,代码来源:TabWidget.cpp


注:本文中的TabWidget::setObjectName_mt_safe方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。