Skip to content

Commit 5db2934

Browse files
alexbruy3nids
authored andcommittedNov 30, 2015
show data type icons in the field combobox
1 parent 834f8d5 commit 5db2934

File tree

6 files changed

+3193
-0
lines changed

6 files changed

+3193
-0
lines changed
 

‎images/images.qrc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -518,6 +518,10 @@
518518
<file>themes/default/mActionCircularStringCurvePoint.svg</file>
519519
<file>themes/default/mActionCircularStringRadius.png</file>
520520
<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>
521525
<file>flags/zh.png</file>
522526
</qresource>
523527
<qresource prefix="/images/tips">

‎images/themes/default/mIconDateField.svg

Lines changed: 797 additions & 0 deletions
Loading

‎images/themes/default/mIconDateTimeField.svg

Lines changed: 818 additions & 0 deletions
Loading

‎images/themes/default/mIconFloatField.svg

Lines changed: 766 additions & 0 deletions
Loading

‎images/themes/default/mIconIntegerField.svg

Lines changed: 766 additions & 0 deletions
Loading

‎src/gui/qgsfieldmodel.cpp

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,13 @@
1414
***************************************************************************/
1515

1616
#include <QFont>
17+
#include <QIcon>
1718

1819
#include "qgsfieldmodel.h"
1920
#include "qgsmaplayermodel.h"
2021
#include "qgsmaplayerproxymodel.h"
2122
#include "qgslogger.h"
23+
#include "qgsapplication.h"
2224

2325

2426
QgsFieldModel::QgsFieldModel( QObject *parent )
@@ -357,6 +359,46 @@ QVariant QgsFieldModel::data( const QModelIndex &index, int role ) const
357359
return QVariant();
358360
}
359361

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+
360402
default:
361403
return QVariant();
362404
}

0 commit comments

Comments
 (0)
Failed to load comments.