Add control hiding (CTRL+M) to fast graph to minimize screen usage

Also cleans up a few layout issues.

Thanks to Mike, W9MDB, for this contribution.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7603 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Bill Somerville 2017-03-14 14:23:13 +00:00
parent dfecb4ed1f
commit f65242cd74
3 changed files with 258 additions and 260 deletions

View File

@ -12,14 +12,14 @@ FastGraph::FastGraph(QSettings * settings, QWidget *parent) :
QDialog {parent, Qt::Window | Qt::WindowTitleHint | QDialog {parent, Qt::Window | Qt::WindowTitleHint |
Qt::WindowCloseButtonHint | Qt::WindowCloseButtonHint |
Qt::WindowMinimizeButtonHint}, Qt::WindowMinimizeButtonHint},
m_settings (settings), m_settings {settings},
ui(new Ui::FastGraph) m_ave {40},
ui {new Ui::FastGraph}
{ {
ui->setupUi(this); ui->setupUi(this);
setWindowTitle (QApplication::applicationName () + " - " + tr ("Fast Graph")); setWindowTitle (QApplication::applicationName () + " - " + tr ("Fast Graph"));
installEventFilter(parent); //Installing the filter installEventFilter(parent); //Installing the filter
ui->fastPlot->setCursor(Qt::CrossCursor); ui->fastPlot->setCursor(Qt::CrossCursor);
m_ave=40;
//Restore user's settings //Restore user's settings
m_settings->beginGroup("FastGraph"); m_settings->beginGroup("FastGraph");
@ -30,6 +30,7 @@ FastGraph::FastGraph(QSettings * settings, QWidget *parent) :
ui->gainSlider->setValue(ui->fastPlot->m_plotGain); ui->gainSlider->setValue(ui->fastPlot->m_plotGain);
ui->fastPlot->setGreenZero(m_settings->value("GreenZero", 0).toInt()); ui->fastPlot->setGreenZero(m_settings->value("GreenZero", 0).toInt());
ui->greenZeroSlider->setValue(ui->fastPlot->m_greenZero); ui->greenZeroSlider->setValue(ui->fastPlot->m_greenZero);
ui->controls_widget->setVisible (!m_settings->value("HideControls", false).toBool ());
m_settings->endGroup(); m_settings->endGroup();
connect (ui->fastPlot, &FPlotter::fastPick, this, &FastGraph::fastPick); connect (ui->fastPlot, &FPlotter::fastPick, this, &FastGraph::fastPick);
@ -55,6 +56,7 @@ void FastGraph::saveSettings()
m_settings->setValue("PlotGain",ui->fastPlot->m_plotGain); m_settings->setValue("PlotGain",ui->fastPlot->m_plotGain);
m_settings->setValue("GreenZero",ui->fastPlot->m_greenZero); m_settings->setValue("GreenZero",ui->fastPlot->m_greenZero);
m_settings->setValue("GreenGain",ui->fastPlot->m_greenGain); m_settings->setValue("GreenGain",ui->fastPlot->m_greenGain);
m_settings->setValue("HideControls",!ui->controls_widget->isVisible ());
m_settings->endGroup(); m_settings->endGroup();
} }
@ -105,3 +107,17 @@ void FastGraph::setMode(QString mode) //setMode
{ {
ui->fastPlot->setMode(mode); ui->fastPlot->setMode(mode);
} }
void FastGraph::keyPressEvent(QKeyEvent *e)
{
switch(e->key())
{
case Qt::Key_M:
if(e->modifiers() & Qt::ControlModifier) {
ui->controls_widget->setVisible (!ui->controls_widget->isVisible ());
}
break;
default:
QDialog::keyPressEvent (e);
}
}

View File

@ -16,6 +16,7 @@ class FastGraph : public QDialog
protected: protected:
void closeEvent (QCloseEvent *) override; void closeEvent (QCloseEvent *) override;
void keyPressEvent( QKeyEvent *e ) override;
public: public:
explicit FastGraph(QSettings *, QWidget *parent = 0); explicit FastGraph(QSettings *, QWidget *parent = 0);

View File

@ -2,39 +2,16 @@
<ui version="4.0"> <ui version="4.0">
<class>FastGraph</class> <class>FastGraph</class>
<widget class="QDialog" name="FastGraph"> <widget class="QDialog" name="FastGraph">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>710</width>
<height>250</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Maximum" vsizetype="Maximum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>710</width>
<height>250</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>710</width>
<height>250</height>
</size>
</property>
<property name="windowTitle"> <property name="windowTitle">
<string>Fast Graph</string> <string>Fast Graph</string>
</property> </property>
<layout class="QVBoxLayout" name="verticalLayout_2"> <layout class="QVBoxLayout" name="verticalLayout">
<property name="spacing"> <property name="spacing">
<number>2</number> <number>2</number>
</property> </property>
<property name="sizeConstraint">
<enum>QLayout::SetFixedSize</enum>
</property>
<property name="leftMargin"> <property name="leftMargin">
<number>2</number> <number>2</number>
</property> </property>
@ -48,199 +25,203 @@
<number>2</number> <number>2</number>
</property> </property>
<item> <item>
<layout class="QVBoxLayout" name="verticalLayout"> <widget class="FPlotter" name="fastPlot">
<property name="spacing"> <property name="enabled">
<number>2</number> <bool>true</bool>
</property> </property>
<item> <property name="sizePolicy">
<widget class="FPlotter" name="fastPlot"> <sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<property name="enabled"> <horstretch>0</horstretch>
<bool>true</bool> <verstretch>0</verstretch>
</property> </sizepolicy>
<property name="sizePolicy"> </property>
<sizepolicy hsizetype="Fixed" vsizetype="Expanding"> <property name="minimumSize">
<horstretch>0</horstretch> <size>
<verstretch>0</verstretch> <width>703</width>
</sizepolicy> <height>220</height>
</property> </size>
<property name="minimumSize"> </property>
<size> <property name="maximumSize">
<width>703</width> <size>
<height>220</height> <width>703</width>
</size> <height>220</height>
</property> </size>
<property name="maximumSize"> </property>
<size> <property name="frameShape">
<width>703</width> <enum>QFrame::StyledPanel</enum>
<height>220</height> </property>
</size> <property name="frameShadow">
</property> <enum>QFrame::Sunken</enum>
<property name="frameShape"> </property>
<enum>QFrame::StyledPanel</enum> <property name="lineWidth">
</property> <number>1</number>
<property name="frameShadow"> </property>
<enum>QFrame::Sunken</enum> </widget>
</property> </item>
<property name="lineWidth"> <item>
<number>1</number> <widget class="QWidget" name="controls_widget" native="true">
</property> <layout class="QHBoxLayout" name="horizontalLayout">
</widget> <property name="leftMargin">
</item> <number>2</number>
<item> </property>
<layout class="QHBoxLayout" name="horizontalLayout_3"> <property name="topMargin">
<property name="spacing"> <number>2</number>
<number>6</number> </property>
</property> <property name="rightMargin">
<item> <number>2</number>
<spacer name="horizontalSpacer_2"> </property>
<property name="orientation"> <property name="bottomMargin">
<enum>Qt::Horizontal</enum> <number>2</number>
</property> </property>
<property name="sizeType"> <item>
<enum>QSizePolicy::Expanding</enum> <spacer name="horizontalSpacer_2">
</property> <property name="orientation">
<property name="sizeHint" stdset="0"> <enum>Qt::Horizontal</enum>
<size> </property>
<width>20</width> <property name="sizeType">
<height>20</height> <enum>QSizePolicy::Expanding</enum>
</size> </property>
</property> <property name="sizeHint" stdset="0">
</spacer> <size>
</item> <width>99</width>
<item> <height>20</height>
<widget class="QSlider" name="gainSlider"> </size>
<property name="toolTip"> </property>
<string>Waterfall gain</string> </spacer>
</property> </item>
<property name="minimum"> <item>
<number>-60</number> <widget class="QSlider" name="gainSlider">
</property> <property name="toolTip">
<property name="maximum"> <string>Waterfall gain</string>
<number>140</number> </property>
</property> <property name="minimum">
<property name="pageStep"> <number>-60</number>
<number>40</number> </property>
</property> <property name="maximum">
<property name="orientation"> <number>140</number>
<enum>Qt::Horizontal</enum> </property>
</property> <property name="pageStep">
</widget> <number>40</number>
</item> </property>
<item> <property name="orientation">
<spacer name="horizontalSpacer_7"> <enum>Qt::Horizontal</enum>
<property name="orientation"> </property>
<enum>Qt::Horizontal</enum> </widget>
</property> </item>
<property name="sizeType"> <item>
<enum>QSizePolicy::Preferred</enum> <spacer name="horizontalSpacer_7">
</property> <property name="orientation">
<property name="sizeHint" stdset="0"> <enum>Qt::Horizontal</enum>
<size> </property>
<width>20</width> <property name="sizeType">
<height>20</height> <enum>QSizePolicy::Preferred</enum>
</size> </property>
</property> <property name="sizeHint" stdset="0">
</spacer> <size>
</item> <width>20</width>
<item> <height>20</height>
<widget class="QSlider" name="zeroSlider"> </size>
<property name="toolTip"> </property>
<string>Waterfall zero</string> </spacer>
</property> </item>
<property name="minimum"> <item>
<number>-60</number> <widget class="QSlider" name="zeroSlider">
</property> <property name="toolTip">
<property name="maximum"> <string>Waterfall zero</string>
<number>120</number> </property>
</property> <property name="minimum">
<property name="value"> <number>-60</number>
<number>60</number> </property>
</property> <property name="maximum">
<property name="orientation"> <number>120</number>
<enum>Qt::Horizontal</enum> </property>
</property> <property name="value">
</widget> <number>60</number>
</item> </property>
<item> <property name="orientation">
<spacer name="horizontalSpacer"> <enum>Qt::Horizontal</enum>
<property name="orientation"> </property>
<enum>Qt::Horizontal</enum> </widget>
</property> </item>
<property name="sizeType"> <item>
<enum>QSizePolicy::Preferred</enum> <spacer name="horizontalSpacer">
</property> <property name="orientation">
<property name="sizeHint" stdset="0"> <enum>Qt::Horizontal</enum>
<size> </property>
<width>20</width> <property name="sizeType">
<height>20</height> <enum>QSizePolicy::Preferred</enum>
</size> </property>
</property> <property name="sizeHint" stdset="0">
</spacer> <size>
</item> <width>20</width>
<item> <height>20</height>
<widget class="QSlider" name="greenZeroSlider"> </size>
<property name="toolTip"> </property>
<string>Spectrum zero</string> </spacer>
</property> </item>
<property name="minimum"> <item>
<number>-100</number> <widget class="QSlider" name="greenZeroSlider">
</property> <property name="toolTip">
<property name="maximum"> <string>Spectrum zero</string>
<number>160</number> </property>
</property> <property name="minimum">
<property name="value"> <number>-100</number>
<number>30</number> </property>
</property> <property name="maximum">
<property name="orientation"> <number>160</number>
<enum>Qt::Horizontal</enum> </property>
</property> <property name="value">
</widget> <number>30</number>
</item> </property>
<item> <property name="orientation">
<spacer name="horizontalSpacer_3"> <enum>Qt::Horizontal</enum>
<property name="orientation"> </property>
<enum>Qt::Horizontal</enum> </widget>
</property> </item>
<property name="sizeType"> <item>
<enum>QSizePolicy::Preferred</enum> <spacer name="horizontalSpacer_3">
</property> <property name="orientation">
<property name="sizeHint" stdset="0"> <enum>Qt::Horizontal</enum>
<size> </property>
<width>20</width> <property name="sizeType">
<height>20</height> <enum>QSizePolicy::Preferred</enum>
</size> </property>
</property> <property name="sizeHint" stdset="0">
</spacer> <size>
</item> <width>20</width>
<item> <height>20</height>
<widget class="QPushButton" name="pbAutoLevel"> </size>
<property name="toolTip"> </property>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Set reasonable levels for gain and zero sliders.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string> </spacer>
</property> </item>
<property name="text"> <item>
<string>Auto Level</string> <widget class="QPushButton" name="pbAutoLevel">
</property> <property name="toolTip">
</widget> <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Set reasonable levels for gain and zero sliders.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</item> </property>
<item> <property name="text">
<spacer name="horizontalSpacer_5"> <string>Auto Level</string>
<property name="orientation"> </property>
<enum>Qt::Horizontal</enum> </widget>
</property> </item>
<property name="sizeType"> <item>
<enum>QSizePolicy::Expanding</enum> <spacer name="horizontalSpacer_5">
</property> <property name="orientation">
<property name="sizeHint" stdset="0"> <enum>Qt::Horizontal</enum>
<size> </property>
<width>20</width> <property name="sizeType">
<height>20</height> <enum>QSizePolicy::Expanding</enum>
</size> </property>
</property> <property name="sizeHint" stdset="0">
</spacer> <size>
</item> <width>99</width>
</layout> <height>20</height>
</item> </size>
</layout> </property>
</spacer>
</item>
</layout>
</widget>
</item> </item>
</layout> </layout>
</widget> </widget>