[Digikam-devel] extragear/graphics/digikam/utilities/fuzzysearch

Gilles Caulier caulier.gilles at gmail.com
Fri Aug 6 10:49:23 BST 2010


after more than 340 photos to process, i found some little code to
play... (:=))) I cannot resist

Gilles

2010/8/6 Andi Clemens <andi.clemens at gmx.net>:
> HEY, YOU SHOULDN'T WORK DURING YOUR VACATION!!!!
>
>
> :-)
>
> Andi
>
>
> On Thursday 05 August 2010 17:29:14 Gilles Caulier wrote:
>> SVN commit 1159539 by cgilles:
>>
>> do not overlay preview on duplicate list view item when it selected.
>> More private internal containers
>>
>>
>>  M  +12 -2     findduplicatesalbumitem.cpp
>>  M  +1 -1      findduplicatesalbumitem.h
>>  M  +9 -8      findduplicatesview.cpp
>>  M  +3 -3      findduplicatesview.h
>>  M  +4 -5      fuzzysearchview.cpp
>>  M  +3 -4      fuzzysearchview.h
>>  M  +5 -3      sketchwidget.cpp
>>  M  +3 -4      sketchwidget.h
>>
>>
>> ---
>> trunk/extragear/graphics/digikam/utilities/fuzzysearch/findduplicatesalbum
>> item.cpp #1159538:1159539 @@ -6,7 +6,7 @@
>>   * Date        : 2008-06-17
>>   * Description : Find Duplicates tree-view search album item.
>>   *
>> - * Copyright (C) 2008-2009 by Gilles Caulier <caulier dot gilles at gmail
>> dot com> + * Copyright (C) 2008-2010 by Gilles Caulier <caulier dot gilles
>> at gmail dot com> *
>>   * This program is free software; you can redistribute it
>>   * and/or modify it under the terms of the GNU General
>> @@ -71,7 +71,16 @@
>>      QPainter p(&pixmap);
>>      p.drawPixmap((pixmap.width()/2)  - (pix.width()/2),
>>                   (pixmap.height()/2) - (pix.height()/2), pix);
>> -    setIcon(0, QIcon(pixmap));
>> +
>> +    QIcon icon = QIcon(pixmap);
>> +    //  We make sure the preview icon stays the same regardless of the
>> role +    icon.addPixmap(pixmap, QIcon::Selected, QIcon::On);
>> +    icon.addPixmap(pixmap, QIcon::Selected, QIcon::Off);
>> +    icon.addPixmap(pixmap, QIcon::Active,   QIcon::On);
>> +    icon.addPixmap(pixmap, QIcon::Active,   QIcon::Off);
>> +    icon.addPixmap(pixmap, QIcon::Normal,   QIcon::On);
>> +    icon.addPixmap(pixmap, QIcon::Normal,   QIcon::Off);
>> +    setIcon(0, icon);
>>  }
>>
>>  SAlbum* FindDuplicatesAlbumItem::album() const
>> @@ -90,6 +99,7 @@
>>      int result = KStringHandler::naturalCompare(text(column),
>> other.text(column)); if (result < 0)
>>          return true;
>> +
>>      return false;
>>  }
>>
>> ---
>> trunk/extragear/graphics/digikam/utilities/fuzzysearch/findduplicatesalbum
>> item.h #1159538:1159539 @@ -6,7 +6,7 @@
>>   * Date        : 2008-06-17
>>   * Description : Find Duplicates tree-view search album item.
>>   *
>> - * Copyright (C) 2008-2009 by Gilles Caulier <caulier dot gilles at gmail
>> dot com> + * Copyright (C) 2008-2010 by Gilles Caulier <caulier dot gilles
>> at gmail dot com> *
>>   * This program is free software; you can redistribute it
>>   * and/or modify it under the terms of the GNU General
>> ---
>> trunk/extragear/graphics/digikam/utilities/fuzzysearch/findduplicatesview.
>> cpp #1159538:1159539 @@ -6,8 +6,8 @@
>>   * Date        : 2008-05-19
>>   * Description : Find Duplicates View.
>>   *
>> - * Copyright (C) 2008-2009 by Gilles Caulier <caulier dot gilles at gmail
>> dot com> - * Copyright (C) 2008-2009 by Marcel Wiesweg <marcel dot wiesweg
>> at gmx dot de> + * Copyright (C) 2008-2010 by Gilles Caulier <caulier dot
>> gilles at gmail dot com> + * Copyright (C) 2008-2010 by Marcel Wiesweg
>> <marcel dot wiesweg at gmx dot de> * Copyright (C) 2009      by Andi
>> Clemens <andi dot clemens at gmx dot net> *
>>   * This program is free software; you can redistribute it
>> @@ -23,8 +23,6 @@
>>   *
>>   * ============================================================ */
>>
>> -#define ICONSIZE 64
>> -
>>  #include "findduplicatesview.moc"
>>
>>  // Qt includes
>> @@ -59,12 +57,13 @@
>>  namespace Digikam
>>  {
>>
>> -class FindDuplicatesViewPriv
>> +class FindDuplicatesView::FindDuplicatesViewPriv
>>  {
>>
>>  public:
>>
>>      FindDuplicatesViewPriv()
>> +        : iconSize(64)
>>      {
>>          listView             = 0;
>>          scanDuplicatesBtn    = 0;
>> @@ -81,6 +80,8 @@
>>          searchJob            = NULL;
>>      }
>>
>> +    const int                    iconSize;
>> +
>>      KIO::Job*                    searchJob;
>>
>>      QLabel*                      includeAlbumsLabel;
>> @@ -118,7 +119,7 @@
>>      d->listView->setSelectionMode(QAbstractItemView::SingleSelection);
>>      d->listView->setSizePolicy(QSizePolicy::Expanding,
>> QSizePolicy::Expanding); d->listView->setAllColumnsShowFocus(true);
>> -    d->listView->setIconSize(QSize(ICONSIZE, ICONSIZE));
>> +    d->listView->setIconSize(QSize(d->iconSize, d->iconSize));
>>      d->listView->setSortingEnabled(true);
>>      d->listView->setColumnCount(2);
>>      d->listView->setHeaderLabels(QStringList() << i18n("Ref. images") <<
>> i18n("Items")); @@ -355,9 +356,9 @@
>>          if (item->refUrl().toLocalFile() == desc.filePath)
>>          {
>>              if (pix.isNull())
>> -                item->setThumb(SmallIcon("image-x-generic", ICONSIZE,
>> KIconLoader::DisabledState)); +
>> item->setThumb(SmallIcon("image-x-generic", d->iconSize,
>> KIconLoader::DisabledState)); else
>> -                item->setThumb(pix.scaled(ICONSIZE, ICONSIZE,
>> Qt::KeepAspectRatio)); +
>> item->setThumb(pix.scaled(d->iconSize, d->iconSize, Qt::KeepAspectRatio));
>> }
>>          ++it;
>>      }
>> ---
>> trunk/extragear/graphics/digikam/utilities/fuzzysearch/findduplicatesview.
>> h #1159538:1159539 @@ -6,8 +6,8 @@
>>   * Date        : 2008-05-19
>>   * Description : Find Duplicates View.
>>   *
>> - * Copyright (C) 2008-2009 by Gilles Caulier <caulier dot gilles at gmail
>> dot com> - * Copyright (C) 2008-2009 by Marcel Wiesweg <marcel dot wiesweg
>> at gmx dot de> + * Copyright (C) 2008-2010 by Gilles Caulier <caulier dot
>> gilles at gmail dot com> + * Copyright (C) 2008-2010 by Marcel Wiesweg
>> <marcel dot wiesweg at gmx dot de> * Copyright (C) 2009      by Andi
>> Clemens <andi dot clemens at gmx dot net> *
>>   * This program is free software; you can redistribute it
>> @@ -45,7 +45,6 @@
>>  {
>>  class Album;
>>  class SAlbum;
>> -class FindDuplicatesViewPriv;
>>
>>  class FindDuplicatesView : public QWidget
>>  {
>> @@ -103,6 +102,7 @@
>>
>>  private:
>>
>> +    class FindDuplicatesViewPriv;
>>      FindDuplicatesViewPriv* const d;
>>  };
>>
>> ---
>> trunk/extragear/graphics/digikam/utilities/fuzzysearch/fuzzysearchview.cpp
>> #1159538:1159539 @@ -6,8 +6,8 @@
>>   * Date        : 2008-05-19
>>   * Description : Fuzzy search sidebar tab contents.
>>   *
>> - * Copyright (C) 2008-2009 by Gilles Caulier <caulier dot gilles at gmail
>> dot com> - * Copyright (C) 2008-2009 by Marcel Wiesweg <marcel dot wiesweg
>> at gmx dot de> + * Copyright (C) 2008-2010 by Gilles Caulier <caulier dot
>> gilles at gmail dot com> + * Copyright (C) 2008-2010 by Marcel Wiesweg
>> <marcel dot wiesweg at gmx dot de> *
>>   * This program is free software; you can redistribute it
>>   * and/or modify it under the terms of the GNU General
>> @@ -79,7 +79,7 @@
>>  namespace Digikam
>>  {
>>
>> -class FuzzySearchViewPriv
>> +class FuzzySearchView::FuzzySearchViewPriv
>>  {
>>
>>  public:
>> @@ -879,8 +879,7 @@
>>                                               Qt::SmoothTransformation));
>>  }
>>
>> -void FuzzySearchView::createNewFuzzySearchAlbumFromImage(const QString&
>> name, -                bool force)
>> +void FuzzySearchView::createNewFuzzySearchAlbumFromImage(const QString&
>> name, bool force) {
>>      AlbumManager::instance()->setCurrentAlbum(0);
>>      d->imageSAlbum =
>> d->searchModificationHelper->createFuzzySearchFromImage( ---
>> trunk/extragear/graphics/digikam/utilities/fuzzysearch/fuzzysearchview.h
>> #1159538:1159539 @@ -6,8 +6,8 @@
>>   * Date        : 2008-05-19
>>   * Description : Fuzzy search sidebar tab contents.
>>   *
>> - * Copyright (C) 2008-2009 by Gilles Caulier <caulier dot gilles at gmail
>> dot com> - * Copyright (C) 2008-2009 by Marcel Wiesweg <marcel dot wiesweg
>> at gmx dot de> + * Copyright (C) 2008-2010 by Gilles Caulier <caulier dot
>> gilles at gmail dot com> + * Copyright (C) 2008-2010 by Marcel Wiesweg
>> <marcel dot wiesweg at gmx dot de> *
>>   * This program is free software; you can redistribute it
>>   * and/or modify it under the terms of the GNU General
>> @@ -42,7 +42,6 @@
>>
>>  class Album;
>>  class FuzzySearchFolderView;
>> -class FuzzySearchViewPriv;
>>  class ImageInfo;
>>  class LoadingDescription;
>>  class SAlbum;
>> @@ -120,9 +119,9 @@
>>      QWidget* setupSketchPanel();
>>      void     setupConnections();
>>
>> -
>>  private:
>>
>> +    class FuzzySearchViewPriv;
>>      FuzzySearchViewPriv* const d;
>>  };
>>
>> --- trunk/extragear/graphics/digikam/utilities/fuzzysearch/sketchwidget.cpp
>> #1159538:1159539 @@ -6,8 +6,8 @@
>>   * Date        : 2008-05-19
>>   * Description : a widget to draw sketch.
>>   *
>> - * Copyright (C) 2008-2009 by Gilles Caulier <caulier dot gilles at gmail
>> dot com> - * Copyright (C) 2008-2009 by Marcel Wiesweg <marcel dot wiesweg
>> at gmx dot de> + * Copyright (C) 2008-2010 by Gilles Caulier <caulier dot
>> gilles at gmail dot com> + * Copyright (C) 2008-2010 by Marcel Wiesweg
>> <marcel dot wiesweg at gmx dot de> *
>>   * This program is free software; you can redistribute it
>>   * and/or modify it under the terms of the GNU General
>> @@ -71,7 +71,9 @@
>>      QPainterPath path;
>>  };
>>
>> -class SketchWidgetPriv
>> +//
>> --------------------------------------------------------------------------
>> ---- +
>> +class SketchWidget::SketchWidgetPriv
>>  {
>>  public:
>>
>> --- trunk/extragear/graphics/digikam/utilities/fuzzysearch/sketchwidget.h
>> #1159538:1159539 @@ -6,8 +6,8 @@
>>   * Date        : 2008-05-19
>>   * Description : a widget to draw sketch.
>>   *
>> - * Copyright (C) 2008-2009 by Gilles Caulier <caulier dot gilles at gmail
>> dot com> - * Copyright (C) 2008-2009 by Marcel Wiesweg <marcel dot wiesweg
>> at gmx dot de> + * Copyright (C) 2008-2010 by Gilles Caulier <caulier dot
>> gilles at gmail dot com> + * Copyright (C) 2008-2010 by Marcel Wiesweg
>> <marcel dot wiesweg at gmx dot de> *
>>   * This program is free software; you can redistribute it
>>   * and/or modify it under the terms of the GNU General
>> @@ -34,8 +34,6 @@
>>  namespace Digikam
>>  {
>>
>> -class SketchWidgetPriv;
>> -
>>  class SketchWidget : public QWidget
>>  {
>>      Q_OBJECT
>> @@ -97,6 +95,7 @@
>>
>>  private:
>>
>> +    class SketchWidgetPriv;
>>      SketchWidgetPriv* const d;
>>  };
> _______________________________________________
> Digikam-devel mailing list
> Digikam-devel at kde.org
> https://mail.kde.org/mailman/listinfo/digikam-devel
>



More information about the Digikam-devel mailing list