view DataController.hpp @ 1:aae83c0a771d

Refactor: -Rename all Db to DB. Add setup script Add support for Sqlite3 in configuration.
author Tom Fredrik Blenning Klaussen <bfg@blenning.no>
date Mon, 20 Aug 2012 17:32:58 +0200
parents a3834af36579
children 2833b7f8884a
line wrap: on
line source

#ifndef DATACONTROLLER_HPP
#define DATACONTROLLER_HPP

#include <QtCore/QObject>

#include "FileDBLink.hpp"

class QMainWindow;
class QTreeWidget;
class QTreeWidgetItem;
class QAction;
class QSpinBox;
class QTimer;

class DataController : QObject {
private:
  Q_OBJECT

  public:
  DataController();
  ~DataController();

public slots:
  //void cellClicked(int row, int column);
  void cellDoubleClicked(int row, int column);
  bool toggleShowFullPath();
  void setShowFullPath(bool);
  void populate();
  void delayPopulate();


signals:
  void populateProgress(int);

private:
  void populate(bool showNameDups, bool showSizeDups,
		bool showMTimeDups, bool showCheckSumDups,
		float editDistanceCutoff);

  QTreeWidgetItem* createItem(const FileDBLink::DBInfo& info);

  bool showFullPath;
  QMainWindow* mw;
  QTreeWidget* tw;

  FileDBLink* dblink;

  QAction* nameFilter;
  QAction* sizeFilter;
  QAction* mtimeFilter;
  QAction* checksumFilter;
  QSpinBox* editCutoffSpin;

  QTimer* populateDelay;
};

#endif //DATACONTROLLER_HPP