diff --git a/resources/library/search/Image Planete.wgs/index.html b/resources/library/search/Image Planete.wgs/index.html
index 8e7214a5..375d9b94 100755
--- a/resources/library/search/Image Planete.wgs/index.html
+++ b/resources/library/search/Image Planete.wgs/index.html
@@ -69,7 +69,7 @@
var iHeight = $("");
var iWidth = $("");
var iTitle = $("");
-
+ var iThumbnailUrl = $("");
// We use titleNoFormatting so that no HTML tags are left in the
// title
//title.innerHTML = result.title;
@@ -96,12 +96,14 @@
iHeight.attr("value", result.height);
iWidth.attr("value", result.width);
iTitle.attr("value",result.title);
+ iThumbnailUrl.attr("value",newImg.src);
//imgContainer.append($(title));
imgContainer.append(iUrl);
imgContainer.append(iContent);
imgContainer.append(iHeight);
imgContainer.append(iWidth);
imgContainer.append(iTitle);
+ imgContainer.append(iThumbnailUrl);
// Put our title + image in the content
imgContainer.appendTo(contentDiv);
@@ -252,6 +254,8 @@
parent.find("input:hidden").eq(3).val() +
"Title" +
parent.find("input:hidden").eq(4).val() +
+ "thumbnailUrl" +
+ parent.find("input:hidden").eq(5).val() +
"";
return meta;
}
diff --git a/src/gui/UBFeaturesWidget.cpp b/src/gui/UBFeaturesWidget.cpp
index caf9fb64..35a3c8db 100644
--- a/src/gui/UBFeaturesWidget.cpp
+++ b/src/gui/UBFeaturesWidget.cpp
@@ -47,7 +47,7 @@ UBFeaturesWidget::UBFeaturesWidget(QWidget *parent, const char *name)
//Bottom actionbar for DnD, quick search etc
mActionBar = new UBFeaturesActionBar(controller, this);
-
+
//Filling main layout
layout->addWidget(pathListView);
layout->addWidget(centralWidget);
@@ -153,7 +153,7 @@ void UBFeaturesWidget::deleteElements( const UBFeaturesMimeData * mimeData )
return;
QList featuresList = mimeData->features();
-
+
foreach ( UBFeature curFeature, featuresList ) {
if ( curFeature.inTrash()) {
controller->deleteItem(curFeature.getFullPath());
@@ -175,7 +175,7 @@ void UBFeaturesWidget::deleteSelectedElements()
{
featureasToMove.append(controller->getFeature(selected.at(i), objNameFeatureList));
}
-
+
foreach (UBFeature feature, featureasToMove)
{
if (feature.isDeletable()) {
@@ -232,34 +232,34 @@ void UBFeaturesWidget::onDisplayMetadata( QMap metadata )
QString previewImageUrl = ":images/libpalette/notFound.png";
QString widgetsUrl = QUrl::fromEncoded(metadata["Url"].toAscii()).toString()/*metadata.value("Url", QString())*/;
- QString widgetsThumbsUrl = QUrl::fromEncoded(metadata["thumbnailUrl"].toAscii()).toString();
+ QString widgetsThumbsUrl = QUrl::fromEncoded(metadata["thumbnailUrl"].toAscii()).toString();
bool isLocal = QFileInfo(widgetsUrl).exists();
- if (isLocal) {
- QString strType = UBFileSystemUtils::mimeTypeFromFileName(widgetsUrl);
- UBMimeType::Enum thumbType = UBFileSystemUtils::mimeTypeFromString(strType);
- switch (static_cast(thumbType)) {
- case UBMimeType::Audio:
- previewImageUrl = ":images/libpalette/soundIcon.svg";
- break;
+ QString strType = UBFileSystemUtils::mimeTypeFromFileName(widgetsUrl);
+ UBMimeType::Enum thumbType = UBFileSystemUtils::mimeTypeFromString(strType);
- case UBMimeType::Video:
- previewImageUrl = ":images/libpalette/movieIcon.svg";
- break;
+ switch (static_cast(thumbType)) {
+ case UBMimeType::Audio:
+ previewImageUrl = ":images/libpalette/soundIcon.svg";
+ break;
- case UBMimeType::Flash:
- previewImageUrl = ":images/libpalette/FlashIcon.svg";
- break;
+ case UBMimeType::Video:
+ previewImageUrl = ":images/libpalette/movieIcon.svg";
+ break;
- case UBMimeType::RasterImage:
- case UBMimeType::VectorImage:
- previewImageUrl = widgetsUrl;
- break;
- }
+ case UBMimeType::Flash:
+ previewImageUrl = ":images/libpalette/FlashIcon.svg";
+ break;
- } else if (!widgetsThumbsUrl.isNull()) {
+ case UBMimeType::RasterImage:
+ case UBMimeType::VectorImage:
+ previewImageUrl = widgetsUrl;
+ break;
+ }
+
+ if (!widgetsThumbsUrl.isNull()) {
previewImageUrl = ":/images/libpalette/loading.png";
if (!imageGatherer)
imageGatherer = new UBDownloadHttpFile(0, this);
@@ -269,11 +269,10 @@ void UBFeaturesWidget::onDisplayMetadata( QMap metadata )
// We send here the request and store its reply in order to be able to cancel it if needed
imageGatherer->get(QUrl(widgetsThumbsUrl), QPoint(0,0), QSize(), false);
}
-
- QString tmp = QUrl::fromEncoded(metadata["Url"].toAscii()).toString();
- qDebug() << tmp;
- UBFeature feature( "/root", QImage(previewImageUrl), QString(), tmp/*metadata["Url"]*/, FEATURE_ITEM );
+ QString tmp = QUrl::fromEncoded(metadata["Url"].toAscii()).toString();
+
+ UBFeature feature( "/root", QImage(previewImageUrl), QString(), widgetsThumbsUrl, FEATURE_ITEM );
feature.setMetadata( metadata );
centralWidget->showElement(feature, UBFeaturesCentralWidget::FeaturePropertiesList);
@@ -303,7 +302,7 @@ void UBFeaturesWidget::onAddDownloadedFileToLibrary(bool pSuccess, QUrl sourceUr
{
Q_UNUSED(pContentHeader)
if (pSuccess) {
- qDebug() << pData.length();
+ qDebug() << pData.length();
controller->addDownloadedFile(sourceUrl, pData);
controller->refreshModels();
}
@@ -372,7 +371,7 @@ void UBFeaturesWidget::importImage(const QImage &image, const QString &fileName)
controller->importImage(image, fileName);
}
-UBFeaturesListView::UBFeaturesListView( QWidget* parent, const char* name )
+UBFeaturesListView::UBFeaturesListView( QWidget* parent, const char* name )
: QListView(parent)
{
setObjectName(name);
@@ -381,7 +380,7 @@ UBFeaturesListView::UBFeaturesListView( QWidget* parent, const char* name )
void UBFeaturesListView::dragEnterEvent( QDragEnterEvent *event )
{
if ( event->mimeData()->hasUrls() || event->mimeData()->hasImage() )
- event->acceptProposedAction();
+ event->acceptProposedAction();
}
void UBFeaturesListView::dragMoveEvent( QDragMoveEvent *event )
@@ -547,7 +546,7 @@ void UBFeaturesCentralWidget::setPropertiesThumbnail(const QPixmap &pix)
UBFeature UBFeaturesCentralWidget::getCurElementFromProperties()
{
- return mFeatureProperties->getCurrentElement();
+ return mFeatureProperties->getCurrentElement();
}
void UBFeaturesCentralWidget::showAdditionalData(AddWidget pWidgetType, AddWidgetState pState)
@@ -782,36 +781,36 @@ void UBFeaturesWebView::javaScriptWindowObjectCleared()
void UBFeaturesWebView::showElement(const UBFeature &elem)
{
- QString qsWidgetName;
+ QString qsWidgetName;
QString path = elem.getFullPath().toLocalFile();
- QString qsConfigPath = QString("%0/config.xml").arg(path);
-
- if(QFile::exists(qsConfigPath))
- {
- QFile f(qsConfigPath);
- if(f.open(QIODevice::ReadOnly))
- {
- QDomDocument domDoc;
- domDoc.setContent(QString(f.readAll()));
- QDomElement root = domDoc.documentElement();
-
- QDomNode node = root.firstChild();
- while(!node.isNull())
- {
- if(node.toElement().tagName() == "content")
- {
- QDomAttr srcAttr = node.toElement().attributeNode("src");
- qsWidgetName = srcAttr.value();
- break;
- }
- node = node.nextSibling();
- }
- f.close();
- }
- }
-
- mpView->load(QUrl::fromLocalFile(QString("%0/%1").arg(path).arg(qsWidgetName)));
+ QString qsConfigPath = QString("%0/config.xml").arg(path);
+
+ if(QFile::exists(qsConfigPath))
+ {
+ QFile f(qsConfigPath);
+ if(f.open(QIODevice::ReadOnly))
+ {
+ QDomDocument domDoc;
+ domDoc.setContent(QString(f.readAll()));
+ QDomElement root = domDoc.documentElement();
+
+ QDomNode node = root.firstChild();
+ while(!node.isNull())
+ {
+ if(node.toElement().tagName() == "content")
+ {
+ QDomAttr srcAttr = node.toElement().attributeNode("src");
+ qsWidgetName = srcAttr.value();
+ break;
+ }
+ node = node.nextSibling();
+ }
+ f.close();
+ }
+ }
+
+ mpView->load(QUrl::fromLocalFile(QString("%0/%1").arg(path).arg(qsWidgetName)));
}
void UBFeaturesWebView::onLoadFinished(bool ok)
@@ -834,7 +833,7 @@ UBFeatureProperties::UBFeatureProperties( QWidget *parent, const char *name ) :
, mpOrigPixmap(NULL)
, mpElement(NULL)
{
- setObjectName(name);
+ setObjectName(name);
// Create the GUI
mpLayout = new QVBoxLayout(this);
@@ -869,7 +868,7 @@ UBFeatureProperties::UBFeatureProperties( QWidget *parent, const char *name ) :
mpButtonLayout->addStretch(1);
- mpObjInfoLabel = new QLabel(tr("Object informations"));
+ mpObjInfoLabel = new QLabel(tr("Object informations"));
mpObjInfoLabel->setStyleSheet(QString("color: #888888; font-size : 18px; font-weight:bold;"));
mpLayout->addWidget(mpObjInfoLabel, 0);
@@ -883,23 +882,23 @@ UBFeatureProperties::UBFeatureProperties( QWidget *parent, const char *name ) :
mpLayout->addWidget(mpObjInfos, 1);
mpLayout->setMargin(0);
- connect( mpAddPageButton, SIGNAL(clicked()), this, SLOT(onAddToPage()) );
+ connect( mpAddPageButton, SIGNAL(clicked()), this, SLOT(onAddToPage()) );
connect( mpSetAsBackgroundButton, SIGNAL( clicked() ), this, SLOT( onSetAsBackground() ) );
connect( mpAddToLibButton, SIGNAL( clicked() ), this, SLOT(onAddToLib() ) );
}
UBFeatureProperties::~UBFeatureProperties()
{
- if ( mpOrigPixmap )
+ if ( mpOrigPixmap )
{
delete mpOrigPixmap;
mpOrigPixmap = NULL;
}
- if ( mpElement )
- {
- delete mpElement;
- mpElement = NULL;
- }
+ if ( mpElement )
+ {
+ delete mpElement;
+ mpElement = NULL;
+ }
if ( mpThumbnail )
{
delete mpThumbnail;
@@ -959,7 +958,7 @@ UBFeature UBFeatureProperties::getCurrentElement() const
void UBFeatureProperties::setOrigPixmap(const QPixmap &pix)
{
-
+
if (mpOrigPixmap)
delete mpOrigPixmap;
@@ -967,7 +966,7 @@ void UBFeatureProperties::setOrigPixmap(const QPixmap &pix)
}
void UBFeatureProperties::setThumbnail(const QPixmap &pix)
-{
+{
mpThumbnail->setPixmap(pix.scaledToWidth(THUMBNAIL_WIDTH));
adaptSize();
}
@@ -989,42 +988,42 @@ void UBFeatureProperties::adaptSize()
void UBFeatureProperties::showElement(const UBFeature &elem)
{
- if ( mpOrigPixmap )
+ if ( mpOrigPixmap )
{
delete mpOrigPixmap;
mpOrigPixmap = NULL;
}
- if ( mpElement )
- {
- delete mpElement;
- mpElement = NULL;
- }
+ if ( mpElement )
+ {
+ delete mpElement;
+ mpElement = NULL;
+ }
mpElement = new UBFeature(elem);
mpOrigPixmap = new QPixmap(QPixmap::fromImage(elem.getThumbnail()));
mpThumbnail->setPixmap(QPixmap::fromImage(elem.getThumbnail()).scaledToWidth(THUMBNAIL_WIDTH));
populateMetadata();
if ( UBApplication::isFromWeb( elem.getFullPath().toString() ) )
- {
+ {
mpAddToLibButton->show();
- if( elem.getMetadata()["Type"].toLower().contains("image") )
- {
+ if( elem.getMetadata()["Type"].toLower().contains("image") )
+ {
mpSetAsBackgroundButton->show();
}
- else
- {
+ else
+ {
mpSetAsBackgroundButton->hide();
}
}
- else
- {
+ else
+ {
mpAddToLibButton->hide();
if (UBFileSystemUtils::mimeTypeFromFileName( elem.getFullPath().toLocalFile() ).contains("image"))
- {
+ {
mpSetAsBackgroundButton->show();
}
- else
- {
+ else
+ {
mpSetAsBackgroundButton->hide();
}
}
@@ -1034,7 +1033,7 @@ void UBFeatureProperties::populateMetadata()
{
if(NULL != mpObjInfos){
mpObjInfos->clear();
- QMap metas = mpElement->getMetadata();
+ QMap metas = mpElement->getMetadata();
QList lKeys = metas.keys();
QList lValues = metas.values();
@@ -1095,7 +1094,7 @@ UBFeatureItemButton::~UBFeatureItemButton()
QVariant UBFeaturesModel::data(const QModelIndex &index, int role) const
{
- if (!index.isValid())
+ if (!index.isValid())
return QVariant();
if (role == Qt::DisplayRole) {
@@ -1106,21 +1105,21 @@ QVariant UBFeaturesModel::data(const QModelIndex &index, int role) const
return QIcon( QPixmap::fromImage(featuresList->at(index.row()).getThumbnail()));
} else if (role == Qt::UserRole) {
- return featuresList->at(index.row()).getVirtualPath();
+ return featuresList->at(index.row()).getVirtualPath();
} else if (role == Qt::UserRole + 1) {
- //return featuresList->at(index.row()).getType();
- UBFeature f = featuresList->at(index.row());
- return QVariant::fromValue( f );
- }
+ //return featuresList->at(index.row()).getType();
+ UBFeature f = featuresList->at(index.row());
+ return QVariant::fromValue( f );
+ }
- return QVariant();
+ return QVariant();
}
QMimeData* UBFeaturesModel::mimeData(const QModelIndexList &indexes) const
{
UBFeaturesMimeData *mimeData = new UBFeaturesMimeData();
- QList urlList;
+ QList urlList;
QList featuresList;
QByteArray typeData;
@@ -1136,8 +1135,8 @@ QMimeData* UBFeaturesModel::mimeData(const QModelIndexList &indexes) const
typeData += UBFeaturesController::featureTypeSplitter();
}
typeData += QString::number(element.getType()).toAscii();
- }
- }
+ }
+ }
mimeData->setUrls(urlList);
mimeData->setFeatures(featuresList);
@@ -1159,11 +1158,11 @@ bool UBFeaturesModel::dropMimeData(const QMimeData *mimeData, Qt::DropAction act
dataFromSameModel = true;
if ((!mimeData->hasUrls() && !mimeData->hasImage()) )
- return false;
- if ( action == Qt::IgnoreAction )
- return true;
- if ( column > 0 )
- return false;
+ return false;
+ if ( action == Qt::IgnoreAction )
+ return true;
+ if ( column > 0 )
+ return false;
UBFeature parentFeature;
if (!parent.isValid()) {
@@ -1193,39 +1192,39 @@ bool UBFeaturesModel::dropMimeData(const QMimeData *mimeData, Qt::DropAction act
}
- return true;
+ return true;
}
void UBFeaturesModel::addItem( const UBFeature &item )
{
- beginInsertRows( QModelIndex(), featuresList->size(), featuresList->size() );
- featuresList->append( item );
- endInsertRows();
+ beginInsertRows( QModelIndex(), featuresList->size(), featuresList->size() );
+ featuresList->append( item );
+ endInsertRows();
}
void UBFeaturesModel::deleteFavoriteItem( const QString &path )
{
- for ( int i = 0; i < featuresList->size(); ++i )
- {
+ for ( int i = 0; i < featuresList->size(); ++i )
+ {
if ( !QString::compare( featuresList->at(i).getFullPath().toString(), path, Qt::CaseInsensitive ) &&
- !QString::compare( featuresList->at(i).getVirtualPath(), "/root/favorites", Qt::CaseInsensitive ) )
- {
- removeRow( i, QModelIndex() );
- return;
- }
- }
+ !QString::compare( featuresList->at(i).getVirtualPath(), "/root/favorites", Qt::CaseInsensitive ) )
+ {
+ removeRow( i, QModelIndex() );
+ return;
+ }
+ }
}
void UBFeaturesModel::deleteItem( const QString &path )
{
for ( int i = 0; i < featuresList->size(); ++i )
- {
+ {
if ( !QString::compare( featuresList->at(i).getFullPath().toString(), path, Qt::CaseInsensitive ) )
- {
- removeRow( i, QModelIndex() );
- return;
- }
- }
+ {
+ removeRow( i, QModelIndex() );
+ return;
+ }
+ }
}
void UBFeaturesModel::deleteItem(const UBFeature &feature)
@@ -1240,28 +1239,28 @@ void UBFeaturesModel::deleteItem(const UBFeature &feature)
bool UBFeaturesModel::removeRows( int row, int count, const QModelIndex & parent )
{
- if ( row < 0 )
- return false;
- if ( row + count > featuresList->size() )
- return false;
- beginRemoveRows( parent, row, row + count - 1 );
- //featuresList->remove( row, count );
- featuresList->erase( featuresList->begin() + row, featuresList->begin() + row + count );
- endRemoveRows();
- return true;
+ if ( row < 0 )
+ return false;
+ if ( row + count > featuresList->size() )
+ return false;
+ beginRemoveRows( parent, row, row + count - 1 );
+ //featuresList->remove( row, count );
+ featuresList->erase( featuresList->begin() + row, featuresList->begin() + row + count );
+ endRemoveRows();
+ return true;
}
bool UBFeaturesModel::removeRow( int row, const QModelIndex & parent )
{
- if ( row < 0 )
- return false;
- if ( row >= featuresList->size() )
- return false;
- beginRemoveRows( parent, row, row );
- //featuresList->remove( row );
- featuresList->erase( featuresList->begin() + row );
- endRemoveRows();
- return true;
+ if ( row < 0 )
+ return false;
+ if ( row >= featuresList->size() )
+ return false;
+ beginRemoveRows( parent, row, row );
+ //featuresList->remove( row );
+ featuresList->erase( featuresList->begin() + row );
+ endRemoveRows();
+ return true;
}
void UBFeaturesModel::moveData(const UBFeature &source, const UBFeature &destination
@@ -1343,9 +1342,9 @@ void UBFeaturesModel::moveData(const UBFeature &source, const UBFeature &destina
Qt::ItemFlags UBFeaturesModel::flags( const QModelIndex &index ) const
{
Qt::ItemFlags resultFlags = QAbstractItemModel::flags(index);
- if ( index.isValid() )
- {
- UBFeature item = index.data( Qt::UserRole + 1 ).value();
+ if ( index.isValid() )
+ {
+ UBFeature item = index.data( Qt::UserRole + 1 ).value();
if ( item.getType() == FEATURE_INTERACTIVE
|| item.getType() == FEATURE_ITEM
|| item.getType() == FEATURE_AUDIO
@@ -1367,7 +1366,7 @@ Qt::ItemFlags UBFeaturesModel::flags( const QModelIndex &index ) const
QStringList UBFeaturesModel::mimeTypes() const
{
- QStringList types;
+ QStringList types;
types << "text/uri-list" << "image/png" << "image/tiff" << "image/gif" << "image/jpeg";
return types;
}
@@ -1382,17 +1381,17 @@ int UBFeaturesModel::rowCount(const QModelIndex &parent) const
bool UBFeaturesProxyModel::filterAcceptsRow( int sourceRow, const QModelIndex & sourceParent )const
{
- QModelIndex index = sourceModel()->index(sourceRow, 0, sourceParent);
- QString path = index.data( Qt::UserRole ).toString();
-
- return filterRegExp().exactMatch(path);
+ QModelIndex index = sourceModel()->index(sourceRow, 0, sourceParent);
+ QString path = index.data( Qt::UserRole ).toString();
+
+ return filterRegExp().exactMatch(path);
}
bool UBFeaturesSearchProxyModel::filterAcceptsRow( int sourceRow, const QModelIndex & sourceParent )const
{
- QModelIndex index = sourceModel()->index(sourceRow, 0, sourceParent);
- /*QString name = sourceModel()->data(index, Qt::DisplayRole).toString();
- eUBLibElementType type = (eUBLibElementType)sourceModel()->data(index, Qt::UserRole + 1).toInt();*/
+ QModelIndex index = sourceModel()->index(sourceRow, 0, sourceParent);
+ /*QString name = sourceModel()->data(index, Qt::DisplayRole).toString();
+ eUBLibElementType type = (eUBLibElementType)sourceModel()->data(index, Qt::UserRole + 1).toInt();*/
UBFeature feature = sourceModel()->data(index, Qt::UserRole + 1).value();
bool isFile = feature.getType() == FEATURE_INTERACTIVE
@@ -1409,10 +1408,10 @@ bool UBFeaturesSearchProxyModel::filterAcceptsRow( int sourceRow, const QModelIn
bool UBFeaturesPathProxyModel::filterAcceptsRow( int sourceRow, const QModelIndex & sourceParent )const
{
- QModelIndex index = sourceModel()->index(sourceRow, 0, sourceParent);
+ QModelIndex index = sourceModel()->index(sourceRow, 0, sourceParent);
UBFeature feature = sourceModel()->data(index, Qt::UserRole + 1).value();
-
- return feature.isFolder() && path.startsWith( feature.getFullVirtualPath() );
+
+ return feature.isFolder() && path.startsWith( feature.getFullVirtualPath() );
}
QString UBFeaturesItemDelegate::displayText ( const QVariant & value, const QLocale & locale ) const
@@ -1421,18 +1420,18 @@ QString UBFeaturesItemDelegate::displayText ( const QVariant & value, const QLoc
QString text = value.toString();
text = text.replace(".wgt", "");
- if (listView)
- {
- const QFontMetrics fm = listView->fontMetrics();
+ if (listView)
+ {
+ const QFontMetrics fm = listView->fontMetrics();
const QSize iSize = listView->gridSize();
- return elidedText( fm, iSize.width(), Qt::ElideRight, text );
- }
- return text;
+ return elidedText( fm, iSize.width(), Qt::ElideRight, text );
+ }
+ return text;
}
UBFeaturesPathItemDelegate::UBFeaturesPathItemDelegate(QObject *parent) : QStyledItemDelegate(parent)
{
- arrowPixmap = new QPixmap(":images/navig_arrow.png");
+ arrowPixmap = new QPixmap(":images/navig_arrow.png");
}
QString UBFeaturesPathItemDelegate::displayText ( const QVariant & value, const QLocale & locale ) const
@@ -1445,20 +1444,20 @@ QString UBFeaturesPathItemDelegate::displayText ( const QVariant & value, const
void UBFeaturesPathItemDelegate::paint( QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
{
- UBFeature feature = index.data( Qt::UserRole + 1 ).value();
- QRect rect = option.rect;
- if ( !feature.getFullPath().isEmpty() )
- {
+ UBFeature feature = index.data( Qt::UserRole + 1 ).value();
+ QRect rect = option.rect;
+ if ( !feature.getFullPath().isEmpty() )
+ {
painter->drawPixmap( rect.left() - 10, rect.center().y() - 5, *arrowPixmap );
- }
+ }
painter->drawImage( rect.left() + 5, rect.center().y() - 5, feature.getThumbnail().scaledToHeight( 30, Qt::SmoothTransformation ) );
}
UBFeaturesPathItemDelegate::~UBFeaturesPathItemDelegate()
{
- if ( arrowPixmap )
- {
- delete arrowPixmap;
- arrowPixmap = NULL;
- }
+ if ( arrowPixmap )
+ {
+ delete arrowPixmap;
+ arrowPixmap = NULL;
+ }
}