1
/***************************************************************************
2
* Copyright (C) 2005 by Adam Treat *
5
* Copyright (C) 2004 by Scott Wheeler *
8
* This program is free software; you can redistribute it and/or modify *
9
* it under the terms of the GNU General Public License as published by *
10
* the Free Software Foundation; either version 2 of the License, or *
11
* (at your option) any later version. *
13
***************************************************************************/
20
#include "datatablebox.h"
25
class SearchDataTable;
27
class ViewMode : public QObject
32
ViewMode( DataTableBox *b );
35
virtual QString name() const
37
return i18n( "Default" );
39
virtual void setShown( bool shown );
41
virtual void paintCell( DataTableBox::Item *item,
43
const QColorGroup &colorGroup,
44
int column, int width, int align );
46
virtual bool eventFilter( QObject *watched, QEvent *e );
48
virtual void setupItem( DataTableBox::Item *item ) const;
52
m_needsRefresh = true;
56
return m_needsRefresh;
58
void setNeedsRefresh( bool refresh )
60
m_needsRefresh = refresh;
64
DataTableBox *dataTableBox() const
66
return m_dataTableBox;
72
void setVisible( bool v )
76
void updateIcons( int size );
77
virtual void updateHeights();
78
static void paintDropIndicator( QPainter *painter, int width, int height );
80
static QStringList lines( const DataTableBox::Item *item, const QFontMetrics &fm, int width );
82
DataTableBox *m_dataTableBox;
85
QMap<DataTableBox::Item *, QStringList> m_lines;
86
static const int border = 4;
89
class CompactViewMode : public ViewMode
92
CompactViewMode( DataTableBox *b );
93
virtual ~CompactViewMode();
95
virtual QString name() const
97
return i18n( "Compact" );
99
virtual void setShown( bool shown );
101
virtual void paintCell( DataTableBox::Item *item,
103
const QColorGroup &colorGroup,
104
int column, int width, int align );
106
virtual void setupItem( DataTableBox::Item *item ) const;
109
virtual void updateHeights();
112
class TreeViewItemDataTable;
114
class TreeViewMode : public CompactViewMode
119
TreeViewMode( DataTableBox *l );
120
virtual ~TreeViewMode();
122
virtual QString name() const
124
return i18n( "Tree" );
126
virtual void setShown( bool shown );