Changeset - fc3447903db8
[Not reviewed]
settings
0 2 0
Hasan Yavuz Ă–ZDERYA - 9 years ago 2016-09-02 15:17:10
hy@ozderya.net
use current parity setting as default when loading
2 files changed with 22 insertions and 13 deletions:
0 comments (0 inline, 0 general)
src/portcontrol.cpp
Show inline comments
 
@@ -306,31 +306,36 @@ void PortControl::onCbPortListActivated(
 

	
 
void PortControl::onTbPortListActivated(int index)
 
{
 
    ui->cbPortList->setCurrentIndex(index);
 
}
 

	
 
QString PortControl::currentParityText()
 
{
 
    if (parityButtons.checkedId() == QSerialPort::OddParity)
 
    {
 
        return "odd";
 
    }
 
    else if (parityButtons.checkedId() == QSerialPort::EvenParity)
 
    {
 
        return "even";
 
    }
 
    else // no parity
 
    {
 
        return "none";
 
    }
 
}
 

	
 
void PortControl::saveSettings(QSettings* settings)
 
{
 
    settings->beginGroup("Port");
 
    settings->setValue("selectedPort", selectedPortName());
 
    settings->setValue("baudRate", ui->cbBaudRate->currentText());
 

	
 
    // save parity setting
 
    if (parityButtons.checkedId() == QSerialPort::OddParity)
 
    {
 
        settings->setValue("parity", "odd");
 
    }
 
    else if (parityButtons.checkedId() == QSerialPort::EvenParity)
 
    {
 
        settings->setValue("parity", "even");
 
    }
 
    else
 
    {
 
        settings->setValue("parity", "none");
 
    }
 
    settings->setValue("parity", currentParityText());
 

	
 
    // save number of bits
 
    settings->setValue("dataBits", dataBitsButtons.checkedId());
 

	
 
    settings->endGroup();
 
}
 
@@ -351,13 +356,15 @@ void PortControl::loadSettings(QSettings
 
    QString baudSetting = settings->value(
 
        "baudRate", ui->cbBaudRate->currentText()).toString();
 
    int baudIndex = ui->cbBaudRate->findText(baudSetting);
 
    if (baudIndex > -1) ui->cbBaudRate->setCurrentIndex(baudIndex);
 

	
 
    // load parity setting
 
    QString paritySetting = settings->value("parity", "none").toString();
 
    QString paritySetting =
 
        settings->value("parity", currentParityText()).toString();
 

	
 
    if (paritySetting == "odd")
 
    {
 
        ui->rbOddParity->setChecked(true);
 
    }
 
    else if (paritySetting == "even")
 
    {
src/portcontrol.h
Show inline comments
 
@@ -64,12 +64,14 @@ private:
 
    QAction loadPortListAction;
 
    QComboBox tbPortList;
 
    PortList portList;
 

	
 
    /// Returns the currently selected (entered) "portName" in the UI
 
    QString selectedPortName();
 
    /// Returns currently selected parity as text to be saved in settings
 
    QString currentParityText();
 

	
 
public slots:
 
    void loadPortList();
 
    void loadBaudRateList();
 
    void togglePort();
 
    void selectPort(QString portName);
0 comments (0 inline, 0 general)