mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-10-29 05:40:23 -04:00
qpaeq: port to PyQt5
This commit is contained in:
parent
922f08b787
commit
480e0e74f4
1 changed files with 34 additions and 34 deletions
|
|
@ -18,13 +18,13 @@
|
|||
|
||||
import os,math,sys
|
||||
try:
|
||||
import PyQt4,sip
|
||||
from PyQt4 import QtGui,QtCore
|
||||
import PyQt5,sip
|
||||
from PyQt5 import QtWidgets,QtCore
|
||||
import dbus.mainloop.qt
|
||||
import dbus
|
||||
except ImportError as e:
|
||||
sys.stderr.write('There was an error importing needed libraries\n'
|
||||
'Make sure you have qt4 and dbus-python installed\n'
|
||||
'Make sure you have qt5 and dbus-python installed\n'
|
||||
'The error that occured was:\n'
|
||||
'\t%s\n' % (str(e)))
|
||||
sys.exit(-1)
|
||||
|
|
@ -62,7 +62,7 @@ def connect():
|
|||
prop_iface='org.freedesktop.DBus.Properties'
|
||||
eq_iface='org.PulseAudio.Ext.Equalizing1.Equalizer'
|
||||
device_iface='org.PulseAudio.Core1.Device'
|
||||
class QPaeq(QtGui.QWidget):
|
||||
class QPaeq(QtWidgets.QWidget):
|
||||
manager_path='/org/pulseaudio/equalizing1'
|
||||
manager_iface='org.PulseAudio.Ext.Equalizing1.Manager'
|
||||
core_iface='org.PulseAudio.Core1'
|
||||
|
|
@ -70,7 +70,7 @@ class QPaeq(QtGui.QWidget):
|
|||
module_name='module-equalizer-sink'
|
||||
|
||||
def __init__(self):
|
||||
QtGui.QWidget.__init__(self)
|
||||
QtWidgets.QWidget.__init__(self)
|
||||
self.setWindowTitle('qpaeq')
|
||||
self.slider_widget=None
|
||||
self.sink_name=None
|
||||
|
|
@ -84,50 +84,50 @@ class QPaeq(QtGui.QWidget):
|
|||
self.setMinimumSize(self.sizeHint())
|
||||
|
||||
def create_layout(self):
|
||||
self.main_layout=QtGui.QVBoxLayout()
|
||||
self.main_layout=QtWidgets.QVBoxLayout()
|
||||
self.setLayout(self.main_layout)
|
||||
toprow_layout=QtGui.QHBoxLayout()
|
||||
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed)
|
||||
toprow_layout=QtWidgets.QHBoxLayout()
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
#sizePolicy.setHeightForWidth(self.profile_box.sizePolicy().hasHeightForWidth())
|
||||
|
||||
toprow_layout.addWidget(QtGui.QLabel('Sink'))
|
||||
self.sink_box = QtGui.QComboBox()
|
||||
toprow_layout.addWidget(QtWidgets.QLabel('Sink'))
|
||||
self.sink_box = QtWidgets.QComboBox()
|
||||
self.sink_box.setSizePolicy(sizePolicy)
|
||||
self.sink_box.setDuplicatesEnabled(False)
|
||||
self.sink_box.setInsertPolicy(QtGui.QComboBox.InsertAlphabetically)
|
||||
#self.sink_box.setSizeAdjustPolicy(QtGui.QComboBox.AdjustToContents)
|
||||
self.sink_box.setInsertPolicy(QtWidgets.QComboBox.InsertAlphabetically)
|
||||
#self.sink_box.setSizeAdjustPolicy(QtWidgets.QComboBox.AdjustToContents)
|
||||
toprow_layout.addWidget(self.sink_box)
|
||||
|
||||
toprow_layout.addWidget(QtGui.QLabel('Channel'))
|
||||
self.channel_box = QtGui.QComboBox()
|
||||
toprow_layout.addWidget(QtWidgets.QLabel('Channel'))
|
||||
self.channel_box = QtWidgets.QComboBox()
|
||||
self.channel_box.setSizePolicy(sizePolicy)
|
||||
toprow_layout.addWidget(self.channel_box)
|
||||
|
||||
toprow_layout.addWidget(QtGui.QLabel('Preset'))
|
||||
self.profile_box = QtGui.QComboBox()
|
||||
toprow_layout.addWidget(QtWidgets.QLabel('Preset'))
|
||||
self.profile_box = QtWidgets.QComboBox()
|
||||
self.profile_box.setSizePolicy(sizePolicy)
|
||||
self.profile_box.setInsertPolicy(QtGui.QComboBox.InsertAlphabetically)
|
||||
#self.profile_box.setSizeAdjustPolicy(QtGui.QComboBox.AdjustToContents)
|
||||
self.profile_box.setInsertPolicy(QtWidgets.QComboBox.InsertAlphabetically)
|
||||
#self.profile_box.setSizeAdjustPolicy(QtWidgets.QComboBox.AdjustToContents)
|
||||
toprow_layout.addWidget(self.profile_box)
|
||||
|
||||
large_icon_size=self.style().pixelMetric(QtGui.QStyle.PM_LargeIconSize)
|
||||
large_icon_size=self.style().pixelMetric(QtWidgets.QStyle.PM_LargeIconSize)
|
||||
large_icon_size=QtCore.QSize(large_icon_size,large_icon_size)
|
||||
save_profile=QtGui.QToolButton()
|
||||
save_profile.setIcon(self.style().standardIcon(QtGui.QStyle.SP_DriveFDIcon))
|
||||
save_profile=QtWidgets.QToolButton()
|
||||
save_profile.setIcon(self.style().standardIcon(QtWidgets.QStyle.SP_DriveFDIcon))
|
||||
save_profile.setIconSize(large_icon_size)
|
||||
save_profile.setToolButtonStyle(QtCore.Qt.ToolButtonIconOnly)
|
||||
save_profile.clicked.connect(self.save_profile)
|
||||
remove_profile=QtGui.QToolButton()
|
||||
remove_profile.setIcon(self.style().standardIcon(QtGui.QStyle.SP_TrashIcon))
|
||||
remove_profile=QtWidgets.QToolButton()
|
||||
remove_profile.setIcon(self.style().standardIcon(QtWidgets.QStyle.SP_TrashIcon))
|
||||
remove_profile.setIconSize(large_icon_size)
|
||||
remove_profile.setToolButtonStyle(QtCore.Qt.ToolButtonIconOnly)
|
||||
remove_profile.clicked.connect(self.remove_profile)
|
||||
toprow_layout.addWidget(save_profile)
|
||||
toprow_layout.addWidget(remove_profile)
|
||||
|
||||
reset_button = QtGui.QPushButton('Reset')
|
||||
reset_button = QtWidgets.QPushButton('Reset')
|
||||
reset_button.clicked.connect(self.reset)
|
||||
toprow_layout.addStretch()
|
||||
toprow_layout.addWidget(reset_button)
|
||||
|
|
@ -192,11 +192,11 @@ class QPaeq(QtGui.QWidget):
|
|||
def save_profile(self):
|
||||
#popup dialog box for name
|
||||
current=self.profile_box.currentIndex()
|
||||
profile,ok=QtGui.QInputDialog.getItem(self,'Preset Name','Preset',self.profiles,current)
|
||||
profile,ok=QtWidgets.QInputDialog.getItem(self,'Preset Name','Preset',self.profiles,current)
|
||||
if not ok or profile=='':
|
||||
return
|
||||
if profile in self.profiles:
|
||||
mbox=QtGui.QMessageBox(self)
|
||||
mbox=QtWidgets.QMessageBox(self)
|
||||
mbox.setText('%s preset already exists'%(profile,))
|
||||
mbox.setInformativeText('Do you want to save over it?')
|
||||
mbox.setStandardButtons(mbox.Save|mbox.Discard|mbox.Cancel)
|
||||
|
|
@ -217,7 +217,7 @@ class QPaeq(QtGui.QWidget):
|
|||
profile=self.profile_box.itemText(x)
|
||||
self.filter_state.load_profile(profile)
|
||||
def select_channel(self,x):
|
||||
self.filter_state.channel = self.channel_box.itemData(x).toPyObject()
|
||||
self.filter_state.channel = self.channel_box.itemData(x)
|
||||
self._set_profile_name()
|
||||
self.filter_state.readback()
|
||||
|
||||
|
|
@ -295,13 +295,13 @@ class QPaeq(QtGui.QWidget):
|
|||
self.profile_box.blockSignals(False)
|
||||
|
||||
|
||||
class SliderArray(QtGui.QWidget):
|
||||
class SliderArray(QtWidgets.QWidget):
|
||||
def __init__(self,filter_state,parent=None):
|
||||
super(SliderArray,self).__init__(parent)
|
||||
#self.setStyleSheet('padding: 0px; border-width: 0px; margin: 0px;')
|
||||
#self.setStyleSheet('font-family: monospace;'+outline%('blue'))
|
||||
self.filter_state=filter_state
|
||||
self.setLayout(QtGui.QHBoxLayout())
|
||||
self.setLayout(QtWidgets.QHBoxLayout())
|
||||
self.sub_array=None
|
||||
self.set_sub_array(SliderArraySub(self.filter_state))
|
||||
self.inhibit_resize=0
|
||||
|
|
@ -359,11 +359,11 @@ class SliderArray(QtGui.QWidget):
|
|||
self.set_sub_array(SliderArraySub(self.filter_state))
|
||||
self.inhibit_resize-=1
|
||||
|
||||
class SliderArraySub(QtGui.QWidget):
|
||||
class SliderArraySub(QtWidgets.QWidget):
|
||||
def __init__(self,filter_state,parent=None):
|
||||
super(SliderArraySub,self).__init__(parent)
|
||||
self.filter_state=filter_state
|
||||
self.setLayout(QtGui.QGridLayout())
|
||||
self.setLayout(QtWidgets.QGridLayout())
|
||||
self.slider=[None]*len(self.filter_state.frequencies)
|
||||
self.label=[None]*len(self.slider)
|
||||
#self.setStyleSheet('padding: 0px; border-width: 0px; margin: 0px;')
|
||||
|
|
@ -375,7 +375,7 @@ class SliderArraySub(QtGui.QWidget):
|
|||
self.layout().addWidget(label,1,c,qt.AlignHCenter)
|
||||
self.layout().setColumnMinimumWidth(c,max(label.sizeHint().width(),slider.sizeHint().width()))
|
||||
def create_slider(slider_label):
|
||||
slider=QtGui.QSlider(QtCore.Qt.Vertical,self)
|
||||
slider=QtWidgets.QSlider(QtCore.Qt.Vertical,self)
|
||||
label=SliderLabel(slider_label,filter_state,self)
|
||||
slider.setRange(-1000,2000)
|
||||
slider.setSingleStep(1)
|
||||
|
|
@ -461,7 +461,7 @@ class SliderArraySub(QtGui.QWidget):
|
|||
return int((x-1.0)*1000)
|
||||
outline='border-width: 1px; border-style: solid; border-color: %s;'
|
||||
|
||||
class SliderLabel(QtGui.QLabel):
|
||||
class SliderLabel(QtWidgets.QLabel):
|
||||
clicked=QtCore.pyqtSignal()
|
||||
def __init__(self,label_text,filter_state,parent=None):
|
||||
super(SliderLabel,self).__init__(parent)
|
||||
|
|
@ -566,7 +566,7 @@ def subdivide(xs, t_points):
|
|||
|
||||
def main():
|
||||
dbus.mainloop.qt.DBusQtMainLoop(set_as_default=True)
|
||||
app=QtGui.QApplication(sys.argv)
|
||||
app=QtWidgets.QApplication(sys.argv)
|
||||
qpaeq_main=QPaeq()
|
||||
qpaeq_main.show()
|
||||
sys.exit(app.exec_())
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue