Esempio n. 1
0
void wxGxContentView::OnObjectAdded(wxGxCatalogEvent& event)
{
    //wxLogDebug(wxT("ContentView Object %d Add"), event.GetObjectID());
    wxGxObject* pGxObject = m_pCatalog->GetRegisterObject(event.GetObjectID());
    if(pGxObject)
    {
//        wxLogDebug(wxT("ContentView Object %d '%s' Add"), pGxObject->GetId(), pGxObject->GetFullName());

		const wxGxObject* pParentGxObject = pGxObject->GetParent();
		if(!pParentGxObject)
			return;
	    if(pParentGxObject->GetId() == m_nParentGxObjectID)
        {
		    if(AddObject(pGxObject))
            {
                wxGxAutoRenamer* pGxAutoRenamer = dynamic_cast<wxGxAutoRenamer*>(pGxObject->GetParent());
                if(pGxAutoRenamer && pGxAutoRenamer->IsBeginRename(this, pGxObject->GetPath()))
                {
                    BeginRename(pGxObject->GetId());
                }
                else
                {
                    SORTDATA sortdata = { m_bSortAsc, m_currentSortCol };
                    SortItems(GxObjectCVCompareFunction, (long)&sortdata);
                    SetColumnImage(m_currentSortCol, m_bSortAsc ? 0 : 1);
                }
            }
        }
    }
}
Esempio n. 2
0
void wxGxTreeView::OnObjectAdded(wxGxCatalogEvent& event)
{
    wxGxObject* pGxObject = m_pCatalog->GetRegisterObject(event.GetObjectID());
	if(!pGxObject)
		return;
    wxGxObject* pParentObject = pGxObject->GetParent();
	wxTreeItemId ParentTreeItemId = m_TreeMap[pParentObject->GetId()];
	if(ParentTreeItemId.IsOk())
	{
		wxGxTreeItemData* pData = (wxGxTreeItemData*)GetItemData(ParentTreeItemId);
		if(pData != NULL)
		{
            wxGxAutoRenamer* pGxAutoRenamer = dynamic_cast<wxGxAutoRenamer*>(pParentObject);
			if(pData->m_bExpandedOnce)
            {
				AddTreeItem(pGxObject, ParentTreeItemId);
                SortChildren(ParentTreeItemId);
                if(pGxAutoRenamer && pGxAutoRenamer->IsBeginRename(this, pGxObject->GetPath()))
                {
                    BeginRename(pGxObject->GetId());
                }
            }
			else
            {
                if(pGxAutoRenamer && pGxAutoRenamer->IsBeginRename(this, pGxObject->GetPath()))
                {
                    Expand(ParentTreeItemId);
				    AddTreeItem(pGxObject, ParentTreeItemId);
                    SortChildren(ParentTreeItemId);
                    BeginRename(pGxObject->GetId());
                }
                else
                {
				    SetItemHasChildren(ParentTreeItemId, true);
                }
            }
		}
	}
}