예제 #1
0
void TestQgsPaintEffectRegistry::addEffect()
{
  //create an empty registry
  QgsPaintEffectRegistry* registry = QgsApplication::paintEffectRegistry();
  int previousCount = registry->effects().length();

  registry->addEffectType( new QgsPaintEffectMetadata( QStringLiteral( "Dummy" ), QStringLiteral( "Dummy effect" ), DummyPaintEffect::create ) );
  QCOMPARE( registry->effects().length(), previousCount + 1 );
  //try adding again, should have no effect
  registry->addEffectType( new QgsPaintEffectMetadata( QStringLiteral( "Dummy" ), QStringLiteral( "Dummy effect" ), DummyPaintEffect::create ) );
  QCOMPARE( registry->effects().length(), previousCount + 1 );

  //try adding empty metadata
  registry->addEffectType( nullptr );
  QCOMPARE( registry->effects().length(), previousCount + 1 );
}
예제 #2
0
void TestQgsPaintEffectRegistry::addEffect()
{
  //create an empty registry
  QgsPaintEffectRegistry* registry = QgsPaintEffectRegistry::instance();
  int previousCount = registry->effects().length();

  registry->addEffectType( new QgsPaintEffectMetadata( "Dummy", "Dummy effect", DummyPaintEffect::create ) );
  QCOMPARE( registry->effects().length(), previousCount + 1 );
  //try adding again, should have no effect
  registry->addEffectType( new QgsPaintEffectMetadata( "Dummy", "Dummy effect", DummyPaintEffect::create ) );
  QCOMPARE( registry->effects().length(), previousCount + 1 );

  //try adding empty metadata
  registry->addEffectType( nullptr );
  QCOMPARE( registry->effects().length(), previousCount + 1 );
}
예제 #3
0
void TestQgsPaintEffectRegistry::instanceHasDefaultEffects()
{
  //check that effect instance is initially populated with some effects
  //(assumes that there is some default effects)
  QgsPaintEffectRegistry* registry = QgsApplication::paintEffectRegistry();
  QVERIFY( registry->effects().length() > 0 );
}
예제 #4
0
void TestQgsPaintEffectRegistry::fetchEffects()
{
  QgsPaintEffectRegistry* registry = QgsApplication::paintEffectRegistry();
  QStringList effects = registry->effects();

  QVERIFY( effects.contains( "Dummy" ) );

  QgsPaintEffectAbstractMetadata* metadata = registry->effectMetadata( QStringLiteral( "Dummy" ) );
  QCOMPARE( metadata->name(), QString( "Dummy" ) );

  //metadata for bad effect
  metadata = registry->effectMetadata( QStringLiteral( "bad effect" ) );
  QVERIFY( !metadata );
}
void QgsPaintEffectPropertiesWidget::populateEffectTypes()
{
  QgsPaintEffectRegistry* registry = QgsApplication::paintEffectRegistry();
  QStringList types = registry->effects();

  Q_FOREACH ( const QString& type, types )
  {
    //don't show stack effect
    if ( type == QLatin1String( "effectStack" ) )
      continue;

    mEffectTypeCombo->addItem( registry->effectMetadata( type )->visibleName(), type );
  }
}