Expand file tree Collapse file tree 6 files changed +3193
-0
lines changed Original file line number Diff line number Diff line change 518
518
<file>themes/default/mActionCircularStringCurvePoint.svg</file>
519
519
<file>themes/default/mActionCircularStringRadius.png</file>
520
520
<file>themes/default/mActionCircularStringRadius.svg</file>
521
+ <file>themes/default/mIconFloatField.svg</file>
522
+ <file>themes/default/mIconIntegerField.svg</file>
523
+ <file>themes/default/mIconDateField.svg</file>
524
+ <file>themes/default/mIconDateTimeField.svg</file>
521
525
<file>flags/zh.png</file>
522
526
</qresource>
523
527
<qresource prefix="/images/tips">
Original file line number Diff line number Diff line change 14
14
***************************************************************************/
15
15
16
16
#include < QFont>
17
+ #include < QIcon>
17
18
18
19
#include " qgsfieldmodel.h"
19
20
#include " qgsmaplayermodel.h"
20
21
#include " qgsmaplayerproxymodel.h"
21
22
#include " qgslogger.h"
23
+ #include " qgsapplication.h"
22
24
23
25
24
26
QgsFieldModel::QgsFieldModel ( QObject *parent )
@@ -357,6 +359,46 @@ QVariant QgsFieldModel::data( const QModelIndex &index, int role ) const
357
359
return QVariant ();
358
360
}
359
361
362
+ case Qt::DecorationRole:
363
+ {
364
+ if ( exprIdx < 0 )
365
+ {
366
+ QgsField field = mFields [index.row ()];
367
+ int fieldType = ( int )field.type ();
368
+ QIcon icon;
369
+
370
+ switch ( fieldType )
371
+ {
372
+ case QVariant::Int:
373
+ case QVariant::UInt:
374
+ case QVariant::LognLong:
375
+ case QVariant::ULongLong:
376
+ {
377
+ return icon = QgsApplication::getThemeIcon ( " /mIconIntegerField.svg" );
378
+ }
379
+ case QVariant::Double:
380
+ {
381
+ return icon = QgsApplication::getThemeIcon ( " /mIconFloatField.svg" );
382
+ }
383
+ case QVariant::String:
384
+ {
385
+ return icon = QgsApplication::getThemeIcon ( " propertyicons/labeltext.svg" );
386
+ }
387
+ case QVariant::Date:
388
+ {
389
+ return icon = QgsApplication::getThemeIcon ( " /mIconDateField.svg" );
390
+ }
391
+ case QVariant::DateTime:
392
+ {
393
+ return icon = QgsApplication::getThemeIcon ( " /mIconDateTimeField.svg" );
394
+ }
395
+ default :
396
+ return QIcon ();
397
+ }
398
+ }
399
+ return QIcon ();
400
+ }
401
+
360
402
default :
361
403
return QVariant ();
362
404
}
0 commit comments