[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    extragear/graphics/digikam/utilities/fuzzysearch
From:       Gilles Caulier <caulier.gilles () gmail ! com>
Date:       2008-05-29 4:27:57
Message-ID: 1212035277.103035.24302.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 814011 by cgilles:

add new method to query image id


 M  +34 -3     fuzzysearchview.cpp  
 M  +4 -1      fuzzysearchview.h  


--- trunk/extragear/graphics/digikam/utilities/fuzzysearch/fuzzysearchview.cpp \
#814010:814011 @@ -435,16 +435,16 @@
     if (!checkName(name))
         return;
 
-    createNewFuzzySearchAlbum(name);
+    createNewFuzzySearchAlbumFromSketch(name);
 }
 
 void FuzzySearchView::slotDirty()
 {
     slotCheckNameEditConditions();
-    createNewFuzzySearchAlbum(FuzzySearchFolderView::currentFuzzySearchName());
+    createNewFuzzySearchAlbumFromSketch(FuzzySearchFolderView::currentFuzzySearchName());
  }
 
-void FuzzySearchView::createNewFuzzySearchAlbum(const QString& name)
+void FuzzySearchView::createNewFuzzySearchAlbumFromSketch(const QString& name)
 {
     AlbumManager::instance()->setCurrentAlbum(0);
 
@@ -469,6 +469,37 @@
     AlbumManager::instance()->setCurrentAlbum(album);
 }
 
+void FuzzySearchView::createNewFuzzySearchAlbumFromImage(const QString& name)
+{
+    AlbumManager::instance()->setCurrentAlbum(0);
+
+/*  TODO: check image id from d->imageWidget
+    if (!d->imageWidget->imageId())
+        return;
+*/
+    // We query database here
+
+    HaarIface haarIface;
+    SearchXmlWriter writer;
+
+    writer.writeGroup();
+    writer.writeField("similarity", SearchXml::Like);
+    writer.writeAttribute("type", "imageid");
+    writer.writeAttribute("numberofresults", \
QString::number(d->resultsImage->value())); +
+    // TODO: Check is handdraw is right here
+    writer.writeAttribute("sketchtype", "handdrawn");
+
+    /* TODO: use image id from d->imageWidget
+    writer.writeValue(d->imageWidget->imageId());*/
+
+    writer.finishField();
+    writer.finishGroup();
+
+    SAlbum* album = AlbumManager::instance()->createSAlbum(name, \
DatabaseSearch::HaarSearch, writer.xml()); +    \
AlbumManager::instance()->setCurrentAlbum(album); +}
+
 void FuzzySearchView::slotAlbumSelected(SAlbum* salbum)
 {
     slotClear();
--- trunk/extragear/graphics/digikam/utilities/fuzzysearch/fuzzysearchview.h \
#814010:814011 @@ -54,7 +54,10 @@
 
     void readConfig();
     void writeConfig();
-    void createNewFuzzySearchAlbum(const QString& name);
+
+    void createNewFuzzySearchAlbumFromSketch(const QString& name);
+    void createNewFuzzySearchAlbumFromImage(const QString& name);
+
     bool checkName(QString& name);
     bool checkAlbum(const QString& name) const;
 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic