mirror of
https://github.com/PurpleI2P/i2pd-qt.git
synced 2025-01-31 16:54:17 +00:00
Fix #103
This commit is contained in:
parent
d7dfa22f27
commit
44e1c37797
2
src/i2pd
2
src/i2pd
@ -1 +1 @@
|
||||
Subproject commit 905c6debf2a7f7e651a7916e646a2aee25ba57c7
|
||||
Subproject commit d241e5d5cbf7c78de7badf19608a164d355dbf54
|
@ -306,7 +306,7 @@ MainWindow::MainWindow(std::shared_ptr<std::iostream> logStream_, QWidget *paren
|
||||
initStringBox( OPTION("addressbook","defaulturl",[]{return "";}), uiSettings->addressbookDefaultURLLineEdit);
|
||||
initStringBox( OPTION("addressbook","subscriptions",[]{return "";}), uiSettings->addressbookSubscriptionsURLslineEdit);
|
||||
|
||||
initUInt16Box( OPTION("limits","transittunnels",[]{return "2500";}), uiSettings->maxNumOfTransitTunnelsLineEdit, tr("maxNumberOfTransitTunnels"));
|
||||
initUIntBox( OPTION("limits","transittunnels",[]{return "2500";}), uiSettings->maxNumOfTransitTunnelsLineEdit, tr("maxNumberOfTransitTunnels"));
|
||||
initUInt16Box( OPTION("limits","openfiles",[]{return "0";}), uiSettings->maxNumOfOpenFilesLineEdit, tr("maxNumberOfOpenFiles"));
|
||||
initUInt32Box( OPTION("limits","coresize",[]{return "0";}), uiSettings->coreFileMaxSizeNumberLineEdit, tr("coreFileMaxSize"));
|
||||
|
||||
@ -709,6 +709,9 @@ void MainWindow::initCheckBox(ConfigOption option, QCheckBox* checkBox) {
|
||||
void MainWindow::initIntegerBox(ConfigOption option, QLineEdit* numberLineEdit, QString fieldNameTranslated){
|
||||
configItems.append(new IntegerStringItem(option, numberLineEdit, fieldNameTranslated, this));
|
||||
}
|
||||
void MainWindow::initUIntBox(ConfigOption option, QLineEdit* numberLineEdit, QString fieldNameTranslated){
|
||||
configItems.append(new UIntStringItem(option, numberLineEdit, fieldNameTranslated, this));
|
||||
}
|
||||
void MainWindow::initUInt32Box(ConfigOption option, QLineEdit* numberLineEdit, QString fieldNameTranslated){
|
||||
configItems.append(new UInt32StringItem(option, numberLineEdit, fieldNameTranslated, this));
|
||||
}
|
||||
|
@ -158,6 +158,8 @@ public:
|
||||
out << boost::any_cast<uint32_t>(optionValue);
|
||||
}else if(isType<int>(optionValue)) {
|
||||
out << boost::any_cast<int>(optionValue);
|
||||
}else if(isType<unsigned long>(optionValue)) {
|
||||
out << boost::any_cast<unsigned long>(optionValue);
|
||||
}else if(isType<unsigned short>(optionValue)) {
|
||||
out << boost::any_cast<unsigned short>(optionValue);
|
||||
}else out << boost::any_cast<std::string>(optionValue); //let it throw
|
||||
@ -330,6 +332,24 @@ public:
|
||||
virtual QString toString(){return QString::number(boost::any_cast<int>(optionValue));}
|
||||
virtual boost::any fromString(QString s){return boost::any(std::stoi(s.toStdString()));}
|
||||
};
|
||||
class UIntStringItem : public BaseFormattedStringItem {
|
||||
public:
|
||||
UIntStringItem(ConfigOption option_, QLineEdit* lineEdit_, QString fieldNameTranslated_, MainWindow* mw) :
|
||||
BaseFormattedStringItem(option_, lineEdit_, fieldNameTranslated_,
|
||||
QApplication::tr("Must be a valid integer."), mw) {}
|
||||
virtual ~UIntStringItem(){}
|
||||
virtual bool isValid(bool & alreadyDisplayedIfWrong){
|
||||
bool correct = BaseFormattedStringItem::isValid(alreadyDisplayedIfWrong);
|
||||
if(!correct)return false;
|
||||
alreadyDisplayedIfWrong = false;
|
||||
auto str=lineEdit->text();
|
||||
bool ok;
|
||||
str.toUInt(&ok);
|
||||
return ok;
|
||||
}
|
||||
virtual QString toString(){return QString::number(boost::any_cast<unsigned int>(optionValue));}
|
||||
virtual boost::any fromString(QString s){return boost::any(std::stoul(s.toStdString()));}
|
||||
};
|
||||
class UShortStringItem : public BaseFormattedStringItem {
|
||||
public:
|
||||
UShortStringItem(ConfigOption option_, QLineEdit* lineEdit_, QString fieldNameTranslated_, MainWindow* mw) :
|
||||
@ -543,6 +563,7 @@ protected:
|
||||
void initTCPPortBox(ConfigOption option, QLineEdit* portLineEdit, QString fieldNameTranslated);
|
||||
void initCheckBox(ConfigOption option, QCheckBox* checkBox);
|
||||
void initIntegerBox(ConfigOption option, QLineEdit* numberLineEdit, QString fieldNameTranslated);
|
||||
void initUIntBox(ConfigOption option, QLineEdit* numberLineEdit, QString fieldNameTranslated);
|
||||
void initUInt32Box(ConfigOption option, QLineEdit* numberLineEdit, QString fieldNameTranslated);
|
||||
void initUInt16Box(ConfigOption option, QLineEdit* numberLineEdit, QString fieldNameTranslated);
|
||||
void initStringBox(ConfigOption option, QLineEdit* lineEdit);
|
||||
|
Loading…
x
Reference in New Issue
Block a user