synthclone  0.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
fileselectionview.h
Go to the documentation of this file.
1 /*
2  * libsynthclone - a plugin API for `synthclone`
3  * Copyright (C) 2011 Devin Anderson
4  *
5  * This library is free software; you can redistribute it and/or modify it
6  * under the terms of the GNU Lesser General Public License as published by the
7  * Free Software Foundation; either version 2.1 of the License, or (at your
8  * option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful, but WITHOUT
11  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
13  * for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public License
16  * along with this library; if not, write to the Free Software Foundation,
17  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18  */
19 
20 #ifndef __SYNTHCLONE_FILESELECTIONVIEW_H__
21 #define __SYNTHCLONE_FILESELECTIONVIEW_H__
22 
23 #include <synthclone/view.h>
24 
25 namespace synthclone {
26 
35  class FileSelectionView: public View {
36 
37  Q_OBJECT
38 
39  public:
40 
46  enum Operation {
49  };
50 
60  };
61 
69  explicit
70  FileSelectionView(QObject *parent=0);
71 
77 
85  bool
86  areFilesVisible() const;
87 
95  QString
96  getDirectory() const;
97 
105  Operation
106  getOperation() const;
107 
116  getSelectionFilter() const;
117 
125  QString
126  getTitle() const;
127 
128  public slots:
129 
137  void
138  setDirectory(const QString &directory);
139 
150  void
151  setFilesVisible(bool visible);
152 
160  void
161  setOperation(Operation operation);
162 
170  void
172 
180  void
181  setTitle(const QString &title);
182 
183  signals:
184 
192  void
193  pathsSelected(const QStringList &paths);
194 
195  private slots:
196 
197  void
198  handleDialogAccept();
199 
200  void
201  handleDialogReject();
202 
203  };
204 
205 }
206 
207 #endif