Index: /trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py =================================================================== --- /trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (revision 1666) +++ /trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (revision 1668) @@ -21,4 +21,7 @@ from PyQt4 import QtGui, QtCore, Qt import dbus + +import logging +log = logging.getLogger("matrixmixer") class MixerNode(QtGui.QFrame): @@ -181,6 +184,7 @@ self.setPalette(palette) - rows = self.interface.getRowCount() - cols = self.interface.getColCount() + rows = self.interface.getColCount() + cols = self.interface.getRowCount() + log.debug("Mixer has %i rows and %i columns" % (rows, cols)) layout = QtGui.QGridLayout(self) @@ -270,5 +274,5 @@ def valueChanged(self, n): - #print "MatrixNode.valueChanged( %s )" % str(n) + log.debug("MatrixNode.valueChanged( %s )" % str(n)) for tmp in n: self.interface.setValue(tmp[1], tmp[0], tmp[2]) Index: /trunk/libffado/support/mixer-qt4/ffado/widgets/crossbarrouter.py =================================================================== --- /trunk/libffado/support/mixer-qt4/ffado/widgets/crossbarrouter.py (revision 1656) +++ /trunk/libffado/support/mixer-qt4/ffado/widgets/crossbarrouter.py (revision 1668) @@ -21,4 +21,7 @@ from PyQt4 import QtGui, QtCore import dbus + +import logging +log = logging.getLogger("crossbarrouter") class VuMeter(QtGui.QFrame): @@ -39,5 +42,5 @@ def setInput(self, input): - #print "VuMeter.setInput() %i->%i" % (self.output, input) + #log.debug("VuMeter.setInput() %i->%i" % (self.output, input)) self.input = input @@ -91,8 +94,14 @@ self.ingroups[tmp] = 0 self.ingroups[tmp] += 1 - #print "Detected ingroups: %s" % str(self.ingroups) + #log.debug("Detected ingroups: %s" % str(self.ingroups)) self.menu = QtGui.QMenu(self) self.btn.setMenu(self.menu) + + action = QtGui.QAction("Disconnect", self) + action.setCheckable(True) + self.connect(action, QtCore.SIGNAL("toggled(bool)"), self.disconnectRoute) + self.exclusiveGroup.addAction(action) + self.menu.addAction(action) for group in self.ingroups: @@ -103,4 +112,14 @@ self.vu.updateLevel(value) + def disconnectRoute(self, checked): + log.debug("disconnectRoute( %s ) sender: %s" % (str(checked),str(self.sender()))) + dest = self.interface.getDestinationIndex(self.outname) + src = self.interface.getSourceName( self.interface.getSourceForDestination( dest ) ) + #log.debug(" source=%s destination=%s possible? %s" % (src, self.outname, self.interface.canConnectNamed(src, self.outname))) + if not self.interface.setConnectionStateNamed(src, self.outname, False): + log.debug(" Changing the connection table was successfull.") + else: + log.warning(" Failed to change the connection table!") + self.peakValue(0) class InGroupMenu(QtGui.QMenu): @@ -121,5 +140,5 @@ def showMenu(self): #print "About to show the menu" - if len(self.actions()) < self.insize: + if len(self.actions()) < self.insize+1: # Do a lazy init of the sub-items. for i in range(self.insize): @@ -140,8 +159,9 @@ def connectionSwitched(self, checked): if self.lock: return - print "connectionSwitched( %s ) sender: %s" % (str(checked),str(self.sender())) + #log.debug("connectionSwitched( %s ) sender: %s" % (str(checked),str(self.sender()))) inname = str(self.sender().text()) - print " source=%s destination=%s possible? %s" % (inname, self.outname, self.interface.canConnectNamed(inname, self.outname)) - print " connectionState is now %s" % self.interface.setConnectionStateNamed(inname, self.outname, checked) + #log.debug(" source=%s destination=%s possible? %s" % (inname, self.outname, self.interface.canConnectNamed(inname, self.outname))) + if not self.interface.setConnectionStateNamed(inname, self.outname, checked): + log.warning(" Failed to change the routing.") @@ -153,5 +173,5 @@ self.interface = dbus.Interface(self.dev, dbus_interface="org.ffado.Control.Element.CrossbarRouter") - print self.interface.getDestinations() + log.info(self.interface.getDestinations()) destinations = self.interface.getDestinationNames() Index: /trunk/libffado/support/mixer-qt4/ffado-mixer.in =================================================================== --- /trunk/libffado/support/mixer-qt4/ffado-mixer.in (revision 1648) +++ /trunk/libffado/support/mixer-qt4/ffado-mixer.in (revision 1668) @@ -150,4 +150,5 @@ debug_level = logging.INFO + # main loggers: logging.getLogger('main').setLevel(debug_level) logging.getLogger('dbus').setLevel(debug_level) @@ -156,6 +157,9 @@ logging.getLogger('configparser').setLevel(logging.INFO) - logging.getLogger('global').setLevel(debug_level) + # widgets: + logging.getLogger('matrixmixer').setLevel(debug_level) + logging.getLogger('crossbarrouter').setLevel(debug_level) + # mixers: logging.getLogger('audiofire').setLevel(debug_level) logging.getLogger('bridgeco').setLevel(debug_level) @@ -170,4 +174,6 @@ logging.getLogger('saffire').setLevel(debug_level) logging.getLogger('saffirepro').setLevel(debug_level) + + logging.getLogger('global').setLevel(debug_level) log = logging.getLogger('main')