Mon, 10 Sep 2018 16:52:37 +0200
MqttClient, MqttMonitorWidget: limited amount of recently used brokers to 20 and added a log level selection to disable logging.
<?xml version="1.0" encoding="UTF-8"?> <ui version="4.0"> <class>MqttConnectionProfilesDialog</class> <widget class="QDialog" name="MqttConnectionProfilesDialog"> <property name="geometry"> <rect> <x>0</x> <y>0</y> <width>800</width> <height>600</height> </rect> </property> <property name="windowTitle"> <string>MQTT Connection Profiles</string> </property> <property name="sizeGripEnabled"> <bool>true</bool> </property> <layout class="QVBoxLayout" name="verticalLayout_2"> <item> <widget class="QSplitter" name="splitter"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="childrenCollapsible"> <bool>false</bool> </property> <widget class="QFrame" name="profileListFrame"> <property name="frameShape"> <enum>QFrame::StyledPanel</enum> </property> <property name="frameShadow"> <enum>QFrame::Raised</enum> </property> <layout class="QVBoxLayout" name="verticalLayout"> <item> <widget class="QListWidget" name="profilesList"> <property name="alternatingRowColors"> <bool>true</bool> </property> <property name="sortingEnabled"> <bool>true</bool> </property> </widget> </item> <item> <layout class="QHBoxLayout" name="horizontalLayout"> <item> <widget class="QToolButton" name="plusButton"> <property name="toolTip"> <string>Press to add a new profile</string> </property> </widget> </item> <item> <widget class="QToolButton" name="copyButton"> <property name="toolTip"> <string>Press to copy the selected profile</string> </property> </widget> </item> <item> <widget class="QToolButton" name="minusButton"> <property name="toolTip"> <string>Press to delete the selected profile</string> </property> </widget> </item> <item> <spacer name="horizontalSpacer"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>40</width> <height>20</height> </size> </property> </spacer> </item> </layout> </item> </layout> </widget> <widget class="QFrame" name="profileFrame"> <property name="frameShape"> <enum>QFrame::StyledPanel</enum> </property> <property name="frameShadow"> <enum>QFrame::Raised</enum> </property> <layout class="QVBoxLayout" name="verticalLayout_3"> <item> <layout class="QGridLayout" name="gridLayout"> <item row="0" column="0"> <widget class="QLabel" name="label"> <property name="text"> <string>Profile Name:</string> </property> </widget> </item> <item row="0" column="1"> <widget class="QLineEdit" name="profileEdit"> <property name="readOnly"> <bool>true</bool> </property> </widget> </item> <item row="1" column="0" colspan="2"> <widget class="Line" name="line"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> </widget> </item> <item row="2" column="0"> <widget class="QLabel" name="label_2"> <property name="text"> <string>Broker Address:</string> </property> </widget> </item> <item row="2" column="1"> <widget class="E5ClearableLineEdit" name="brokerAddressEdit"> <property name="toolTip"> <string>Enter the broker server address</string> </property> </widget> </item> <item row="3" column="0"> <widget class="QLabel" name="label_3"> <property name="text"> <string>Broker Port:</string> </property> </widget> </item> <item row="3" column="1"> <layout class="QHBoxLayout" name="horizontalLayout_2"> <item> <widget class="QSpinBox" name="brokerPortSpinBox"> <property name="toolTip"> <string>Enter the broker port number (default 1883)</string> </property> <property name="alignment"> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> <property name="maximum"> <number>65535</number> </property> <property name="value"> <number>1883</number> </property> </widget> </item> <item> <spacer name="horizontalSpacer_2"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>318</width> <height>20</height> </size> </property> </spacer> </item> </layout> </item> <item row="4" column="0"> <widget class="QLabel" name="label_4"> <property name="text"> <string>Client ID:</string> </property> </widget> </item> <item row="4" column="1"> <layout class="QHBoxLayout" name="horizontalLayout_3"> <item> <widget class="E5ClearableLineEdit" name="clientIdEdit"> <property name="toolTip"> <string>Enter the ID string for this client</string> </property> </widget> </item> <item> <widget class="QPushButton" name="generateIdButton"> <property name="toolTip"> <string>Press to generate a client ID</string> </property> <property name="text"> <string>Generate</string> </property> </widget> </item> </layout> </item> <item row="5" column="0" colspan="2"> <widget class="Line" name="line_2"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> </widget> </item> </layout> </item> <item> <widget class="QTabWidget" name="profileTabWidget"> <property name="currentIndex"> <number>3</number> </property> <widget class="QWidget" name="generalTab"> <attribute name="title"> <string>General</string> </attribute> <layout class="QGridLayout" name="gridLayout_2"> <item row="0" column="0"> <widget class="QLabel" name="label_12"> <property name="text"> <string>Connection Timeout:</string> </property> </widget> </item> <item row="0" column="1"> <layout class="QHBoxLayout" name="horizontalLayout_5"> <item> <widget class="QSpinBox" name="connectionTimeoutSpinBox"> <property name="toolTip"> <string>Enter the connection timeout in seconds</string> </property> <property name="alignment"> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> <property name="suffix"> <string> s</string> </property> <property name="maximum"> <number>300</number> </property> <property name="singleStep"> <number>5</number> </property> <property name="value"> <number>15</number> </property> </widget> </item> <item> <spacer name="horizontalSpacer_6"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>148</width> <height>20</height> </size> </property> </spacer> </item> </layout> </item> <item row="1" column="0"> <widget class="QLabel" name="label_5"> <property name="text"> <string>Keep Alive Interval:</string> </property> </widget> </item> <item row="1" column="1"> <layout class="QHBoxLayout" name="horizontalLayout_4"> <item> <widget class="QSpinBox" name="keepaliveSpinBox"> <property name="toolTip"> <string>Enter the keep alive interval in seconds</string> </property> <property name="alignment"> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> <property name="suffix"> <string> s</string> </property> <property name="maximum"> <number>300</number> </property> <property name="singleStep"> <number>5</number> </property> <property name="value"> <number>60</number> </property> </widget> </item> <item> <spacer name="horizontalSpacer_3"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>148</width> <height>20</height> </size> </property> </spacer> </item> </layout> </item> <item row="2" column="0" colspan="2"> <widget class="QCheckBox" name="cleanSessionCheckBox"> <property name="toolTip"> <string>Select to start with a clean session</string> </property> <property name="text"> <string>Clean Session</string> </property> </widget> </item> <item row="3" column="1"> <spacer name="verticalSpacer"> <property name="orientation"> <enum>Qt::Vertical</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>20</width> <height>227</height> </size> </property> </spacer> </item> </layout> </widget> <widget class="QWidget" name="credentialsTab"> <attribute name="title"> <string>User Credentials</string> </attribute> <layout class="QGridLayout" name="gridLayout_3"> <item row="0" column="0"> <widget class="QLabel" name="label_7"> <property name="text"> <string>User Name:</string> </property> </widget> </item> <item row="0" column="1"> <widget class="E5ClearableLineEdit" name="usernameEdit"> <property name="toolTip"> <string>Enter the user name</string> </property> </widget> </item> <item row="1" column="0"> <widget class="QLabel" name="label_6"> <property name="text"> <string>Password:</string> </property> </widget> </item> <item row="1" column="1"> <widget class="E5ClearableLineEdit" name="passwordEdit"> <property name="toolTip"> <string>Enter the password</string> </property> <property name="echoMode"> <enum>QLineEdit::Password</enum> </property> </widget> </item> <item row="2" column="0"> <spacer name="verticalSpacer_2"> <property name="orientation"> <enum>Qt::Vertical</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>20</width> <height>228</height> </size> </property> </spacer> </item> </layout> </widget> <widget class="QWidget" name="lastWillTab"> <attribute name="title"> <string>Last Will</string> </attribute> <layout class="QGridLayout" name="gridLayout_4"> <item row="0" column="0"> <widget class="E5ClearableLineEdit" name="willTopicEdit"> <property name="toolTip"> <string>Enter the topic of the last will</string> </property> </widget> </item> <item row="0" column="1"> <widget class="QSpinBox" name="willQosSpinBox"> <property name="toolTip"> <string>Enter the desired QoS value</string> </property> <property name="alignment"> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> <property name="maximum"> <number>2</number> </property> </widget> </item> <item row="0" column="2"> <widget class="QCheckBox" name="willRetainCheckBox"> <property name="toolTip"> <string>Select to retain the last will message</string> </property> <property name="text"> <string>Retain</string> </property> </widget> </item> <item row="1" column="0" colspan="3"> <widget class="QPlainTextEdit" name="willMessageEdit"> <property name="maximumSize"> <size> <width>16777215</width> <height>300</height> </size> </property> <property name="toolTip"> <string>Enter the last will message to be sent</string> </property> </widget> </item> </layout> </widget> <widget class="QWidget" name="tlsTab"> <attribute name="title"> <string>SSL/TLS</string> </attribute> <layout class="QVBoxLayout" name="verticalLayout_5"> <item> <widget class="QGroupBox" name="tlsGroupBox"> <property name="toolTip"> <string>Select to enable SSL/TLS connections</string> </property> <property name="title"> <string>SSL/TLS Enabled</string> </property> <property name="checkable"> <bool>true</bool> </property> <property name="checked"> <bool>false</bool> </property> <layout class="QVBoxLayout" name="verticalLayout_4"> <item> <widget class="QRadioButton" name="tlsDefaultCertsButton"> <property name="toolTip"> <string>Select to use the default certificate file of the client</string> </property> <property name="text"> <string>CA signed server certificate</string> </property> <property name="checked"> <bool>true</bool> </property> </widget> </item> <item> <widget class="QRadioButton" name="tlsCertsFileButton"> <property name="toolTip"> <string>Select to use a specific certificate file</string> </property> <property name="text"> <string>CA certificate file</string> </property> </widget> </item> <item> <widget class="QWidget" name="tlsCertsFileWidget" native="true"> <property name="enabled"> <bool>false</bool> </property> <layout class="QHBoxLayout" name="horizontalLayout_6"> <property name="leftMargin"> <number>0</number> </property> <property name="topMargin"> <number>0</number> </property> <property name="rightMargin"> <number>0</number> </property> <property name="bottomMargin"> <number>0</number> </property> <item> <spacer name="horizontalSpacer_4"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeType"> <enum>QSizePolicy::Fixed</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>25</width> <height>20</height> </size> </property> </spacer> </item> <item> <widget class="QLabel" name="label_8"> <property name="text"> <string>CA File:</string> </property> </widget> </item> <item> <widget class="E5PathPicker" name="tlsCertsFilePicker" native="true"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="focusPolicy"> <enum>Qt::StrongFocus</enum> </property> <property name="toolTip"> <string>Enter the full path to the CA certificate file</string> </property> </widget> </item> </layout> </widget> </item> <item> <widget class="QRadioButton" name="tlsSelfSignedCertsButton"> <property name="toolTip"> <string>Select to use a self signed client certificate</string> </property> <property name="text"> <string>Self signed certificates</string> </property> </widget> </item> <item> <widget class="QWidget" name="tlsSelfSignedFilesWidget" native="true"> <property name="enabled"> <bool>false</bool> </property> <layout class="QGridLayout" name="gridLayout_5"> <property name="leftMargin"> <number>0</number> </property> <property name="topMargin"> <number>0</number> </property> <property name="rightMargin"> <number>0</number> </property> <property name="bottomMargin"> <number>0</number> </property> <item row="0" column="0"> <spacer name="horizontalSpacer_5"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeType"> <enum>QSizePolicy::Fixed</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>25</width> <height>20</height> </size> </property> </spacer> </item> <item row="0" column="1"> <widget class="QLabel" name="label_9"> <property name="text"> <string>CA File:</string> </property> </widget> </item> <item row="0" column="2"> <widget class="E5PathPicker" name="tlsSelfSignedCertsFilePicker" native="true"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="focusPolicy"> <enum>Qt::StrongFocus</enum> </property> <property name="toolTip"> <string>Enter the full path to the CA certificate file</string> </property> </widget> </item> <item row="1" column="1"> <widget class="QLabel" name="label_10"> <property name="text"> <string>Client Certificate File:</string> </property> </widget> </item> <item row="1" column="2"> <widget class="E5PathPicker" name="tlsSelfSignedClientCertFilePicker" native="true"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="focusPolicy"> <enum>Qt::StrongFocus</enum> </property> <property name="toolTip"> <string>Enter the full path to the client certificate file</string> </property> </widget> </item> <item row="2" column="1"> <widget class="QLabel" name="label_11"> <property name="text"> <string>Client Key File:</string> </property> </widget> </item> <item row="2" column="2"> <widget class="E5PathPicker" name="tlsSelfSignedClientKeyFilePicker" native="true"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="focusPolicy"> <enum>Qt::StrongFocus</enum> </property> <property name="toolTip"> <string>Enter the full path to the client key file</string> </property> </widget> </item> </layout> </widget> </item> </layout> </widget> </item> <item> <spacer name="verticalSpacer_3"> <property name="orientation"> <enum>Qt::Vertical</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>20</width> <height>128</height> </size> </property> </spacer> </item> </layout> </widget> </widget> </item> <item> <widget class="QDialogButtonBox" name="profileButtonBox"> <property name="standardButtons"> <set>QDialogButtonBox::Apply|QDialogButtonBox::Reset|QDialogButtonBox::RestoreDefaults</set> </property> </widget> </item> </layout> </widget> </widget> </item> <item> <widget class="QDialogButtonBox" name="buttonBox"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="standardButtons"> <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set> </property> </widget> </item> </layout> </widget> <customwidgets> <customwidget> <class>E5ClearableLineEdit</class> <extends>QLineEdit</extends> <header>E5Gui/E5LineEdit.h</header> </customwidget> <customwidget> <class>E5PathPicker</class> <extends>QWidget</extends> <header>E5Gui/E5PathPicker.h</header> <container>1</container> </customwidget> </customwidgets> <tabstops> <tabstop>profilesList</tabstop> <tabstop>plusButton</tabstop> <tabstop>copyButton</tabstop> <tabstop>minusButton</tabstop> <tabstop>profileEdit</tabstop> <tabstop>brokerAddressEdit</tabstop> <tabstop>brokerPortSpinBox</tabstop> <tabstop>clientIdEdit</tabstop> <tabstop>generateIdButton</tabstop> <tabstop>profileTabWidget</tabstop> <tabstop>connectionTimeoutSpinBox</tabstop> <tabstop>keepaliveSpinBox</tabstop> <tabstop>cleanSessionCheckBox</tabstop> <tabstop>usernameEdit</tabstop> <tabstop>passwordEdit</tabstop> <tabstop>willTopicEdit</tabstop> <tabstop>willMessageEdit</tabstop> <tabstop>willQosSpinBox</tabstop> <tabstop>willRetainCheckBox</tabstop> <tabstop>tlsGroupBox</tabstop> <tabstop>tlsDefaultCertsButton</tabstop> <tabstop>tlsCertsFileButton</tabstop> <tabstop>tlsCertsFilePicker</tabstop> <tabstop>tlsSelfSignedCertsButton</tabstop> <tabstop>tlsSelfSignedCertsFilePicker</tabstop> <tabstop>tlsSelfSignedClientCertFilePicker</tabstop> <tabstop>tlsSelfSignedClientKeyFilePicker</tabstop> </tabstops> <resources/> <connections> <connection> <sender>buttonBox</sender> <signal>accepted()</signal> <receiver>MqttConnectionProfilesDialog</receiver> <slot>accept()</slot> <hints> <hint type="sourcelabel"> <x>227</x> <y>579</y> </hint> <hint type="destinationlabel"> <x>157</x> <y>274</y> </hint> </hints> </connection> <connection> <sender>buttonBox</sender> <signal>rejected()</signal> <receiver>MqttConnectionProfilesDialog</receiver> <slot>reject()</slot> <hints> <hint type="sourcelabel"> <x>295</x> <y>585</y> </hint> <hint type="destinationlabel"> <x>286</x> <y>274</y> </hint> </hints> </connection> <connection> <sender>tlsCertsFileButton</sender> <signal>toggled(bool)</signal> <receiver>tlsCertsFileWidget</receiver> <slot>setEnabled(bool)</slot> <hints> <hint type="sourcelabel"> <x>367</x> <y>238</y> </hint> <hint type="destinationlabel"> <x>357</x> <y>252</y> </hint> </hints> </connection> <connection> <sender>tlsSelfSignedCertsButton</sender> <signal>toggled(bool)</signal> <receiver>tlsSelfSignedFilesWidget</receiver> <slot>setEnabled(bool)</slot> <hints> <hint type="sourcelabel"> <x>387</x> <y>287</y> </hint> <hint type="destinationlabel"> <x>466</x> <y>305</y> </hint> </hints> </connection> </connections> </ui>