Changeset - 601fe4ade58b
[Not reviewed]
Hasan Yavuz Ă–ZDERYA - 9 years ago 2017-01-02 09:42:15
hy@ozderya.net
added button to reset channel info
5 files changed with 104 insertions and 1 deletions:
0 comments (0 inline, 0 general)
src/channelinfomodel.cpp
Show inline comments
 
@@ -212,6 +212,46 @@ void ChannelInfoModel::setNumOfChannels(
 
    }
 
}
 

	
 
void ChannelInfoModel::resetInfos()
 
{
 
    beginResetModel();
 
    for (unsigned ci = 0; (int) ci < infos.length(); ci++)
 
    {
 
        infos[ci] = {QString("Channel %1").arg(ci+1), true, colors[ci % 8]};
 
    }
 
    endResetModel();
 
}
 

	
 
void ChannelInfoModel::resetNames()
 
{
 
    beginResetModel();
 
    for (unsigned ci = 0; (int) ci < infos.length(); ci++)
 
    {
 
        infos[ci].name = QString("Channel %1").arg(ci+1);
 
    }
 
    endResetModel();
 
}
 

	
 
void ChannelInfoModel::resetColors()
 
{
 
    beginResetModel();
 
    for (unsigned ci = 0; (int) ci < infos.length(); ci++)
 
    {
 
        infos[ci].color = colors[ci % 8];
 
    }
 
    endResetModel();
 
}
 

	
 
void ChannelInfoModel::resetVisibility()
 
{
 
    beginResetModel();
 
    for (unsigned ci = 0; (int) ci < infos.length(); ci++)
 
    {
 
        infos[ci].visibility = true;
 
    }
 
    endResetModel();
 
}
 

	
 
void ChannelInfoModel::saveSettings(QSettings* settings)
 
{
 
    settings->beginGroup(SettingGroup_Channels);
src/channelinfomodel.h
Show inline comments
 
@@ -52,6 +52,16 @@ public:
 
    /// Loads all channel info from a `QSettings`.
 
    void loadSettings(QSettings* settings);
 

	
 
public slots:
 
    /// reset all channel info (names, color etc.)
 
    void resetInfos();
 
    /// reset all channel names
 
    void resetNames();
 
    /// reset all channel colors
 
    void resetColors();
 
    /// reset visibility
 
    void resetVisibility();
 

	
 
private:
 
    struct ChannelInfo
 
    {
src/plotcontrolpanel.cpp
Show inline comments
 
@@ -42,7 +42,12 @@ Q_DECLARE_METATYPE(Range);
 

	
 
PlotControlPanel::PlotControlPanel(QWidget *parent) :
 
    QWidget(parent),
 
    ui(new Ui::PlotControlPanel)
 
    ui(new Ui::PlotControlPanel),
 
    resetAct(tr("Reset"), this),
 
    resetNamesAct(tr("Reset Names"), this),
 
    resetColorsAct(tr("Reset Colors"), this),
 
    showAllAct(tr("Show All"), this),
 
    resetMenu(tr("Reset Menu"), this)
 
{
 
    ui->setupUi(this);
 

	
 
@@ -98,6 +103,13 @@ PlotControlPanel::PlotControlPanel(QWidg
 
    ui->colorSelector->setColor(QColor(0,0,0,0));
 
    ui->colorSelector->setDisplayMode(color_widgets::ColorPreview::AllAlpha);
 
    ui->colorSelector->setDisabled(true);
 

	
 
    // reset button
 
    resetMenu.addAction(&resetNamesAct);
 
    resetMenu.addAction(&resetColorsAct);
 
    resetMenu.addAction(&showAllAct);
 
    resetAct.setMenu(&resetMenu);
 
    ui->tbReset->setDefaultAction(&resetAct);
 
}
 

	
 
PlotControlPanel::~PlotControlPanel()
 
@@ -275,6 +287,12 @@ void PlotControlPanel::setChannelInfoMod
 
                ui->colorSelector->setColor(color);
 
                ui->colorSelector->blockSignals(wasBlocked);
 
            });
 

	
 
    // reset actions
 
    connect(&resetAct, &QAction::triggered, model, &ChannelInfoModel::resetInfos);
 
    connect(&resetNamesAct, &QAction::triggered, model, &ChannelInfoModel::resetNames);
 
    connect(&resetColorsAct, &QAction::triggered, model, &ChannelInfoModel::resetColors);
 
    connect(&showAllAct, &QAction::triggered, model, &ChannelInfoModel::resetVisibility);
 
}
 

	
 
void PlotControlPanel::saveSettings(QSettings* settings)
src/plotcontrolpanel.h
Show inline comments
 
@@ -22,6 +22,8 @@
 

	
 
#include <QWidget>
 
#include <QSettings>
 
#include <QAction>
 
#include <QMenu>
 

	
 
#include "channelinfomodel.h"
 

	
 
@@ -61,6 +63,9 @@ private:
 
    /// User can disable this setting in the checkbox
 
    bool warnNumOfSamples;
 

	
 
    QAction resetAct, resetNamesAct, resetColorsAct, showAllAct;
 
    QMenu resetMenu;
 

	
 
    /// Show a confirmation dialog before setting #samples to a big value
 
    bool askNSConfirmation(int value);
 

	
src/plotcontrolpanel.ui
Show inline comments
 
@@ -42,6 +42,8 @@
 
      </widget>
 
     </item>
 
     <item>
 
      <layout class="QHBoxLayout" name="horizontalLayout_2">
 
       <item>
 
      <widget class="color_widgets::ColorSelector" name="colorSelector" native="true">
 
       <property name="sizePolicy">
 
        <sizepolicy hsizetype="Maximum" vsizetype="Preferred">
 
@@ -63,6 +65,34 @@
 
       </property>
 
      </widget>
 
     </item>
 
       <item>
 
        <spacer name="horizontalSpacer">
 
         <property name="orientation">
 
          <enum>Qt::Horizontal</enum>
 
         </property>
 
         <property name="sizeHint" stdset="0">
 
          <size>
 
           <width>1</width>
 
           <height>20</height>
 
          </size>
 
         </property>
 
        </spacer>
 
       </item>
 
       <item>
 
        <widget class="QToolButton" name="tbReset">
 
         <property name="text">
 
          <string>Reset</string>
 
         </property>
 
         <property name="popupMode">
 
          <enum>QToolButton::MenuButtonPopup</enum>
 
         </property>
 
         <property name="arrowType">
 
          <enum>Qt::NoArrow</enum>
 
         </property>
 
        </widget>
 
       </item>
 
      </layout>
 
     </item>
 
    </layout>
 
   </item>
 
   <item>
0 comments (0 inline, 0 general)