mirror of
https://github.com/sqlitebrowser/sqlitebrowser.git
synced 2026-01-20 02:50:46 -06:00
Get the encoding name from a combo box in the "Set encoding" dialog
User can enter the encoding name with completion or select it from the list using the mouse. This will help users to discover available codecs and to find a suitable one in an easier way. This should help with encoding issues like #1453.
This commit is contained in:
@@ -25,6 +25,7 @@
|
||||
#include "RemoteDock.h"
|
||||
#include "RemoteDatabase.h"
|
||||
#include "FindReplaceDialog.h"
|
||||
#include "Data.h"
|
||||
|
||||
#include <QFile>
|
||||
#include <QApplication>
|
||||
@@ -2773,15 +2774,20 @@ void MainWindow::browseDataSetTableEncoding(bool forAllTables)
|
||||
// Ask the user for a new encoding
|
||||
bool ok;
|
||||
QString question;
|
||||
QStringList availableCodecs = toStringList(QTextCodec::availableCodecs());
|
||||
availableCodecs.removeDuplicates();
|
||||
int currentItem = availableCodecs.indexOf(encoding);
|
||||
|
||||
if(forAllTables)
|
||||
question = tr("Please choose a new encoding for all tables.");
|
||||
else
|
||||
question = tr("Please choose a new encoding for this table.");
|
||||
encoding = QInputDialog::getText(this,
|
||||
encoding = QInputDialog::getItem(this,
|
||||
tr("Set encoding"),
|
||||
tr("%1\nLeave the field empty for using the database encoding.").arg(question),
|
||||
QLineEdit::Normal,
|
||||
encoding,
|
||||
availableCodecs,
|
||||
currentItem,
|
||||
true, // editable
|
||||
&ok);
|
||||
|
||||
// Only set the new encoding if the user clicked the OK button
|
||||
|
||||
Reference in New Issue
Block a user