equal
deleted
inserted
replaced
18 #include "fmfilesystemproxymodel.h" |
18 #include "fmfilesystemproxymodel.h" |
19 #include "fmutils.h" |
19 #include "fmutils.h" |
20 #include <QFileSystemModel> |
20 #include <QFileSystemModel> |
21 |
21 |
22 #include <hbglobal.h> |
22 #include <hbglobal.h> |
|
23 #include <hbdirectorynamelocalizer.h> |
23 |
24 |
24 // name column number, this define comes from implementation of QFileSystemModel |
25 // name column number, this define comes from implementation of QFileSystemModel |
25 const int NameColumn = 0; |
26 const int NameColumn = 0; |
26 |
27 |
27 /*! |
28 /*! |
28 Constructor |
29 Constructor |
29 */ |
30 */ |
30 FmFileSystemProxyModel::FmFileSystemProxyModel( QObject *parent ) : |
31 FmFileSystemProxyModel::FmFileSystemProxyModel( QObject *parent ) : |
31 QSortFilterProxyModel( parent ) |
32 QSortFilterProxyModel( parent ), localizer( 0 ) |
32 { |
33 { |
33 |
34 localizer = new HbDirectoryNameLocalizer; |
34 } |
35 } |
35 |
36 |
36 /*! |
37 /*! |
37 Destructor |
38 Destructor |
38 */ |
39 */ |
39 FmFileSystemProxyModel::~FmFileSystemProxyModel() |
40 FmFileSystemProxyModel::~FmFileSystemProxyModel() |
40 { |
41 { |
41 |
42 delete localizer; |
42 } |
43 } |
43 |
44 |
44 /*! |
45 /*! |
45 return data by \a index and \a role |
46 return data by \a index and \a role |
46 this function will localize the folder by HbDirectoryNameLocalizer |
47 this function will localize the folder by HbDirectoryNameLocalizer |
48 QVariant FmFileSystemProxyModel::data ( const QModelIndex & index, int role ) const |
49 QVariant FmFileSystemProxyModel::data ( const QModelIndex & index, int role ) const |
49 { |
50 { |
50 QAbstractItemModel *itemModel = sourceModel(); |
51 QAbstractItemModel *itemModel = sourceModel(); |
51 QFileSystemModel *sourceModel = qobject_cast<QFileSystemModel*>( itemModel ); |
52 QFileSystemModel *sourceModel = qobject_cast<QFileSystemModel*>( itemModel ); |
52 if( sourceModel && ( role == Qt::DisplayRole ) ) { |
53 if( sourceModel && ( role == Qt::DisplayRole ) ) { |
53 QString name( FmUtils::localize(sourceModel->fileInfo( mapToSource( index ) ).absoluteFilePath()) ); |
54 // get absolute path |
54 if( name.isEmpty() ) { |
55 QString path( sourceModel->fileInfo( mapToSource( index ) ).absoluteFilePath() ); |
|
56 // get localized name |
|
57 QString localizedName( localizer->translate( path ) ); |
|
58 |
|
59 if( localizedName.isEmpty() ) { |
55 return sourceModel->data( mapToSource( index ), role ); |
60 return sourceModel->data( mapToSource( index ), role ); |
56 } else { |
61 } else { |
57 return name; |
62 return localizedName; |
58 } |
63 } |
59 } |
64 } |
60 if( sourceModel ) |
65 if( sourceModel ) |
61 { |
66 { |
62 return sourceModel->data( mapToSource( index ), role ); |
67 return sourceModel->data( mapToSource( index ), role ); |