27 #include "../../../se/Config.h"
28 #include "../../../se/ExternalGraphic.h"
29 #include "../../../xlink/SimpleLink.h"
30 #include "../propertybrowser/AbstractPropertyManager.h"
39 #include <QFileDialog>
40 #include <QGridLayout>
41 #include <QImageReader>
42 #include <QMessageBox>
43 #include <QScrollArea>
44 #include <QPushButton>
47 #include <QtPropertyBrowser/QtTreePropertyBrowser>
48 #include <QtPropertyBrowser/QtVariantPropertyManager>
52 m_eg(new
te::se::ExternalGraphic), m_update(false)
63 addProperty(localImgProperty, tr(
"Local Image"), QColor(255, 190, 160));
91 QString path = link->
getHref().c_str();
103 if(prop == m_imgProperty)
107 connect(m_dlg, SIGNAL(showDlg()),
this, SLOT(showImgDlg()));
114 QString filter = tr(
"Images") +
" ( ";
115 QList<QByteArray> formats = QImageReader::supportedImageFormats();
116 for(
int i = 0; i < formats.size() - 1; ++i)
117 filter +=
"*." + formats[i] +
" ";
120 QString path = QFileDialog::getOpenFileName(
this, tr(
"Select an Image File"),
"", filter);
128 QMessageBox::critical(
this, tr(
"Error"), tr(
"The selected image cannot be loaded."));
134 link->
setHref(path.toStdString());
135 m_eg->setOnlineResource(link);
138 QString f(QImageReader::imageFormat(path));
139 m_eg->setFormat(
"image/" + f.toStdString());
141 emit externalGraphicChanged();
void setHref(const std::string &href)
const std::string & getHref() const
A widget used to define a local image graphic for a se symbolizer.
The ExternalGraphic allows a reference to be made to an external graphic file with a Web URL or to in...
ExternalGraphic * clone() const
It creates a new copy of this object.
static AbstractPropertyManager & getInstance()
It returns a reference to the singleton instance.
A concrete renderer based on Qt4 for conversion of Symbology Enconding External Graphic elements to a...