Changeset - c331aa68f3c2
[Not reviewed]
settings
0 4 0
Hasan Yavuz Ă–ZDERYA - 9 years ago 2016-09-07 02:33:22
hy@ozderya.net
save/load channel names
4 files changed with 40 insertions and 2 deletions:
0 comments (0 inline, 0 general)
src/channelmanager.cpp
Show inline comments
 
@@ -17,11 +17,12 @@
 
  along with serialplot.  If not, see <http://www.gnu.org/licenses/>.
 
*/
 

	
 
#include "channelmanager.h"
 

	
 
#include <QStringList>
 
#include <QModelIndex>
 

	
 
#include "channelmanager.h"
 
#include "setting_defines.h"
 

	
 
ChannelManager::ChannelManager(unsigned numberOfChannels, unsigned numberOfSamples, QObject *parent) :
 
    QObject(parent)
 
{
 
@@ -143,3 +144,29 @@ void ChannelManager::addChannelData(unsi
 
{
 
    channelBuffer(channel)->addSamples(data, size);
 
}
 

	
 
void ChannelManager::saveSettings(QSettings* settings)
 
{
 
    settings->beginGroup(SettingGroup_Channels);
 
    settings->beginWriteArray(SG_Channels_Channel);
 
    for (unsigned i = 0; i < numOfChannels(); i++)
 
    {
 
        settings->setArrayIndex(i);
 
        settings->setValue(SG_Channels_Name, channelName(i));
 
    }
 
    settings->endArray();
 
    settings->endGroup();
 
}
 

	
 
void ChannelManager::loadSettings(QSettings* settings)
 
{
 
    settings->beginGroup(SettingGroup_Channels);
 
    settings->beginReadArray(SG_Channels_Channel);
 
    for (unsigned i = 0; i < numOfChannels(); i++)
 
    {
 
        settings->setArrayIndex(i);
 
        setChannelName(i, settings->value(SG_Channels_Name, channelName(i)).toString());
 
    }
 
    settings->endArray();
 
    settings->endGroup();
 
}
src/channelmanager.h
Show inline comments
 
@@ -24,6 +24,7 @@
 
#include <QStringListModel>
 
#include <QModelIndex>
 
#include <QVector>
 
#include <QSettings>
 

	
 
#include "framebuffer.h"
 

	
 
@@ -39,6 +40,10 @@ public:
 
    FrameBuffer* channelBuffer(unsigned channel);
 
    QStringListModel* channelNames();
 
    QString channelName(unsigned channel);
 
    /// Stores channel names into a `QSettings`
 
    void saveSettings(QSettings* settings);
 
    /// Loads channel names from a `QSettings`.
 
    void loadSettings(QSettings* settings);
 

	
 
signals:
 
    void numOfChannelsChanged(unsigned value);
src/mainwindow.cpp
Show inline comments
 
@@ -432,6 +432,7 @@ void MainWindow::saveAllSettings(QSettin
 
    saveMWSettings(settings);
 
    portControl.saveSettings(settings);
 
    dataFormatPanel.saveSettings(settings);
 
    channelMan.saveSettings(settings);
 
}
 

	
 
void MainWindow::loadAllSettings(QSettings* settings)
 
@@ -439,6 +440,7 @@ void MainWindow::loadAllSettings(QSettin
 
    loadMWSettings(settings);
 
    portControl.loadSettings(settings);
 
    dataFormatPanel.loadSettings(settings);
 
    channelMan.loadSettings(settings);
 
}
 

	
 
void MainWindow::saveMWSettings(QSettings* settings)
src/setting_defines.h
Show inline comments
 
@@ -65,4 +65,8 @@ const char SG_CustomFrame_Endianness[] =
 
const char SG_CustomFrame_Checksum[] = "checksum";
 
const char SG_CustomFrame_DebugMode[] = "debugMode";
 

	
 
// channel manager keys
 
const char SG_Channels_Channel[] = "channel";
 
const char SG_Channels_Name[] = "name";
 

	
 
#endif // SETTING_DEFINES_H
0 comments (0 inline, 0 general)