1
// -------------------------------------------------------------------------------- //
2
// Copyright (C) 2008-2011 J.Rios
5
// This Program is free software; you can redistribute it and/or modify
6
// it under the terms of the GNU General Public License as published by
7
// the Free Software Foundation; either version 3, or (at your option)
10
// This Program is distributed in the hope that it will be useful,
11
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
// GNU General Public License for more details.
15
// You should have received a copy of the GNU General Public License
16
// along with this program; see the file LICENSE. If not, write to
17
// the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
18
// http://www.gnu.org/copyleft/gpl.html
20
// -------------------------------------------------------------------------------- //
21
#ifndef GUTVSOLISTBOX_H
22
#define GUTVSOLISTBOX_H
24
#include "SoListBox.h"
25
#include "TreeViewFilter.h"
27
// -------------------------------------------------------------------------------- //
28
class guTVSoListBox : public guSoListBox
31
guTreeViewFilterArray m_Filters;
33
wxLongLong m_TracksSize;
34
wxLongLong m_TracksLength;
36
wxArrayString m_TextFilters;
38
bool m_TracksOrderDesc;
40
virtual void GetItemsList( void );
41
//virtual void CreateContextMenu( wxMenu * Menu ) const;
43
// virtual void OnDropFile( const wxString &filename );
44
// virtual void OnDropEnd( void );
45
// virtual void MoveSelection( void );
47
virtual void ItemsCheckRange( const int start, const int end ) { m_ItemsFirst = 0; m_ItemsLast = 0; }
49
virtual void CreateAcceleratorTable();
52
guTVSoListBox( wxWindow * parent, guDbLibrary * NewDb, wxString confname, int style = 0 );
55
void SetFilters( guTreeViewFilterArray &filters );
57
virtual int GetSelectedSongs( guTrackArray * Songs );
58
virtual void GetAllSongs( guTrackArray * Songs );
60
virtual int GetItemId( const int row ) const;
61
virtual wxString GetItemName( const int row ) const;
63
void GetCounters( wxLongLong * count, wxLongLong * len, wxLongLong * size );
65
void SetTracksOrder( const int order )
67
if( m_TracksOrder != order )
68
m_TracksOrder = order;
70
m_TracksOrderDesc = !m_TracksOrderDesc;
73
int GetTracksOrder( void ) { return m_TracksOrder; }
74
bool GetTracksOrderDesc( void ) { return m_TracksOrderDesc; }
76
void SetTextFilters( const wxArrayString &textfilters ) { m_TextFilters = textfilters; }
77
void ClearTextFilters( void ) { m_TextFilters.Clear(); }
82
// -------------------------------------------------------------------------------- //