#include <QtGui/QGraphicsScene>
#include <QtGui/QFont>
#include <QtGui/QFontDatabase>
+#include <QtGui/QGraphicsEffect>
+#include <QtGui/QGraphicsDropShadowEffect>
+#include <QtGui/QGraphicsItem>
#include "graphicselement.h"
#include "reader.h"
#include "textelement.h"
#include "rectangle.h"
#include "pointer.h"
#include "settings.h"
+#include "effect.h"
-GraphicsElement::GraphicsElement(Reader* reader): reader_(reader), error_("")
+GraphicsElement::GraphicsElement(Reader* reader): reader_(reader), error_(""), effect_(0)
{
}
bool GraphicsElement::readFile(QString const& filename, QByteArray& data)
{
-
if(!reader_->readFile(filename, data))
{
setError(reader_->errorString());
setError("Unknown attribute: " + name);
return -1;
}
+
+bool GraphicsElement::setEffect(QString const& name)
+{
+ /* QGraphicsDropShadowEffect* eff = new QGraphicsDropShadowEffect;
+ eff->setOffset(1);
+ eff->setBlurRadius(3);
+
+ getElement()->setGraphicsEffect(eff);
+
+ return true;*/
+
+ effect_ = Effect::getEffect(name);
+
+ if(!effect_)
+ {
+ return false;
+ }
+
+ return true;
+}
+
+bool GraphicsElement::setEffectAttribute(QString const& name, QString const& value)
+{
+ //return true;
+ if(!effect_)
+ {
+ qDebug() << "Effect not set";
+ return false;
+ }
+
+ return effect_->setAttribute(name, value);
+}
+
+void GraphicsElement::applyEffect()
+{
+ //return;
+ effect_->apply(getElement());
+}