summaryrefslogtreecommitdiffstats
path: root/kipi-plugins/findimages/finddupplicatedialog.h
blob: f86a0fc92150a1b599879edd9c10755fded9d7cf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
//////////////////////////////////////////////////////////////////////////////
//
//    FINDDUPPLICATEDIALOG.H
//
//    Copyright (C) 2004 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 Public License as published by
//    the Free Software Foundation; either version 2 of the License, or
//    (at your option) any later version.
//
//    This program is distributed in the hope that it will be useful,
//    but WITHOUT ANY WARRANTY; without even the implied warranty of
//    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//    GNU General Public License for more details.
//
//    You should have received a copy of the GNU General Public License
//    along with this program; if not, write to the Free Software
//    Foundation, Inc., 51 Franklin Street, Fifth Floor, Cambridge, MA 02110-1301, USA.
//
//////////////////////////////////////////////////////////////////////////////

#ifndef FINDDUPPLICATEDIALOG_H
#define FINDDUPPLICATEDIALOG_H

// Include files for TQt

#include <tqstring.h>
#include <tqguardedptr.h>

// Include files for KDE

#include <kdialogbase.h>

// Include files for KIPI

#include <libkipi/interface.h>

// Local includes

#include "kpaboutdata.h"

class TQComboBox;
class TQFrame;
class TQPushButton;

class KFileItem;
class KIntNumInput;
class KSqueezedTextLabel;
class KListView;

namespace KIPI
{
  class ImageCollectionSelector;
}

namespace KIPIFindDupplicateImagesPlugin
{
class FindDuplicateDialog : public KDialogBase
{
 Q_OBJECT
  TQ_OBJECT

 public:
  
  FindDuplicateDialog( KIPI::Interface* interface, TQWidget *parent=0);
  ~FindDuplicateDialog();

  int getFindMethod() const;
  void setFindMethod(int method);

  const int getApproximateThreeshold() const;
  void setApproximateThreeshold(int Value);
  
  TQValueList<KIPI::ImageCollection> getSelectedAlbums() const;

  enum FindDuplicateMethod {
    MethodAlmost = 0,
    MethodFast   = 1
  };

 signals:
  
  void updateCache(TQStringList fromDir);
  void clearCache(TQStringList fromDir);
  void clearAllCache(void);

 protected slots:
  
  void slotOk();
  void slotUpdateCache(void);
  void slotPurgeCache(void);
  void slotPurgeAllCache(void);
  void slotfindMethodChanged(int method);
  void slotHelp();

 private:
  
  TQComboBox                     *m_findMethod;

  TQFrame                        *page_setupSelection;
  TQFrame                        *page_setupMethod;

  TQPushButton                   *m_helpButton;
  
  KIntNumInput                  *m_approximateThreshold;

  KIPI::Interface               *m_interface;
  
  KIPI::ImageCollectionSelector     *m_imageCollectionSelector;
  
  KIPIPlugins::KPAboutData      *m_about;

 private :
 
  void setupSelection(void);
  void setupPageMethod(void);
  
};

}  // NameSpace KIPIFindDupplicateImagesPlugin

#endif // FINDDUPPLICATEDIALOG_H