Changed search to retry automatically couple of times before failing.
[jenirok] / src / gui / resultwindow.h
index 8bd3228..dde6501 100644 (file)
@@ -24,7 +24,7 @@
 #include <QtGui/QListWidget>
 #include <QtGui/QListWidgetItem>
 #include "searchdialog.h"
-#include "eniro.h"
+#include "source.h"
 #include "connectionmanager.h"
 
 class ResultWindow : public QMainWindow
@@ -35,22 +35,33 @@ public:
     ResultWindow(QWidget* parent = 0);
     ~ResultWindow();
     static const int REQUEST_TIMEOUT = 30000;
+    static const int SEARCH_INTERVAL = 1000;
+    static const int RETRIES = 2;
 
 signals:
-    void itemSelected(Eniro::Result const& result);
+    void itemSelected(Source::Result const& result);
 
 public slots:
     void search(SearchDialog::SearchDetails& details);
+    virtual void setVisible(bool visible);
+
+protected:
+    virtual void timerEvent(QTimerEvent* event);
 
 private slots:
-    void resultAvailable(Eniro::Result const& result, Eniro::SearchDetails const& details);
-    void requestFinished(QVector <Eniro::Result> const& results, Eniro::SearchDetails const& details, bool error);
+    void resultAvailable(Source::Result const& result, Source::SearchDetails const& details);
+    void requestFinished(QVector <Source::Result> const& results, Source::SearchDetails const& details, bool error);
     void itemClicked(QListWidgetItem* item);
 
 private:
-    Eniro* eniro_;
+    Source::SourceId sourceId_;
+    Source* source_;
     QListWidget* list_;
     ConnectionManager* connectionManager_;
+    int timer_;
+    bool searching_;
+    int retries_;
+    Source::SearchDetails currentSearch_;
 
 };