forked from sqlitebrowser/sqlitebrowser
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathImportCsvDialog.h
More file actions
62 lines (46 loc) · 1.44 KB
/
ImportCsvDialog.h
File metadata and controls
62 lines (46 loc) · 1.44 KB
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
#ifndef IMPORTCSVDIALOG_H
#define IMPORTCSVDIALOG_H
#include "csvparser.h"
#include "sql/sqlitetypes.h"
#include <QDialog>
#include <functional>
class DBBrowserDB;
class QCompleter;
namespace Ui {
class ImportCsvDialog;
}
class ImportCsvDialog : public QDialog
{
Q_OBJECT
public:
explicit ImportCsvDialog(const QStringList& filenames, DBBrowserDB* db, QWidget* parent = nullptr);
~ImportCsvDialog() override;
private slots:
void accept() override;
void updatePreview();
void checkInput();
void selectFiles();
void updateSelectedFilePreview();
void updateSelection(bool);
void matchSimilar();
void toggleAdvancedSection(bool show);
private:
Ui::ImportCsvDialog* ui;
QStringList csvFilenames;
QString selectedFile;
DBBrowserDB* pdb;
QCompleter* encodingCompleter;
QStringList dontAskForExistingTableAgain;
CSVParser::ParserResult parseCSV(const QString& fileName, std::function<bool(size_t, CSVRow)> rowFunction, size_t count = 0);
sqlb::FieldVector generateFieldList(const QString& filename);
bool importCsv(const QString& f, const QString& n = QString());
void setQuoteChar(QChar c);
QChar currentQuoteChar() const;
void setSeparatorChar(QChar c);
QChar currentSeparatorChar() const;
void setEncoding(const QString& sEnc);
QString currentEncoding() const;
QString currentOnConflictStrategy() const;
char32_t toUtf8(const QString& s) const;
};
#endif