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


C++ wxDataViewItemArray::Add方法代码示例

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


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

示例1: GetChildren

unsigned int ArtifactViewModel::GetChildren(const wxDataViewItem &item, wxDataViewItemArray &children) const
{
    // Root item
    if (!item) {
        for (auto& slot : m_artifactBag) {
            auto artifactPtr = slot.second.get();
            children.Add(wxDataViewItem(artifactPtr));
        }

        return m_artifactBag.size();
    }

    const auto& artifact = *reinterpret_cast<Artifact*>(item.GetID());
    if (!artifact.GetInfusedArtifacts().empty()) {
        const auto& infusedArtifacts = artifact.GetInfusedArtifacts();
        for (auto& infusedArtifact : infusedArtifacts) {
            auto artifactPtr = infusedArtifact.get();
            children.Add(wxDataViewItem(artifactPtr));
        }

        return infusedArtifacts.size();
    }

    assert(!!"Should not happen");
    return 0;
}
开发者ID:SteffenL,项目名称:Van-Helsing-game-research,代码行数:26,代码来源:ArtifactViewModel.cpp

示例2: GetChildren

unsigned int MyMusicTreeModel::GetChildren( const wxDataViewItem &parent,
                                            wxDataViewItemArray &array ) const
{
    MyMusicTreeModelNode *node = (MyMusicTreeModelNode*) parent.GetID();
    if (!node)
    {
        array.Add( wxDataViewItem( (void*) m_root ) );
        return 1;
    }

    if (node == m_classical)
    {
        MyMusicTreeModel *model = (MyMusicTreeModel*)(const MyMusicTreeModel*) this;
        model->m_classicalMusicIsKnownToControl = true;
    }

    if (node->GetChildCount() == 0)
    {
        return 0;
    }

    unsigned int count = node->GetChildren().GetCount();
    for (unsigned int pos = 0; pos < count; pos++)
    {
        MyMusicTreeModelNode *child = node->GetChildren().Item( pos );
        array.Add( wxDataViewItem( (void*) child ) );
    }

    return count;
}
开发者ID:euler0,项目名称:Helium,代码行数:30,代码来源:mymodels.cpp

示例3: GetChildren

unsigned int ProjectViewModel::GetChildren( const wxDataViewItem& item, wxDataViewItemArray& items ) const
{
	int count = 0;
	Asset *pAsset = NULL;

	if (!item.IsOk())
	{
		ForciblyFullyLoadedPackageManager::GetStaticInstance()->ForceFullyLoadRootPackages();
		pAsset = Asset::GetFirstTopLevelAsset();
	}
	else
	{
		Asset* pParentAsset = static_cast< Asset* >( item.GetID() );

		if ( pParentAsset->IsPackage() )
		{
			ForciblyFullyLoadedPackageManager::GetStaticInstance()->ForceFullyLoadPackage( pParentAsset->GetPath() );
		}

		pAsset = pParentAsset->GetFirstChild();
	}

	while (pAsset)
	{
		//if ( m_AssetsInTree.Insert( pAsset ).Second() )
		{
			items.Add( wxDataViewItem( pAsset ) );
			++count;
		}

		pAsset = pAsset->GetNextSibling();
	}

	return count;
}
开发者ID:KETMGaming,项目名称:Helium,代码行数:35,代码来源:ProjectViewModel.cpp

示例4: GetChildren

unsigned int TreeListModel::GetChildren(const wxDataViewItem& item, wxDataViewItemArray& children) const
{
    if(item.GetID() == NULL) {
        // Root
        for(size_t i=0; i<m_data.size(); ++i) {
            children.Add( wxDataViewItem( m_data.at(i) ) );
        }
        return children.size();
    }

    children.Clear();
    TreeListModel_Item* node = reinterpret_cast<TreeListModel_Item*>(item.m_pItem);
    if ( node ) {
        for(size_t i=0; i<node->GetChildren().size(); ++i) {
            children.Add( wxDataViewItem( node->GetChildren().at(i) ) );
        }
    }
    return children.GetCount();
}
开发者ID:wuqiong4945,项目名称:memu,代码行数:19,代码来源:treelistmodel.cpp

示例5: wxDataViewItem

unsigned int GNC::GUI::AcquisitionNode::GetChildren(wxDataViewItemArray &array )
{
        if (IsSeriesNode()) {
                return 0;
        } else {
                for (TMapIndex::const_iterator it = seriesMap.begin(); it != seriesMap.end(); ++it) {
                        array.Add( wxDataViewItem( (void*) (*it).second) );
                }
                return seriesMap.size();
        }
}
开发者ID:151706061,项目名称:ginkgocadx,代码行数:11,代码来源:acquisitiontablemodel.cpp

示例6: GetChildren

	virtual unsigned int GetChildren(const wxDataViewItem &parent, wxDataViewItemArray &array) const
	{
		const ReplayProvider* provider = (ReplayProvider*)parent.GetID();
		if (!provider)
			provider = m_root;

		for (auto it = provider->provider.begin(); it != provider->provider.end(); ++it)
		{
			ReplayProvider* childProvider = (ReplayProvider*)it->get();
			array.Add(wxDataViewItem((void*)childProvider));
		}

		return provider->provider.size();
	}
开发者ID:TcT2k,项目名称:RLReplayManager,代码行数:14,代码来源:ManagerFrame.cpp

示例7:

//=====================================================================================
/*virtual*/ unsigned int WinnerPanel::WinEntryDataViewModel::GetChildren( const wxDataViewItem& item, wxDataViewItemArray& children ) const
{
	if( item.IsOk() )
		return 0;

	for( Mongo::WinEntryList::const_iterator iter = winEntryList.cbegin(); iter != winEntryList.cend(); iter++ )
	{
		const Mongo::WinEntry* winEntry = *iter;

		wxDataViewItem item;
		item.m_pItem = ( void* )winEntry;

		children.Add( item );
	}

	return winEntryList.size();
}
开发者ID:spencerparkin,项目名称:ChineseCheckers,代码行数:18,代码来源:ChiCheWinnerPanel.cpp

示例8: GetChildren

unsigned int vvStampsModel::GetChildren(
	const wxDataViewItem& cItem,
	wxDataViewItemArray&  cChildren
	) const
{
	// if this isn't the invisible root, it has no children
	if (cItem.IsOk())
	{
		return 0u;
	}

	// return a list of all of our items
	for (stlDataItemMap::const_iterator it = this->mcDataItems.begin(); it != this->mcDataItems.end(); ++it)
	{
		cChildren.Add(this->ConvertDataItem(it));
	}
	return this->mcDataItems.size();
}
开发者ID:refaqtor,项目名称:sourcegear_veracity_clone,代码行数:18,代码来源:vvStampsControl.cpp

示例9: GetChildren

/**
 * Push all children of the supplied item into the list
 * If the supplied item is invalid, push all the top-level items
 */
unsigned int BOM_TABLE_MODEL::GetChildren( const wxDataViewItem& aItem,
                                           wxDataViewItemArray& aChildren ) const
{
    auto row = aItem.IsOk() ? ItemToRow( aItem ) : nullptr;

    // Valid row, return its children
    if( row )
    {
        return row->GetChildren( aChildren );
    }
    else
    {
        for( auto& group : Groups )
        {
            aChildren.Add( RowToItem( &*group ) );
        }

        return aChildren.size();
    }
}
开发者ID:cpavlina,项目名称:kicad,代码行数:24,代码来源:bom_table_model.cpp

示例10: GetChildren

unsigned int ProjectViewModel::GetChildren( const wxDataViewItem& item, wxDataViewItemArray& items ) const
{
    ProjectViewModelNode *parentNode = static_cast< ProjectViewModelNode* >( item.GetID() );
    if ( !parentNode )
    {
        parentNode = m_RootNode.Ptr();
    }

    if ( parentNode->GetChildren().size() < 1 )
    {
        return 0;
    }

    uint32_t numAdded = 0;
    for ( S_ProjectViewModelNodeChildren::const_iterator itr = parentNode->GetChildren().begin(),
        end = parentNode->GetChildren().end(); itr != end; ++itr, ++numAdded )
    {
        items.Add( wxDataViewItem( (void*) (*itr) ) );
    }

    return numAdded;
}
开发者ID:euler0,项目名称:Helium,代码行数:22,代码来源:ProjectViewModel.cpp

示例11: GetChildren

unsigned int TreeModelFilter::GetChildren(const wxDataViewItem& item, wxDataViewItemArray& children) const
{
	if (_filterColumn == NULL && !_customVisibleFunc)
	{
		return _childModel->GetChildren(item, children);
	}

	// Get the raw child list
	wxDataViewItemArray unfilteredChildren;
	_childModel->GetChildren(item, unfilteredChildren);

	// Only add the visible ones to the result set
	std::for_each(unfilteredChildren.begin(), unfilteredChildren.end(), [&] (const wxDataViewItem& item)
	{
        if (ItemIsVisible(item))
		{
			children.Add(item);
		}
	});

	return children.size();
}
开发者ID:BielBdeLuna,项目名称:DarkRadiant,代码行数:22,代码来源:TreeModelFilter.cpp


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