BOOL CLibraryAlbumView::Create(CWnd* pParentWnd)
{
	CRect rect( 0, 0, 0, 0 );
	SelClear( FALSE );
	return CWnd::CreateEx( 0, NULL, _T("CLibraryAlbumView"), WS_CHILD | WS_VSCROLL |
		WS_TABSTOP | WS_GROUP, rect, pParentWnd, IDC_LIBRARY_VIEW );
}
示例#2
0
BOOL CLibraryView::Create(CWnd* pParentWnd)
{
	CRect rect( 0, 0, 0, 0 );
	SelClear( FALSE );
	return CWnd::CreateEx( WS_EX_CONTROLPARENT, NULL, NULL, WS_CHILD|WS_TABSTOP, rect, pParentWnd,
		IDC_LIBRARY_VIEW, NULL );
}
void CLibraryCollectionView::OnWebContextMenu(NMHDR* pNMHDR, LPARAM* pResult)
{
    WVNCONTEXTMENU* pNotify = (WVNCONTEXTMENU*)pNMHDR;

    *pResult = TRUE;

    if ( m_nWebIndex != 0 )
    {
        GetToolTip()->Hide();

        SelClear( FALSE );
        SelAdd( m_nWebIndex );

        CPoint point( pNotify->ptMouse );

        CStringList oFiles;
        {
            CQuickLock pLock( Library.m_pSection );
            POSITION posSel = StartSelectedFileLoop();
            while ( CLibraryFile* pFile = GetNextSelectedFile( posSel ) )
            {
                oFiles.AddTail( pFile->GetPath() );
            }
        }

        CString strName = _T("CLibraryFileView");
        strName += Settings.Library.ShowVirtual ? _T(".Virtual") : _T(".Physical");
        Skin.TrackPopupMenu( strName, point, ID_LIBRARY_LAUNCH, oFiles );
    }
}
void CLibraryDetailView::OnItemChanged(NM_LISTVIEW* pNotify, LRESULT* pResult)
{
	*pResult = 0;

	if ( pNotify->iItem >= 0 )
	{
		if ( ( pNotify->uOldState & LVIS_SELECTED ) != ( pNotify->uNewState & LVIS_SELECTED ) )
		{
			if ( pNotify->uNewState & LVIS_SELECTED )
			{
				SelAdd( m_pList[ pNotify->iItem ].nIndex );
				m_pList[ pNotify->iItem ].nState |= LDVI_SELECTED;
			}
			else
			{
				SelRemove( m_pList[ pNotify->iItem ].nIndex );
				m_pList[ pNotify->iItem ].nState &= ~LDVI_SELECTED;
			}
		}
	}
	else
	{
		SelClear();

		LDVITEM* pItem = m_pList;
		for ( DWORD nCount = m_nList ; nCount ; nCount--, pItem++ ) pItem->nState &= ~LDVI_SELECTED;
	}
}
BOOL CLibraryCollectionView::Create(CWnd* pParentWnd)
{
    CRect rect( 0, 0, 0, 0 );
    SelClear( FALSE );
    // Do not add WS_VSCROLL here.  The IE frame that gets loaded
    // will have its own scrollbar and will handle its own scrolling.
    return CWnd::CreateEx( 0, NULL, _T("CLibraryCollectionView"),
                           WS_CHILD |WS_TABSTOP | WS_GROUP, rect, pParentWnd, IDC_LIBRARY_VIEW );
}
void CLibraryDetailView::CacheSelection()
{
	GET_LIST();
	SelClear( FALSE );
	
	for ( int nItem = -1 ; ( nItem = pList->GetNextItem( nItem, LVNI_SELECTED ) ) >= 0 ; )
	{
		SelAdd( pList->GetItemData( nItem ), FALSE );
	}
}
BOOL CLibraryDetailView::Create(CWnd* pParentWnd) 
{
	CRect rect( 0, 0, 0, 0 );
	SelClear( FALSE );
	DWORD nStyle = m_nStyle;
	DWORD dwStyle = theApp.m_bRTL ? WS_EX_RTLREADING : 0;

	return CWnd::CreateEx( dwStyle, WC_LISTVIEW, _T("CLibraryDetailView"),
		WS_CHILD|LVS_ICON|LVS_AUTOARRANGE|LVS_SHOWSELALWAYS|nStyle|
		LVS_SHAREIMAGELISTS|LVS_EDITLABELS|LVS_OWNERDATA, rect, pParentWnd, IDC_LIBRARY_VIEW );
}
示例#8
0
void CLibraryTileView::clear()
{
	CSingleLock( &Library.m_pSection, TRUE );

	// Free pointers (Not using Boost::ptr_list)
	for ( iterator iter = m_oList.begin(); iter != m_oList.end(); iter++ )
		delete *iter;

	m_oList.clear();

	m_nScroll	= 0;
	m_nSelected	= 0;
	m_pFocus	= end();
	m_pFirst	= end();

	m_oSelTile.clear();
	SelClear();
}
void CLibraryAlbumView::Clear()
{
	for ( int nItem = 0 ; nItem < m_nCount ; nItem++ )
	{
		delete m_pList[ nItem ];
	}

	if ( m_pList ) delete [] m_pList;

	m_pList		= NULL;
	m_nCount	= 0;
	m_nBuffer	= 0;
	m_nScroll	= 0;
	m_nSelected	= 0;
	m_pFocus	= NULL;
	m_pFirst	= NULL;

	SelClear();
	m_pSelTrack.RemoveAll();
}