mirror of
https://github.com/f4exb/sdrangel.git
synced 2024-09-07 05:36:35 -04:00
Add sizeToContents in ChannelGUI and FeatureGUI, called when widget is rolled, so we can remove resizing code from all of the individual channels and features. In RollupContents, use minimumSizeHint for calculated size, so that minimumWidth can come from .ui file. In DeviceGUI::sizeToContents(), call adjustSize(), so Device GUIs start out at minimum needed size (which should restore appearance prior to last patch). In stackSubWindows, use available space for channels if no spectrum/features present. In stackSubWindows, fix spectrum from being sized too big, resulting in scroll bars appearing. Reset user-defined channel width in stackSubWindows, when channels are removed. Don't stack maximized windows. There's one hack in Channel/FeatureGUI::maximizeWindow(). It seems that when maximimzing a window, QOpenGLWidgets aren't always paint properly immediately afterwards, so the code forces an additional update. I can't see why the first call to paintGL doesn't work.
545 lines
15 KiB
XML
545 lines
15 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<ui version="4.0">
|
|
<class>AntennaToolsGUI</class>
|
|
<widget class="RollupContents" name="AntennaToolsGUI">
|
|
<property name="geometry">
|
|
<rect>
|
|
<x>0</x>
|
|
<y>0</y>
|
|
<width>360</width>
|
|
<height>584</height>
|
|
</rect>
|
|
</property>
|
|
<property name="sizePolicy">
|
|
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
|
<horstretch>0</horstretch>
|
|
<verstretch>0</verstretch>
|
|
</sizepolicy>
|
|
</property>
|
|
<property name="minimumSize">
|
|
<size>
|
|
<width>360</width>
|
|
<height>584</height>
|
|
</size>
|
|
</property>
|
|
<property name="maximumSize">
|
|
<size>
|
|
<width>560</width>
|
|
<height>584</height>
|
|
</size>
|
|
</property>
|
|
<property name="font">
|
|
<font>
|
|
<family>Liberation Sans</family>
|
|
<pointsize>9</pointsize>
|
|
</font>
|
|
</property>
|
|
<property name="focusPolicy">
|
|
<enum>Qt::StrongFocus</enum>
|
|
</property>
|
|
<property name="windowTitle">
|
|
<string>Antenna Tools</string>
|
|
</property>
|
|
<widget class="QTabWidget" name="tabWidget">
|
|
<property name="geometry">
|
|
<rect>
|
|
<x>0</x>
|
|
<y>0</y>
|
|
<width>371</width>
|
|
<height>581</height>
|
|
</rect>
|
|
</property>
|
|
<property name="sizePolicy">
|
|
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
|
<horstretch>0</horstretch>
|
|
<verstretch>0</verstretch>
|
|
</sizepolicy>
|
|
</property>
|
|
<property name="windowTitle">
|
|
<string>Calculators</string>
|
|
</property>
|
|
<property name="currentIndex">
|
|
<number>0</number>
|
|
</property>
|
|
<widget class="QWidget" name="dipoleTab">
|
|
<attribute name="title">
|
|
<string>Dipole</string>
|
|
</attribute>
|
|
<layout class="QGridLayout" name="gridLayout">
|
|
<item row="0" column="2">
|
|
<widget class="QComboBox" name="dipoleFrequencySelect">
|
|
<property name="minimumSize">
|
|
<size>
|
|
<width>90</width>
|
|
<height>0</height>
|
|
</size>
|
|
</property>
|
|
<item>
|
|
<property name="text">
|
|
<string>MHz</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="0">
|
|
<widget class="QLabel" name="dipoleFrequencyLabel">
|
|
<property name="text">
|
|
<string>Frequency</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="1">
|
|
<widget class="QDoubleSpinBox" name="dipoleLength">
|
|
<property name="toolTip">
|
|
<string>Total length of dipole</string>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>2000000000.000000000000000</double>
|
|
</property>
|
|
<property name="value">
|
|
<double>100.000000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="2">
|
|
<widget class="QComboBox" name="dipoleLengthUnits">
|
|
<property name="toolTip">
|
|
<string>Units for lengths</string>
|
|
</property>
|
|
<item>
|
|
<property name="text">
|
|
<string>cm</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>m</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>feet</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="1">
|
|
<widget class="QDoubleSpinBox" name="dipoleEndEffectFactor">
|
|
<property name="toolTip">
|
|
<string>End effect factor to correct for reactance</string>
|
|
</property>
|
|
<property name="minimum">
|
|
<double>0.900000000000000</double>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>1.000000000000000</double>
|
|
</property>
|
|
<property name="singleStep">
|
|
<double>0.010000000000000</double>
|
|
</property>
|
|
<property name="value">
|
|
<double>0.950000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="1">
|
|
<widget class="QDoubleSpinBox" name="dipoleElementLength">
|
|
<property name="toolTip">
|
|
<string>Dipole element length</string>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>2000000000.000000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="1">
|
|
<widget class="QDoubleSpinBox" name="dipoleFrequency">
|
|
<property name="toolTip">
|
|
<string>Frequency to calculate the length for</string>
|
|
</property>
|
|
<property name="decimals">
|
|
<number>3</number>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>100000.000000000000000</double>
|
|
</property>
|
|
<property name="value">
|
|
<double>2400.000000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="0">
|
|
<widget class="QLabel" name="dipoleEndEffectFactorLabel">
|
|
<property name="text">
|
|
<string>End effect factor</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="0">
|
|
<widget class="QLabel" name="dipoleElementLengthLabel">
|
|
<property name="text">
|
|
<string>Element length</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="0">
|
|
<widget class="QLabel" name="dipoleLengthLabel">
|
|
<property name="text">
|
|
<string>Total length</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="6" column="1">
|
|
<spacer name="dipoleVerticalSpacer">
|
|
<property name="orientation">
|
|
<enum>Qt::Vertical</enum>
|
|
</property>
|
|
<property name="sizeHint" stdset="0">
|
|
<size>
|
|
<width>20</width>
|
|
<height>40</height>
|
|
</size>
|
|
</property>
|
|
</spacer>
|
|
</item>
|
|
<item row="5" column="0" colspan="3">
|
|
<widget class="QLabel" name="dipoleImage">
|
|
<property name="text">
|
|
<string/>
|
|
</property>
|
|
<property name="pixmap">
|
|
<pixmap resource="antennatools.qrc">:/antennatools/antennatools/dipole.png</pixmap>
|
|
</property>
|
|
<property name="alignment">
|
|
<set>Qt::AlignCenter</set>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
<widget class="QWidget" name="dishTab">
|
|
<attribute name="title">
|
|
<string>Dish</string>
|
|
</attribute>
|
|
<layout class="QGridLayout" name="gridLayout_2">
|
|
<item row="5" column="0">
|
|
<widget class="QLabel" name="dishFocalLengthLabel">
|
|
<property name="text">
|
|
<string>Focal length</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="1">
|
|
<widget class="QDoubleSpinBox" name="dishDiameter">
|
|
<property name="toolTip">
|
|
<string>Diameter of the dish</string>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>1000.000000000000000</double>
|
|
</property>
|
|
<property name="value">
|
|
<double>100.000000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="0">
|
|
<widget class="QLabel" name="dishFrequencyLabel">
|
|
<property name="text">
|
|
<string>Frequency</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="0">
|
|
<widget class="QLabel" name="dishDiameteLabel">
|
|
<property name="text">
|
|
<string>Diameter</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="2">
|
|
<widget class="QComboBox" name="dishFrequencySelect">
|
|
<property name="sizePolicy">
|
|
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
|
|
<horstretch>0</horstretch>
|
|
<verstretch>0</verstretch>
|
|
</sizepolicy>
|
|
</property>
|
|
<property name="minimumSize">
|
|
<size>
|
|
<width>90</width>
|
|
<height>0</height>
|
|
</size>
|
|
</property>
|
|
<property name="toolTip">
|
|
<string/>
|
|
</property>
|
|
<item>
|
|
<property name="text">
|
|
<string>MHz</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="13" column="0">
|
|
<spacer name="verticalSpacer">
|
|
<property name="orientation">
|
|
<enum>Qt::Vertical</enum>
|
|
</property>
|
|
<property name="sizeHint" stdset="0">
|
|
<size>
|
|
<width>20</width>
|
|
<height>40</height>
|
|
</size>
|
|
</property>
|
|
</spacer>
|
|
</item>
|
|
<item row="10" column="0">
|
|
<widget class="QLabel" name="dishGainLabel">
|
|
<property name="text">
|
|
<string>Gain (dB)</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="8" column="1">
|
|
<widget class="QDoubleSpinBox" name="dishBeamwidth">
|
|
<property name="toolTip">
|
|
<string>Halfpower (-3dB) beamwidth in degrees</string>
|
|
</property>
|
|
<property name="readOnly">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>360.000000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="0">
|
|
<widget class="QLabel" name="dishEfficiencyLabel">
|
|
<property name="text">
|
|
<string>Efficiency (%)</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="10" column="1">
|
|
<widget class="QDoubleSpinBox" name="dishGain">
|
|
<property name="toolTip">
|
|
<string>Dish gain</string>
|
|
</property>
|
|
<property name="readOnly">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>1000.000000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="8" column="0">
|
|
<widget class="QLabel" name="dishBeamwidthLabel">
|
|
<property name="text">
|
|
<string>Beamwidth (°)</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="1">
|
|
<widget class="QDoubleSpinBox" name="dishDepth">
|
|
<property name="toolTip">
|
|
<string>Depth of the dish</string>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>1000.000000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="5" column="1">
|
|
<widget class="QDoubleSpinBox" name="dishFocalLength">
|
|
<property name="toolTip">
|
|
<string>Focal length</string>
|
|
</property>
|
|
<property name="readOnly">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>1000.000000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="0">
|
|
<widget class="QLabel" name="dishSurfaceErrorLabel">
|
|
<property name="text">
|
|
<string>Surface error</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="12" column="0" colspan="3">
|
|
<widget class="QLabel" name="dishImage">
|
|
<property name="text">
|
|
<string/>
|
|
</property>
|
|
<property name="pixmap">
|
|
<pixmap resource="antennatools.qrc">:/antennatools/antennatools/dish.png</pixmap>
|
|
</property>
|
|
<property name="alignment">
|
|
<set>Qt::AlignCenter</set>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="6" column="0">
|
|
<widget class="QLabel" name="dishFDLabel">
|
|
<property name="text">
|
|
<string>f/D</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="1">
|
|
<widget class="QSpinBox" name="dishEfficiency">
|
|
<property name="toolTip">
|
|
<string>Dish efficiency in percent</string>
|
|
</property>
|
|
<property name="maximum">
|
|
<number>100</number>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="1">
|
|
<widget class="QDoubleSpinBox" name="dishFrequency">
|
|
<property name="toolTip">
|
|
<string>Frequency of operation</string>
|
|
</property>
|
|
<property name="decimals">
|
|
<number>3</number>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>20000.000000000000000</double>
|
|
</property>
|
|
<property name="value">
|
|
<double>2400.000000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="1">
|
|
<widget class="QDoubleSpinBox" name="dishSurfaceError">
|
|
<property name="toolTip">
|
|
<string>RMS surface error (as a length)</string>
|
|
</property>
|
|
<property name="readOnly">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>360.000000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="2">
|
|
<widget class="QComboBox" name="dishLengthUnits">
|
|
<property name="sizePolicy">
|
|
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
|
|
<horstretch>0</horstretch>
|
|
<verstretch>0</verstretch>
|
|
</sizepolicy>
|
|
</property>
|
|
<property name="minimumSize">
|
|
<size>
|
|
<width>0</width>
|
|
<height>0</height>
|
|
</size>
|
|
</property>
|
|
<property name="toolTip">
|
|
<string>Units for lengths</string>
|
|
</property>
|
|
<item>
|
|
<property name="text">
|
|
<string>cm</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>m</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>feet</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="6" column="1">
|
|
<widget class="QDoubleSpinBox" name="dishFD">
|
|
<property name="toolTip">
|
|
<string>Focal length to diameter ratio</string>
|
|
</property>
|
|
<property name="readOnly">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>1.000000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="0">
|
|
<widget class="QLabel" name="dishDepthLabel">
|
|
<property name="text">
|
|
<string>Depth</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="11" column="0">
|
|
<widget class="QLabel" name="dishEffectiveAreaLabel">
|
|
<property name="text">
|
|
<string>Effective area (m<sup>2</sup>)</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="11" column="1">
|
|
<widget class="QDoubleSpinBox" name="dishEffectiveArea">
|
|
<property name="toolTip">
|
|
<string>Effective area</string>
|
|
</property>
|
|
<property name="readOnly">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="maximum">
|
|
<double>100000000.000000000000000</double>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</widget>
|
|
</widget>
|
|
<customwidgets>
|
|
<customwidget>
|
|
<class>RollupContents</class>
|
|
<extends>QWidget</extends>
|
|
<header>gui/rollupcontents.h</header>
|
|
<container>1</container>
|
|
</customwidget>
|
|
</customwidgets>
|
|
<tabstops>
|
|
<tabstop>tabWidget</tabstop>
|
|
<tabstop>dipoleFrequency</tabstop>
|
|
<tabstop>dipoleFrequencySelect</tabstop>
|
|
<tabstop>dipoleLength</tabstop>
|
|
<tabstop>dipoleLengthUnits</tabstop>
|
|
<tabstop>dipoleElementLength</tabstop>
|
|
<tabstop>dipoleEndEffectFactor</tabstop>
|
|
<tabstop>dishFrequency</tabstop>
|
|
<tabstop>dishFrequencySelect</tabstop>
|
|
<tabstop>dishEfficiency</tabstop>
|
|
<tabstop>dishSurfaceError</tabstop>
|
|
<tabstop>dishDiameter</tabstop>
|
|
<tabstop>dishLengthUnits</tabstop>
|
|
<tabstop>dishDepth</tabstop>
|
|
<tabstop>dishFocalLength</tabstop>
|
|
<tabstop>dishFD</tabstop>
|
|
<tabstop>dishBeamwidth</tabstop>
|
|
<tabstop>dishGain</tabstop>
|
|
<tabstop>dishEffectiveArea</tabstop>
|
|
</tabstops>
|
|
<resources>
|
|
<include location="../../../sdrgui/resources/res.qrc"/>
|
|
<include location="antennatools.qrc"/>
|
|
</resources>
|
|
<connections/>
|
|
</ui>
|