diff --git a/audio_player.py b/audio_player.py
index 0c0a014..2e9bb00 100644
--- a/audio_player.py
+++ b/audio_player.py
@@ -2,7 +2,7 @@ import os
import sys
from pydub import AudioSegment
from pygame import mixer
-from PyQt5.QtCore import QTimer, QTimer, pyqtSlot, QObject
+from PyQt5.QtCore import QTimer, pyqtSlot, QObject
import constants
import qtawesome as qta
diff --git a/constants.py b/constants.py
index 94ecf23..c2a7afe 100644
--- a/constants.py
+++ b/constants.py
@@ -5,6 +5,10 @@ class Ftype(object):
FREQ = "freq"
BAND = "band"
+class GfdType(Enum):
+ FREQ = auto()
+ LOC = auto()
+
class ChecksumWhat(Enum):
FOLDER = auto()
DB = auto()
@@ -84,6 +88,7 @@ __EHF = __Band(30 * 10**9, 300 * 10**9)
BANDS = (__ELF, __SLF, __ULF, __VLF, __LF, __MF, __HF, __VHF, __UHF, __SHF, __EHF)
MAX_DIGITS = 3
RANGE_SEPARATOR = ' รท '
+GFD_SITE = "http://qrg.globaltuners.com/"
CONVERSION_FACTORS = {"Hz" : 1,
"kHz": 1000,
"MHz": 1000000,
diff --git a/main.py b/main.py
index 4551f66..121aeaf 100644
--- a/main.py
+++ b/main.py
@@ -327,6 +327,11 @@ class MyApp(QMainWindow, Ui_MainWindow):
fun_args = None
)
+ # GFD
+ self.freq_search_gfd_btn.clicked.connect(partial(self.go_to_gfd, constants.GfdType.FREQ))
+ self.location_search_gfd_btn.clicked.connect(partial(self.go_to_gfd, constants.GfdType.LOC))
+ self.gfd_line_edit.returnPressed.connect(partial(self.go_to_gfd, constants.GfdType.LOC))
+
# ##########################################################################################
self.load_db()
@@ -364,26 +369,19 @@ class MyApp(QMainWindow, Ui_MainWindow):
self.show()
- def refresh_range_labels(self):
- self.set_acf_interval_label()
- self.set_band_filter_label(self.activate_low_band_filter_btn,
- self.lower_band_spinbox,
- self.lower_band_filter_unit,
- self.lower_band_confidence,
- self.activate_up_band_filter_btn,
- self.upper_band_spinbox,
- self.upper_band_filter_unit,
- self.upper_band_confidence,
- self.band_range_lbl)
- self.set_band_filter_label(self.activate_low_freq_filter_btn,
- self.lower_freq_spinbox,
- self.lower_freq_filter_unit,
- self.lower_freq_confidence,
- self.activate_up_freq_filter_btn,
- self.upper_freq_spinbox,
- self.upper_freq_filter_unit,
- self.upper_freq_confidence,
- self.freq_range_lbl)
+ @pyqtSlot()
+ def go_to_gfd(self, by):
+ query = "/?q="
+ if by == constants.GfdType.FREQ:
+ value_in_mhz = self.freq_gfd.value() * constants.CONVERSION_FACTORS[self.unit_freq_gfd.currentText()] / constants.CONVERSION_FACTORS["MHz"]
+ query += str(value_in_mhz)
+ elif by == constants.GfdType.LOC:
+ query += self.gfd_line_edit.text()
+ try:
+ webbrowser.open(constants.GFD_SITE + query.lower())
+ except:
+ pass
+
@pyqtSlot(QListWidgetItem)
def remove_if_unselected_modulation(self, item):
@@ -969,4 +967,4 @@ if __name__ == '__main__':
sleep(2)
w = MyApp()
splash.finish(w)
- sys.exit(my_app.exec_())
\ No newline at end of file
+ sys.exit(my_app.exec_())
diff --git a/main_window.ui b/main_window.ui
index 4f9ac84..6fc624e 100644
--- a/main_window.ui
+++ b/main_window.ui
@@ -19,6 +19,10 @@
ARTEMIS3
+
+
+ splash.jpgsplash.jpg
+
@@ -174,7 +178,7 @@
QTabWidget::Rounded
- 0
+ 2
true
@@ -1771,7 +1775,7 @@ p, li { white-space: pre-wrap; }
- 0
+ 4
true
@@ -4194,6 +4198,400 @@ Inactive
+
+
+ GFD
+
+
+ -
+
+
-
+
+
+
+ 20
+ 75
+ true
+
+
+
+ Search on Global Frequencies Database
+
+www.qrg.globaltuners.com
+
+
+ Qt::AlignCenter
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+ QSizePolicy::Minimum
+
+
+
+ 20
+ 100
+
+
+
+
+ -
+
+
+
+ 15
+ 75
+ true
+
+
+
+ Search by
+
+
+ Qt::AlignCenter
+
+
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+ QSizePolicy::Minimum
+
+
+
+ 20
+ 80
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 37
+ 20
+
+
+
+
+ -
+
+
-
+
+
-
+
+
+
+ 12
+ 75
+ true
+
+
+
+ Frequency
+
+
+ Qt::AlignCenter
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+ QSizePolicy::Minimum
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
-
+
+
+ true
+
+
+
+ 0
+ 0
+
+
+
+
+ 100
+ 0
+
+
+
+
+ 100
+ 16777215
+
+
+
+
+ 12
+
+
+
+
+
+
+ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+
+
+ 1
+
+
+ 100000000
+
+
+ 100
+
+
+
+ -
+
+
+ true
+
+
+
+ 0
+ 0
+
+
+
+
+ 60
+ 0
+
+
+
+
+ 16777215
+ 16777215
+
+
+
+
+ 12
+ 75
+ true
+
+
+
+
+
+
+ MHz
+
+
+ 4
+
+
+ false
+
+
+ 0
+
+
-
+
+ MHz
+
+
+ -
+
+ Hz
+
+
+ -
+
+ kHz
+
+
+ -
+
+ GHz
+
+
+
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+ QSizePolicy::MinimumExpanding
+
+
+
+ 20
+ 20
+
+
+
+
+ -
+
+
+
+ 15
+ 75
+ true
+
+
+
+ Search
+
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
-
+
+
+
+ 12
+ 75
+ true
+
+
+
+ Location/Callsign
+
+
+ Qt::AlignCenter
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+ QSizePolicy::Minimum
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
+
+ 12
+
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+ QSizePolicy::MinimumExpanding
+
+
+
+ 20
+ 20
+
+
+
+
+ -
+
+
+
+ 15
+ 75
+ true
+
+
+
+ Search
+
+
+
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 37
+ 20
+
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 34
+
+
+
+
+
+
diff --git a/themes.py b/themes.py
index 7973af1..88e1988 100644
--- a/themes.py
+++ b/themes.py
@@ -18,7 +18,7 @@ class ThemeConstants(object):
DEFAULT_ACTIVE_COLOR = "#39eaff"
DEFAULT_INACTIVE_COLOR = "#9f9f9f"
THEME_NOT_FOUND = "Theme not found"
- MISSING_THEME = "Missing theme in " + FOLDER + " folder."
+ MISSING_THEME = "Missing theme in '" + FOLDER + "' folder."
class Theme(object):
def __init__(self, parent):
diff --git a/themes/2-dark/colors.txt b/themes/2-dark/colors.txt
new file mode 100644
index 0000000..6050d7d
--- /dev/null
+++ b/themes/2-dark/colors.txt
@@ -0,0 +1,2 @@
+active=#4da6ff
+inactive=#546E7A
diff --git a/themes/2-dark/dark.qss b/themes/2-dark/dark.qss
index 82622f4..cdc3f79 100644
--- a/themes/2-dark/dark.qss
+++ b/themes/2-dark/dark.qss
@@ -1,239 +1,462 @@
+/*************************************
+Main Window and Splitters
+**************************************/
+QWidget:window {
+ background-color: #232629;
+}
+
+QSplitter::handle {
+ background-color: transparent;
+}
+
+/*************************************
+Main menu (Bar)
+**************************************/
QMenuBar {
- color: rgb(255, 255, 255);
+ background-color: transparent;
+ color: #AFBDC4;
+}
+
+QMenuBar::item {
+ background-color: transparent;
+}
+
+QMenuBar::item:disabled {
+ color: gray;
}
QMenuBar::item:selected {
- background:#999999;
- color: #1d5eff
+ color: #FFFFFF;
+ border-bottom: 2px solid #4545e5;
}
-QMenu::item:selected {
- background-color: #999999;
- color: #1d5eff
+QMenuBar::item:pressed {
+ color: #FFFFFF;
+ border-bottom: 2px solid #4545e5;
+}
+
+QToolBar {
+ background-color: transparent;
+ border: 1px solid transparent;
+}
+
+QToolBar:handle {
+ background-color: transparent;
+ border-left: 2px dotted #80CBC4;
+ color: transparent;
+}
+
+QToolBar::separator {
+ border: 0;
}
QMenu {
- color: #ffffff;
+ background-color: #263238;
+ color: #AFBDC4;
}
-QWidget {
- background-color: #464646
-}
-
-QLabel {
- color: #ffffff;
-}
-
-QPushButton {
+QMenu::item:selected {
color: #FFFFFF;
- background-color: rgb(52,52,52);
- border: 1px solid gray;
- border-radius: 5px;
}
-QPushButton:!enabled {
- color:#9f9f9f;
+QMenu::item:pressed {
+ color: #FFFFFF;
}
-QPushButton:checked {
- color: #39eaff;
+QMenu::separator {
+ background-color: transparent;
+ height: 1px;
+ margin-left: 10px;
+ margin-right: 10px;
+ margin-top: 5px;
+ margin-bottom: 5px;
}
-QTabWidget::pane { /* The tab widget frame */
- /* border-left: 1px solid gray;*/
- border: 0px;
+/*************************************
+TabBar
+**************************************/
+QTabBar {
+ background: transparent;
}
-
-QTabWidget::tab-bar {
- left: 30px; /* move to the right by 5px */
+QTabWidget::pane {
+ border: 0px solid transparent;
+ background: transparent;
}
-
-/* Style the tab using the tab sub-control. Note that
- it reads QTabBar _not_ QTabWidget */
QTabBar::tab {
- background: #7a7a7a;
- border-top-left-radius: 8px;
- border-top-right-radius: 8px;
- min-width: 16ex;
- padding: 2px;
- color: #FFFFFF
+ background-color: transparent;
+ border: 0px solid transparent;
+ border-radius: 10px;
+ color: #AFBDC4;
+ padding-left: 10px;
+ padding-right: 10px;
+ padding-top: 3px;
+ padding-bottom: 3px;
+}
+
+QTabBar::tab:hover {
+ background: #4545e5;
+ color: #FFFFFF;
}
QTabBar::tab:selected {
- background: #999999;
- color: #1d5eff
+ background: #4545e5;
+ color: #FFFFFF;
}
-
-QTabBar::tab:!selected {
- margin-top: 3px; /* make non-selected tabs look smaller */
+QStackedWidget {
+ background: #232629;
}
-
-
-QProgressBar {
- border: 2px #7a7a7a;
- border-radius: 3px;
- background-color: #7a7a7a;
+/*************************************
+Progressbar
+**************************************/
+QProgressBar
+{
+ border: 2px solid grey;
+ border-radius: 5px;
+ text-align: center;
}
-QProgressBar::chunk {
- /*background-color: #1d5eff;*/
- background: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #1d5eff, stop:0.5 #4177ff, stop:1 #1d5eff);
- border-radius: 3px;
+QProgressBar::chunk
+{
+ background-color: #88cc00;
+ width: 2.15px;
+ margin: 0.5px;
}
-
-QAbstractScrollArea::corner {
- background: none;
- border: none;
+/*************************************
+Labels and Rich Text boxes
+**************************************/
+QLabel {
+ background-color: transparent;
+ color: #CFD8DC;
}
-QScrollBar:vertical, QScrollBar:horizontal{
- background-color:#343434;
- border-radius: 5px;
- /*background: none;*/
+QDialog {
+ background-color: transparent;
+ color: #949a9c;
+}
+
+QTextBrowser {
+ background-color: transparent;
+ color: #949a9c;
+}
+
+/*************************************
+Search Bar
+**************************************/
+QLineEdit {
+ border: 2px solid #4545e5 ;
+ border-radius: 10px;
+ background-color: transparent;
+ color: #CFD8DC;
+}
+
+QLineEdit:hover {
+ border-width: 1px;
+ border-radius: 10px;
+ border-style: solid;
+ border-color: #4545e5 ;
+}
+
+QLineEdit:focus {
+ border-width: 1px;
+ border-radius: 10px;
+ border-style: solid;
+ border-color: #4545e5 ;
+}
+
+/*************************************
+Scroll bars
+**************************************/
+QScrollBar:horizontal {
+ background: transparent;
+ height: 10px;
+ margin: 0;
}
QScrollBar:vertical {
- margin-top: 0px;
- margin-bottom: 0px;
- /*width: 10px;*/
-}
-QScrollBar:horizontal{
- margin-left: 0px;
- margin-right: 0px;
- /*height: 10px;*/
-}
-
-QScrollBar::handle:vertical, QScrollBar::handle:horizontal{
- border-radius: 5px;
- border-color: none;
- border-width: 1px;
- background-color: #999999;
-}
-
-QScrollBar::add-line:vertical, QScrollBar::add-line:horizontal{
- width: 0px;
- height: 0px;
-}
-
-QScrollBar::sub-line:vertical, QScrollBar::sub-line:horizontal{
- width: 0px;
- height: 0px;
-}
-
-QScrollBar::add-page:vertical{
- border-left: 1px solid gray;
background: transparent;
+ width: 10px;
+ margin: 0;
+}
+
+QScrollBar::handle:horizontal {
+ background: #374146;
+ min-width: 16px;
border-radius: 5px;
-/*
- border: 1px#343434;
- background-color: #343434;*/
}
-QScrollBar::add-page:horizontal{
- border-top: 1px solid gray;
- background: transparent;
+
+QScrollBar::handle:vertical {
+ background: #374146;
+ min-height: 16px;
border-radius: 5px;
-/*
- border: 1px#343434;
- background-color: #343434;*/
-}
-QScrollBar::sub-page:vertical{
- border-left: 1px solid gray;
- background: transparent;
- border-radius: 5px;
-/* border: 1px #343434;
- background-color: #343434;*/
-}
-QScrollBar::sub-page:horizontal{
- border-top: 1px solid gray;
- background: transparent;
- border-radius: 5px;
-/* border: 1px #343434;
- background-color: #343434;*/
}
-QTextEdit{
- color: #ffffff;
+QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal,
+QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical {
+ background: none;
}
-QMessageBox {
- color: #ffffff;
-}
-
-QToolTip {
- color: #000000;
-}
-
-QTextBrowser {
- background-color: #464646;
- color: #ffffff;
- border: 0px;
-}
-
-QRadioButton {
- color: #ffffff;
+QScrollBar::add-line:horizontal, QScrollBar::sub-line:horizontal,
+QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical {
+ border: none;
+ background: none;
}
+/*************************************
+List
+**************************************/
QListWidget {
- background-color:rgb(52,52,52);
- color: rgb(255, 255, 255);
- border: 1px solid gray;
- border-radius: 8px;
+ background-color: transparent;
+ border: 0px solid transparent;
+ border-bottom: 2px solid #80CBC4;
+ color: #AFBDC4;
}
-QLineEdit {
- background-color: #343434;
- color: rgb(255, 255, 255);
- border: 1px solid gray;
- border-radius: 5px;
+QListView {
+ background-color: transparent;
+ color: #AFBDC4;
+ outline: 0;
+ border: 0px solid transparent;
+}
+QListView::item:hover {
+ color: #FFFFFF;
+ background: transparent;
}
+QListView::item:selected {
+ color: #4545e5;
+ background: transparent;
+}
+
+QListView::item:disabled {
+ color: #546E7A;
+ background: transparent;
+}
+
+QListView::item:disabled:selected {
+ color: #88cc00;
+ background: transparent;
+}
+
+/*************************************
+Buttons
+**************************************/
+QPushButton {
+ background-color: transparent;
+ color: #AFBDC4;
+ border: 1px solid transparent;
+ padding: 4px 22px;
+}
+
+QPushButton:hover {
+ border: 2px dashed #4545e5;
+ border-radius: 13px;
+ color: #FFFFFF;
+}
+
+QPushButton:pressed {
+ color: #FFFFFF;
+}
+
+QPushButton:disabled {
+ color:#546E7A;
+}
+
+QPushButton:checked {
+ color: #4545e5;
+}
+
+/*************************************
+ComboBox
+**************************************/
QComboBox {
- background-color: rgb(52,52,52);
- color: #ffffff;
- border: 1px solid gray;
- border-radius: 5px;
+ border: 0px solid transparent;
+ border-radius: 2px;
+ padding: 1px 6px 1px 6px;
+ min-width: 2em;
}
-QComboBox:!enabled {
- color: #9f9f9f;
+QComboBox:!editable {
+ selection-background-color: transparent;
+ color: #AFBDC4;
+ selection-color: #FFFFFF;
+ background-color: transparent;
+}
+
+QComboBox:disabled {
+ color: #546E7A;
+}
+
+QComboBox:!editable:on, QComboBox::drop-down:editable:on {
+ color: #AFBDC4;
+ background-color: transparent;
+ selection-background-color: transparent;
+}
+
+QComboBox:on {
+ padding-top: 3px;
+ padding-left: 4px;
+}
+
+QComboBox::drop-down {
+ background-color: transparent;
+ subcontrol-origin: padding;
+ subcontrol-position: top right;
+ width: 20px;
+ border-top-right-radius: 2px;
+ border-bottom-right-radius: 2px;
+}
+
+QComboBox::down-arrow:enabled {
+ image: url("./themes/2-dark/icons/down-arrow.png");
+}
+
+QComboBox::down-arrow:disabled {
+ image: url("./themes/2-dark/icons/down-arrow_off.png");
+}
+
+QComboBox::down-arrow:hover {
+ image: url("./themes/2-dark/icons/down-arrow_hover.png");
+}
+
+QComboBox::down-arrow:on {
+ top: 1px;
+ left: 1px;
}
QComboBox QAbstractItemView {
- border: 1px solid gray;
- selection-background-color: #999999;
- selection-color: #1d5eff;
- color: #ffffff;
+background-color: #232629;
}
+/*************************************
+RadioButton
+**************************************/
+QRadioButton{
+ color: #AFBDC4;
+}
+
+QRadioButton:disabled{
+ color: #546E7A;
+}
+
+QRadioButton::indicator{
+ width: 50px;
+ height: 50px;
+}
+
+QRadioButton::indicator::unchecked {
+ image: url("./themes/2-dark/icons/off.png");
+}
+
+QRadioButton::indicator:unchecked:hover {
+ image: url("./themes/2-dark/icons/off_press.png");
+}
+
+QRadioButton::indicator:unchecked:pressed {
+ image: url("./themes/2-dark/icons/off_press.png");
+}
+
+QRadioButton::indicator::checked {
+ image: url("./themes/2-dark/icons/on.png");
+}
+
+QRadioButton::indicator:checked:hover {
+ image: url("./themes/2-dark/icons/on_press.png");
+}
+
+QRadioButton::indicator:checked:pressed {
+ image: url("./themes/2-dark/icons/on_press.png");
+}
+
+/*************************************
+SpinBox
+**************************************/
QSpinBox {
- background-color: rgb(52,52,52);
- color: #ffffff;
- border: 1px solid gray;
- border-radius: 5px;
+ background-color: transparent;
+ color: #AFBDC4;
+ border-width: 0px;
}
-QSpinBox:!enabled {
- color:#9f9f9f;
+QSpinBox:disabled {
+ color: #546E7A;
+ border-width: 0px;
}
-/* SPECIAL WIDGETS */
-QPushButton#url_button {
- color: #9f9f9f;
- border: 0px;
- background-color: #464646;
+QSpinBox::up-button {
+ subcontrol-origin: border;
+ subcontrol-position: top right;
+ width: 16px;
+ image: url("./themes/2-dark/icons/up-arrow.png");
+ border-width: 0px;
}
-QPushButton#play, QPushButton#pause, QPushButton#stop {
- color: #464646;
- border: 0px;
- background-color: #464646;
+QSpinBox::up-button:hover {
+ image: url("./themes/2-dark/icons/up-arrow_hover.png");
}
-QLabel#band_range_lbl {
- color: #9f9f9f;
+QSpinBox::up-button:pressed {
+ image: url("./themes/2-dark/icons/up-arrow.png");
+}
+
+QSpinBox::up-button:disabled {
+ image: url("./themes/2-dark/icons/up-arrow_off.png");
+}
+
+QSpinBox::down-button {
+ subcontrol-origin: border;
+ subcontrol-position: bottom right;
+ width: 16px;
+ image: url("./themes/2-dark/icons/down-arrow.png");
+ border-width: 0px;
+ border-top-width: 0;
+}
+
+QSpinBox::down-button:hover {
+ image: url("./themes/2-dark/icons/down-arrow_hover.png");
+}
+
+QSpinBox::down-button:pressed {
+ image: url("./themes/2-dark/icons/down-arrow.png");
+}
+
+QSpinBox::down-button:disabled {
+ image: url("./themes/2-dark/icons/down-arrow_off.png");
+}
+
+/*************************************
+TreeViewMenu (Mode)
+**************************************/
+QTreeView {
+ background-color: transparent;
+ selection-background-color: transparent;
+}
+
+QTreeView::item {
+ background-color: transparent;
+ color: #AFBDC4;
+}
+
+QTreeView::item:hover {
+ border-right: 2px solid #4545e5;
+ color: #FFFFFF;
+}
+
+QTreeView::item:selected {
+ color: #4545e5;
+}
+
+QTreeView::item:active{
+ background: transparent;
+}
+
+QTreeView::item:disabled{
+ color: #546E7A;
+}
+
+QTreeView::item:selected:disabled{
+ color: #4545e5;
}
diff --git a/themes/2-dark/icons/down-arrow.png b/themes/2-dark/icons/down-arrow.png
new file mode 100644
index 0000000..b2cd4a5
Binary files /dev/null and b/themes/2-dark/icons/down-arrow.png differ
diff --git a/themes/2-dark/icons/down-arrow_hover.png b/themes/2-dark/icons/down-arrow_hover.png
new file mode 100644
index 0000000..f7ad171
Binary files /dev/null and b/themes/2-dark/icons/down-arrow_hover.png differ
diff --git a/themes/2-dark/icons/down-arrow_off.png b/themes/2-dark/icons/down-arrow_off.png
new file mode 100644
index 0000000..e7f0af3
Binary files /dev/null and b/themes/2-dark/icons/down-arrow_off.png differ
diff --git a/themes/2-dark/icons/off.png b/themes/2-dark/icons/off.png
new file mode 100644
index 0000000..ef39d9e
Binary files /dev/null and b/themes/2-dark/icons/off.png differ
diff --git a/themes/2-dark/icons/off_press.png b/themes/2-dark/icons/off_press.png
new file mode 100644
index 0000000..3355d12
Binary files /dev/null and b/themes/2-dark/icons/off_press.png differ
diff --git a/themes/2-dark/icons/on.png b/themes/2-dark/icons/on.png
new file mode 100644
index 0000000..2244ffe
Binary files /dev/null and b/themes/2-dark/icons/on.png differ
diff --git a/themes/2-dark/icons/on_press.png b/themes/2-dark/icons/on_press.png
new file mode 100644
index 0000000..4754508
Binary files /dev/null and b/themes/2-dark/icons/on_press.png differ
diff --git a/themes/2-dark/icons/search_icon.png b/themes/2-dark/icons/search_icon.png
new file mode 100644
index 0000000..dd0ec52
Binary files /dev/null and b/themes/2-dark/icons/search_icon.png differ
diff --git a/themes/2-dark/icons/up-arrow.png b/themes/2-dark/icons/up-arrow.png
new file mode 100644
index 0000000..6f0f090
Binary files /dev/null and b/themes/2-dark/icons/up-arrow.png differ
diff --git a/themes/2-dark/icons/up-arrow_hover.png b/themes/2-dark/icons/up-arrow_hover.png
new file mode 100644
index 0000000..149eae0
Binary files /dev/null and b/themes/2-dark/icons/up-arrow_hover.png differ
diff --git a/themes/2-dark/icons/up-arrow_off.png b/themes/2-dark/icons/up-arrow_off.png
new file mode 100644
index 0000000..ac2217f
Binary files /dev/null and b/themes/2-dark/icons/up-arrow_off.png differ
diff --git a/themes/2-dark/icons/volume.png b/themes/2-dark/icons/volume.png
new file mode 100644
index 0000000..88e4c7e
Binary files /dev/null and b/themes/2-dark/icons/volume.png differ
diff --git a/themes/3-material_design_dark/colors.txt b/themes/3-material_design_dark/colors.txt
new file mode 100644
index 0000000..7c4ba0a
--- /dev/null
+++ b/themes/3-material_design_dark/colors.txt
@@ -0,0 +1,2 @@
+active=#88cc00
+inactive=#546E7A
diff --git a/themes/3-material_design_dark/icons/down-arrow.png b/themes/3-material_design_dark/icons/down-arrow.png
new file mode 100644
index 0000000..b2cd4a5
Binary files /dev/null and b/themes/3-material_design_dark/icons/down-arrow.png differ
diff --git a/themes/3-material_design_dark/icons/down-arrow_hover.png b/themes/3-material_design_dark/icons/down-arrow_hover.png
new file mode 100644
index 0000000..f7ad171
Binary files /dev/null and b/themes/3-material_design_dark/icons/down-arrow_hover.png differ
diff --git a/themes/3-material_design_dark/icons/down-arrow_off.png b/themes/3-material_design_dark/icons/down-arrow_off.png
new file mode 100644
index 0000000..e7f0af3
Binary files /dev/null and b/themes/3-material_design_dark/icons/down-arrow_off.png differ
diff --git a/themes/3-material_design_dark/icons/off.png b/themes/3-material_design_dark/icons/off.png
new file mode 100644
index 0000000..ef39d9e
Binary files /dev/null and b/themes/3-material_design_dark/icons/off.png differ
diff --git a/themes/3-material_design_dark/icons/off_press.png b/themes/3-material_design_dark/icons/off_press.png
new file mode 100644
index 0000000..3355d12
Binary files /dev/null and b/themes/3-material_design_dark/icons/off_press.png differ
diff --git a/themes/3-material_design_dark/icons/on.png b/themes/3-material_design_dark/icons/on.png
new file mode 100644
index 0000000..2244ffe
Binary files /dev/null and b/themes/3-material_design_dark/icons/on.png differ
diff --git a/themes/3-material_design_dark/icons/on_press.png b/themes/3-material_design_dark/icons/on_press.png
new file mode 100644
index 0000000..4754508
Binary files /dev/null and b/themes/3-material_design_dark/icons/on_press.png differ
diff --git a/themes/3-material_design_dark/icons/search_icon.png b/themes/3-material_design_dark/icons/search_icon.png
new file mode 100644
index 0000000..dd0ec52
Binary files /dev/null and b/themes/3-material_design_dark/icons/search_icon.png differ
diff --git a/themes/3-material_design_dark/icons/up-arrow.png b/themes/3-material_design_dark/icons/up-arrow.png
new file mode 100644
index 0000000..6f0f090
Binary files /dev/null and b/themes/3-material_design_dark/icons/up-arrow.png differ
diff --git a/themes/3-material_design_dark/icons/up-arrow_hover.png b/themes/3-material_design_dark/icons/up-arrow_hover.png
new file mode 100644
index 0000000..149eae0
Binary files /dev/null and b/themes/3-material_design_dark/icons/up-arrow_hover.png differ
diff --git a/themes/3-material_design_dark/icons/up-arrow_off.png b/themes/3-material_design_dark/icons/up-arrow_off.png
new file mode 100644
index 0000000..ac2217f
Binary files /dev/null and b/themes/3-material_design_dark/icons/up-arrow_off.png differ
diff --git a/themes/3-material_design_dark/icons/volume.png b/themes/3-material_design_dark/icons/volume.png
new file mode 100644
index 0000000..88e4c7e
Binary files /dev/null and b/themes/3-material_design_dark/icons/volume.png differ
diff --git a/themes/3-material_design_dark/material_design_dark.qss b/themes/3-material_design_dark/material_design_dark.qss
new file mode 100644
index 0000000..bdfe948
--- /dev/null
+++ b/themes/3-material_design_dark/material_design_dark.qss
@@ -0,0 +1,481 @@
+/* Palette
+
+Background: #29353B
+Sec. Menu bkg: #263238
+
+Label: #AFBDC4
+Label Selected/hover: #FFFFFF
+Label Pressed: #FFFFFF
+Selection: #88cc00
+
+ScrollBars: #374146
+
+Signal detail Labels: #CFD8DC
+Signal detail Dialogs: #949a9c
+
+Disabled: #546E7A
+
+/*************************************
+Main Window and Splitters
+**************************************/
+QWidget:window {
+ background-color: #29353B;
+}
+
+QSplitter::handle {
+ background-color: transparent;
+}
+
+/*************************************
+Main menu (Bar)
+**************************************/
+QMenuBar {
+ background-color: transparent;
+ color: #AFBDC4;
+}
+
+QMenuBar::item {
+ background-color: transparent;
+}
+
+QMenuBar::item:disabled {
+ color: gray;
+}
+
+QMenuBar::item:selected {
+ color: #FFFFFF;
+ border-bottom: 2px solid #88cc00;
+}
+
+QMenuBar::item:pressed {
+ color: #FFFFFF;
+ border-bottom: 2px solid #88cc00;
+}
+
+QToolBar {
+ background-color: transparent;
+ border: 1px solid transparent;
+}
+
+QToolBar:handle {
+ background-color: transparent;
+ border-left: 2px dotted #80CBC4;
+ color: transparent;
+}
+
+QToolBar::separator {
+ border: 0;
+}
+
+QMenu {
+ background-color: #263238;
+ color: #AFBDC4;
+}
+
+QMenu::item:selected {
+ color: #FFFFFF;
+}
+
+QMenu::item:pressed {
+ color: #FFFFFF;
+}
+
+QMenu::separator {
+ background-color: transparent;
+ height: 1px;
+ margin-left: 10px;
+ margin-right: 10px;
+ margin-top: 5px;
+ margin-bottom: 5px;
+}
+
+/*************************************
+TabBar
+**************************************/
+QTabBar {
+ background: transparent;
+}
+
+QTabWidget::pane {
+ background: transparent;
+}
+
+QTabBar::tab {
+ background: transparent;
+ border: 0px solid transparent;
+ border-bottom: 2px solid transparent;
+ color: #AFBDC4;
+ padding-left: 10px;
+ padding-right: 10px;
+ padding-top: 3px;
+ padding-bottom: 3px;
+}
+
+QTabBar::tab:hover {
+ background-color: transparent;
+ border: 0px solid transparent;
+ border-bottom: 2px solid #88cc00;
+ color: #FFFFFF;
+}
+
+QTabBar::tab:selected {
+ background-color: transparent;
+ border: 0px solid transparent;
+ border-top: none;
+ border-bottom: 2px solid #88cc00;
+ color: #FFFFFF;
+}
+
+QStackedWidget {
+ background: #29353B;
+}
+
+/*************************************
+Progressbar
+**************************************/
+QProgressBar
+{
+ border: 2px solid grey;
+ border-radius: 5px;
+ text-align: center;
+}
+
+QProgressBar::chunk
+{
+ background-color: #88cc00;
+ width: 2.15px;
+ margin: 0.5px;
+}
+
+/*************************************
+Labels and Rich Text boxes
+**************************************/
+QLabel {
+ background-color: transparent;
+ color: #CFD8DC;
+}
+
+QDialog {
+ background-color: transparent;
+ color: #949a9c;
+}
+
+QTextBrowser {
+ background-color: transparent;
+ color: #949a9c;
+}
+
+/*************************************
+Search Bar
+**************************************/
+QLineEdit {
+ background-color: transparent;
+ selection-background-color: #669900;
+ color: #669900;
+ border-width: 1px;
+ border-style: solid;
+ border-color: transparent transparent #669900 transparent;
+}
+
+QLineEdit:hover {
+ border-width: 2px;
+ border-color: transparent transparent #88cc00 transparent;
+}
+
+QLineEdit:focus {
+ border-width: 2px;
+ border-color: transparent transparent #88cc00 transparent;
+}
+
+/*************************************
+Scroll bars
+**************************************/
+QScrollBar:horizontal {
+ background: transparent;
+ height: 10px;
+ margin: 0;
+}
+
+QScrollBar:vertical {
+ background: transparent;
+ width: 10px;
+ margin: 0;
+}
+
+QScrollBar::handle:horizontal {
+ background: #374146;
+ min-width: 16px;
+ border-radius: 5px;
+}
+
+QScrollBar::handle:vertical {
+ background: #374146;
+ min-height: 16px;
+ border-radius: 5px;
+}
+
+QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal,
+QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical {
+ background: none;
+}
+
+QScrollBar::add-line:horizontal, QScrollBar::sub-line:horizontal,
+QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical {
+ border: none;
+ background: none;
+}
+
+/*************************************
+List
+**************************************/
+QListWidget {
+ background-color: transparent;
+ border: 0px solid transparent;
+ border-bottom: 2px solid #80CBC4;
+ color: #AFBDC4;
+}
+
+QListView {
+ background-color: transparent;
+ color: #AFBDC4;
+ outline: 0;
+ border: 0px solid transparent;
+}
+QListView::item:hover {
+ color: #FFFFFF;
+ background: transparent;
+}
+
+QListView::item:selected {
+ color: #88cc00;
+ background: transparent;
+}
+
+QListView::item:disabled {
+ color: #546E7A;
+ background: transparent;
+}
+
+QListView::item:disabled:selected {
+ color: #88cc00;
+ background: transparent;
+}
+
+/*************************************
+Buttons
+**************************************/
+QPushButton {
+ background-color: transparent;
+ color: #AFBDC4;
+ border: 1px solid transparent;
+ padding: 4px 22px;
+}
+
+QPushButton:hover {
+ border-left: 2px solid #88cc00;
+ border-right: 2px solid #88cc00;
+ color: #FFFFFF;
+}
+
+QPushButton:pressed {
+ color: #FFFFFF;
+}
+
+QPushButton:disabled {
+ color:#546E7A;
+}
+
+QPushButton:checked {
+ color: #88cc00;
+}
+
+/*************************************
+ComboBox
+**************************************/
+QComboBox {
+ border: 0px solid transparent;
+ border-radius: 2px;
+ padding: 1px 6px 1px 6px;
+ min-width: 2em;
+}
+
+QComboBox:!editable {
+ selection-background-color: transparent;
+ color: #AFBDC4;
+ selection-color: #FFFFFF;
+ background-color: transparent;
+}
+
+QComboBox:disabled {
+ color: #546E7A;
+}
+
+QComboBox:!editable:on, QComboBox::drop-down:editable:on {
+ color: #AFBDC4;
+ background-color: transparent;
+ selection-background-color: transparent;
+}
+
+QComboBox:on {
+ padding-top: 3px;
+ padding-left: 4px;
+}
+
+QComboBox::drop-down {
+ background-color: transparent;
+ subcontrol-origin: padding;
+ subcontrol-position: top right;
+ width: 20px;
+ border-top-right-radius: 2px;
+ border-bottom-right-radius: 2px;
+}
+
+QComboBox::down-arrow:enabled {
+ image: url("./themes/3-material_design_dark/icons/down-arrow.png");
+}
+
+QComboBox::down-arrow:disabled {
+ image: url("./themes/3-material_design_dark/icons/down-arrow_off.png");
+}
+
+QComboBox::down-arrow:hover {
+ image: url("./themes/3-material_design_dark/icons/down-arrow_hover.png");
+}
+
+QComboBox::down-arrow:on {
+ top: 1px;
+ left: 1px;
+}
+
+QComboBox QAbstractItemView {
+background-color: #29353B;
+}
+
+/*************************************
+RadioButton
+**************************************/
+QRadioButton{
+ color: #AFBDC4;
+}
+
+QRadioButton:disabled{
+ color: #546E7A;
+}
+
+QRadioButton::indicator{
+ width: 50px;
+ height: 50px;
+}
+
+QRadioButton::indicator::unchecked {
+ image: url("./themes/3-material_design_dark/icons/off.png");
+}
+
+QRadioButton::indicator:unchecked:hover {
+ image: url("./themes/3-material_design_dark/icons/off_press.png");
+}
+
+QRadioButton::indicator:unchecked:pressed {
+ image: url("./themes/3-material_design_dark/icons/off_press.png");
+}
+
+QRadioButton::indicator::checked {
+ image: url("./themes/3-material_design_dark/icons/on.png");
+}
+
+QRadioButton::indicator:checked:hover {
+ image: url("./themes/3-material_design_dark/icons/on_press.png");
+}
+
+QRadioButton::indicator:checked:pressed {
+ image: url("./themes/3-material_design_dark/icons/on_press.png");
+}
+
+/*************************************
+SpinBox
+**************************************/
+QSpinBox {
+ background-color: transparent;
+ color: #AFBDC4;
+ border-width: 0px;
+}
+
+QSpinBox:disabled {
+ color: #546E7A;
+ border-width: 0px;
+}
+
+QSpinBox::up-button {
+ subcontrol-origin: border;
+ subcontrol-position: top right;
+ width: 16px;
+ image: url("./themes/3-material_design_dark/icons/up-arrow.png");
+ border-width: 0px;
+}
+
+QSpinBox::up-button:hover {
+ image: url("./themes/3-material_design_dark/icons/up-arrow_hover.png");
+}
+
+QSpinBox::up-button:pressed {
+ image: url("./themes/3-material_design_dark/icons/up-arrow.png");
+}
+
+QSpinBox::up-button:disabled {
+ image: url("./themes/3-material_design_dark/icons/up-arrow_off.png");
+}
+
+QSpinBox::down-button {
+ subcontrol-origin: border;
+ subcontrol-position: bottom right;
+ width: 16px;
+ image: url("./themes/3-material_design_dark/icons/down-arrow.png");
+ border-width: 0px;
+ border-top-width: 0;
+}
+
+QSpinBox::down-button:hover {
+ image: url("./themes/3-material_design_dark/icons/down-arrow_hover.png");
+}
+
+QSpinBox::down-button:pressed {
+ image: url("./themes/3-material_design_dark/icons/down-arrow.png");
+}
+
+QSpinBox::down-button:disabled {
+ image: url("./themes/3-material_design_dark/icons/down-arrow_off.png");
+}
+
+/*************************************
+TreeViewMenu (Mode)
+**************************************/
+QTreeView {
+ background-color: transparent;
+ selection-background-color: transparent;
+}
+
+QTreeView::item {
+ background-color: transparent;
+ color: #AFBDC4;
+}
+
+QTreeView::item:hover {
+ border-right: 2px solid #88cc00;
+ color: #FFFFFF;
+}
+
+QTreeView::item:selected {
+ color: #88cc00;
+}
+
+QTreeView::item:active{
+ background: transparent;
+}
+
+QTreeView::item:disabled{
+ color: #546E7A;
+}
+
+QTreeView::item:selected:disabled{
+ color: #88cc00;
+}
diff --git a/themes/4-material_design_light/colors.txt b/themes/4-material_design_light/colors.txt
new file mode 100644
index 0000000..c1bccbe
--- /dev/null
+++ b/themes/4-material_design_light/colors.txt
@@ -0,0 +1,2 @@
+active=#6ECE12
+inactive=#b3b3cc
diff --git a/themes/4-material_design_light/icons/down-arrow.png b/themes/4-material_design_light/icons/down-arrow.png
new file mode 100644
index 0000000..b2cd4a5
Binary files /dev/null and b/themes/4-material_design_light/icons/down-arrow.png differ
diff --git a/themes/4-material_design_light/icons/down-arrow_hover.png b/themes/4-material_design_light/icons/down-arrow_hover.png
new file mode 100644
index 0000000..f7ad171
Binary files /dev/null and b/themes/4-material_design_light/icons/down-arrow_hover.png differ
diff --git a/themes/4-material_design_light/icons/down-arrow_off.png b/themes/4-material_design_light/icons/down-arrow_off.png
new file mode 100644
index 0000000..e7f0af3
Binary files /dev/null and b/themes/4-material_design_light/icons/down-arrow_off.png differ
diff --git a/themes/4-material_design_light/icons/off.png b/themes/4-material_design_light/icons/off.png
new file mode 100644
index 0000000..ef39d9e
Binary files /dev/null and b/themes/4-material_design_light/icons/off.png differ
diff --git a/themes/4-material_design_light/icons/off_press.png b/themes/4-material_design_light/icons/off_press.png
new file mode 100644
index 0000000..3355d12
Binary files /dev/null and b/themes/4-material_design_light/icons/off_press.png differ
diff --git a/themes/4-material_design_light/icons/on.png b/themes/4-material_design_light/icons/on.png
new file mode 100644
index 0000000..2244ffe
Binary files /dev/null and b/themes/4-material_design_light/icons/on.png differ
diff --git a/themes/4-material_design_light/icons/on_press.png b/themes/4-material_design_light/icons/on_press.png
new file mode 100644
index 0000000..4754508
Binary files /dev/null and b/themes/4-material_design_light/icons/on_press.png differ
diff --git a/themes/4-material_design_light/icons/search_icon.png b/themes/4-material_design_light/icons/search_icon.png
new file mode 100644
index 0000000..dd0ec52
Binary files /dev/null and b/themes/4-material_design_light/icons/search_icon.png differ
diff --git a/themes/4-material_design_light/icons/up-arrow.png b/themes/4-material_design_light/icons/up-arrow.png
new file mode 100644
index 0000000..6f0f090
Binary files /dev/null and b/themes/4-material_design_light/icons/up-arrow.png differ
diff --git a/themes/4-material_design_light/icons/up-arrow_hover.png b/themes/4-material_design_light/icons/up-arrow_hover.png
new file mode 100644
index 0000000..149eae0
Binary files /dev/null and b/themes/4-material_design_light/icons/up-arrow_hover.png differ
diff --git a/themes/4-material_design_light/icons/up-arrow_off.png b/themes/4-material_design_light/icons/up-arrow_off.png
new file mode 100644
index 0000000..ac2217f
Binary files /dev/null and b/themes/4-material_design_light/icons/up-arrow_off.png differ
diff --git a/themes/4-material_design_light/icons/volume.png b/themes/4-material_design_light/icons/volume.png
new file mode 100644
index 0000000..88e4c7e
Binary files /dev/null and b/themes/4-material_design_light/icons/volume.png differ
diff --git a/themes/4-material_design_light/material_design_light.qss b/themes/4-material_design_light/material_design_light.qss
new file mode 100644
index 0000000..f206187
--- /dev/null
+++ b/themes/4-material_design_light/material_design_light.qss
@@ -0,0 +1,481 @@
+/* Palette
+
+Background: #F5F5F5
+Sec. Menu bkg: #DCDCDC
+
+Label: #29353B
+Label Selected/hover: #000000
+Label Pressed: #000000
+Selection: #6ECE12
+
+ScrollBars: #DCDCDC
+
+Labels: #29353B
+Dialogs: #29353B
+
+Disabled: #b3b3cc
+
+/*************************************
+Main Window and Splitters
+**************************************/
+QWidget:window {
+ background-color: #F5F5F5;
+}
+
+QSplitter::handle {
+ background-color: transparent;
+}
+
+/*************************************
+Main menu (Bar)
+**************************************/
+QMenuBar {
+ background-color: transparent;
+ color: #29353B;
+}
+
+QMenuBar::item {
+ background-color: transparent;
+}
+
+QMenuBar::item:disabled {
+ color: gray;
+}
+
+QMenuBar::item:selected {
+ color: #000000;
+ border-bottom: 2px solid #6ECE12;
+}
+
+QMenuBar::item:pressed {
+ color: #000000;
+ border-bottom: 2px solid #6ECE12;
+}
+
+QToolBar {
+ background-color: transparent;
+ border: 1px solid transparent;
+}
+
+QToolBar:handle {
+ background-color: transparent;
+ border-left: 2px dotted #80CBC4;
+ color: transparent;
+}
+
+QToolBar::separator {
+ border: 0;
+}
+
+QMenu {
+ background-color: #DCDCDC;
+ color: #29353B;
+}
+
+QMenu::item:selected {
+ color: #000000;
+}
+
+QMenu::item:pressed {
+ color: #000000;
+}
+
+QMenu::separator {
+ background-color: transparent;
+ height: 1px;
+ margin-left: 10px;
+ margin-right: 10px;
+ margin-top: 5px;
+ margin-bottom: 5px;
+}
+
+/*************************************
+TabBar
+**************************************/
+QTabBar {
+ background: transparent;
+}
+
+QTabWidget::pane {
+ background: transparent;
+}
+
+QTabBar::tab {
+ background: transparent;
+ border: 0px solid transparent;
+ border-bottom: 2px solid transparent;
+ color: #29353B;
+ padding-left: 10px;
+ padding-right: 10px;
+ padding-top: 3px;
+ padding-bottom: 3px;
+}
+
+QTabBar::tab:hover {
+ background-color: transparent;
+ border: 0px solid transparent;
+ border-bottom: 2px solid #6ECE12;
+ color: #000000;
+}
+
+QTabBar::tab:selected {
+ background-color: transparent;
+ border: 0px solid transparent;
+ border-top: none;
+ border-bottom: 2px solid #6ECE12;
+ color: #000000;
+}
+
+QStackedWidget {
+ background: #F5F5F5;
+}
+
+/*************************************
+Progressbar
+**************************************/
+QProgressBar
+{
+ border: 2px solid grey;
+ border-radius: 5px;
+ text-align: center;
+}
+
+QProgressBar::chunk
+{
+ background-color: #6ECE12;
+ width: 2.15px;
+ margin: 0.5px;
+}
+
+/*************************************
+Labels and Rich Text boxes
+**************************************/
+QLabel {
+ background-color: transparent;
+ color: #29353B;
+}
+
+QDialog {
+ background-color: transparent;
+ color: #29353B;
+}
+
+QTextBrowser {
+ background-color: transparent;
+ color: #29353B;
+}
+
+/*************************************
+Search Bar
+**************************************/
+QLineEdit {
+ background-color: transparent;
+ selection-background-color: #669900;
+ color: #669900;
+ border-width: 1px;
+ border-style: solid;
+ border-color: transparent transparent #669900 transparent;
+}
+
+QLineEdit:hover {
+ border-width: 2px;
+ border-color: transparent transparent #6ECE12 transparent;
+}
+
+QLineEdit:focus {
+ border-width: 2px;
+ border-color: transparent transparent #6ECE12 transparent;
+}
+
+/*************************************
+Scroll bars
+**************************************/
+QScrollBar:horizontal {
+ background: transparent;
+ height: 10px;
+ margin: 0;
+}
+
+QScrollBar:vertical {
+ background: transparent;
+ width: 10px;
+ margin: 0;
+}
+
+QScrollBar::handle:horizontal {
+ background: #DCDCDC;
+ min-width: 16px;
+ border-radius: 5px;
+}
+
+QScrollBar::handle:vertical {
+ background: #DCDCDC;
+ min-height: 16px;
+ border-radius: 5px;
+}
+
+QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal,
+QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical {
+ background: none;
+}
+
+QScrollBar::add-line:horizontal, QScrollBar::sub-line:horizontal,
+QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical {
+ border: none;
+ background: none;
+}
+
+/*************************************
+List
+**************************************/
+QListWidget {
+ background-color: transparent;
+ border: 0px solid transparent;
+ border-bottom: 2px solid #80CBC4;
+ color: #29353B;
+}
+
+QListView {
+ background-color: transparent;
+ color: #29353B;
+ outline: 0;
+ border: 0px solid transparent;
+}
+QListView::item:hover {
+ color: #000000;
+ background: transparent;
+}
+
+QListView::item:selected {
+ color: #6ECE12;
+ background: transparent;
+}
+
+QListView::item:disabled {
+ color: #b3b3cc;
+ background: transparent;
+}
+
+QListView::item:disabled:selected {
+ color: #6ECE12;
+ background: transparent;
+}
+
+/*************************************
+Buttons
+**************************************/
+QPushButton {
+ background-color: transparent;
+ color: #29353B;
+ border: 1px solid transparent;
+ padding: 4px 22px;
+}
+
+QPushButton:hover {
+ border-left: 2px solid #6ECE12;
+ border-right: 2px solid #6ECE12;
+ color: #000000;
+}
+
+QPushButton:pressed {
+ color: #000000;
+}
+
+QPushButton:disabled {
+ color:#b3b3cc;
+}
+
+QPushButton:checked {
+ color: #6ECE12;
+}
+
+/*************************************
+ComboBox
+**************************************/
+QComboBox {
+ border: 0px solid transparent;
+ border-radius: 2px;
+ padding: 1px 6px 1px 6px;
+ min-width: 2em;
+}
+
+QComboBox:!editable {
+ selection-background-color: transparent;
+ color: #29353B;
+ selection-color: #000000;
+ background-color: transparent;
+}
+
+QComboBox:disabled {
+ color: #b3b3cc;
+}
+
+QComboBox:!editable:on, QComboBox::drop-down:editable:on {
+ color: #29353B;
+ background-color: transparent;
+ selection-background-color: transparent;
+}
+
+QComboBox:on {
+ padding-top: 3px;
+ padding-left: 4px;
+}
+
+QComboBox::drop-down {
+ background-color: transparent;
+ subcontrol-origin: padding;
+ subcontrol-position: top right;
+ width: 20px;
+ border-top-right-radius: 2px;
+ border-bottom-right-radius: 2px;
+}
+
+QComboBox::down-arrow:enabled {
+ image: url("./themes/4-material_design_light/icons/down-arrow.png");
+}
+
+QComboBox::down-arrow:disabled {
+ image: url("./themes/4-material_design_light/icons/down-arrow_off.png");
+}
+
+QComboBox::down-arrow:hover {
+ image: url("./themes/4-material_design_light/icons/down-arrow_hover.png");
+}
+
+QComboBox::down-arrow:on {
+ top: 1px;
+ left: 1px;
+}
+
+QComboBox QAbstractItemView {
+background-color: #F5F5F5;
+}
+
+/*************************************
+RadioButton
+**************************************/
+QRadioButton{
+ color: #29353B;
+}
+
+QRadioButton:disabled{
+ color: #b3b3cc;
+}
+
+QRadioButton::indicator{
+ width: 50px;
+ height: 50px;
+}
+
+QRadioButton::indicator::unchecked {
+ image: url("./themes/4-material_design_light/icons/off.png");
+}
+
+QRadioButton::indicator:unchecked:hover {
+ image: url("./themes/4-material_design_light/icons/off_press.png");
+}
+
+QRadioButton::indicator:unchecked:pressed {
+ image: url("./themes/4-material_design_light/icons/off_press.png");
+}
+
+QRadioButton::indicator::checked {
+ image: url("./themes/4-material_design_light/icons/on.png");
+}
+
+QRadioButton::indicator:checked:hover {
+ image: url("./themes/4-material_design_light/icons/on_press.png");
+}
+
+QRadioButton::indicator:checked:pressed {
+ image: url("./themes/4-material_design_light/icons/on_press.png");
+}
+
+/*************************************
+SpinBox
+**************************************/
+QSpinBox {
+ background-color: transparent;
+ color: #29353B;
+ border-width: 0px;
+}
+
+QSpinBox:disabled {
+ color: #b3b3cc;
+ border-width: 0px;
+}
+
+QSpinBox::up-button {
+ subcontrol-origin: border;
+ subcontrol-position: top right;
+ width: 16px;
+ image: url("./themes/4-material_design_light/icons/up-arrow.png");
+ border-width: 0px;
+}
+
+QSpinBox::up-button:hover {
+ image: url("./themes/4-material_design_light/icons/up-arrow_hover.png");
+}
+
+QSpinBox::up-button:pressed {
+ image: url("./themes/4-material_design_light/icons/up-arrow.png");
+}
+
+QSpinBox::up-button:disabled {
+ image: url("./themes/4-material_design_light/icons/up-arrow_off.png");
+}
+
+QSpinBox::down-button {
+ subcontrol-origin: border;
+ subcontrol-position: bottom right;
+ width: 16px;
+ image: url("./themes/4-material_design_light/icons/down-arrow.png");
+ border-width: 0px;
+ border-top-width: 0;
+}
+
+QSpinBox::down-button:hover {
+ image: url("./themes/4-material_design_light/icons/down-arrow_hover.png");
+}
+
+QSpinBox::down-button:pressed {
+ image: url("./themes/4-material_design_light/icons/down-arrow.png");
+}
+
+QSpinBox::down-button:disabled {
+ image: url("./themes/4-material_design_light/icons/down-arrow_off.png");
+}
+
+/*************************************
+TreeViewMenu (Mode)
+**************************************/
+QTreeView {
+ background-color: transparent;
+ selection-background-color: transparent;
+}
+
+QTreeView::item {
+ background-color: transparent;
+ color: #29353B;
+}
+
+QTreeView::item:hover {
+ border-right: 2px solid #6ECE12;
+ color: #000000;
+}
+
+QTreeView::item:selected {
+ color: #6ECE12;
+}
+
+QTreeView::item:active{
+ background: transparent;
+}
+
+QTreeView::item:disabled{
+ color: #b3b3cc;
+}
+
+QTreeView::item:selected:disabled{
+ color: #6ECE12;
+}