mirror of
https://github.com/qgis/QGIS.git
synced 2025-04-15 00:04:00 -04:00
[GRASS] import icon
This commit is contained in:
parent
d40d481bd3
commit
b91e43af23
@ -326,6 +326,7 @@
|
|||||||
<file>themes/default/mIconFirst.png</file>
|
<file>themes/default/mIconFirst.png</file>
|
||||||
<file>themes/default/mIconGeometryLayer.png</file>
|
<file>themes/default/mIconGeometryLayer.png</file>
|
||||||
<file>themes/default/mIconInfo.png</file>
|
<file>themes/default/mIconInfo.png</file>
|
||||||
|
<file>themes/default/mIconImport.gif</file>
|
||||||
<file>themes/default/mIconLabelQuadrantCenter.svg</file>
|
<file>themes/default/mIconLabelQuadrantCenter.svg</file>
|
||||||
<file>themes/default/mIconLabelQuadrantOffset.svg</file>
|
<file>themes/default/mIconLabelQuadrantOffset.svg</file>
|
||||||
<file>themes/default/mIconLast.png</file>
|
<file>themes/default/mIconLast.png</file>
|
||||||
|
BIN
images/themes/default/mIconImport.gif
Normal file
BIN
images/themes/default/mIconImport.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.9 KiB |
@ -678,7 +678,40 @@ QIcon QgsGrassRasterItem::icon()
|
|||||||
return QgsDataItem::icon();
|
return QgsDataItem::icon();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//----------------------- QgsGrassImportItem ------------------------------
|
//----------------------- QgsGrassImportItem ------------------------------
|
||||||
|
QgsGrassImportItemIcon::QgsGrassImportItemIcon()
|
||||||
|
: QObject()
|
||||||
|
, mCount( 0 )
|
||||||
|
, mMovie( 0 )
|
||||||
|
{
|
||||||
|
// QApplication as parent to ensure that it is deleted before QApplication
|
||||||
|
mMovie = new QMovie( QApplication::instance() );
|
||||||
|
mMovie->setFileName( QgsApplication::iconPath( "/mIconImport.gif" ) );
|
||||||
|
mMovie->setCacheMode( QMovie::CacheAll );
|
||||||
|
connect( mMovie, SIGNAL( frameChanged( int ) ), SLOT( onFrameChanged() ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
void QgsGrassImportItemIcon::onFrameChanged()
|
||||||
|
{
|
||||||
|
mIcon = QIcon( mMovie->currentPixmap() );
|
||||||
|
}
|
||||||
|
|
||||||
|
void QgsGrassImportItemIcon::addListener()
|
||||||
|
{
|
||||||
|
mCount++;
|
||||||
|
mMovie->setPaused( mCount == 0 );
|
||||||
|
}
|
||||||
|
|
||||||
|
void QgsGrassImportItemIcon::removeListener()
|
||||||
|
{
|
||||||
|
mCount++;
|
||||||
|
mMovie->setPaused( mCount == 0 );
|
||||||
|
}
|
||||||
|
|
||||||
|
//----------------------- QgsGrassImportItem ------------------------------
|
||||||
|
|
||||||
|
QgsGrassImportItemIcon QgsGrassImportItem::mImportIcon;
|
||||||
|
|
||||||
QgsGrassImportItem::QgsGrassImportItem( QgsDataItem* parent, const QString& name, const QString& path, QgsGrassImport* import )
|
QgsGrassImportItem::QgsGrassImportItem( QgsDataItem* parent, const QString& name, const QString& path, QgsGrassImport* import )
|
||||||
: QgsDataItem( QgsDataItem::Layer, parent, name, path )
|
: QgsDataItem( QgsDataItem::Layer, parent, name, path )
|
||||||
@ -687,6 +720,14 @@ QgsGrassImportItem::QgsGrassImportItem( QgsDataItem* parent, const QString& name
|
|||||||
{
|
{
|
||||||
setCapabilities( QgsDataItem::NoCapabilities ); // disable fertility
|
setCapabilities( QgsDataItem::NoCapabilities ); // disable fertility
|
||||||
setState( Populating );
|
setState( Populating );
|
||||||
|
|
||||||
|
connect( &mImportIcon, SIGNAL( frameChanged( int ) ), SLOT( emitDataChanged() ) );
|
||||||
|
mImportIcon.addListener();
|
||||||
|
}
|
||||||
|
|
||||||
|
QgsGrassImportItem::~QgsGrassImportItem()
|
||||||
|
{
|
||||||
|
mImportIcon.removeListener();
|
||||||
}
|
}
|
||||||
|
|
||||||
QList<QAction*> QgsGrassImportItem::actions()
|
QList<QAction*> QgsGrassImportItem::actions()
|
||||||
@ -710,6 +751,11 @@ void QgsGrassImportItem::cancel()
|
|||||||
mImport->cancel();
|
mImport->cancel();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QIcon QgsGrassImportItem::icon()
|
||||||
|
{
|
||||||
|
return mImportIcon.icon();
|
||||||
|
}
|
||||||
|
|
||||||
//-------------------------------------------------------------------------
|
//-------------------------------------------------------------------------
|
||||||
|
|
||||||
QGISEXTERN int dataCapabilities()
|
QGISEXTERN int dataCapabilities()
|
||||||
|
@ -157,17 +157,42 @@ class QgsGrassRasterItem : public QgsGrassObjectItem
|
|||||||
bool mExternal;
|
bool mExternal;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// icon movie
|
||||||
|
class QgsGrassImportItemIcon : public QObject
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
public:
|
||||||
|
QgsGrassImportItemIcon();
|
||||||
|
|
||||||
|
QIcon icon() { return mIcon; }
|
||||||
|
void addListener();
|
||||||
|
void removeListener();
|
||||||
|
|
||||||
|
public slots:
|
||||||
|
void onFrameChanged();
|
||||||
|
|
||||||
|
signals:
|
||||||
|
void frameChanged();
|
||||||
|
|
||||||
|
private:
|
||||||
|
void resetMovie();
|
||||||
|
int mCount;
|
||||||
|
QMovie * mMovie;
|
||||||
|
QIcon mIcon;
|
||||||
|
};
|
||||||
|
|
||||||
// item representing a layer being imported
|
// item representing a layer being imported
|
||||||
class QgsGrassImportItem : public QgsDataItem, public QgsGrassObjectItemBase
|
class QgsGrassImportItem : public QgsDataItem, public QgsGrassObjectItemBase
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
QgsGrassImportItem( QgsDataItem* parent, const QString& name, const QString& path, QgsGrassImport* import );
|
QgsGrassImportItem( QgsDataItem* parent, const QString& name, const QString& path, QgsGrassImport* import );
|
||||||
|
~QgsGrassImportItem();
|
||||||
//virtual void setState( State state ) override {
|
//virtual void setState( State state ) override {
|
||||||
// QgsDataItem::setState(state);
|
// QgsDataItem::setState(state);
|
||||||
//} // do nothing to keep Populating
|
//} // do nothing to keep Populating
|
||||||
virtual QList<QAction*> actions() override;
|
virtual QList<QAction*> actions() override;
|
||||||
|
virtual QIcon icon() override;
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
virtual void refresh() override {}
|
virtual void refresh() override {}
|
||||||
@ -178,6 +203,9 @@ class QgsGrassImportItem : public QgsDataItem, public QgsGrassObjectItemBase
|
|||||||
virtual void refresh( QVector<QgsDataItem*> children ) override { Q_UNUSED( children )};
|
virtual void refresh( QVector<QgsDataItem*> children ) override { Q_UNUSED( children )};
|
||||||
//bool mDeleteAction;
|
//bool mDeleteAction;
|
||||||
QgsGrassImport* mImport;
|
QgsGrassImport* mImport;
|
||||||
|
|
||||||
|
private:
|
||||||
|
static QgsGrassImportItemIcon mImportIcon;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // QGSGRASSPROVIDERMODULE_H
|
#endif // QGSGRASSPROVIDERMODULE_H
|
||||||
|
Loading…
x
Reference in New Issue
Block a user