Load db with correct names

This commit is contained in:
alessandro90
2018-09-29 14:45:54 +02:00
parent 70f234e7d3
commit b87efa57ad
2 changed files with 833 additions and 19 deletions

136
main.py
View File

@@ -8,6 +8,7 @@ from PyQt5.QtWidgets import (QMainWindow,
from PyQt5.QtGui import QPixmap from PyQt5.QtGui import QPixmap
from PyQt5 import uic from PyQt5 import uic
from PyQt5.QtCore import QFileInfo, QSize from PyQt5.QtCore import QFileInfo, QSize
import webbrowser
from audio_player import AudioPlayer from audio_player import AudioPlayer
@@ -22,10 +23,40 @@ class MyApp(QMainWindow, Ui_MainWindow):
self.show() self.show()
self.actionExit.triggered.connect(qApp.quit) self.actionExit.triggered.connect(qApp.quit)
self.db_version = None self.db_version = None
self.db = None
self.current_signal_name = ''
self.signal_names = []
self.category_labels = [self.cat_mil,
self.cat_rad,
self.cat_active,
self.cat_inactive,
self.cat_ham,
self.cat_comm,
self.cat_avi,
self.cat_mar,
self.cat_ana,
self.cat_dig,
self.cat_trunked,
self.cat_utility,
self.cat_sat,
self.cat_navi,
self.cat_interf,
self.cat_num_stat,
self.cat_time_sig,]
self.property_labels = [self.name_lab,
self.freq_lab,
self.band_lab,
self.mode_lab,
self.modul_lab,
self.loc_lab,
self.acf_lab,
self.description_text,]
self.url_button.clicked.connect(self.go_to_web_page_signal)
self.load_db() self.load_db()
self.display_signals() self.display_signals()
self.search_bar.textChanged.connect(self.display_signals) self.search_bar.textChanged.connect(self.display_signals)
self.result_list.itemSelectionChanged.connect(self.display_specs)
self.result_list.currentItemChanged.connect(self.display_specs) self.result_list.currentItemChanged.connect(self.display_specs)
self.audio_widget = AudioPlayer(self.play, self.audio_widget = AudioPlayer(self.play,
self.pause, self.pause,
@@ -35,40 +66,53 @@ class MyApp(QMainWindow, Ui_MainWindow):
def load_db(self): def load_db(self):
try: try:
db = read_csv(os.path.join('Data', 'db.csv'), self.db = read_csv(os.path.join('Data', 'db.csv'),
sep = '*', sep = '*',
header = None, header = None,
prefix = 'signal_') index_col = 0,
dtype = {'inf_freq': str,
'sup_freq': str,
'mode': str,
'inf_band': str,
'sup_band': str,
'category_code': str,},
names = ["name",
"inf_freq",
"sup_freq",
"mode",
"inf_band",
"sup_band",
"location",
"url",
"description",
"modulation",
"category_code",
"acf",],
)
self.db.fillna("N/A", inplace = True)
except FileNotFoundError: except FileNotFoundError:
self.signal_names = ''
self.search_bar.setDisabled(True) self.search_bar.setDisabled(True)
box = QMessageBox(self) box = QMessageBox(self)
box.setStyleSheet("""
color:#FFFFFF;
""")
box.setWindowTitle("No database") box.setWindowTitle("No database")
box.setText("No database available.\n" box.setText("No database available.\n"
"Go to Updates->Download database.") "Go to Updates->Download database.")
box.show() box.show()
else: else:
self.signal_names = db['signal_0'] self.signal_names = self.db.index
try: try:
with open(os.path.join('Data', 'verdb.ini'), 'r') as dbver: with open(os.path.join('Data', 'verdb.ini'), 'r') as dbver:
self.db_version = int(dbver.read()) self.db_version = int(dbver.read())
except (FileNotFoundError, ValueError): except (FileNotFoundError, ValueError):
box = QMessageBox(self) box = QMessageBox(self)
box.setStyleSheet("""
color:#FFFFFF;
""")
box.setWindowTitle("No database version") box.setWindowTitle("No database version")
box.setText("Unable to detect database version.\n" box.setText("Unable to detect database version.\n"
"Possible data curruption.\n" "Possible data curruption.\n"
"Go to Updates->Force Download.") "Go to Updates->Force Download.")
box.show() box.show()
self.setStatusTip(f"Database version: undefined.") self.setStatusTip("Database version: undefined.")
else: else:
self.setStatusTip(f"Database version: {self.db_version}.") self.setStatusTip(f"Database version: {self.db_version}")
def display_signals(self): def display_signals(self):
@@ -81,10 +125,65 @@ class MyApp(QMainWindow, Ui_MainWindow):
self.display_spectrogram() self.display_spectrogram()
item = self.result_list.currentItem() item = self.result_list.currentItem()
if item: if item:
self.audio_widget.set_audio_player(item.text()) self.url_button.setEnabled(True)
self.url_button.setStyleSheet("color: #4c75ff;")
self.current_signal_name = item.text()
self.name_lab.setText(self.current_signal_name)
current_signal = self.db.loc[self.current_signal_name]
category_code = current_signal.loc["category_code"]
self.freq_lab.setText(self.format_numbers(
current_signal.loc["inf_freq"],
current_signal.loc["sup_freq"])
)
self.band_lab.setText(self.format_numbers(
current_signal.loc["inf_band"],
current_signal.loc["sup_band"])
)
self.mode_lab.setText(current_signal.loc["mode"])
self.modul_lab.setText(current_signal.loc["modulation"])
self.loc_lab.setText(current_signal.loc["location"])
self.acf_lab.setText(current_signal.loc["acf"])
self.description_text.setText(current_signal.loc["description"])
for cat, cat_lab in zip(category_code, self.category_labels):
if cat == '0':
cat_lab.setStyleSheet("color: #9f9f9f;")
elif cat == '1':
cat_lab.setStyleSheet("color: #39eaff;")
self.audio_widget.set_audio_player(self.current_signal_name)
else: else:
self.url_button.setEnabled(False)
self.url_button.setStyleSheet("color: #898989;")
self.current_signal_name = ''
for lab in self.property_labels:
lab.setText("N/A")
for lab in self.category_labels:
lab.setStyleSheet("""color: #9f9f9f;""")
self.audio_widget.set_audio_player() self.audio_widget.set_audio_player()
@classmethod
def format_numbers(cls, lower, upper):
units = {1: 'Hz', 1000: 'kHz', 10**6: 'MHz', 10**9: 'GHz'}
lower_factor = cls.change_unit(lower)
upper_factor = cls.change_unit(upper)
if lower != upper:
lower = int(lower) / lower_factor
upper = int(upper) / upper_factor
return f"{lower} {units[lower_factor]} - {upper} {units[upper_factor]}"
else:
lower = int(lower) / lower_factor
return f"{lower} {units[lower_factor]}"
@staticmethod
def change_unit(num):
if len(num) < 4:
return 1
elif len(num) < 7:
return 1000
elif len(num) < 10:
return 10**6
else:
return 10**9
def display_spectrogram(self): def display_spectrogram(self):
default_pic = os.path.join("icons_imgs", "image_not_found.png") default_pic = os.path.join("icons_imgs", "image_not_found.png")
item = self.result_list.currentItem() item = self.result_list.currentItem()
@@ -97,6 +196,11 @@ class MyApp(QMainWindow, Ui_MainWindow):
path_spectr = default_pic path_spectr = default_pic
self.spectrogram.setPixmap(QPixmap(path_spectr)) self.spectrogram.setPixmap(QPixmap(path_spectr))
def go_to_web_page_signal(self):
if self.current_signal_name:
webbrowser.open(self.db.loc[self.current_signal_name].loc["url"])
if __name__ == '__main__': if __name__ == '__main__':
my_app = QApplication(sys.argv) my_app = QApplication(sys.argv)

View File

@@ -6,8 +6,8 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>1000</width> <width>942</width>
<height>800</height> <height>568</height>
</rect> </rect>
</property> </property>
<property name="sizePolicy"> <property name="sizePolicy">
@@ -24,6 +24,10 @@
background-color: #464646 background-color: #464646
} }
QLabel {
color: #ffffff;
}
QPushButton { QPushButton {
color: #FFFFFF color: #FFFFFF
} }
@@ -108,6 +112,14 @@ QScrollBar::sub-page:horizontal{
border-radius: 5px; border-radius: 5px;
/* border: 1px #343434; /* border: 1px #343434;
background-color: #343434;*/ background-color: #343434;*/
}
QTextEdit{
color: #ffffff;
}
QMessageBox {
color: #ffffff;
}</string> }</string>
</property> </property>
<widget class="QWidget" name="centralwidget"> <widget class="QWidget" name="centralwidget">
@@ -308,6 +320,701 @@ QTabBar::tab:!selected {
<attribute name="title"> <attribute name="title">
<string>Main</string> <string>Main</string>
</attribute> </attribute>
<layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="1">
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QLabel" name="label_11">
<property name="font">
<font>
<pointsize>12</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Categories</string>
</property>
<property name="alignment">
<set>Qt::AlignBottom|Qt::AlignHCenter</set>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_18">
<item>
<widget class="QLabel" name="cat_mil">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Military</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="cat_rad">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Radar</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_19">
<item>
<widget class="QLabel" name="cat_active">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Active</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="cat_inactive">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Inactive</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_20">
<item>
<widget class="QLabel" name="cat_ham">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>HAM</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="cat_comm">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Commercial</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_21">
<item>
<widget class="QLabel" name="cat_avi">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Aviation</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="cat_mar">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Marine</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_22">
<item>
<widget class="QLabel" name="cat_ana">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Analogue</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="cat_dig">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Digital</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_23">
<item>
<widget class="QLabel" name="cat_trunked">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Trunked</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="cat_utility">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Utility</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_24">
<item>
<widget class="QLabel" name="cat_sat">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Sat</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="cat_navi">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Navigation</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_25">
<item>
<widget class="QLabel" name="cat_interf">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Interfering</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="cat_time_sig">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Time Signal</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QLabel" name="cat_num_stat">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: #9f9f9f;</string>
</property>
<property name="text">
<string>Number Stations</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_9">
<property name="font">
<font>
<pointsize>12</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Description</string>
</property>
</widget>
</item>
<item row="0" column="0">
<layout class="QVBoxLayout" name="verticalLayout_5">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<item>
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<widget class="QLabel" name="label_2">
<property name="font">
<font>
<pointsize>12</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Name</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_3">
<property name="font">
<font>
<pointsize>12</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Frequency</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_4">
<property name="font">
<font>
<pointsize>12</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Bandwidth</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_5">
<property name="font">
<font>
<pointsize>12</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Mode</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_6">
<property name="font">
<font>
<pointsize>12</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Modulation</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_7">
<property name="font">
<font>
<pointsize>12</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Location</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_8">
<property name="font">
<font>
<pointsize>12</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>ACF</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_4">
<item>
<widget class="QLabel" name="name_lab">
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
<string>N/A</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="freq_lab">
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>N/A</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="band_lab">
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>N/A</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="mode_lab">
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>N/A</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="modul_lab">
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>N/A</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="loc_lab">
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>N/A</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="acf_lab">
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>N/A</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</item>
<item>
<widget class="QWidget" name="widget_4" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_17">
<item>
<widget class="QPushButton" name="url_button">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
<weight>75</weight>
<bold>true</bold>
<underline>true</underline>
</font>
</property>
<property name="toolTip">
<string>Go to the signal's wiki.</string>
</property>
<property name="styleSheet">
<string notr="true">color: #898989;</string>
</property>
<property name="text">
<string>Signal's wiki</string>
</property>
<property name="flat">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</item>
<item row="2" column="0" colspan="2">
<widget class="QTextEdit" name="description_text">
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">border: 0px;
/*border-radius: 8px;*/</string>
</property>
<property name="verticalScrollBarPolicy">
<enum>Qt::ScrollBarAsNeeded</enum>
</property>
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAsNeeded</enum>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</widget> </widget>
<widget class="QWidget" name="tab_2"> <widget class="QWidget" name="tab_2">
<attribute name="title"> <attribute name="title">
@@ -572,6 +1279,9 @@ QSlider::handle:horizontal {
<property name="toolTip"> <property name="toolTip">
<string>Signal waterfall</string> <string>Signal waterfall</string>
</property> </property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text"> <property name="text">
<string/> <string/>
</property> </property>
@@ -593,7 +1303,7 @@ QSlider::handle:horizontal {
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>1000</width> <width>942</width>
<height>21</height> <height>21</height>
</rect> </rect>
</property> </property>